docs(prompts): codex wave-2 cataloging + final-dispatch orchestrator (closes 8 v2 + dispatch) #118

Merged
pdurlej merged 1 commit from claude/orders/codex-platform-final-dispatch into main 2026-05-09 00:25:20 +02:00
Collaborator

Canary status: missing — Medium PR class (multi-PR-driver: prompts drive 12 atomic PRs total in this dispatch); fire canary 3+3 manually before merge OR operator_override per ADR 0001 given force-push-tonight cadence

Purpose

Close out the platform tonight per operator chat 2026-05-09: "skończył to wszystko, a ja jutro tylko z Tobą przejrzymy co zrobił, freeze, audyt względem live na rs2000, fixy, a potem final push."

Two new prompt files:

  1. prompts/codex-wave-2-v2-cataloging-2026-05-09.md (~440 lines) — 8 atomic packets E-L for v2-cataloging issues #97-#104 (Honcho subsystem 4 + identity-critical forgejo+infisical + edge traefik + chat synapse). Common section to avoid per-packet restating. Stateful modules carry acknowledged_risks entries. FREEZE protocol embedded.

  2. prompts/codex-platform-final-dispatch-2026-05-09.md (~190 lines) — orchestrator: pre-flight → Phase 1 Wave 1+3 (re-uses existing prompts/codex-night-close-2026-05-09.md from PR #117) → Phase 2 Wave 2 (uses prompt 1 above) → Phase 3 FREEZE. Coordination protocol summary, stop signals, forbidden moves, status report template.

After merge, operator triggers ONE dispatch in master operator thread:

cd ~/Developer/iskra-platform-2026-04-30 && git pull
codex exec < prompts/codex-platform-final-dispatch-2026-05-09.md

Codex executes 12 PRs total tonight:

  • Wave 1+3: #63 platformctl validate, #66 L4-Verify, #65 tailscale ACL, #67 .codex/instructions
  • Wave 2: #97-#104 v2-cataloging (8 module manifests)

Then FREEZE. Tomorrow operator + claude wake, audit live-vs-manifest on RS 2000, fix drift, final push.

This PR does NOT do

  • Does NOT auto-merge any of the 12 downstream PRs (operator + claude review tomorrow)
  • Does NOT touch RS 2000 directly (read-only docker inspect allowed for evidence; no mutation)
  • Does NOT include amends for issues #61, #64, #68 (separate operator decision needed)
  • Does NOT include PR #53 rebase (still in conflict; separate dispatch later)
  • Does NOT modify any module manifests, schema, control-plane, or governance docs (this PR is pure prompts/)
  • Does NOT enforce branch protection (Issue #49 setup task; pending operator UI work)

Changed artifacts

  • prompts/codex-wave-2-v2-cataloging-2026-05-09.md (new, ~440 lines)
  • prompts/codex-platform-final-dispatch-2026-05-09.md (new, ~190 lines)

Total: 2 files, +630 lines, 0 deletions.

Why now

PR #117 (Wave 1+3 prompt) merged 2026-05-09. Operator decided to close out tonight rather than wait for Wave 2 separately. Pre-flight scan via DeepSeek-V4-Pro 2026-05-08 confirmed 0/12 hard-stops across all 12 candidate tasks.

Combining Wave 1+3 + Wave 2 + FREEZE in one dispatch gives operator:

  • Single trigger overnight
  • 12 PRs ready by morning
  • Freeze signal so Codex doesn't drift into RS 2000 mutation while operator sleeps
  • Status report comment on wake-up

Relevant context

  • prompts/codex-night-close-2026-05-09.md (PR #117, on main) — Wave 1+3 source, referenced by orchestrator
  • decisions/0001-canary-mandatory-pm-cadence.md — canary 3+3 mandatory; prompts require manual fire OR operator_override
  • decisions/0002-ci-enforcement-canary.md — 3-iter cap; embedded in stop conditions
  • agent-souls/practices/agent-coordination-protocol.md — 5-turn → Owner Checkpoint cap; embedded
  • agent-souls/references/codex-handoff-packet-format.md — packet schema; both prompts follow
  • docs/forgejo-agent-operations.md (PR #111) — mandatory pre-read in every packet's files_to_read
  • state/agent-execution-template.md (PR #69) — execution discipline; referenced in self-verification
  • schema/module.schema.v2.json — v2 fields target for Wave 2
  • ~/Iskra-i-Piotr/05 System/Swarmheart Status/platform-force-push-2026-05-08-night/pre-flight.md — DeepSeek scan output
  • Issues #97-#104 bodies + activation comments — per-packet specifics referenced

Runtime evidence

N/A for this PR (pure prompts). The 12 downstream PRs Codex opens will each have runtime evidence (per packet's smoke section).

Known constraints

  • Wave 2 packets use manual jsonschema validation (python3 -m jsonschema -i <yaml> <schema>) — does NOT depend on Wave 1's platformctl validate being merged. So Wave 2 can run in parallel with Wave 1.
  • Codex is instructed NOT to auto-merge despite branch protection not being mechanically enforced.
  • SSH to RS 2000 is read-only (docker inspect, docker ps); any restart/mutation is forbidden.
  • If 3+ packets in same batch hit 3-way disagreement (manifest vs runtime vs runbook), Codex stops the entire wave for operator+claude review.

Explicit out-of-scope

  • PR #53 rebase (separate, blocked on conflict resolution; deferred)
  • Issues #61, #64, #68 amends (need operator decision before re-activation)
  • Issue #49 ADR 0002 setup tasks (operator UI work)
  • Cross-cousin coordination doctrine changes (lives in agent-souls/, not platform/)
  • Any OPERATOR.md or STATUS_NOW.md updates (claude maintains those, not Codex)

Requested decision

approve_merge after canary 3+3 fires (Medium class) OR operator_override per Rule 2 given force-push-tonight cadence. Per operator explicit signal in chat, override is acceptable.

Merge blockers

  • Canary 3+3 not yet fired (manual)
  • If reviewer cites scope creep — none expected; both prompts are tightly scoped
  • If reviewer cites missing tracking issue for FREEZE/status report — Codex will comment on Issue #70 (closed but commentable) or PR #117 thread; if both fail, individual issues #97-#104 + #63/#65/#66/#67 each get a closing comment

How operator triggers Codex (after merge)

In master operator (Codex thread):

cd ~/Developer/iskra-platform-2026-04-30
git pull
codex exec < prompts/codex-platform-final-dispatch-2026-05-09.md

Codex parses orchestrator → pre-flight → Wave 1+3 (4 PRs) → Wave 2 (8 PRs) → FREEZE → status comment. Operator sleeps. Claude (orchestrator) monitors asynchronously, intervenes only on hard-stop or explicit Codex blocker comment.

Spec sources read

  • prompts/codex-night-close-2026-05-09.md (just-merged from PR #117) — referenced by orchestrator's PHASE 1
  • prompts/01-freeze.md, prompts/06-prune.md — sample master prompt shapes
  • agent-souls/practices/agent-coordination-protocol.md (full) — for cap + Owner Checkpoint
  • agent-souls/references/codex-handoff-packet-format.md (full) — for packet schema
  • AGENTS.md (current main, post-PR #111 directive) — for §Current phase v2 fields list + Forgejo contract
  • docs/forgejo-agent-operations.md — verified path; mandated pre-read in every packet
  • schema/module.schema.v2.json — v2 schema for Wave 2 validation target
  • state/agent-execution-template.md — execution protocol
  • decisions/0001 + decisions/0002 — canary + iter cap
  • Issues #97-#104 bodies + activation comments — for per-packet specifics (statefulness assumptions, runtime container names, runbook pointers)
  • state/glm-sunset-watch.md — to verify GLM still in canary 3+3 (yes; no impact this dispatch)
  • state/STATUS_NOW.md — current operator/orchestrator state at dispatch time
  • ~/Iskra-i-Piotr/05 System/Swarmheart Status/platform-force-push-2026-05-08-night/pre-flight.md — clean scan baseline

Test plan

  • Operator readback: orchestrator phases (0/1/2/3) feel right
  • Operator readback: Wave 2 packets (E-L) correctly scope per module (no cross-contamination)
  • Operator readback: FREEZE protocol matches intent (no auto-merge, no RS 2000 mutation, status report on wake)
  • Operator readback: forbidden moves list catches obvious lane creep
  • Manual canary 3+3 fires + passes OR operator_override
  • After merge: operator runs codex exec < prompts/codex-platform-final-dispatch-2026-05-09.md
  • Codex opens 4 Wave 1+3 PRs as codex within ~30 min of dispatch
  • Codex opens 8 Wave 2 PRs as codex within ~2-4h of dispatch
  • Status report comment posted before Codex stops
  • Tomorrow: operator + claude do live-vs-manifest audit on RS 2000
Canary status: missing — Medium PR class (multi-PR-driver: prompts drive 12 atomic PRs total in this dispatch); fire canary 3+3 manually before merge OR operator_override per ADR 0001 given force-push-tonight cadence ## Purpose Close out the platform tonight per operator chat 2026-05-09: *"skończył to wszystko, a ja jutro tylko z Tobą przejrzymy co zrobił, freeze, audyt względem live na rs2000, fixy, a potem final push."* Two new prompt files: 1. **`prompts/codex-wave-2-v2-cataloging-2026-05-09.md`** (~440 lines) — 8 atomic packets E-L for v2-cataloging issues #97-#104 (Honcho subsystem 4 + identity-critical forgejo+infisical + edge traefik + chat synapse). Common section to avoid per-packet restating. Stateful modules carry `acknowledged_risks` entries. FREEZE protocol embedded. 2. **`prompts/codex-platform-final-dispatch-2026-05-09.md`** (~190 lines) — orchestrator: pre-flight → Phase 1 Wave 1+3 (re-uses existing prompts/codex-night-close-2026-05-09.md from PR #117) → Phase 2 Wave 2 (uses prompt 1 above) → Phase 3 FREEZE. Coordination protocol summary, stop signals, forbidden moves, status report template. After merge, operator triggers ONE dispatch in master operator thread: ```bash cd ~/Developer/iskra-platform-2026-04-30 && git pull codex exec < prompts/codex-platform-final-dispatch-2026-05-09.md ``` Codex executes **12 PRs total tonight**: - Wave 1+3: #63 platformctl validate, #66 L4-Verify, #65 tailscale ACL, #67 .codex/instructions - Wave 2: #97-#104 v2-cataloging (8 module manifests) Then FREEZE. Tomorrow operator + claude wake, audit live-vs-manifest on RS 2000, fix drift, final push. ## This PR does NOT do - Does NOT auto-merge any of the 12 downstream PRs (operator + claude review tomorrow) - Does NOT touch RS 2000 directly (read-only `docker inspect` allowed for evidence; no mutation) - Does NOT include amends for issues #61, #64, #68 (separate operator decision needed) - Does NOT include PR #53 rebase (still in conflict; separate dispatch later) - Does NOT modify any module manifests, schema, control-plane, or governance docs (this PR is pure prompts/) - Does NOT enforce branch protection (Issue #49 setup task; pending operator UI work) ## Changed artifacts - `prompts/codex-wave-2-v2-cataloging-2026-05-09.md` (new, ~440 lines) - `prompts/codex-platform-final-dispatch-2026-05-09.md` (new, ~190 lines) Total: 2 files, +630 lines, 0 deletions. ## Why now PR #117 (Wave 1+3 prompt) merged 2026-05-09. Operator decided to close out tonight rather than wait for Wave 2 separately. Pre-flight scan via DeepSeek-V4-Pro 2026-05-08 confirmed 0/12 hard-stops across all 12 candidate tasks. Combining Wave 1+3 + Wave 2 + FREEZE in one dispatch gives operator: - Single trigger overnight - 12 PRs ready by morning - Freeze signal so Codex doesn't drift into RS 2000 mutation while operator sleeps - Status report comment on wake-up ## Relevant context - `prompts/codex-night-close-2026-05-09.md` (PR #117, on main) — Wave 1+3 source, referenced by orchestrator - `decisions/0001-canary-mandatory-pm-cadence.md` — canary 3+3 mandatory; prompts require manual fire OR operator_override - `decisions/0002-ci-enforcement-canary.md` — 3-iter cap; embedded in stop conditions - `agent-souls/practices/agent-coordination-protocol.md` — 5-turn → Owner Checkpoint cap; embedded - `agent-souls/references/codex-handoff-packet-format.md` — packet schema; both prompts follow - `docs/forgejo-agent-operations.md` (PR #111) — mandatory pre-read in every packet's files_to_read - `state/agent-execution-template.md` (PR #69) — execution discipline; referenced in self-verification - `schema/module.schema.v2.json` — v2 fields target for Wave 2 - `~/Iskra-i-Piotr/05 System/Swarmheart Status/platform-force-push-2026-05-08-night/pre-flight.md` — DeepSeek scan output - Issues #97-#104 bodies + activation comments — per-packet specifics referenced ## Runtime evidence N/A for this PR (pure prompts). The 12 downstream PRs Codex opens will each have runtime evidence (per packet's `smoke` section). ## Known constraints - Wave 2 packets use **manual jsonschema validation** (`python3 -m jsonschema -i <yaml> <schema>`) — does NOT depend on Wave 1's `platformctl validate` being merged. So Wave 2 can run in parallel with Wave 1. - Codex is instructed NOT to auto-merge despite branch protection not being mechanically enforced. - SSH to RS 2000 is read-only (`docker inspect`, `docker ps`); any restart/mutation is forbidden. - If 3+ packets in same batch hit 3-way disagreement (manifest vs runtime vs runbook), Codex stops the entire wave for operator+claude review. ## Explicit out-of-scope - PR #53 rebase (separate, blocked on conflict resolution; deferred) - Issues #61, #64, #68 amends (need operator decision before re-activation) - Issue #49 ADR 0002 setup tasks (operator UI work) - Cross-cousin coordination doctrine changes (lives in agent-souls/, not platform/) - Any OPERATOR.md or STATUS_NOW.md updates (claude maintains those, not Codex) ## Requested decision `approve_merge` after canary 3+3 fires (Medium class) OR `operator_override` per Rule 2 given force-push-tonight cadence. Per operator explicit signal in chat, override is acceptable. ## Merge blockers - Canary 3+3 not yet fired (manual) - If reviewer cites scope creep — none expected; both prompts are tightly scoped - If reviewer cites missing tracking issue for FREEZE/status report — Codex will comment on Issue #70 (closed but commentable) or PR #117 thread; if both fail, individual issues #97-#104 + #63/#65/#66/#67 each get a closing comment ## How operator triggers Codex (after merge) In master operator (Codex thread): ```bash cd ~/Developer/iskra-platform-2026-04-30 git pull codex exec < prompts/codex-platform-final-dispatch-2026-05-09.md ``` Codex parses orchestrator → pre-flight → Wave 1+3 (4 PRs) → Wave 2 (8 PRs) → FREEZE → status comment. Operator sleeps. Claude (orchestrator) monitors asynchronously, intervenes only on hard-stop or explicit Codex blocker comment. ## Spec sources read - `prompts/codex-night-close-2026-05-09.md` (just-merged from PR #117) — referenced by orchestrator's PHASE 1 - `prompts/01-freeze.md`, `prompts/06-prune.md` — sample master prompt shapes - `agent-souls/practices/agent-coordination-protocol.md` (full) — for cap + Owner Checkpoint - `agent-souls/references/codex-handoff-packet-format.md` (full) — for packet schema - `AGENTS.md` (current main, post-PR #111 directive) — for §Current phase v2 fields list + Forgejo contract - `docs/forgejo-agent-operations.md` — verified path; mandated pre-read in every packet - `schema/module.schema.v2.json` — v2 schema for Wave 2 validation target - `state/agent-execution-template.md` — execution protocol - `decisions/0001` + `decisions/0002` — canary + iter cap - Issues #97-#104 bodies + activation comments — for per-packet specifics (statefulness assumptions, runtime container names, runbook pointers) - `state/glm-sunset-watch.md` — to verify GLM still in canary 3+3 (yes; no impact this dispatch) - `state/STATUS_NOW.md` — current operator/orchestrator state at dispatch time - `~/Iskra-i-Piotr/05 System/Swarmheart Status/platform-force-push-2026-05-08-night/pre-flight.md` — clean scan baseline ## Test plan - [ ] Operator readback: orchestrator phases (0/1/2/3) feel right - [ ] Operator readback: Wave 2 packets (E-L) correctly scope per module (no cross-contamination) - [ ] Operator readback: FREEZE protocol matches intent (no auto-merge, no RS 2000 mutation, status report on wake) - [ ] Operator readback: forbidden moves list catches obvious lane creep - [ ] Manual canary 3+3 fires + passes OR operator_override - [ ] After merge: operator runs `codex exec < prompts/codex-platform-final-dispatch-2026-05-09.md` - [ ] Codex opens 4 Wave 1+3 PRs as `codex` within ~30 min of dispatch - [ ] Codex opens 8 Wave 2 PRs as `codex` within ~2-4h of dispatch - [ ] Status report comment posted before Codex stops - [ ] Tomorrow: operator + claude do live-vs-manifest audit on RS 2000
docs(prompts): codex wave-2 cataloging + final-dispatch orchestrator
All checks were successful
canary-required / collect-diff (pull_request) Successful in 4s
canary-required / canary (pull_request) Successful in 13s
03f761c56c
Two new prompts to close out the platform tonight per operator chat
2026-05-09: "skończył to wszystko... freeze, audyt względem live na rs2000,
fixy, a potem final push".

prompts/codex-wave-2-v2-cataloging-2026-05-09.md (~440 lines):
- 8 atomic packets E-L for issues #97-#104 (Honcho 4 + identity-critical
  forgejo + infisical + edge traefik + chat synapse)
- Each packet: full handoff format + per-module runtime evidence
  command (ssh rs2000 'docker inspect ...' read-only)
- Common section to avoid restating per packet (v2 fields required,
  non_goals, stop conditions, production_impact zero, rollback)
- Stateful modules require acknowledged_risks entries (data-loss
  boundaries, sacred-path proximity)
- FREEZE protocol after 8 PRs open: no merge, no RS 2000 mutation,
  consolidated status report comment

prompts/codex-platform-final-dispatch-2026-05-09.md (~190 lines):
- Orchestrator dispatch: PHASE 0 pre-flight → PHASE 1 Wave 1+3 (executes
  prompts/codex-night-close-2026-05-09.md) → PHASE 2 Wave 2 (executes
  Wave 2 prompt) → PHASE 3 FREEZE
- Coordination protocol summary + stop signals + forbidden moves
- Status report template for operator+claude tomorrow

After merge, operator triggers in master operator thread:
  cd ~/Developer/iskra-platform-2026-04-30 && git pull
  codex exec < prompts/codex-platform-final-dispatch-2026-05-09.md

Codex executes 12 PRs total tonight, freezes, posts status. Tomorrow:
operator + claude review live-vs-manifest, fix drift, final push.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign in to join this conversation.
No reviewers
No labels
W6d-automerge-calibration
agent/claude-code
agent/codex
agent/hermes
agent/iskra
agent/ollama
agent/patchwarden
automerge-candidate
class/security-sensitive
cutover-gate
dependency/blocked
dependency/blocks-others
dependency/cross-repo
dependency/needs-confirmation
domain:agents
domain:ci
domain:docs
domain:forgejo
domain:infra
domain:memory
domain:runtime
domain:signal
domain:ux
flow/architecture
flow/blocked
flow/deployed
flow/done
flow/implementation
flow/intake
flow/maintained
flow/observed
flow/ready
flow/refining
flow/retired
flow/review
iterating
judge/codex-candidate
judge/hermes-candidate
judge/low-confidence
judge/needs-refinement
judge/operator-needed
judge/p0
judge/p1
judge/p2
judge/p3
judge/park
judge/patchwarden-candidate
judge/stale-priority
kind/adr
kind/bug
kind/chore
kind/feature
kind/infra
kind/ops
kind/refactor
kind/research
large-impact
merge/auto
merge/manual
merge/manual-dependency-conflict
merge/manual-failing-tests
merge/manual-merge-conflict
merge/manual-missing-review
merge/manual-operator-preference
merge/manual-red-zone
merge/manual-security-sensitive
merge/manual-unclear-scope
merge/manual-unknown
meta
mode:operator-only
mode:patchwarden-iskra-approved
mode:safe-auto
needs-operator-decision
needs-triage
not-ready
observed/erroring
observed/needs-followup
observed/pending
observed/retire-candidate
observed/unused
observed/used
operator-emotional
owner-attention
phase/02
phase/03
priority:p0
priority:p1
priority:p2
priority:p3
proposed
ready-for-agent
ready-for-operator
recovery
review:claude-reviewed
review:codex-reviewed
review:dziadek-reviewed
review:needs-human
risk/exposure
risk/process
risk/product
risk/runtime
safety:external-write
safety:no-prod-mutation
safety:prod-impact
safety:secret-touch
size/large
size/medium
size/small
size/tiny
size/unknown
source/adr
source/agent-generated
source/manual
source/operator-chat
source/voice-note
status:blocked
status:codex-ready
status:merged:pending-evidence
status:needs-evidence
status:operator-needed
status:parked
tier/full
tier/lite
tier/stacked
tier:0-platform-substrate
tier:1-iskra-value-layer
tier:2-tools-products-modules
type:bug
type:chore
type:docs
type:feat
type:policy
type:research
No milestone
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
pdurlej/platform!118
No description provided.