get docker to prioritize killing engineers before directors #1304

Closed
opened 2026-07-15 03:03:36 +00:00 by coilysiren · 4 comments
Owner
No description provided.
Member

Release triage note from Kai on 2026-07-15: headless carry is valid if Docker exposes a usable priority mechanism. Desired policy: bump directors above normal containers and engineers below normal containers so resource pressure kills engineer work before director surfaces.

Release triage note from Kai on 2026-07-15: headless carry is valid if Docker exposes a usable priority mechanism. Desired policy: bump directors above normal containers and engineers below normal containers so resource pressure kills engineer work before director surfaces.
Member

WARD-TRIAGE: warded control plane coherence milestone

This issue is part of the warded control plane coherence sprint. The release thesis is to make warded feel like one dependable control plane for agent work: higher safe parallelism, coherent config defaults, reliable broker/container behavior, human-feedback gates, and enough structured evidence for the next actor after a paused or failed run.

For this sprint, headless means an engineer should be able to carry the issue from current issue context to a merged change without new human decisions. If the issue discovers a missing decision, split or demote the unclear part instead of guessing.

WARD-TRIAGE: warded control plane coherence milestone This issue is part of the `warded control plane coherence` sprint. The release thesis is to make `warded` feel like one dependable control plane for agent work: higher safe parallelism, coherent config defaults, reliable broker/container behavior, human-feedback gates, and enough structured evidence for the next actor after a paused or failed run. For this sprint, `headless` means an engineer should be able to carry the issue from current issue context to a merged change without new human decisions. If the issue discovers a missing decision, split or demote the unclear part instead of guessing.
Member

WARDED_WORKFLOW: reservation-held

reservation details

Holder: launch intent for container engineer-codex-ward-1304 on host kais-macbook-pro-2.local.

Accepted by ward agent --harness codex (reserved 2026-07-15T10:41:09Z). Concurrent ward agent runs are blocked until this intent becomes visible or the intent is released. The stale-intent fallback is still TTL-bounded (3h TTL). --override-reservation overrides.

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)
  • Resolved: coilyco-flight-deck/ward#1304 · branch issue-1304 · harness codex · workflow pull-request-and-merge
  • Run: engineer-codex-ward-1304 · ward v0.710.0 · dispatched 2026-07-15T10:41:03Z
  • Comment thread: 2 included in the pre-flight read, 0 stripped (ward's own automated comments).

Static container doctrine and seed boilerplate are identical every run and omitted here (they ride ward v0.710.0).

— Codex, via ward agent

<!-- ward-agent-reservation --> WARDED_WORKFLOW: reservation-held <details><summary>reservation details</summary> Holder: launch intent for container `engineer-codex-ward-1304` on host `kais-macbook-pro-2.local`. Accepted by `ward agent --harness codex` (reserved 2026-07-15T10:41:09Z). Concurrent `ward agent` runs are blocked until this intent becomes visible or the intent is released. The stale-intent fallback is still TTL-bounded (3h TTL). `--override-reservation` overrides. **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). <details><summary>run seed context — what this run is carrying (ward#609)</summary> - **Resolved:** `coilyco-flight-deck/ward#1304` · branch `issue-1304` · harness `codex` · workflow `pull-request-and-merge` - **Run:** `engineer-codex-ward-1304` · ward `v0.710.0` · dispatched `2026-07-15T10:41:03Z` - **Comment thread:** 2 included in the pre-flight read, 0 stripped (ward's own automated comments). - included: @coilyco-ops (2026-07-15T06:54:31Z), @coilyco-ops (2026-07-15T07:16:39Z) Static container doctrine and seed boilerplate are identical every run and omitted here (they ride ward v0.710.0). </details> </details> <!-- ward-agent-signature --> — Codex, via `ward agent`
Member

QA review after PR #1389 (b0cd51aef01c492d5cca91d2c202a3047f218554): code-level PASS, release verification blocked by #1393.

Evidence checked:

  • dockerCreateArgv now appends --oom-score-adj by role after memory flags.
  • dockerOOMScoreAdj returns 250 for engineers and -250 for director/session roles; advisors and other roles receive no override.
  • TestDockerCreateArgvOOMScoreAdjByRole covers engineer, director, session, and advisor behavior.
  • Focused local test on origin/main: env WARD_READONLY=0 WARD_DISPATCH_BROKER_ADDR= WARD_DISPATCH_BROKER_TOKEN= WARD_CONFIG_REF=file:///scratch/ward-main-qa/.ward/ward-kdl go test ./cmd/ward -run 'TestDockerCreateArgvOOMScoreAdjByRole|TestDockerCreateArgv|TestDockerRunArgv' -count=1 passed.

Caveat: the post-merge release path for the current main SHA is red because #1390's draft-release flow fails before creating a missing draft release. I filed #1393 for that release blocker; no separate #1304 follow-up is needed.

QA review after PR #1389 (`b0cd51aef01c492d5cca91d2c202a3047f218554`): code-level PASS, release verification blocked by #1393. Evidence checked: - `dockerCreateArgv` now appends `--oom-score-adj` by role after memory flags. - `dockerOOMScoreAdj` returns `250` for engineers and `-250` for director/session roles; advisors and other roles receive no override. - `TestDockerCreateArgvOOMScoreAdjByRole` covers engineer, director, session, and advisor behavior. - Focused local test on `origin/main`: `env WARD_READONLY=0 WARD_DISPATCH_BROKER_ADDR= WARD_DISPATCH_BROKER_TOKEN= WARD_CONFIG_REF=file:///scratch/ward-main-qa/.ward/ward-kdl go test ./cmd/ward -run 'TestDockerCreateArgvOOMScoreAdjByRole|TestDockerCreateArgv|TestDockerRunArgv' -count=1` passed. Caveat: the post-merge release path for the current main SHA is red because #1390's draft-release flow fails before creating a missing draft release. I filed #1393 for that release blocker; no separate #1304 follow-up is needed.
Sign in to join this conversation.
No project
No assignees
2 participants
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-flight-deck/ward#1304
No description provided.