PR #163 · SPEC-C4 · Worker Container

feat(harness): SPEC-C4 Fargate worker container

Decision ask: approve; the runtime that actually executes async turns in Fargate.

What

The Fargate task that consumes a turn kick, runs the agent/job, writes journal events, sweeps artifacts, and emits final status.

Why now

SPEC-000/1/2/3 build the rails; C4 is the train. Without the worker, the async queue is a no-op.

What changed

ECS task definition and container entrypoint; worker polls S3 input + dispatch record; journal writer with serialized writes and meta overwrite guard; artifact sweep integration; test-reachable deps from root node_modules.

Risk / trade-off

Worker is long-running and stateful. Needs 2h hard-stop, SIGTERM handling, and cost caps already in C2.

Money & ops

Per-turn Fargate billing replaces shared AgentCore burn. Scales horizontally within concurrency caps.

CEO decision

Approve. Merge after C1/C2 and run a canary turn end-to-end.