Back to Oh My Openagent

Uncommitted diff salvage

.omo/evidence/20260721-ulw-loop-gajae-adoption/uncommitted-diff-salvage.md

4.19.12.0 KB
Original Source

Uncommitted diff salvage

Status

The lost worker left tracked changes in 17 ulw-loop-only files. Every hunk was inspected before commit. No out-of-scope tracked path from that diff was kept.

Kept hunks

  • Formatting/import-order salvage in ulw-loop source and tests: biome-ignore-all format comments and import ordering in files that were already compact/line-budget-constrained. These were validated by npm run check (biome check . passed with no fixes applied) and component tests.
  • cli-steering.ts fix: batched CLI proposals now default missing source to cli, matching the approved plan's normalizeSteeringProposal({ source: "cli", ...rawElement }) contract. This was discovered by the todo-6 real-surface QA when a --proposals-json item without source failed with ULW_LOOP_STEERING_SOURCE_INVALID.
  • checkpoint.ts / validation-batch.ts fix: aggregate-final checkpoint can close a validation batch when the current goal is the batch final member. This was discovered by the todo-6 lifecycle when G003 was both batch-final and run-final and failed with ULW_LOOP_VALIDATION_BATCH_OPEN before the current completion was considered.

Discarded/restored side effects

bun run test:codex rebuilt packages/omo-codex/plugin/components/codegraph/dist/cli.js with alternate bundle comment prefixes. This was out of scope and was restored by rebuilding the codegraph component from its package cwd; final tracked status showed no codegraph diff.

Verification

  • Red tests were run before both functional fixes:
    • npm test -- cli-steering-batch failed on missing batch source.
    • npm test -- validation-batch-checkpoint failed on batch-final aggregate completion.
  • Green focused gates:
    • npm test -- cli-steering-batch steering-batch && npm run typecheck
    • npm test -- validation-batch-checkpoint checkpoint && npm run typecheck
  • Full green gates after fixes:
    • npm run check && npm test
    • bun run test:codex
    • built dist/cli.js e2e lifecycle transcript in task-6-e2e-transcript.txt.