diff --git a/conductor/tracks.md b/conductor/tracks.md index c9bbdde6..0cb9b109 100644 --- a/conductor/tracks.md +++ b/conductor/tracks.md @@ -66,6 +66,7 @@ Tracks that are unblocked and ready to start. Ordered by **dependency** (blocked | 27 | A | [Phase 2/4/5 Call-Site Completion (post any_type_componentization)](#track-phase2-4-5-call-site-completion-20260621) | spec ✓, plan ✓, metadata ✓, state ✓, **SHIPPED 2026-06-21** with all 4 phases complete (6a broadcast fix + 6b ChatMessage + 6d UsageStats no-op + 6e Phase 3 cost analysis); 5 atomic commits on tier2 branch; broadcast() TypeError fixed; 20/20 provider tests pass; all 3 audits --strict pass; unblocks `code_path_audit_20260607`; report at `docs/reports/TRACK_COMPLETION_phase2_4_5_call_site_completion_20260621.md` | any_type_componentization_20260621 (parent; shipped 2026-06-21 with 48/89 sites + 1 runtime bug) | (NEW 2026-06-21; bugfix + refactor + test-infrastructure + Tier 2 cost analysis; **Phase 6a COMPLETE**: fixed 2 broadcast() callers in `src/app_controller.py:1849` + `src/events.py:115` (gui_2.py had no callers, verified by grep); added `tests/test_websocket_broadcast_regression.py` 4/4 pass; **Phase 6b COMPLETE**: migrated `_send_grok` + `_send_minimax` + `_send_llama` to `ChatMessage` API; 20/20 provider tests pass; **Phase 6d NO-OP**: `NormalizedResponse` already uses `UsageStats` throughout `openai_compatible.py`; **Phase 6e COMPLETE**: produced `docs/reports/PHASE3_TIER2_ANALYSIS.md` (253 lines; Tier 2 authoritative version); measured 104 history sites (vs Tier 1 estimate 112); discovered 3 hidden cross-references (_strip_private_keys, _extract_minimax_reasoning, _send_llama_native); refined cost estimates: anthropic 35-65us/turn (Tier 1 said 8-15), grok/qwen/llama ~400ns (Tier 1 said 2-8us); **deferred**: Phase 3 call-site migration (104 sites in ai_client.py) -> separate track post-audit; cross-phase coupling -> separate track; `audit_tier2_leaks.py` sandbox-pollution -> infra track; **does NOT merge `tier2/any_type_componentization_20260621` branch** per Tier 2 reconnaissance framing; **does NOT archive `conductor/tracks/phase2_4_5_call_site_completion_20260621/`** - user handles that) | | 28 | A | [Any-Type Componentization (Promote dict[str, Any] to dataclass(frozen=True))](#track-any-type-componentization-promote-dictstr-any-to-dataclassfrozentrue) | spec Γ£ô, plan Γ£ô, metadata Γ£ô, state Γ£ô, **shipped 2026-06-21** with 48/89 fat-struct sites promoted (Phases 1, 2, 4, 5 complete); Phase 3 (`provider_state` call-site migration in `ai_client.py`) DEFERRED to a separate track; 1 runtime bug surfaced (`HookServer.broadcast()` callers in `app_controller.py` + `events.py`); not merged; reconnaissance for `code_path_audit_20260607`; tier2 branch at 24 commits | (none ΓÇö independent; **NEW 2026-06-21**; refactor + ai-readability + type-safety; ships: 3 new modules (`src/mcp_tool_specs.py`, `src/openai_schemas.py`, `src/provider_state.py`); 2 new audit scripts (`scripts/audit_dataclass_coverage.py` + `--strict` mode); styleguide `conductor/code_styleguides/type_aliases.md` ┬º12 "When to Promote TypeAlias to dataclass"; type-registry regenerated; 130+ tests pass; **input artifact**: `docs/reports/ANY_TYPE_AUDIT_20260621.md`; **handoff docs**: `docs/handoffs/PROMPT_FOR_TIER_1.md` + `HANDOFF_FOLLOWUP_TRACK_FROM_any_type_componentization.md` + `HANDOFF_CODE_PATH_AUDIT_FROM_any_type_componentization.md`) | | 29 | A (research) | [Video Analysis De-obfuscation Campaign (Pass 2 of 3)](#track-video-analysis-deob-20260621) | spec ✓, plan ✓, **5 folders scaffolded (1 umbrella + 1 warmup + 3 phase children); Pass 2 of 3 (de-obfuscation)**; **awaits USER action item**: gather 3-10 samples of past de-obfuscation notes into `video_analysis_deob_warmup_20260621/samples/`; warmup produces `report.md` + `prompt_template.md`; lexicon child refines; pilot child validates on 2 videos (`cs229_building_llms` + `entropy_epiplexity`); apply child applies to 10 + synthesis; multi-layer deliverable per video: translation + replacement + decoder | (none — independent; **NEW 2026-06-21**; multi-track research campaign; **de-obfuscation philosophy**: constructive type theory + Wildberger-style finitism + boundedness for knowledge + cycles/iteration explicit + etymology-aware; 4 verification criteria (lossless, bounded, constructively typed, etymology-cited); supersedes Pass 1 spec §11.1; consumed by Pass 3 (projection to applied domain, future user-led); **load-bearing directive**: Pass 1 artifacts must remain lossless because Pass 2 de-obfuscation consumes them as raw input) | +| 29a | A (research) | [Lexicon v2 Patch (Pass 2 Phase 1.5)](#track-lexicon-v2-patch-pass-2-phase-15-2026-06-23) | spec ✓, plan ✓, metadata ✓, state ✓, README ✓, V2_CHANGELOG ✓, **spec DRAFT pending user review**; targeted corrective pass after Pass 2 SHIPPED; 5 source files updated + 1 changelog; 8 corrections (L1-L8) + 3 DEFERRED refinements (R1, R4, R6) + 4 template notations (TN1-TN4: B default, C++ opt-in, Odin opt-in, Jai opt-in) + 2 `<<` / `>>` placements (<<1, <<2) + 1 per-language rendering section (<<3); encoding default changed from `float64` to placeholder scheme (`float` general, `integer` general, `Scalar` linear/geo/tensor alg, `float64` resolved); 76 terms in v2 (was 72); v1 state preserved in git history; 33 deliverables + 2 reports NOT re-processed (intermediate artifacts; Pass 3 will use v2) | `video_analysis_deob_apply_20260621` (SHIPPED 2026-06-23, commit 8f2e8a69) | (**NEW 2026-06-23**; **post-apply corrective pass**; not exhaustive; 7 atomic commits planned; Pass 3 (the C11/Python projection) is the next user-led track and will use v2; the 5 DEFERRED gaps are deferred to lexicon v3) | **Note on numbering:** the legacy file used `0a`, `0b`, `0c`... and `0d`, `0e`, `0f`, `0g` for tracks created 2026-06-06+. This is the **git-blame sort order**, not a logical execution order. The new structure re-orders by dependency.