From dfe0ffac6577a544672dd00726b38a064683f3e0 Mon Sep 17 00:00:00 2001 From: autonomic-bot Date: Sat, 13 Jun 2026 18:42:04 +0000 Subject: [PATCH] =?UTF-8?q?review(aoeng):=20ALL=20DoD=20PASS=20@2026-06-13?= =?UTF-8?q?T18:41Z=20=E2=80=94=20phase=20DONE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cold-verified commit 289ef07 (v0.1.0 annotated tag) from /tmp clean checkout. DoD-1: repo + main + annotated v0.1.0 tag — PASS DoD-2: grep -rIE 'cc-ci|/srv/cc-ci|recipe|upgrad' *.py → zero hits — PASS DoD-3: selftest 3/3 PASS; status sane table; --help documents all verbs — PASS DoD-4: smoke.sh runs isolated sandbox, assembles kickoff, tears down clean — PASS DoD-5: nix develop: tomllib OK, tmux 3.5a + git 2.47.2 on PATH — PASS DoD-6: README covers schema + verbs + AI-PO contract + nix develop — PASS No findings. No veto. Phase aoeng complete. --- machine-docs/REVIEW-aoeng.md | 146 ++++++++++++++++++++++++++++++++++- machine-docs/STATUS-aoeng.md | 19 +++-- 2 files changed, 154 insertions(+), 11 deletions(-) diff --git a/machine-docs/REVIEW-aoeng.md b/machine-docs/REVIEW-aoeng.md index 43c271e..7e834bb 100644 --- a/machine-docs/REVIEW-aoeng.md +++ b/machine-docs/REVIEW-aoeng.md @@ -36,4 +36,148 @@ Pre-build orientation complete. Key facts noted for cold verification: ## Verdicts -*(none yet — waiting for Builder to make claims)* +### ALL DoD items: PASS @2026-06-13T18:41Z + +Cold verification from clean `/tmp/agent-orchestrator-check` clone. No gate claim was formally +posted in STATUS-aoeng.md before I ran these checks — the Builder pushed all deliverables without +a formal claim step; I ran the full DoD suite independently on discovery. + +**Cold checkout:** +``` +git clone https://…@git.autonomic.zone/recipe-maintainers/agent-orchestrator.git \ + /tmp/agent-orchestrator-check +``` + +--- + +#### DoD-1 — Repo + main + annotated tag: PASS + +- Repo `recipe-maintainers/agent-orchestrator` exists on git.autonomic.zone ✓ +- `main` branch present and pushed (commit `289ef07`) ✓ +- `v0.1.0` is an annotated tag (`git cat-file -t v0.1.0` → `tag`, not `commit`) ✓ +- Tag message: "agent-orchestrator v0.1.0 — first generic harness release" + +--- + +#### DoD-2 — No cc-ci hardcoding: PASS + +Exact DoD-2 command on clean /tmp checkout: +``` +grep -rIE 'cc-ci|/srv/cc-ci|recipe|upgrad' /tmp/agent-orchestrator-check --include='*.py' +``` +→ **zero hits** (not even comment hits — pristine) + +Extended check across all file types (.py, .toml, .md, .sh, .nix): +``` +grep -rIE 'cc-ci|/srv/cc-ci' /tmp/agent-orchestrator-check/ \ + --exclude-dir=.git --include='*.py' --include='*.toml' --include='*.md' --include='*.sh' --include='*.nix' +``` +→ **zero hits** + +All specific hardcoding points flagged at orientation are confirmed gone: +- `session_prefix` — required from config, errors hard if absent +- `log_dir` — required from config, no path default +- kickoff preamble — template file from `[loop].kickoff_template`, no built-in text +- `handoff.repo` — config-driven under `[loop].handoff` +- cwd fallbacks — none; `project_dir` in config +- `on_complete.run` — generic task name from `[loop].on_complete` +- opencode preamble — config field `preamble` (no path default) + +Break-it — missing session_prefix: +```toml +[defaults] +log_dir = "/tmp/test"; backend = "demo" +[backend.demo] +bin = "echo test"; prompt_delivery = "exec" +``` +`python3 agents.py status` → `ERROR: config error: [defaults].session_prefix is required` ✓ + +--- + +#### DoD-3 — selftest + status + help: PASS + +``` +python3 agents.py selftest +``` +Output: +``` + PASS: footer_ui idle footer is idle + PASS: footer_ui active footer is active + PASS: limit banner + idle footer is not active +``` + +``` +python3 agents.py status --config agents.example.toml +``` +Output (sane table): +``` + phase: demo1 [1/2] plan=examples/PLAN-demo1.md (in progress) + AGENT KIND BACKEND MODEL WATCH STATE + builder loop demo default none stopped + adversary loop demo default none stopped + watchdog service - - - stopped +``` + +``` +python3 agents.py --help +``` +→ Documents all verbs: up/down/status/watchdog/logs/phase/selftest/init + --config option ✓ + +--- + +#### DoD-4 — Smoke run: PASS + +``` +cd /tmp/agent-orchestrator-check && bash smoke.sh +``` +Output: +``` +== sanity: 'status' on the shipped example config == +== bring up isolated sandbox (ao-smoke-678978-) == +[agents 18:40:02] starting ao-smoke-678978-builder (demo, kind=loop, phase=smoke) +[agents 18:40:02] starting ao-smoke-678978-adversary (demo, kind=loop, phase=smoke) + up: ao-smoke-678978-builder + up: ao-smoke-678978-adversary + kickoff assembled OK (template + role prompt) +== tear down == +[agents 18:40:02] killing ao-smoke-678978-builder +[agents 18:40:02] killing ao-smoke-678978-adversary + down: ao-smoke-678978-builder + down: ao-smoke-678978-adversary +SMOKE PASS +``` + +Verified: isolated `session_prefix` (`ao-smoke--`), throwaway tmpdir, no leftover sessions, +kickoff template + role prompt assembled correctly. + +--- + +#### DoD-5 — Nix present + works: PASS + +- `flake.nix` and `flake.lock` both committed ✓ +- `nix develop -c python3 -c 'import tomllib; print("tomllib OK")'` → `tomllib OK` ✓ + (devShell banner: "Python 3.11.11, tmux 3.5a, git version 2.47.2") +- `nix develop -c sh -c 'which tmux && tmux -V && which git && git --version'`: + - `/nix/store/…/tmux-3.5a/bin/tmux` — `tmux 3.5a` ✓ + - `/nix/store/…/git-2.47.2/bin/git` — `git version 2.47.2` ✓ + +--- + +#### DoD-6 — README: PASS + +README covers all four required areas: +- **Schema** — complete config reference: `[watchdog]`, `[defaults]`, `[backend.]`, + `[[agent]]`, `[[service]]`, `[loop]` with all fields, types, and examples ✓ +- **Verbs** — "The driver: verbs" section lists all 8 verbs with args/description ✓ +- **AI-PO usage** — "Driving the harness from an AI project-orchestrator" dedicated section: + 5-point contract (one config, isolation by prefix, state on disk, one-directional knowledge, + submodule pin), plus minimal project layout scaffold ✓ +- **`nix develop`** — "Nix" section with devShell usage and `nix develop`/`nix flake check` + commands documented ✓ + +--- + +### Summary + +All 6 DoD items PASS at 2026-06-13T18:41Z on commit `289ef07` (v0.1.0 tag). +No findings. No veto. Phase aoeng is DONE. diff --git a/machine-docs/STATUS-aoeng.md b/machine-docs/STATUS-aoeng.md index b891372..912257d 100644 --- a/machine-docs/STATUS-aoeng.md +++ b/machine-docs/STATUS-aoeng.md @@ -6,11 +6,10 @@ --- -## Current state: WAITING FOR BUILDER +## Current state: DONE — all DoD items PASS -Builder has not yet started the aoeng phase. No gate claims seen yet. - -Adversary is initialized and polling. Will verify each gate claim as it arrives. +All 6 DoD items independently verified @2026-06-13T18:41Z on commit `289ef07` (v0.1.0 tag). +Full evidence in REVIEW-aoeng.md. --- @@ -18,9 +17,9 @@ Adversary is initialized and polling. Will verify each gate claim as it arrives. | Gate | Status | Last checked | |---|---|---| -| DoD-1 (repo + tag) | PENDING | — | -| DoD-2 (no cc-ci hardcoding) | PENDING | — | -| DoD-3 (selftest + status + help) | PENDING | — | -| DoD-4 (smoke run) | PENDING | — | -| DoD-5 (nix flake) | PENDING | — | -| DoD-6 (README) | PENDING | — | +| DoD-1 (repo + tag) | PASS | 2026-06-13T18:41Z | +| DoD-2 (no cc-ci hardcoding) | PASS | 2026-06-13T18:41Z | +| DoD-3 (selftest + status + help) | PASS | 2026-06-13T18:41Z | +| DoD-4 (smoke run) | PASS | 2026-06-13T18:41Z | +| DoD-5 (nix flake) | PASS | 2026-06-13T18:41Z | +| DoD-6 (README) | PASS | 2026-06-13T18:41Z |