generated from john/python-template
This commit is contained in:
@@ -53,6 +53,23 @@ Implement **Phase 4 (Consolidation & refactoring)** from `docs/architecture-code
|
||||
Adjust the signature to match the real parameters used at each call site (inspect all three before finalizing).
|
||||
- Refactor the three call sites to use the shared wrapper, preserving exact existing error types/messages raised on failure (this matters especially given Phase 3's error-taxonomy work — make sure this consolidation uses whatever the post-Phase-3 canonical/internal error categories are, not the pre-Phase-3 ones).
|
||||
|
||||
### 4. Perform an orphaned/dead-code sweep (behavior-preserving)
|
||||
**Scope:** `src/transcription/**` and closely related tests/docs touched by this phase.
|
||||
|
||||
**Problem:** Prior reviews have found orphaned code blocks/files that are no longer referenced, which increases maintenance burden and can hide drift.
|
||||
|
||||
**Required work:**
|
||||
- Identify candidate orphaned code (modules/functions/classes) with zero inbound references.
|
||||
- Treat these as potential orphans only after checking expected exceptions: app entrypoints, framework/plugin registration paths, dynamic imports/reflection, CLI hooks, and test-only utilities.
|
||||
- Verify each candidate with deterministic repository checks (e.g. `rg` import/call-site search plus relevant runtime/tests for the owning area), rather than assumption.
|
||||
- For each confirmed orphan:
|
||||
- remove it if safe and truly unused, or
|
||||
- keep it with a short justification where dynamic wiring or contract requirements make static references incomplete.
|
||||
- Include a concise "orphaned code audit" section in the final report listing:
|
||||
- confirmed removed orphans,
|
||||
- intentionally retained candidates and justification,
|
||||
- any uncertain candidates that require follow-up.
|
||||
|
||||
## Validation
|
||||
|
||||
- Run `pytest` (via the project's normal invocation, e.g. `uv run pytest`) after each consolidation step and ensure the full suite still passes unchanged — this is a refactor, so a full-suite regression is the primary correctness signal.
|
||||
|
||||
Reference in New Issue
Block a user