Summary
During batch execution, periodically check if tasks have been externally modified (GitHub issue closed, task manually completed, dependency resolved) and adjust the running batch accordingly. Inspired by Symphony's per-tick reconciliation loop.
Motivation
Currently cf work batch run operates on a snapshot of task states taken at batch start. If someone closes a GitHub issue, manually marks a task DONE, or resolves a blocker while the batch is running, CodeFrame won't notice until the agent tries to work on the (now irrelevant) task.
Symphony handles this with reconciliation on every poll tick — checking tracker state for all running issues and killing/adjusting as needed.
Sub-Issues
Dependency Graph
#404 (engine) ──┬──> #405 (conductor integration)
└──> #406 (GitHub sync)
#405 and #406 are independent of each other and can be done in parallel.
Dependencies
- Benefits from Phase 4 multi-agent work (long-running batches)
- No hard prerequisites
Acceptance Criteria
Summary
During batch execution, periodically check if tasks have been externally modified (GitHub issue closed, task manually completed, dependency resolved) and adjust the running batch accordingly. Inspired by Symphony's per-tick reconciliation loop.
Motivation
Currently
cf work batch runoperates on a snapshot of task states taken at batch start. If someone closes a GitHub issue, manually marks a task DONE, or resolves a blocker while the batch is running, CodeFrame won't notice until the agent tries to work on the (now irrelevant) task.Symphony handles this with reconciliation on every poll tick — checking tracker state for all running issues and killing/adjusting as needed.
Sub-Issues
Dependency Graph
#405 and #406 are independent of each other and can be done in parallel.
Dependencies
Acceptance Criteria