Skip to content

[finding] check-dispatch-gates.mjs's header still says hint extraction "does not skip comments" — maskComments retired that a while ago, and the header is the authority a future author reads #8604

Description

@hotlong

Observation-class, found while implementing #8551 (PR #8603). Unassigned and unqueued for triage. Not fixed there — out of that card's scope.

The disagreement

scripts/pm/check-dispatch-gates.mjs opens with a warning and closes with a section justifying it:

⚠️ This header names repo paths UNQUOTED on purpose — see the last section.

Why the paths above are unquoted

Watch-hint extraction reads any quoted-looking span, backticks included, and does not skip comments. …

The second sentence is no longer true. extractWatchHints in scripts/pm/dispatch-gates.mjs now opens with maskComments(scriptSource), and that function's own docblock says so in as many words — naming this very file as the specimen:

It ships today with its paths deliberately unquoted, a workaround this function retires.

So one file records the workaround as retired while the file carrying the workaround still explains it as live behaviour.

Why it is worth a card rather than a shrug

The stale half is the one a future author actually reads. Someone editing check-dispatch-gates.mjs — or writing a new gate and copying its conventions, which the header invites by explaining itself so carefully — is told the extractor reads comments. Acting on that, they either keep paying an unquoting tax that buys nothing, or they propagate the belief into a new gate's header. The measured incident in the header (ten fabricated hints from one header) is real history and worth keeping; what is stale is the present-tense claim about the extractor.

Neither direction is a gate failure, which is why nothing catches it: the unquoted paths still work, and comment masking still works. It is purely a correctness-of-the-record problem.

Possible dispositions, not chosen here

  • Rewrite the last section in the past tense — keep the incident, state that comment masking retired the need, and say whether the unquoted convention is being kept as belt-and-braces or is now free to drop.
  • Drop the ⚠️ line if the convention is no longer load-bearing.

Either way this is a comment-only edit in a file whose behaviour does not change. No gate is asked to move.

Related


Generated by Claude Code

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions