Skip to content

check-symbol-anchors.py cannot see a bare backticked symbol citation, so a renamed test left ci-concurrency.md naming a symbol that does not exist #1787

Description

@localai-bot

scripts/check-symbol-anchors.py resolves a citation written as path::Symbol.
A repository document that cites a symbol as a BARE backticked name with no path
is outside the checker's population, so the citation can name nothing at all and
no gate reports it.

Measured on row/GATE-ANCHOR-PER-JOB at head f671ca92d.
.agents/specs/ci-concurrency.md:151 read:

tidiness. `test_every_diff_scoped_step_bases_on_the_last_gated_commit` asserts
the real invariant and says so in its docstring.

That symbol was renamed to
test_every_diff_scoped_step_bases_on_its_own_jobs_anchor by 26def4c8f, in
the same pull request (#1776) whose review found the stale citation by reading
the file. grep -rn 'test_every_diff_scoped_step_bases_on_the_last_gated_commit'
over the tree returns one hit, in the spec, and none in tests/. The suite runs
green either way, scripts/agent-preflight.sh is rc 0, and nothing anywhere
reports that a document names a test that does not exist.

This is a DIFFERENT gap from #1199 and #1601. #1199 measured the path::Symbol
form working (343 of 354 fresh). #1601 is about bare LINE citations into an
upstream. This one is a bare SYMBOL name in a local document: the form the
repository's own style prefers, and the one form the checker never sees.

Not fixed in flow, and why. Teaching the checker to resolve a bare backticked
identifier against the tree is a change to checker semantics. It needs its own
row, a spec, a red-before test, and green-after evidence, and it has a real
design question inside it: which backticked tokens are symbol citations and which
are prose, since a naive rule would red on every backticked word in every
document. Doing that inside a review repair is the bypass AGENTS.md names under
## Changing the rules or a checker. The stale citation itself IS repaired in
#1776.

Minimum repair, when a row takes it. Resolve a backticked token that matches
a plausible identifier shape (test_*, check_*, a CamelCase class) against
git grep over tests/, scripts/, src/ and include/, and report the ones
that resolve nowhere. Measure the false-positive rate over the whole .agents/
tree before gating it, because a checker that reds on ordinary work is the defect
rather than the discipline.

Owned by GATE-ANCHOR-PER-JOB, listed under ## Owed in
.agents/specs/gate-anchor-per-job.md.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions