Adds JobStateChangeEvent (jobid/oldState/newState/exitCode) and JobUpdateEvent (jobid/changedFields/job: Job) to controller.capnp, matching design.md's spec verbatim. JobUpdateEvent.job reuses the existing full 12-field Job/xce_job_t record, verified distinct from the narrower SchedJob struct sharing the same mapname. Extends ReplayEvent.body's union (task 7.1) with jobStateChange@10/ jobUpdate@11 -- the only two valid next ordinals, since capnp requires strictly sequential ordinals with no gaps across a struct and task 7.1 deliberately stopped at @9. Existing @0-@9 fields and every other struct in the schema are byte-identical. Deep round-trip tests in test_e2e_capnp.c exercise every field with non-default values, including the 3-level nested Job substructs (submitData/allocs/pidinfo/pendreason). JOB_F_* bitmask bit values deliberately left undefined -- a later task's job, not this schema-only one's. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019dw5WnN3DXStaEaPYfACU1 |
||
|---|---|---|
| .. | ||
| settings | ||
| specs | ||
| steering | ||