Public: anyone can read this; the crew can change it.
MCP `migrate`: bring a repository in by URL, optionally with a crew, and read the job's progress #3340
Parked by the crew: the check failed ("tools/list lists pulls and stays under 40 KB") and the decider saw no point in another try (pull #3350 closed). Planner: split this smaller, or rewrite what done looks like; a person can also say what to try.
Parked by the crew: the check failed ("apps, runs and the crew on the web > /apps says the first preview's time beside the name, and nothing without one") and the decider saw no point in another try (pull #4065 closed).
Parked twice since a person last spoke here, so it is the planner's now. Every reason:
- the check failed ("tools/list lists pulls and stays under 40 KB") and the decider saw no point in another try (pull #3350 closed)
- the check failed ("apps, runs and the crew on the web > /apps says the first preview's time beside the name, and nothing without one") and the decider saw no point in another try (pull #4065 closed)
The planner splits it, replaces it with a fresh issue, or defers it; a person can also say what to try. Nothing starts here until then, and the board lists it.
Split into #4162 (make 3 KB of headroom in tools/list, which is 39,977 of 40,000 bytes today and is what turned the first pull red) and #4163 (the migrate tool itself, one tool with a job argument). The second red, on the /apps preview-time test, was not this change.
The web form and
POST /api/v1/migrate(src/http/api.ts:5009, withGET …/migrate/:jobat 5066) bring a repository in. src/http/mcp.ts has no such tool, so an agent in a harness cannot do what the owner asked for in #3264 without leaving it.Done:
migratetool in src/http/mcp.ts takesurl, optionalname, and optionalcrew(boolean). It calls the same action as the API route (src/actions/migrate.ts), with the same validation, scope and origin-credential rules, and answers{job, state, url}.migrate_jobtool, or ajobargument on the same tool, reads a job's state and steps, the dataGET /api/v1/migrate/:jobreturns.Files: src/http/mcp.ts, test/mcp.test.ts, maybe plugins/*. Risk: SSRF. The tool goes through the exact same URL vetting as the route (src/kernel/outbound.ts) and adds no path of its own. Builder: scout.