### lane_bootstrap
empty cmd rc=0 seconds=0 log=[no]
rc=0 seconds=0
failing cmd rc=4
-- boot.log:
   in 1
   err
-- boot2.log:
   changed=[a b]
### lane_build_outputs
no build cmd rc=0
LOG   Lane 1: build outputs already match <base> — build skipped
METRIC {"event":"lane_build_skipped","task_id":"T-1","slot":1,"reason":"base-sha-unchanged","at":"2026-10-18T00:00:00+00:00"}
stamp matches rc=0
LOG   Lane 1 build: echo building; touch built.flag
LOG   + Lane build outputs match <base> (0s)
METRIC {"event":"lane_build","task_id":"T-1","slot":1,"base_sha":"<base>","duration_s":0,"at":"2026-10-18T00:00:00+00:00"}
build rc=0 needs_build=false
-- lanes dir files:
   ./.gitignore: # Worktree lanes: runtime state, never committed (STORY-212).|*|
   ./meta/1/build.sha: <base>|
   ./meta/1/last-acquire: mode: cold|needs_bootstrap: true|seconds: 0|reason: |needs_build: true|base: <base>|
-- lane-build-20261018-000000-T-1.log:
   building
LOG   Lane 1 build: echo half; exit 2
ERR   ! Lane build failed after 0s (<T>/ctl/harness/state/logs/lane-build-20261018-000000-T-1.log) — releasing the lane for T-1
ERR     This is an environment failure, not a defect in T-1.
METRIC {"event":"lane_build_failed","task_id":"T-1","slot":1,"duration_s":0,"at":"2026-10-18T00:00:00+00:00"}
failing build rc=1
-- lanes dir files:
   ./.gitignore: # Worktree lanes: runtime state, never committed (STORY-212).|*|
   ./meta/1/last-acquire: mode: cold|needs_bootstrap: true|seconds: 0|reason: |needs_build: true|base: <base>|
-- lane-build-20261018-000000-T-1.log:
   half
### lane_env_verify
no check cmd rc=0
METRIC {"event":"lane_env_verified","task_id":"T-1","slot":1,"at":"2026-10-18T00:00:00+00:00"}
fit rc=0 output=[fit]
ERR   ! Lane 1: environment is DEGRADED (test -f env.ok && echo fit || { echo "no env.ok"; exit 1; } failed) — repairing before T-1
ERR     No repair command is configured — releasing the lane. An environment failure, not a defect in T-1.
METRIC {"event":"lane_env_repair_failed","task_id":"T-1","slot":1,"reason":"no-repair-command","at":"2026-10-18T00:00:00+00:00"}
unfit, no repair rc=1
ERR   ! Lane 1: environment is DEGRADED (test -f env.ok && echo fit || { echo "no env.ok"; exit 1; } failed) — repairing before T-1
LOG   Lane 1 env repair: echo repairing; touch env.ok (<T>/ctl/harness/state/logs/lane-env-repair-20261018-000000-T-1.log)
LOG   + Lane 1 environment repaired in 0s
METRIC {"event":"lane_env_repaired","task_id":"T-1","slot":1,"duration_s":0,"at":"2026-10-18T00:00:00+00:00"}
repaired rc=0
-- lane-env-repair-20261018-000000-T-1.log:
   == check (failed): test -f env.ok && echo fit || { echo "no env.ok"; exit 1; }
   no env.ok
   
   == repair: echo repairing; touch env.ok
   repairing
   
   == re-check (passed): test -f env.ok && echo fit || { echo "no env.ok"; exit 1; }
   fit
ERR   ! Lane 1: environment is DEGRADED (test -f env.ok && echo fit || { echo "no env.ok"; exit 1; } failed) — repairing before T-1
LOG   Lane 1 env repair: echo trying (<T>/ctl/harness/state/logs/lane-env-repair-20261018-000000-T-1.log)
ERR   ! Lane 1 environment still unfit after repair (<T>/ctl/harness/state/logs/lane-env-repair-20261018-000000-T-1.log) — releasing the lane for T-1
ERR     This is an environment failure, not a defect in T-1.
METRIC {"event":"lane_env_repair_failed","task_id":"T-1","slot":1,"duration_s":0,"at":"2026-10-18T00:00:00+00:00"}
repair ran, still unfit rc=1
-- lane-env-repair-20261018-000000-T-1.log:
   == check (failed): test -f env.ok && echo fit || { echo "no env.ok"; exit 1; }
   no env.ok
   
   == repair: echo trying
   trying
   
   == re-check (FAILED): test -f env.ok && echo fit || { echo "no env.ok"; exit 1; }
   no env.ok
ERR   ! Lane 1: environment is DEGRADED (test -f env.ok && echo fit || { echo "no env.ok"; exit 1; } failed) — repairing before T-1
LOG   Lane 1 env repair: echo broken; exit 9 (<T>/ctl/harness/state/logs/lane-env-repair-20261018-000000-T-1.log)
ERR   ! Lane 1 environment still unfit after repair (<T>/ctl/harness/state/logs/lane-env-repair-20261018-000000-T-1.log) — releasing the lane for T-1
ERR     This is an environment failure, not a defect in T-1.
METRIC {"event":"lane_env_repair_failed","task_id":"T-1","slot":1,"duration_s":0,"at":"2026-10-18T00:00:00+00:00"}
repair failed rc=1
-- lane-env-repair-20261018-000000-T-1.log:
   == check (failed): test -f env.ok && echo fit || { echo "no env.ok"; exit 1; }
   no env.ok
   
   == repair: echo broken; exit 9
   broken
lane_env_check rc=1 output=[no env.ok]
lane_env_repair rc=9
-- direct.log:
   == check (failed): test -f env.ok && echo fit || { echo "no env.ok"; exit 1; }
   no env.ok
   
   == repair: echo broken; exit 9
   broken
### lane_handoff_materialise and handoff_lane_base
no handoff module rc=0
CALL handoff_materialise [T-1] [ctl/harness/state/lanes/1]
copied rc=0
CALL handoff_materialise [T-1] [ctl/harness/state/lanes/1]
refused rc=1 reason=[could not copy T-1's FactoryOS handoff story into the lane]
-- lanes dir files:
   ./.gitignore: # Worktree lanes: runtime state, never committed (STORY-212).|*|
   ./meta/1/last-acquire: mode: failed|needs_bootstrap: true|seconds: 10|reason: could not copy T-1's FactoryOS handoff story into the lane|needs_build: true|base: |
-- through lane_acquire:
CALL handoff_materialise [T-2] [ctl/harness/state/lanes/1]
rc=1 path=[]
   mode=[failed] reason=[could not copy T-2's FactoryOS handoff story into the lane] seconds=[0] needs_bootstrap=[true] needs_build=[true] base=[]
CALL handoff_lane_base [T-3] [<base>]
CALL handoff_materialise [T-3] [ctl/harness/state/lanes/1]
rc=0 path=[<T>/ctl/harness/state/lanes/1]
   mode=[reset] reason=[] seconds=[0] needs_bootstrap=[true] needs_build=[true] base=[<base>]
