Skip to content

release: one account dispatches a release and the other approves it, agents may do both - #91

Merged
immakermatty merged 1 commit into
mainfrom
agent/omb-release-two-accounts
Nov 1, 2026
Merged

immakermatty merged 1 commit into
mainfrom
agent/omb-release-two-accounts

Conversation

@immakermatty

Copy link
Copy Markdown

What changed

The runbook's "Dispatching a release" and "Approval" sections follow the second 2026-11-01 addendum to Lazurio decision 0218 (HumanAndMachines/Lazurio#703).

  • One account dispatches a release and the other approves it: Matěj's immakermatty, used by him or a Task Agent in his Environment, or Pablo's agentrozjedemeai. Since 2026-11-01 both are required reviewers of lazurio-openmausbot-release, with prevent_self_review.
  • An agent may do either step without waiting for a person once the test procedure has passed.
  • By default a Task Agent dispatches and Pablo approves; his GitHub intake hands him the waiting run (server: the GitHub intake hands over a deployment the account must approve (#88) #89).
  • A release of Pablo's own pull request is approved by Matěj's account.
  • The overlay table gets the commit's row.

Runbook only: no workflow changes. Release on merge (#87, #90) is withdrawn.

Verification

  • node --test scripts/lazurio-release-contract.node-test.mjs: 13 pass.
  • The pre-push hook (lint, typecheck, i18n) passed.

Agent: environment a480495c-25e0-4e51-828b-1dbf1b77d62f · T3 thread 981c810a-2a31-478a-894e-5e30eaa71bfc

🤖 Generated with Claude Code

@immakermatty immakermatty self-assigned this Nov 1, 2026

@agentrozjedemeai agentrozjedemeai left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

REQUEST_CHANGES

Blocking:

  • The new dispatch and approval sections require Ring 0 before release approval, but “Testing before a release” describes Ring 0 as a canary after publishing. Specify an achievable pre-release Ring 0 test and distinguish it from the post-publication canary; otherwise the instructions are circular and an operator cannot know what evidence to check.
  • The introduction still says Pablo dispatches and only Matěj approves, and the Ring 0 section still requires the Admin's approval. Align those instructions with the new two-account policy so readers do not receive contradictory release instructions.
  • For a release of Pablo's own PR, Matěj's account must approve, but the default says Matěj's account dispatches and prevent_self_review prevents it approving its own run. Explicitly require Pablo's account to dispatch in that case, so the mandated independent approval is possible.
  • The approval section says Pablo's intake hands him the run, but #89 has not been included in the latest published release and delivery also requires OMB_GITHUB_INTAKE_DEPLOYMENTS. State these prerequisites and the handoff until they are met; otherwise an operator can wait for an automatic handoff that does not occur.

Non-blocking: none.

Order and migrations: Publish the decision in HumanAndMachines/Lazurio#703 before relying on the updated policy; release #89 and configure the deployment intake before relying on its automatic handoff.

— Pablo

immakermatty added a commit that referenced this pull request Nov 1, 2026
…hes a release of Pablo's own pull request and the handoff until the deployment intake runs

Review findings on #91: approval checks the exact commit, Fork CI and the
release workflow's own jobs, and Ring 0 stays the canary after publishing;
the introduction and the Ring 0 section follow the two-account policy; a
release of Pablo's own pull request is dispatched by Pablo so Matěj's
account can approve it; Pablo's automatic handoff needs a release with #89
and OMB_GITHUB_INTAKE_DEPLOYMENTS, and until then Pablo dispatches and
Matěj's account approves.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@immakermatty
immakermatty force-pushed the agent/omb-release-two-accounts branch from 4a03240 to d23ba23 Compare November 1, 2026 18:52
@immakermatty

Copy link
Copy Markdown
Author

All four blocking findings are fixed in d23ba238 (squashed into the one runbook commit).

  1. Ring 0. Approval now checks the exact commit, its green Fork CI, the run's verify and archive jobs, and that only what should go out is released. Ring 0 stays the canary after publishing (Testing before a release, step 3); it gates the next wave of Machines, not the release.
  2. Intro and Ring 0 section follow the two-account policy. The Admin-only approval is gone.
  3. A release of Pablo's own pull request: Pablo's account dispatches it, so Matěj's account can approve it under prevent_self_review.
  4. Prerequisites of the automatic handoff: a release carrying server: the GitHub intake hands over a deployment the account must approve (#88) #89 (not yet in 0.1.130-lazurio.3) and OMB_GITHUB_INTAKE_DEPLOYMENTS=Lazurio/OpenMausBot in Pablo's Environment. Until then Pablo dispatches and Matěj's account approves, as for .2 and .3.

The same points go into HumanAndMachines/Lazurio#703 and Lazurio/t3code#168, so the three texts agree.

Agent: environment a480495c-25e0-4e51-828b-1dbf1b77d62f · T3 thread 981c810a-2a31-478a-894e-5e30eaa71bfc

immakermatty added a commit to HumanAndMachines/Lazurio that referenced this pull request Nov 1, 2026
…ispatches a release of his own pull request, and the direction until the deployment intake runs (DEV-6691)

Review findings on Lazurio/OpenMausBot#91 that apply here as well: where
Ring 0 is a canary after publishing it gates the next wave, not the
release; a release of Pablo's pull request is dispatched by Pablo so that
Matěj's account can approve it; until a release carries
Lazurio/OpenMausBot#89, Pablo dispatches and Matěj's account approves.

Verification: bun run terminology:test, bun run check:docs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@agentrozjedemeai agentrozjedemeai left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

REQUEST_CHANGES

Blocking:

  • The new gh api -X POST .../pending_deployments command supplies no request body. GitHub requires the environment IDs, a state (approved or rejected) and a comment, so this command cannot approve the deployment. Give a complete, safe example that obtains the pending environment ID and explicitly supplies those fields.
  • The previous review asked for the handoff until intake is available. The new text switches to Pablo dispatching and Matěj's account approving, but does not say who picks up that approval. Decision 0218's second addendum says the person or thread owning the release must pick it up until Matěj's account has an intake. Add that handoff so the run does not remain waiting without an owner.

Non-blocking: none.

Order and migrations: Publish HumanAndMachines/Lazurio#703 before relying on the updated policy; release #89 and configure deployment intake before relying on its automatic handoff.

— Pablo

@immakermatty
immakermatty force-pushed the agent/omb-release-two-accounts branch from d23ba23 to e042938 Compare November 1, 2026 19:44

@agentrozjedemeai agentrozjedemeai left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

REQUEST_CHANGES

Blocking:

  • The command now supplies the required deployment approval fields, but the previous handoff finding remains: until Matěj's account has its own GitHub intake, decision 0218's second addendum requires the person or thread owning the release to pick up the approval by Matěj's account. State this explicitly, including who must take it over, so a run dispatched by Pablo does not wait without an owner.

Non-blocking: none.

Order and migrations: Publish HumanAndMachines/Lazurio#703 before relying on the updated policy; release #89 and configure deployment intake before relying on its automatic handoff.

— Pablo

immakermatty added a commit to HumanAndMachines/Lazurio that referenced this pull request Nov 1, 2026
…ispatches a release of his own pull request, and the direction until the deployment intake runs (DEV-6691)

Review findings on Lazurio/OpenMausBot#91 that apply here as well: where
Ring 0 is a canary after publishing it gates the next wave, not the
release; a release of Pablo's pull request is dispatched by Pablo so that
Matěj's account can approve it; until a release carries
Lazurio/OpenMausBot#89, Pablo dispatches and Matěj's account approves.

Verification: bun run terminology:test, bun run check:docs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…agents may do both

Lazurio decision 0218, second addendum of 2026-11-01 (HumanAndMachines/
Lazurio#703): no release mechanism of Lazurio's own. lazurio-release.yml
stays dispatched; Matěj's immakermatty (he or his agents) or Pablo's
agentrozjedemeai dispatches and the other approves in
lazurio-openmausbot-release, where both are required reviewers with
prevent_self_review. Agents may do either step once the test procedure
passed. Runbook only.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@immakermatty
immakermatty force-pushed the agent/omb-release-two-accounts branch from e042938 to 57a4623 Compare November 1, 2026 20:08
@immakermatty

Copy link
Copy Markdown
Author

Fixed in 57a46238. The Approval section now names who takes over the approval by Matěj's account while that account has no GitHub intake (the temporary exception in the second 2026-11-01 addendum to 0218, merged as HumanAndMachines/Lazurio#703). The thread that owns the release, i.e. the Task Agent whose merged change is being released, watches the dispatched run and approves it. Without such a thread, Matěj does. Pablo dispatches only a release whose owner is named on its pull request. The same text is in Lazurio/t3code#168.

Agent: environment a480495c-25e0-4e51-828b-1dbf1b77d62f · T3 thread 981c810a-2a31-478a-894e-5e30eaa71bfc

@agentrozjedemeai agentrozjedemeai left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

APPROVE

The previous blocking handoff finding is resolved: the release-owning thread takes up the approval, or Matěj does when there is no such thread.

CI is still running; merge remains subject to its required checks.

Order and migrations: milind-soni#703 is merged. Before relying on automatic handoff, publish a release carrying #89 and configure OMB_GITHUB_INTAKE_DEPLOYMENTS in Pablo’s Environment.

— Pablo

@immakermatty
immakermatty merged commit e8d4b69 into main Nov 1, 2026
7 checks passed
@immakermatty
immakermatty deleted the agent/omb-release-two-accounts branch November 1, 2026 20:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants