P3: stray wrapper residue from unbalanced wrapper collapse in strip_search_qualifiers

Author: SomSamantrayCreated Aug 9, 2026Updated Sep 12, 2026

Residual review finding from the #952 fix (PR branch fix/github-qualifier-wrapper-strip).

Severity: P3 (cosmetic, low impact) File: skills/last30days/scripts/lib/github.py:201 Finding: Mixed/nested wrapper collapse leaves stray (/) residue in the query for unbalanced shapes (e.g. '(created:>2025-03-20' strips the qualifier but leaves a stray (; cross-type nesting like '(("created:>2025-03-20"))' leaves residue). The qualifier itself never leaks (the #949 collision class is dead), so this is cosmetic.

Suggested fix (not applied): after the empty-pair fixpoint, a final pass removing lone leftover wrapper chars. Not applied because blindly removing all )/] could mangle legitimate topic text with unbalanced parens (e.g. 'ai (foo').

Not blocking.

Source: mvanhorn/last30days-skill