ContextLab / ContextLab/orchestrator
[EPIC] Phase 5: retire the frozen competing implementations (321 modules)
- Dominant language
- Python
- Stars
- 3
- Forks
- 2
- Avg merge
- 13m
- Merged PRs (30d)
- 1
Description
Tracking issue for the consolidation the product contract set up but deliberately did not perform.
## Current state
`find src/orchestrator -name "*.py" | wc -l` → **321**
`docs/adr/0001-product-contract.md` names the canonical compiler, executor and registry and **freezes** the competitors, but the frozen implementations are all still shipped in the wheel. Naming a canonical path was the prerequisite; removing the alternatives is the work.
## Why it was not done in one pass
Deleting competing implementations without contract tests characterising their behaviour is exactly the failure mode that produced this situation — successive incompatible rewrites, each declared complete. The ADR path is deliberate: name the canonical route, add contract tests, then remove alternatives incrementally, each removal justified by a passing test.
## Known members of the frozen set
- Compiler variants, including `SkillsCompiler` / `EnhancedSkillsCompiler`, which the #426 audit found **orphaned** — unreachable from `orchestrator run`, referenced only by a re-export and one test that fails at collection
- Multiple executors/engines, state managers, model registries, tool registries, condition systems, validation frameworks
## Approach
1. Start from the ADR "off the import closure" list — those are removable without touching the working path
2. Add a contract test pinning the canonical behaviour **before** each removal
3. One removal per PR, with the wheel module count in the description
Blocked on / related to: #426 (product direction), #429 (adapter layers), #354 (test suite health).
## Acceptance criteria
- Each removal is justified by a passing contract test
- The wheel ships one compiler, one executor, one registry of each kind
- Module count trends down and is reported per PR
Contributor guide
Assessment
This issue has not been assessed yet.