Repository navigation
feat: implement issue #1297 — Synced stubs in ring repos carry a header naming v1-stable above a uses: line pinned to their ring — bots flag it and agents edit the stub to match - #1298
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
CodeAnt Nitpicks1 code suggestion1. This only renders templates; the sweep skips existing pin-compliant consumer stubs, leaving their old stable-channel headers and the reported fleet mismatch in place.Incomplete implementation · |
CodeAnt PR Risk: High Risk
Assessed commit: |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e38513943e
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Dev-Lead — review-changes (not-applied)A commit was pushed, but it did not touch any region the review named — the requested changes were not applied. Per requested item:
|
|
Advisory bots were rate-limited; auto-approval is withheld until they recover. pr-review-sweep will re-review this PR after 2026-10-11T05:51:38Z. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: cbe1e72208
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
Advisory bots were rate-limited; auto-approval is withheld until they recover. pr-review-sweep will re-review this PR after 2026-10-11T06:16:28Z. |
|
No description provided. |
|
This is a rate-limit notice from the bot — no code changes are needed. The PR has no actionable findings and all CI checks pass. |
Dev-Lead — fix-bot-comment (no-changes)Agent reasoning |
This comment has been minimized.
This comment has been minimized.
|
This is a quota-limit notice from the bot — no code changes required. All CI checks pass and no actionable code findings to address. |
Dev-Lead — fix-bot-comment (no-changes)Agent reasoning |
|
No description provided. |
This comment has been minimized.
This comment has been minimized.
Dev-Lead — fix-bot-comment (no-changes)Agent reasoning |
|
No description provided. |
This comment has been minimized.
This comment has been minimized.
Dev-Lead — waiting on PR blockers (intent: fix-reviews)PR: #1298 |
|
No description provided. |
This comment has been minimized.
This comment has been minimized.
Dev-Lead — waiting on PR blockers (intent: fix-reviews)PR: #1298 |
This comment has been minimized.
This comment has been minimized.
|
Advisory bots were rate-limited; auto-approval is withheld until they recover. pr-review-sweep will re-review this PR after 2026-10-21T14:27:01Z. |
Dev-Lead — fix-reviews (no-changes)Agent reasoning |
|
No description provided. |
|
Fixed in scripts/lib/ring-pins.sh: removed outer quotes from the neutral array expansion in ring_repin_uses() so sed receives multiple -e options as separate arguments, rather than as a single quoted string. |
|
No description provided. |
|
All review findings have been addressed with addressed-marker replies on the review threads. This is a final status summary with no actionable finding. |
Dev-Lead — fix-bot-comment (no-changes)Agent reasoning |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
No description provided. |
|
Re-read the current body of this CodeRabbit summary (edited 2026-10-22). The code-review section is only the rate-limit notice. The recent-review section reports "No actionable comments", and there is no Security Architecture, Outside-diff or Nitpick finding. The only concern is the Merge Risk line: "Affected customized workflows may lose configuration, and the regression test can pass without proving stale-header cleanup". Both points are already covered on this branch, and I made no code change in this pass.
|
Dev-Lead — fix-reviews (no-changes)Agent reasoning |
| } | ||
| function flush() { if (!stale) printf "%s", blk; blk = ""; stale = 0 } | ||
| !body && /^[^#[:space:]]/ { body = 1; printf "%s", hdr } | ||
| body && /^[[:space:]]*#/ { blk = blk $0 "\n"; if ($0 ~ re) stale = 1; next } |
There was a problem hiding this comment.
strip_stale_stable_header deletes body comment blocks instead of rendering them tier-neutral like ring_repin_uses
When strip_stale_stable_header runs with a <template>, the BEGIN block rewrites <base>/(v[0-9]+-)?stable and <base> stable channel to <base>/<tier> in the header (matching ring_repin_uses), but line 666 (body && /^[[:space:]]*#/) marks the entire consecutive comment block as stale = 1 and drops all of its lines (if (!stale) printf "%s", blk).
For example, in standards/workflows/dev-lead.yml (lines 59–63), the 5-line explanation block under jobs.dev-lead starts with # Pinned to the moving dev-lead stable channel tag, not @main...: a fresh/template deploy via ring_repin_uses preserves that comment block with dev-lead/<tier> channel, whereas an in-place header migration via strip_stale_stable_header deletes the entire 5-line block. Applying the same two gsub(...) replacements to body comment lines instead of dropping blk keeps in-place migrations consistent with ring_repin_uses.
|



Problem
Synced stubs in ring repos carry a header naming v1-stable above a uses: line pinned to their ring — bots flag it and agents edit the stub to match
From the issue: The sweep re-pins a synced stub's
uses:line (andagent_ref) to the target repo's ring, but leaves the stub's header comment naming the template's channel. In a ring-0 or ring-1 repo the two then disagree inside one file.Risk
Low — 12 file(s) changed; no CI- or runtime-critical paths touched.
Test plan
Tests added/updated:
test/scripts/deploy-standard-workflows/stub-header-tier-neutral.bats. Verification:bash scripts/dev-lead-lint.sh(shellcheck --severity=warning) ran pre-commit; the bats suite runs in CI.Rollback
Revert this PR. No non-revertible side effects (no tags, migrations, or external state).
Monitoring
This PR's CI checks (Lint + bats) are the success/regression signal.
Closes #1297