0bc734c020
Applies `ruff format` to the accumulated formatting debt on this branch. Formatting-only — no behavioral changes. Required for CI/lint's format gate (`nox -s format -- --check`), which the branch was failing on 288 tracked files that drifted from ruff's canonical style. In-progress WIP files are intentionally excluded so this commit stays a clean formatting-only diff. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
29 lines
1.3 KiB
Python
29 lines
1.3 KiB
Python
"""Controller package — DB-owned PR state machine.
|
|
|
|
See ``.drew/controller_state_machine.md`` for the full plan. This
|
|
package is the Phase 0+ implementation of that plan; it is being
|
|
built incrementally on the ``controller-state-machine`` branch.
|
|
|
|
The package layout mirrors the plan's responsibilities:
|
|
|
|
- ``contracts/`` — Pydantic V1 contracts for worker I/O. Strict-parse
|
|
helpers. The single source of truth for "what shape does a
|
|
reviewer / implementer / estimator / conflict-resolver / summarizer
|
|
produce."
|
|
- ``ci_summary_parsers/`` — deterministic per-CI-tool parsers that
|
|
consume raw Forgejo CI logs and produce ``CIFailure`` rows. Called
|
|
from the master's prefetch path.
|
|
- (later) ``master.py`` — singleton process: state-machine driver,
|
|
discovery, prefetch, reconciliation, Forgejo writes, merge.
|
|
- (later) ``worker.py`` — scalable process: dequeue, lock+heartbeat,
|
|
OpenCode invocation, output write.
|
|
- (later) ``state_machine.py`` — ``TRANSITIONS`` dict + property tests.
|
|
- (later) ``mcp/`` — per-role response-builder MCP servers.
|
|
"""
|
|
|
|
from . import state_machine # re-exported for tests
|
|
from . import reaper # re-exported for tests
|
|
from . import pickup_guard # re-exported for tests
|
|
|
|
__all__ = ["contracts", "state_machine", "reaper", "pickup_guard"]
|