diff --git a/.story_kit/work/1_backlog/318_refactor_split_mcp_rs_into_domain_specific_tool_modules.md b/.story_kit/work/1_backlog/318_refactor_split_mcp_rs_into_domain_specific_tool_modules.md new file mode 100644 index 0000000..aab576f --- /dev/null +++ b/.story_kit/work/1_backlog/318_refactor_split_mcp_rs_into_domain_specific_tool_modules.md @@ -0,0 +1,32 @@ +--- +name: "Split mcp.rs into domain-specific tool modules" +--- + +# Refactor 318: Split mcp.rs into domain-specific tool modules + +## Current State + +- TBD + +## Desired State + +mcp.rs is 4,925 lines containing all MCP tool definitions and handlers in a single file. Split by domain: +- mcp/mod.rs — JSON-RPC dispatch, tools list registration +- mcp/story_tools.rs — create_story, update_story, check_criterion, add_criterion, accept_story, move_story +- mcp/agent_tools.rs — start_agent, stop_agent, list_agents, get_agent_output, wait_for_agent +- mcp/merge_tools.rs — merge_agent_work, get_merge_status, move_story_to_merge, report_merge_failure +- mcp/qa_tools.rs — request_qa, approve_qa, reject_qa, launch_qa_app +- mcp/diagnostics.rs — get_server_logs, get_pipeline_status, get_token_usage, rebuild_and_restart +- Tests split into corresponding test modules + +## Acceptance Criteria + +- [ ] mcp.rs split into domain-specific modules under http/mcp/ +- [ ] JSON-RPC dispatch remains in mod.rs, delegates to domain handlers +- [ ] All tool handler signatures unchanged +- [ ] All existing tests pass +- [ ] No public API changes + +## Out of Scope + +- TBD