Make Ward director evaluation prove the #520 chain, not generic ward exec smoke tests #529
Labels
No labels
burndown-2026-06
coherence-core
consult
headless
interactive
P0
P1
P2
P3
P4
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
coilyco-flight-deck/infrastructure#529
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
The active infrastructure#524 Goose run was meant to reject simulated Ward director evaluation runs. Its current log shows it is drifting into generic infrastructure smoke tests instead of the #520 acceptance chain.
Observed in
engineer-goose-infrastructure-524on 2026-07-10 UTC:WardDirectorEvaluationTestPython unittest.ward exec help,cert-manager,aws-secrets,observability,ansible-sync, andk3s-list-dnsavailability.make cert-manager.coilysiren/inbox, launches the disposable k3s Job, runs Goose bootstrap, runs a Goose director decision, dispatches a Goose engineer, verifies a commit, or proves issue closure.Generic
ward execor cluster-command smoke tests do not satisfy infrastructure#520 and can produce false confidence while bypassing the actual first-run flow.This issue exists because infrastructure#524 is reserved and will not re-read comments.
Do
ward execsmoke tests with tests and scripts that are explicitly about the infrastructure#520 chain.coilysiren/inboxevaluation issue with a uniqueward-eval:<run-id>title.WARD-OUTCOME: done, issue closure, commit content, timestamp, attribution, no other issue touched, no Claude/Codex, and no token leakage.ward execavailability-only, or unrelated infrastructure command test must fail the evaluation rather than pass it.Acceptance
ward-eval,coilysiren/inbox, k3s Job creation, Goose bootstrap, director dispatch, and evidence verification, not genericcert-manageroransible-synccommand availability.kubectl, missing Goose director decision, or missing engineer commit produces a precise FAIL.ward exec testor the repo-appropriate validation passes, or the issue comment names the exact failing check.Related: coilyco-flight-deck/infrastructure#520 and coilyco-flight-deck/infrastructure#524.
WARD-DISPATCH: deferred ⏸
deferred details
This forwarded dispatch was deferred after the issue was already reserved.
Attempted harness:
codexAttempted run:
ward agent engineer coilyco-flight-deck/infrastructure#529 --harness codex --ward-version v0.573.0Container:
engineer-codex-infrastructure-529Container created: no running engineer was observed.
Host log:
/Users/kai/.ward/agent-logs/dispatch/20260710T093629Z-director-codex-vg55-coilyco-flight-deck-infrastructure-529.logCapacity:
ward agent engineer --harness codex: global engineer limit is reached: 12 running (limit 12); wait for a run to finish or runward agent reapfor stale engineersRetry: the issue stays queued and the director will try again when a slot opens.
— Codex, via
ward agentWARD-RESERVATION: held 🔒
reservation details
Holder: container
engineer-codex-infrastructure-529on hostkais-macbook-pro-2.local.Reserved by
ward agent --harness codex(reserved 2026-07-10T09:44:03Z). Concurrentward agentruns are blocked until it finishes or the reservation goes stale (1h TTL).--forceoverrides.Do not comment on or edit this issue to steer the run while it is reserved. The engineer seeded the body once at launch and never re-reads it, so a comment or edit reaches only human readers, never the running engineer. A correction goes to a new issue, dispatched fresh. That is the only channel that reaches a run in flight. Where the forge supports it, ward locks this conversation to make that a road-block rather than a convention (ward#494).
run seed context — what this run is carrying (ward#609)
coilyco-flight-deck/infrastructure#529· branchissue-529· harnesscodex· workflowdirect-mainengineer-codex-infrastructure-529· wardv0.573.0· dispatched2026-07-10T09:44:03ZStatic container doctrine and seed boilerplate are identical every run and omitted here (they ride ward v0.573.0).
— Codex, via
ward agentWARD-OUTCOME: done
details
workflow: direct-main; review summary: review gate skipped by ~/.ward/config.yaml default
retrospective: The implementation settled after the salvage branch showed the right harness shape. The only real surprise was making the repo tests and ward path happy on this container.
confidence: high
surprises: ward required a clean tree plus an upstream, and uv needed a writable cache for local hook runs.
follow-ups: none.