You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Follow-up from #163 / PR #172 (fix(quality-gate): tally the quality gate and stop swallowing its cap).
PR #172 introduced a "remembered index, rewrite in place" roll-up pattern (ctx.quality_cap_skip_index) so that quality-gate cap exhaustion produces exactly one VERIFY_SKIPS entry per issue instead of one per iteration.
Two existing call sites in .claude/workflows/ticketmill.js push unbounded VERIFY_SKIPS entries with no roll-up, one per scope per iteration:
:3092 — the quality loop's empty-findings VERIFY_SKIPS push
:3624 — the test loop's twin of the same push
Both were deliberately left out of #163's scope (that issue was specifically about the quality gate's missing recordGateOutcome/cap-note wiring, not about these two lines) but were flagged by both spec review and code review as needing the same treatment.
Proposed change
Extract the "remembered index, rewrite in place" pattern used for ctx.quality_cap_skip_index into a shared helper, and point all three call sites at it:
This avoids triplicating the same roll-up logic under three differently-named remembered-index fields, and fixes the unbounded-entries problem at :3092/:3624 as a side effect.
Note
.claude/workflows/ticketmill.js is engine-owned; changes here should go through the normal engine-change process, not be folded into an unrelated issue's PR.
Context
Follow-up from #163 / PR #172 (fix(quality-gate): tally the quality gate and stop swallowing its cap).
PR #172 introduced a "remembered index, rewrite in place" roll-up pattern (
ctx.quality_cap_skip_index) so that quality-gate cap exhaustion produces exactly oneVERIFY_SKIPSentry per issue instead of one per iteration.Two existing call sites in
.claude/workflows/ticketmill.jspush unboundedVERIFY_SKIPSentries with no roll-up, one per scope per iteration::3092— the quality loop's empty-findingsVERIFY_SKIPSpush:3624— the test loop's twin of the same pushBoth were deliberately left out of #163's scope (that issue was specifically about the quality gate's missing
recordGateOutcome/cap-note wiring, not about these two lines) but were flagged by both spec review and code review as needing the same treatment.Proposed change
Extract the "remembered index, rewrite in place" pattern used for
ctx.quality_cap_skip_indexinto a shared helper, and point all three call sites at it::3092(quality loop empty-findings push).:3624(test loop empty-findings push).This avoids triplicating the same roll-up logic under three differently-named remembered-index fields, and fixes the unbounded-entries problem at
:3092/:3624as a side effect.Note
.claude/workflows/ticketmill.jsis engine-owned; changes here should go through the normal engine-change process, not be folded into an unrelated issue's PR.Ref: #163, #172