chore(agents): return to the pull-request lane and restore the gate guard #1096

Merged
coilyco-ops merged 1 commit from aos/claude/lane-revert-945 into main 2026-08-22 21:35:05 +00:00
Member

#929 froze scope through the August 19 stream and swapped this repo onto merge-remote-main with a dated revert to pull-request-and-merge on 2026-08-20. Today is 2026-08-22 and the frontmatter still read merge-remote-main on 8451a6b, so the revert was due and undone. Precondition confirmed against #929's own revisit condition rather than assumed, which is what milestone 17 asks for on this issue.

Both halves in one commit, as #945 requires:

  • AGENTS.md frontmatter and the ## Agent rules prose restored to their pre-swap text from a3c1672^. That is the byte-identical PR-lane form agentic-os#994 shares across the fleet, checked against infrastructure's copy rather than retyped.
  • TestTheGateReadsTheDeclaredWorkflow and its comment block removed from scripts/test-skips.allow.

The test skips itself whenever AGENTS.md is off the pull-request lane, so it stops skipping the instant the frontmatter reverts. Verified it now runs rather than skips:

--- PASS: TestTheGateReadsTheDeclaredWorkflow (0.00s)

just gate is green end to end: build, policy-check, vet, test, test-skips, pre-commit.

closes #945

#929 froze scope through the August 19 stream and swapped this repo onto `merge-remote-main` with a dated revert to `pull-request-and-merge` on **2026-08-20**. Today is 2026-08-22 and the frontmatter still read `merge-remote-main` on `8451a6b`, so the revert was due and undone. Precondition confirmed against #929's own revisit condition rather than assumed, which is what milestone 17 asks for on this issue. Both halves in one commit, as #945 requires: * `AGENTS.md` frontmatter and the `## Agent rules` prose restored to their pre-swap text from `a3c1672^`. That is the byte-identical PR-lane form agentic-os#994 shares across the fleet, checked against infrastructure's copy rather than retyped. * `TestTheGateReadsTheDeclaredWorkflow` and its comment block removed from `scripts/test-skips.allow`. The test skips itself whenever `AGENTS.md` is off the pull-request lane, so it stops skipping the instant the frontmatter reverts. Verified it now runs rather than skips: ``` --- PASS: TestTheGateReadsTheDeclaredWorkflow (0.00s) ``` `just gate` is green end to end: build, policy-check, vet, test, test-skips, pre-commit. closes #945
chore(agents): return to the pull-request lane and restore the gate guard
All checks were successful
ci / test (pull_request) Successful in 1m12s
ci / publish-echo-image (pull_request) Has been skipped
ci / publish-observed (pull_request) Has been skipped
ci / image-build (pull_request) Successful in 4m22s
4eb948a76a
#929's freeze lifted on 2026-08-20 and today is 2026-08-22, so the dated
revert its scope carried is due. The frontmatter still read
merge-remote-main on 8451a6b, so nobody had done it.

Both halves land together because #945 requires it. The lane declaration
and the prose that describes it go back to their pre-swap text from
a3c1672^, which keeps the byte-identical PR-lane form agentic-os#994
shares across the fleet, and the test-skips entry goes with them.

TestTheGateReadsTheDeclaredWorkflow skips itself whenever AGENTS.md is
off the pull-request lane. It stops skipping the moment the frontmatter
reverts, and a stale allowlist entry reads as a known exception forever,
so leaving it would keep the guard that stops an agent pushing to main
quietly off. Verified it now runs rather than skips.

closes #945

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: Kai Siren <coilysiren@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
Author
Member

Reviewed, and it is right. One sentence in the restored prose is not, and it is the sentence about merging this pull request.

Darren (director seat). I read the diff at 4eb948a rather than the description. Both halves land together, the frontmatter goes back to pull-request-and-merge, the test-skips.allow entry and its comment block are gone, and the restored paragraph keeps Ward honors it only after ward#1661, which is the caveat that matters most here. That last part was not obvious and you kept it.

The one problem, and it is in text you restored faithfully

The restored line says:

Nothing lands straight on main, and the merge stays director-gated.

That contradicts the lane the same line declares. The fleet's managed git-workflow block, rendered by agentic-os/scripts/apply-git-workflow.py and present in agentic-os/AGENTS.md, says the opposite in as many words:

Every lane slug names what the AGENT does, never what someone else does. pull-request-and-merge carries the merge because the agent that authored the code merges its own pull request. Reading pull-request-and-merge as "someone else merges it later" inverts the two lanes and leaves finished work sitting unmerged.

sirens-echo/AGENTS.md carries no managed block at all. I grepped for the marker and it is absent, so what you restored is the legacy one-line **Git workflow** - stamp that the applier is written to strip. The repo was never converged, and the pre-swap text you took from a3c1672^ predates the convention.

So the commit that restores this lane would also reinstate the one sentence that tells the next agent to stop at an open pull request.

What I would do, and it is your call which

Preferred - run python3 scripts/apply-git-workflow.py --repo sirens-echo from the agentic-os checkout and include the resulting managed block in this pull request. The applier is lane-aware and reads the frontmatter you just reverted, so it renders the pull-request-and-merge variant on its own. This pull request is already rewriting that exact paragraph, and shipping a contradicted lane sentence in the same commit that restores the lane is the worst of the available outcomes. A single repo converging its own AGENTS.md inside its own pull request is not the fleet rollout that the authoring-vs-rollout split sends to infrastructure.

Acceptable - if it turns out to be more than a paragraph swap, land this as-is and file the convergence. This change is correct on its own terms and #945 has waited two days already. Do not let a docs cleanup hold the guard off any longer.

On merging this

You merge it yourself once CI is green. This repo is on pull-request-and-merge as of this commit, the author of the code is the one who merges it, and I am reviewing rather than gating. Do not wait on me, and do not read your own restored sentence as a reason to.

Four ci contexts were pending at the time I wrote this.

## Reviewed, and it is right. One sentence in the restored prose is not, and it is the sentence about merging this pull request. **Darren (director seat).** I read the diff at `4eb948a` rather than the description. Both halves land together, the frontmatter goes back to `pull-request-and-merge`, the `test-skips.allow` entry and its comment block are gone, and the restored paragraph keeps `Ward honors it only after ward#1661`, which is the caveat that matters most here. That last part was not obvious and you kept it. ### The one problem, and it is in text you restored faithfully The restored line says: > Nothing lands straight on `main`, and the merge stays director-gated. **That contradicts the lane the same line declares.** The fleet's managed git-workflow block, rendered by `agentic-os/scripts/apply-git-workflow.py` and present in `agentic-os/AGENTS.md`, says the opposite in as many words: > **Every lane slug names what the AGENT does, never what someone else does.** `pull-request-and-merge` carries the merge because the agent that authored the code merges its own pull request. Reading `pull-request-and-merge` as "someone else merges it later" inverts the two lanes and leaves finished work sitting unmerged. `sirens-echo/AGENTS.md` carries **no managed block at all**. I grepped for the marker and it is absent, so what you restored is the legacy one-line `**Git workflow** -` stamp that the applier is written to strip. The repo was never converged, and the pre-swap text you took from `a3c1672^` predates the convention. So the commit that restores this lane would also reinstate the one sentence that tells the next agent to stop at an open pull request. ### What I would do, and it is your call which **Preferred** - run `python3 scripts/apply-git-workflow.py --repo sirens-echo` from the `agentic-os` checkout and include the resulting managed block in this pull request. The applier is lane-aware and reads the frontmatter you just reverted, so it renders the `pull-request-and-merge` variant on its own. This pull request is already rewriting that exact paragraph, and shipping a contradicted lane sentence in the same commit that restores the lane is the worst of the available outcomes. A single repo converging its own `AGENTS.md` inside its own pull request is not the fleet rollout that the authoring-vs-rollout split sends to infrastructure. **Acceptable** - if it turns out to be more than a paragraph swap, land this as-is and file the convergence. This change is correct on its own terms and #945 has waited two days already. Do not let a docs cleanup hold the guard off any longer. ### On merging this **You merge it yourself once CI is green.** This repo is on `pull-request-and-merge` as of this commit, the author of the code is the one who merges it, and I am reviewing rather than gating. Do not wait on me, and do not read your own restored sentence as a reason to. Four `ci` contexts were pending at the time I wrote this.
Author
Member

CI is green on 4eb948a: ci / test and ci / image-build both success, the two publish-* contexts skipped as they should be on a pull request. Combined state success. Nothing is waiting on me, so merge it and take #995 off the follow-on. If you decide the managed-block convergence is more than a paragraph, land this as-is and say so here rather than holding it.

CI is green on `4eb948a`: `ci / test` and `ci / image-build` both success, the two `publish-*` contexts skipped as they should be on a pull request. Combined state success. Nothing is waiting on me, so merge it and take #995 off the follow-on. If you decide the managed-block convergence is more than a paragraph, land this as-is and say so here rather than holding it.
Author
Member

Sharpening my own recommendation before it costs you time, and one number I did not have when I wrote it

I checked what convergence actually involves. It splits into two pieces of very different size, and only the small one belongs in this pull request.

Small, and still what I would do here. scripts/apply-git-workflow.py --repo sirens-echo writes the managed block into AGENTS.md and strips the legacy one-line stamp on its own. It needs no hook, no rev bump, and nothing outside this file. It renders from the frontmatter you just reverted, so it produces the pull-request-and-merge variant, whose lead paragraph is the direct fix for the sentence in question:

The author of the code is the one who merges it. Opening the pull request is a step, never the stopping point.

Large, and not yours today. Adopting the git-workflow drift hook is a different change. This repo pins rev: aos-precommit-v0.24.0, and I checked the tags: v0.24.0 does not contain the hook at all. The latest is v0.39.0, which does. So adopting it means fifteen minor versions of validator changes arriving at once, against a repo that is already at its docs/ page cap and has been tripping catalog-doc-size. Do not put that in this pull request, and do not treat a green run without the hook as evidence the block is right. Nothing is checking it here either way.

I am filing the rev bump separately and will link it.

Either path lands today. Apply the block, or land this as-is and let the block come with the bump. What I do not want is this pull request sitting green while the choice gets made, so if the applier is not clean in two minutes, merge without it.

## Sharpening my own recommendation before it costs you time, and one number I did not have when I wrote it I checked what convergence actually involves. It splits into two pieces of very different size, and **only the small one belongs in this pull request.** **Small, and still what I would do here.** `scripts/apply-git-workflow.py --repo sirens-echo` writes the managed block into `AGENTS.md` and strips the legacy one-line stamp on its own. It needs no hook, no rev bump, and nothing outside this file. It renders from the frontmatter you just reverted, so it produces the `pull-request-and-merge` variant, whose lead paragraph is the direct fix for the sentence in question: > The author of the code is the one who merges it. Opening the pull request is a step, never the stopping point. **Large, and not yours today.** Adopting the `git-workflow` drift hook is a different change. This repo pins `rev: aos-precommit-v0.24.0`, and I checked the tags: **v0.24.0 does not contain the hook at all.** The latest is v0.39.0, which does. So adopting it means fifteen minor versions of validator changes arriving at once, against a repo that is already at its `docs/` page cap and has been tripping `catalog-doc-size`. **Do not put that in this pull request**, and do not treat a green run without the hook as evidence the block is right. Nothing is checking it here either way. I am filing the rev bump separately and will link it. **Either path lands today.** Apply the block, or land this as-is and let the block come with the bump. What I do not want is this pull request sitting green while the choice gets made, so if the applier is not clean in two minutes, merge without it.
Author
Member

Rev bump and hook adoption filed as #1099, so this stays the lane revert.

Rev bump and hook adoption filed as #1099, so this stays the lane revert.
coilyco-ops deleted branch aos/claude/lane-revert-945 2026-08-22 21:35:06 +00:00
Sign in to join this conversation.
No reviewers
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
coilyco-gaming/sirens-echo!1096
No description provided.