diff --git a/conductor/tracks/any_type_componentization_20260621/state.toml b/conductor/tracks/any_type_componentization_20260621/state.toml index cbf94400..cf9fbf8f 100644 --- a/conductor/tracks/any_type_componentization_20260621/state.toml +++ b/conductor/tracks/any_type_componentization_20260621/state.toml @@ -5,7 +5,7 @@ track_id = "any_type_componentization_20260621" name = "Any-Type Componentization (Promote dict[str, Any] to dataclass(frozen=True))" status = "active" -current_phase = 1 +current_phase = 2 last_updated = "2026-06-21" [blocked_by] @@ -17,7 +17,7 @@ openai_tools_dataclass_bridge_2026MMDD = "planned" [phases] phase_0 = { status = "completed", checkpointsha = "6e6ba90e", name = "Shared scaffolding (JsonValue + audit + styleguide)" } -phase_1 = { status = "pending", checkpointsha = "", name = "mcp_tool_specs (P1, 8 sites)" } +phase_1 = { status = "completed", 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)" } @@ -32,14 +32,14 @@ t0_3 = { status = "completed", commit_sha = "4e658dd2", description = "Extend sr 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" } # Phase 1: mcp_tool_specs (P1) -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" } +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 = "in_progress", commit_sha = "", description = "Phase 1 checkpoint commit + git note" } # Phase 2: openai_schemas (P1) 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" }