Summary
Two non-blocking findings from the final pre-merge verification of #331 (merged at a90ff43), confined to renderIssueBody:
-
The operator-facing copy names the wrong set. Both new sentences point at the rendered table, but coverageGap checks the tracked index (MAX_TRACKED_REPOSITORIES = 60) plus repositoriesSeen, while the table is capped separately (MAX_RENDERED_REPOSITORIES = 40 and the character budget). The copy is correct for small incidents and wrong in exactly the fleet-wide case it was written for (measured: 40 repos @140ch renders 28 but tracks 40; 120 repos renders 24, tracks 60, seen 120). Additionally, at unlisted > 0 the gate can never pass, yet step 4 attributes a permanent hold solely to a gone repository — the docstring's other two standing causes (incident wider than the tracked cap; schema bump) are undocumented in the durable artifact.
Fix: say "every repository this incident tracks" instead of "listed above/below", plus one clause for the truncated/schema cases. The run warning already carries the truth.
-
The new copy is untested. Reverting the entire body-copy change leaves the suite green (134/134 on the reduced set). The suite already asserts rendered-body substrings, so one assertion following that convention prevents silent regression.
Test plan
- Update the two sentences in
renderIssueBody; add a rendered-body substring assertion covering the coverage-hold copy.
node --test .github/scripts/*.test.cjs green.
Related
Summary
Two non-blocking findings from the final pre-merge verification of #331 (merged at a90ff43), confined to
renderIssueBody:The operator-facing copy names the wrong set. Both new sentences point at the rendered table, but
coverageGapchecks the tracked index (MAX_TRACKED_REPOSITORIES= 60) plusrepositoriesSeen, while the table is capped separately (MAX_RENDERED_REPOSITORIES= 40 and the character budget). The copy is correct for small incidents and wrong in exactly the fleet-wide case it was written for (measured: 40 repos @140ch renders 28 but tracks 40; 120 repos renders 24, tracks 60, seen 120). Additionally, atunlisted > 0the gate can never pass, yet step 4 attributes a permanent hold solely to a gone repository — the docstring's other two standing causes (incident wider than the tracked cap; schema bump) are undocumented in the durable artifact.Fix: say "every repository this incident tracks" instead of "listed above/below", plus one clause for the truncated/schema cases. The run warning already carries the truth.
The new copy is untested. Reverting the entire body-copy change leaves the suite green (134/134 on the reduced set). The suite already asserts rendered-body substrings, so one assertion following that convention prevents silent regression.
Test plan
renderIssueBody; add a rendered-body substring assertion covering the coverage-hold copy.node --test .github/scripts/*.test.cjsgreen.Related