Skip to content

Commit 0f32d4c

Browse files
jucorclaude
andcommitted
Plan: add task parallelization analysis for remaining fixes
Map dependency graph and file boundaries for D5-D12. Two parallel tracks possible: repness formulas (D5→D6→D7→D8→D10→D11) and conversation/PCA (D3→D15→D12), with D1/D1b after both. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 8d97ac0 commit 0f32d4c

1 file changed

Lines changed: 50 additions & 0 deletions

File tree

delphi/docs/PLAN_DISCREPANCY_FIXES.md

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -441,6 +441,56 @@ By this point, we should have good test coverage from all the per-discrepancy te
441441

442442
---
443443

444+
## Tasks parallelization
445+
446+
D9 is in progress. The remaining fixes have the following dependency structure:
447+
448+
### Repness chain dependency graph (all in `repness.py`)
449+
450+
```
451+
D5 ─┬─→ D7 ─┐
452+
D6 ─┘ D8 ─┼─→ D10
453+
454+
D5 ──────────┴─→ D11
455+
```
456+
457+
- **D5, D6**: logically independent, but both modify `repness.py` (signature changes + caller updates in `compute_group_comment_stats_df`) — **must be sequential**
458+
- **D7**: after D5 + D6
459+
- **D8**: after D6
460+
- **D10**: after D7 + D8
461+
- **D11**: after D5 only (parallel with D7, D8, D10)
462+
463+
All are in `repness.py`, strictly sequential within this track.
464+
465+
### File-boundary analysis
466+
467+
Every fix touches `test_discrepancy_fixes.py` (different test classes per fix — low conflict risk, but same file). The production code boundaries are:
468+
469+
| File | Fixes that modify it |
470+
|------|---------------------|
471+
| `repness.py` | D5, D6, D7, D8, D10, D11 |
472+
| `conversation.py` | D3, D12, D15 |
473+
| `pca.py` | D12, D1/D1b |
474+
| `test_repness_unit.py` | D5, D6, D7, D8 |
475+
476+
**Within each file group, fixes must be sequential** to avoid merge conflicts.
477+
478+
### Practical parallel tracks (2 worktrees)
479+
480+
| Track | Worktree | Fixes (sequential within) | Files |
481+
|-------|----------|--------------------------|-------|
482+
| **A — Repness formulas** | main worktree | D5 → D6 → D7 → D8 → D10 → D11 | `repness.py`, `test_repness_unit.py` |
483+
| **B — Conversation/PCA** | separate worktree | D3 → D15 → D12 | `conversation.py`, `pca.py` |
484+
| **C — Late** | (after A+B) | D1/D1b | `pca.py` (needs replay infra) |
485+
486+
**Tracks A and B can run fully in parallel** using separate worktrees. Within each track, fixes are sequential (same files). Track B order is flexible — D3, D15, D12 touch different functions in `conversation.py`, so the order can be chosen for convenience. D12 is the largest (also touches `pca.py`), so putting it last gives D1/D1b a cleaner base.
487+
488+
The shared `test_discrepancy_fixes.py` file will need a mechanical merge when tracks converge, but since each fix modifies a different test class (already scaffolded with xfail markers), conflicts should be trivial to resolve.
489+
490+
**At convergence**: when both tracks are done, rebase Track B onto Track A (or vice versa). The only conflict will be in `test_discrepancy_fixes.py` — resolve by keeping both sets of test class changes.
491+
492+
---
493+
444494
## Test Infrastructure
445495

446496
### `tests/test_discrepancy_fixes.py` — New test file

0 commit comments

Comments
 (0)