Skip to content

refactor(generation): add fixed stage runner - #861

Merged
lpukatch merged 2 commits into
mainfrom
refactor/830-packet3-stage-runner
Sep 19, 2026
Merged

lpukatch merged 2 commits into
mainfrom
refactor/830-packet3-stage-runner

Conversation

@lpukatch

Copy link
Copy Markdown
Collaborator

Packet 3

Implements Packet 3 of the generation modularization plan.

Changes

  • Add deterministic internal GenerationStage and StageRunner contracts.
  • Replace the inline full-generation phase sequence with private stage functions and a fixed static stage list.
  • Keep bootstrap, terminal handling, processing-run ownership, and generation-lock lifecycle in generation.py.
  • Preserve the existing team-channel stage alongside the documented pipeline stages.

Compatibility

  • Preserves stage ordering, cancellation boundaries, timing attribution, raw progress events, API/SSE callback shape, and outer exception behavior.
  • No plugin runtime, discovery, retries, dynamic registration, parallelization, or caller migration is included.

Verification

  • Focused generation suite: 86 passed.
  • Ruff passed.
  • Pyright: 0 errors, 0 warnings.
  • Frontend build passed.
  • Full backend suite: 3,470 passed; 1 unrelated fixed-date failure in tests/matching/test_failure_taxonomy.py. Follow-up: teamarr-aj5c.

No later packet or plugin functionality is included.

@lpukatch
lpukatch merged commit 0950e80 into main Sep 19, 2026
13 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