Skip to content

docs: Add startup reconciliation to orchestrator docs [doc-updater] - #844

Merged
jwbron merged 1 commit into
mainfrom
egg/doc-update-startup-reconciliation
Feb 21, 2026
Merged

docs: Add startup reconciliation to orchestrator docs [doc-updater]#844
jwbron merged 1 commit into
mainfrom
egg/doc-update-startup-reconciliation

Conversation

@james-in-a-box

Copy link
Copy Markdown
Contributor

docs: Add startup reconciliation to orchestrator docs [doc-updater]

Update documentation to reflect changes from #839 (commit 63051b0):

  • Add startup_reconciliation.py to STRUCTURE.md orchestrator file list
  • Document startup reconciliation behavior in orchestrator architecture

Changes

The orchestrator now automatically detects and recovers pipelines with orphaned container state on restart. When the orchestrator starts up, it:

  1. Lists all pipelines showing status=RUNNING
  2. Checks if their container IDs exist in the live Docker container set
  3. Marks missing containers and agents as FAILED
  4. Marks the pipeline itself as FAILED with instructions to restart via POST /pipelines/{id}/start

This prevents pipelines from being stuck in RUNNING state indefinitely after an orchestrator crash.

Documentation Updates

  • STRUCTURE.md: Added startup_reconciliation.py to the orchestrator file listing
  • docs/architecture/orchestrator.md: Added "Startup reconciliation" subsection under "Pipeline State Persistence" explaining the recovery behavior

Triggered by: #839

Authored-by: egg

Update documentation to reflect changes from commit 63051b0:
- Add startup_reconciliation.py to STRUCTURE.md orchestrator file list
- Document startup reconciliation behavior in orchestrator architecture

The orchestrator now automatically detects and recovers pipelines with
orphaned container state on restart. This prevents pipelines from being
stuck in RUNNING state after a crash.

Authored-by: egg

@egg-reviewer egg-reviewer Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No agent-mode design concerns.

This is a documentation-only change (STRUCTURE.md file listing + orchestrator architecture docs) reflecting an already-merged implementation. No agent workflows, prompts, or automation patterns are affected.

— Authored by egg

@james-in-a-box

This comment has been minimized.

@egg-reviewer egg-reviewer Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Documentation-only PR. Reviewed the diff against the actual orchestrator/startup_reconciliation.py implementation (added in #839).

Verification results:

  • STRUCTURE.md: File entry is in correct alphabetical position, file exists, description matches the module docstring. Correct.
  • orchestrator.md: All claims in the new "Startup reconciliation" subsection are accurate:
    • Reconciliation targets pipelines with status=RUNNING — matches line 84 of startup_reconciliation.py
    • Agents/containers with missing Docker container IDs are marked FAILED — matches lines 94-123
    • Pipeline itself is marked FAILED with restart instructions — matches lines 125-130
    • Restart via POST /pipelines/{id}/start preserves worktrees — confirmed in routes/pipelines.py (worktree cleanup is skipped on restart)
  • The replaced line (See orchestrator/state_store.py for implementation details.) is preserved and expanded to also reference startup_reconciliation.py

No issues found. Placement under "Pipeline State Persistence" is appropriate since reconciliation runs at startup against persisted state.

One minor note (non-blocking): the "Startup reconciliation" subsection is nested under "Pipeline State Persistence" which is reasonable, but as more startup behaviors are added, it could warrant its own top-level section. Fine for now.

— Authored by egg

@james-in-a-box

This comment has been minimized.

@james-in-a-box

Copy link
Copy Markdown
Contributor Author
egg is addressing review feedback...

@james-in-a-box

Copy link
Copy Markdown
Contributor Author

egg feedback addressed. View run logs

2 previous review(s) hidden.

@jwbron
jwbron merged commit 44f25dc into main Feb 21, 2026
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant