Private
Public Access
Revert "merge: tier2/phase2_4_5_call_site_completion_20260621 (parent + follow-up + Phase 6e analysis)"
This reverts commitf914b2bcd4, reversing changes made to7fef95cc87.
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -4,8 +4,8 @@
|
||||
[meta]
|
||||
track_id = "any_type_componentization_20260621"
|
||||
name = "Any-Type Componentization (Promote dict[str, Any] to dataclass(frozen=True))"
|
||||
status = "completed"
|
||||
current_phase = 6
|
||||
status = "active"
|
||||
current_phase = 0
|
||||
last_updated = "2026-06-21"
|
||||
|
||||
[blocked_by]
|
||||
@@ -16,9 +16,9 @@ any_type_componentization_phase2_2026MMDD = "planned"
|
||||
openai_tools_dataclass_bridge_2026MMDD = "planned"
|
||||
|
||||
[phases]
|
||||
phase_0 = { status = "completed", checkpointsha = "6e6ba90e", name = "Shared scaffolding (JsonValue + audit + styleguide)" }
|
||||
phase_1 = { status = "completed", checkpointsha = "9961e437", name = "mcp_tool_specs (P1, 8 sites)" }
|
||||
phase_2 = { status = "completed", checkpointsha = "4bfce931", name = "openai_schemas (P1, 17 sites)" }
|
||||
phase_0 = { status = "pending", checkpointsha = "", name = "Shared scaffolding (JsonValue + audit + styleguide)" }
|
||||
phase_1 = { status = "pending", checkpointsha = "", name = "mcp_tool_specs (P1, 8 sites)" }
|
||||
phase_2 = { status = "pending", checkpointsha = "", name = "openai_schemas (P1, 17 sites)" }
|
||||
phase_3 = { status = "pending", checkpointsha = "", name = "provider_state (P2, 41 sites)" }
|
||||
phase_4 = { status = "pending", checkpointsha = "", name = "log_registry Session (P2, 7 sites)" }
|
||||
phase_5 = { status = "pending", checkpointsha = "", name = "api_hooks WebSocketMessage (P3, 16 sites)" }
|
||||
@@ -26,46 +26,46 @@ phase_6 = { status = "pending", checkpointsha = "", name = "Verify + docs + arch
|
||||
|
||||
[tasks]
|
||||
# Phase 0: Shared scaffolding
|
||||
t0_1 = { status = "completed", commit_sha = "647ad3d4", description = "Red: tests/test_audit_dataclass_coverage.py (mirror tests/test_audit_weak_types.py structure; verify regex patterns + Finding dataclass + --strict mode)" }
|
||||
t0_2 = { status = "completed", commit_sha = "cfdf8988", description = "Green: implement scripts/audit_dataclass_coverage.py (informational + --json + --strict + --baseline modes)" }
|
||||
t0_3 = { status = "completed", commit_sha = "4e658dd2", description = "Extend src/type_aliases.py with JsonPrimitive + JsonValue TypeAliases" }
|
||||
t0_4 = { status = "completed", commit_sha = "a28d8723", description = "Add 12 'When to Promote TypeAlias to dataclass' to conductor/code_styleguides/type_aliases.md" }
|
||||
t0_5 = { status = "completed", commit_sha = "6e6ba90e", description = "Phase 0 checkpoint commit + git note" }
|
||||
t0_1 = { status = "pending", commit_sha = "", description = "Red: tests/test_audit_dataclass_coverage.py (mirror tests/test_audit_weak_types.py structure; verify regex patterns + Finding dataclass + --strict mode)" }
|
||||
t0_2 = { status = "pending", commit_sha = "", description = "Green: implement scripts/audit_dataclass_coverage.py (informational + --json + --strict + --baseline modes)" }
|
||||
t0_3 = { status = "pending", commit_sha = "", description = "Extend src/type_aliases.py with JsonPrimitive + JsonValue TypeAliases" }
|
||||
t0_4 = { status = "pending", commit_sha = "", description = "Add §12 'When to Promote TypeAlias to dataclass' to conductor/code_styleguides/type_aliases.md" }
|
||||
t0_5 = { status = "pending", commit_sha = "", description = "Phase 0 checkpoint commit + git note" }
|
||||
# Phase 1: mcp_tool_specs (P1)
|
||||
t1_1 = { status = "completed", commit_sha = "96007ebd", description = "Red: tests/test_mcp_tool_specs.py (verify 45 tools registered; get_tool_spec dispatch; TOOL_NAMES cross-module invariant)" }
|
||||
t1_2 = { status = "completed", commit_sha = "96007ebd", description = "Green: create src/mcp_tool_specs.py with ToolParameter + ToolSpec dataclasses + module-level _REGISTRY" }
|
||||
t1_3 = { status = "completed", commit_sha = "96007ebd", description = "Migrate MCP_TOOL_SPECS dict literals to ToolSpec instances in src/mcp_tool_specs.py:_REGISTRY" }
|
||||
t1_4 = { status = "completed", commit_sha = "747e3983", description = "Update src/mcp_client.py call sites (lines 1944, 1958, 2747) to use mcp_tool_specs.tool_names() / get_tool_schemas()" }
|
||||
t1_5 = { status = "completed", commit_sha = "8bcde094", description = "Update src/ai_client.py:560,582,1012 (3 sites using mcp_client.TOOL_NAMES -> mcp_tool_specs.tool_names())" }
|
||||
t1_6 = { status = "completed", commit_sha = "96007ebd", description = "Verify cross-module invariant: TOOL_NAMES is a subset of models.AGENT_TOOL_NAMES (test_tool_names_subset_of_models_agent_tool_names passes)" }
|
||||
t1_7 = { status = "completed", commit_sha = "8bcde094", description = "Run regression suite on tests/test_mcp_client.py + tests/test_ai_client.py (45/45 pass)" }
|
||||
t1_8 = { status = "completed", commit_sha = "9961e437", description = "Phase 1 checkpoint commit + git note" }
|
||||
t1_1 = { status = "pending", commit_sha = "", description = "Red: tests/test_mcp_tool_specs.py (verify 45 tools registered; get_tool_spec dispatch; TOOL_NAMES cross-module invariant)" }
|
||||
t1_2 = { status = "pending", commit_sha = "", description = "Green: create src/mcp_tool_specs.py with ToolParameter + ToolSpec dataclasses + module-level _REGISTRY" }
|
||||
t1_3 = { status = "pending", commit_sha = "", description = "Migrate MCP_TOOL_SPECS dict literals to ToolSpec instances in src/mcp_tool_specs.py:_REGISTRY" }
|
||||
t1_4 = { status = "pending", commit_sha = "", description = "Update src/mcp_client.py call sites (lines 1944, 1958, 2747) to use mcp_tool_specs.tool_names() / get_tool_schemas()" }
|
||||
t1_5 = { status = "pending", commit_sha = "", description = "Update src/ai_client.py:560,582,1012 (3 sites using mcp_client.TOOL_NAMES -> mcp_tool_specs.tool_names())" }
|
||||
t1_6 = { status = "pending", commit_sha = "", description = "Verify cross-module invariant: TOOL_NAMES is a subset of models.AGENT_TOOL_NAMES" }
|
||||
t1_7 = { status = "pending", commit_sha = "", description = "Run regression suite on tests/test_mcp_client.py + tests/test_ai_client.py" }
|
||||
t1_8 = { status = "pending", commit_sha = "", description = "Phase 1 checkpoint commit + git note" }
|
||||
# Phase 2: openai_schemas (P1)
|
||||
t2_1 = { status = "completed", commit_sha = "a96f946b", description = "Red: tests/test_openai_schemas.py (19 tests, all pass)" }
|
||||
t2_2 = { status = "completed", commit_sha = "a96f946b", description = "Green: create src/openai_schemas.py with ToolCall + ToolCallFunction + ChatMessage + UsageStats dataclasses" }
|
||||
t2_3 = { status = "completed", commit_sha = "a96f946b", description = "Refactor src/openai_compatible.py:NormalizedResponse (4 usage fields -> UsageStats; tool_calls -> tuple[ToolCall, ...])" }
|
||||
t2_4 = { status = "completed", commit_sha = "a96f946b", description = "Refactor src/openai_compatible.py:OpenAICompatibleRequest (messages -> list[ChatMessage])" }
|
||||
t2_5 = { status = "completed", commit_sha = "a96f946b", description = "Update src/openai_compatible.py internal consumers (_send_blocking, _send_streaming, send_openai_compatible)" }
|
||||
t2_6 = { status = "in_progress", commit_sha = "", description = "Update src/ai_client.py _send_grok + _send_minimax + _send_llama (3 functions constructing OpenAICompatibleRequest) - deferred to Phase 3" }
|
||||
t2_7 = { status = "completed", commit_sha = "a96f946b", description = "Cross-check src/api_hook_client.py for NormalizedResponse/OpenAICompatibleRequest consumers (no direct construction)" }
|
||||
t2_8 = { status = "completed", commit_sha = "a96f946b", description = "Run regression suite (64 tests pass)" }
|
||||
t2_9 = { status = "completed", commit_sha = "4bfce931", description = "Phase 2 checkpoint commit + git note" }
|
||||
t2_1 = { status = "pending", commit_sha = "", description = "Red: tests/test_openai_schemas.py (ChatMessage.from_dict round-trip for 4 roles; UsageStats field access; ToolCall.function.arguments JSON parse; Result[T] error cases)" }
|
||||
t2_2 = { status = "pending", commit_sha = "", description = "Green: create src/openai_schemas.py with ToolCall + ToolCallFunction + ChatMessage + UsageStats dataclasses" }
|
||||
t2_3 = { status = "pending", commit_sha = "", description = "Refactor src/openai_compatible.py:NormalizedResponse (4 usage fields -> UsageStats; tool_calls -> tuple[ToolCall, ...])" }
|
||||
t2_4 = { status = "pending", commit_sha = "", description = "Refactor src/openai_compatible.py:OpenAICompatibleRequest (messages -> list[ChatMessage])" }
|
||||
t2_5 = { status = "pending", commit_sha = "", description = "Update src/openai_compatible.py internal consumers (~5 functions constructing/parsing NormalizedResponse)" }
|
||||
t2_6 = { status = "pending", commit_sha = "", description = "Update src/ai_client.py _send_grok + _send_minimax + _send_llama (3 functions constructing OpenAICompatibleRequest)" }
|
||||
t2_7 = { status = "pending", commit_sha = "", description = "Cross-check src/api_hook_client.py for NormalizedResponse/OpenAICompatibleRequest consumers" }
|
||||
t2_8 = { status = "pending", commit_sha = "", description = "Run regression suite on tests/test_openai_compatible.py + tests/test_ai_client.py" }
|
||||
t2_9 = { status = "pending", commit_sha = "", description = "Phase 2 checkpoint commit + git note" }
|
||||
# Phase 3: provider_state (P2)
|
||||
t3_1 = { status = "completed", commit_sha = "2ad4718c", description = "Audit baseline snapshot: 41 sites in src/ai_client.py (14 globals + 27 call sites in _send_<provider>)" }
|
||||
t3_2 = { status = "completed", commit_sha = "2ad4718c", description = "Red: tests/test_provider_state.py (12 tests, all pass; thread-safety + singleton + cleanup)" }
|
||||
t3_3 = { status = "completed", commit_sha = "2ad4718c", description = "Green: create src/provider_state.py with ProviderHistory dataclass + _PROVIDER_HISTORIES dict" }
|
||||
t3_4 = { status = "in_progress", commit_sha = "", description = "Remove 7 module globals + 7 lock declarations from src/ai_client.py:111-133 - DEFERRED to provider_state_migration_2026MMDD track" }
|
||||
t3_5 = { status = "in_progress", commit_sha = "", description = "Update src/ai_client.py:463-466 (cleanup() global declarations removed) - DEFERRED" }
|
||||
t3_6 = { status = "in_progress", commit_sha = "", description = "Update src/ai_client.py:483-499 (cleanup() 7 lock blocks -> get_history(p).clear()) - DEFERRED" }
|
||||
t3_7 = { status = "in_progress", commit_sha = "", description = "Update src/ai_client.py _send_anthropic (~20 sites) - DEFERRED" }
|
||||
t3_8 = { status = "in_progress", commit_sha = "", description = "Update src/ai_client.py _send_deepseek (~10 sites) - DEFERRED" }
|
||||
t3_9 = { status = "in_progress", commit_sha = "", description = "Update src/ai_client.py _send_grok (~10 sites) - DEFERRED" }
|
||||
t3_10 = { status = "in_progress", commit_sha = "", description = "Update src/ai_client.py _send_minimax (~10 sites) - DEFERRED" }
|
||||
t3_11 = { status = "in_progress", commit_sha = "", description = "Update src/ai_client.py _send_qwen (~8 sites) - DEFERRED" }
|
||||
t3_12 = { status = "in_progress", commit_sha = "", description = "Update src/ai_client.py _send_llama (~8 sites) - DEFERRED" }
|
||||
t3_13 = { status = "completed", commit_sha = "2ad4718c", description = "Verify SDK client holders (_gemini_chat, etc.) NOT touched (Pattern 3 preserved) - confirmed in commit 2ad4718c (only ProviderHistory + history globals are in scope)" }
|
||||
t3_14 = { status = "in_progress", commit_sha = "", description = "Run regression suite on tests/test_ai_client*.py - DEFERRED until t3_4..t3_12 complete" }
|
||||
t3_15 = { status = "in_progress", commit_sha = "", description = "Phase 3 checkpoint commit + git note (partial; deferred items documented)" }
|
||||
t3_1 = { status = "pending", commit_sha = "", description = "Audit baseline snapshot: count _<provider>_history + _<provider>_history_lock references in src/ai_client.py" }
|
||||
t3_2 = { status = "pending", commit_sha = "", description = "Red: tests/test_provider_state.py (ProviderHistory.append thread-safety; clear atomicity; get_history singleton; cleanup clears all 6)" }
|
||||
t3_3 = { status = "pending", commit_sha = "", description = "Green: create src/provider_state.py with ProviderHistory dataclass + _PROVIDER_HISTORIES dict" }
|
||||
t3_4 = { status = "pending", commit_sha = "", description = "Remove 7 module globals + 7 lock declarations from src/ai_client.py:111-133" }
|
||||
t3_5 = { status = "pending", commit_sha = "", description = "Update src/ai_client.py:463-466 (cleanup() global declarations removed)" }
|
||||
t3_6 = { status = "pending", commit_sha = "", description = "Update src/ai_client.py:483-499 (cleanup() 7 lock blocks -> get_history(p).clear())" }
|
||||
t3_7 = { status = "pending", commit_sha = "", description = "Update src/ai_client.py _send_anthropic (~20 sites at lines 1447, 1457-1460, 1469, 1471, 1475, 1489, 1503, 1506, 1582)" }
|
||||
t3_8 = { status = "pending", commit_sha = "", description = "Update src/ai_client.py _send_deepseek (~10 sites at lines 2201-2202, 2221-2222, 2353, 2360, 2418-2420)" }
|
||||
t3_9 = { status = "pending", commit_sha = "", description = "Update src/ai_client.py _send_grok (~10 sites at lines 2575-2588, 2605)" }
|
||||
t3_10 = { status = "pending", commit_sha = "", description = "Update src/ai_client.py _send_minimax (~10 sites at lines 2659-2685)" }
|
||||
t3_11 = { status = "pending", commit_sha = "", description = "Update src/ai_client.py _send_qwen (~8 sites at lines 2812-2823)" }
|
||||
t3_12 = { status = "pending", commit_sha = "", description = "Update src/ai_client.py _send_llama (~8 sites at lines 2901-2925)" }
|
||||
t3_13 = { status = "pending", commit_sha = "", description = "Verify SDK client holders (_gemini_chat, etc.) NOT touched (Pattern 3 preserved)" }
|
||||
t3_14 = { status = "pending", commit_sha = "", description = "Run regression suite on tests/test_ai_client*.py (8 files; 27 tests)" }
|
||||
t3_15 = { status = "pending", commit_sha = "", description = "Phase 3 checkpoint commit + git note" }
|
||||
# Phase 4: log_registry Session (P2)
|
||||
t4_1 = { status = "pending", commit_sha = "", description = "Red: extend tests/test_log_registry.py (Session.from_dict round-trip; Session.metadata Optional; LogRegistry.data typed)" }
|
||||
t4_2 = { status = "pending", commit_sha = "", description = "Green: add Session + SessionMetadata dataclasses inline in src/log_registry.py" }
|
||||
|
||||
@@ -4,10 +4,9 @@
|
||||
[meta]
|
||||
track_id = "phase2_4_5_call_site_completion_20260621"
|
||||
name = "Phase 2/4/5 Call-Site Completion (post any_type_componentization)"
|
||||
status = "completed"
|
||||
current_phase = 6
|
||||
status = "active"
|
||||
current_phase = 0
|
||||
last_updated = "2026-06-21"
|
||||
# TRACK COMPLETE 2026-06-21 - all 4 phases shipped
|
||||
|
||||
[blocked_by]
|
||||
# No blockers; this track unblocks the audit
|
||||
@@ -16,10 +15,10 @@ last_updated = "2026-06-21"
|
||||
code_path_audit_20260607 = "blocked_until_merge"
|
||||
|
||||
[phases]
|
||||
phase_6a = { status = "completed", checkpointsha = "224930d4", name = "Fix HookServer.broadcast() callers" }
|
||||
phase_6b = { status = "completed", checkpointsha = "58346281", name = "Complete OpenAICompatibleRequest migration" }
|
||||
phase_6d = { status = "completed", checkpointsha = "224930d4", name = "Update NormalizedResponse construction" }
|
||||
phase_6e = { status = "completed", checkpointsha = "fbc5e5aa", name = "Phase 3 Hypothetical Cost Deduction (Tier 2 authoritative deliverable)" }
|
||||
phase_6a = { status = "pending", checkpointsha = "", name = "Fix HookServer.broadcast() callers" }
|
||||
phase_6b = { status = "pending", checkpointsha = "", name = "Complete OpenAICompatibleRequest migration" }
|
||||
phase_6d = { status = "pending", checkpointsha = "", name = "Update NormalizedResponse construction" }
|
||||
phase_6e = { status = "pending", checkpointsha = "", name = "Phase 3 Hypothetical Cost Deduction (Tier 2 authoritative deliverable)" }
|
||||
|
||||
[tasks]
|
||||
# Phase 6a: Fix HookServer.broadcast() callers
|
||||
@@ -47,28 +46,28 @@ t6d_5 = { status = "pending", commit_sha = "", description = "Run tier-1-unit-co
|
||||
t6d_6 = { status = "pending", commit_sha = "", description = "All 11 tiers FULLY (no stop-on-failure) per regression protocol" }
|
||||
t6d_7 = { status = "pending", commit_sha = "", description = "Phase 6d checkpoint commit + git note" }
|
||||
# Verify + archive
|
||||
tv_1 = { status = "completed", commit_sha = "see-phase-sha", description = "Run audit_weak_types.py --strict + audit_dataclass_coverage.py --strict (both exit 0)" }
|
||||
tv_2 = { status = "completed", commit_sha = "see-phase-sha", description = "Run generate_type_registry.py --check (exit 0)" }
|
||||
tv_3 = { status = "completed", commit_sha = "see-phase-sha", description = "Write docs/reports/TRACK_COMPLETION_phase2_4_5_call_site_completion_20260621.md" }
|
||||
tv_4 = { status = "completed", commit_sha = "see-phase-sha", description = "git mv to conductor/tracks/archive/" }
|
||||
tv_5 = { status = "completed", commit_sha = "see-phase-sha", description = "Update conductor/tracks.md" }
|
||||
tv_1 = { status = "pending", commit_sha = "", description = "Run audit_weak_types.py --strict + audit_dataclass_coverage.py --strict (both exit 0)" }
|
||||
tv_2 = { status = "pending", commit_sha = "", description = "Run generate_type_registry.py --check (exit 0)" }
|
||||
tv_3 = { status = "pending", commit_sha = "", description = "Write docs/reports/TRACK_COMPLETION_phase2_4_5_call_site_completion_20260621.md" }
|
||||
tv_4 = { status = "pending", commit_sha = "", description = "git mv to conductor/tracks/archive/" }
|
||||
tv_5 = { status = "pending", commit_sha = "", description = "Update conductor/tracks.md" }
|
||||
# Phase 6e: Phase 3 Hypothetical Cost Deduction
|
||||
t6e_1 = { status = "completed", commit_sha = "see-phase-sha", description = "Profile the 6 senders (during 6b/6d work): codepath catalog + helper call sites + hidden cross-references Tier 1's grep missed" }
|
||||
t6e_2 = { status = "completed", commit_sha = "see-phase-sha", description = "Qualitative cost estimation per sender (per-call categories: append / len / iteration / lock-acquire / with-lock / global-decl / helper-call)" }
|
||||
t6e_3 = { status = "completed", commit_sha = "see-phase-sha", description = "Identify hot iteration sites that need 'with h.lock: msg_list = h.messages' pattern vs h.get_all() (avoids list-copy cost)" }
|
||||
t6e_4 = { status = "completed", commit_sha = "see-phase-sha", description = "Author docs/reports/PHASE3_TIER2_ANALYSIS.md (per-sender cost summary + hidden call sites table + recommendations + comparison vs Tier 1 hypothesis + cross-reference to Tier 1 draft)" }
|
||||
t6e_5 = { status = "completed", commit_sha = "see-phase-sha", description = "Phase 6e checkpoint commit + git note" }
|
||||
t6e_1 = { status = "pending", commit_sha = "", description = "Profile the 6 senders (during 6b/6d work): codepath catalog + helper call sites + hidden cross-references Tier 1's grep missed" }
|
||||
t6e_2 = { status = "pending", commit_sha = "", description = "Qualitative cost estimation per sender (per-call categories: append / len / iteration / lock-acquire / with-lock / global-decl / helper-call)" }
|
||||
t6e_3 = { status = "pending", commit_sha = "", description = "Identify hot iteration sites that need 'with h.lock: msg_list = h.messages' pattern vs h.get_all() (avoids list-copy cost)" }
|
||||
t6e_4 = { status = "pending", commit_sha = "", description = "Author docs/reports/PHASE3_TIER2_ANALYSIS.md (per-sender cost summary + hidden call sites table + recommendations + comparison vs Tier 1 hypothesis + cross-reference to Tier 1 draft)" }
|
||||
t6e_5 = { status = "pending", commit_sha = "", description = "Phase 6e checkpoint commit + git note" }
|
||||
|
||||
[verification]
|
||||
phase_6a_broadcast_fixed = true
|
||||
phase_6a_regression_test_passes = true
|
||||
phase_6b_openai_compat_migrated = true
|
||||
phase_6d_normalized_response_migrated = true
|
||||
phase_6e_tier2_analysis_committed = true
|
||||
phase_6a_broadcast_fixed = false
|
||||
phase_6a_regression_test_passes = false
|
||||
phase_6b_openai_compat_migrated = false
|
||||
phase_6d_normalized_response_migrated = false
|
||||
phase_6e_tier2_analysis_committed = false
|
||||
full_11_tier_regression_passes = false
|
||||
audit_weak_types_strict_passes = true
|
||||
audit_dataclass_coverage_strict_passes = true
|
||||
type_registry_check_passes = true
|
||||
audit_weak_types_strict_passes = false
|
||||
audit_dataclass_coverage_strict_passes = false
|
||||
type_registry_check_passes = false
|
||||
track_archived = false
|
||||
|
||||
[broadcast_callers_to_fix]
|
||||
|
||||
Reference in New Issue
Block a user