feat(run): critic owns the deadline — MaxRuntime becomes the soft trigger
executus CI / test (pull_request) Successful in 49s
feat(run): durable checkpoint + resume (wire Ports.Checkpointer)
executus CI / test (pull_request) Successful in 45s
feat(run): execute multi-phase pipelines (RunnableAgent.Phases)
executus CI / test (pull_request) Successful in 48s
feat(run): InputFileStager seam — stage non-image attachments into the prompt
executus CI / test (pull_request) Successful in 48s
run: fold inv.Images into the initial user message (multimodal opening turn)
executus CI / test (pull_request) Successful in 1m46s
ci: inherit gadfly's default swarm (slim caller, re-pin @b02b11d)
executus CI / test (pull_request) Successful in 1m50s
P4c: remaining batteries — checkpoint + schedule + critic
executus CI / test (pull_request) Successful in 1m39s
P4b: skill noun + contrib/store (SQLite for budget/persona/skill)
executus CI / test (pull_request) Successful in 1m34s
P4: Tier-2 batteries — audit + budget + persona noun
executus CI / test (pull_request) Failing after 59s
P3: generic tool library (think/now/cite + meta + store groups)
executus CI / test (pull_request) Successful in 59s
P2: run kernel + run.Ports inversion — executus is runnable
executus CI / test (pull_request) Successful in 58s