feat: migrate_maestro MCP tool; release 0.13.0 - #245
Merged
Conversation
MCP surface audit: probe migrate maestro was the one CLI capability with no MCP representation. The new tool shares the exact discovery + conversion code the CLI uses (DiscoverYAMLFiles moved to internal/migrate as the shared home; recursive walk, source-layout mirroring, full G-3 2.x hardening). Live-verified through the MCP protocol against nect-flutter's real 76-flow suite: 76/76 converted, subdirectory layout mirrored. Also verified live this session: MCP initialize handshake, all 19 tools listed, write_test serves the 0.12.x syntax documentation over the wire, accepts new-syntax content and rejects invalid content without writing, and run_script executes against a real emulator.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
MCP integration check (user request) — full protocol-level verification plus one gap closed:
Verified live over real MCP JSON-RPC (stdio): initialize handshake, tools/list (19 tools),
write_testserving the 0.12.x syntax docs over the wire and correctly accepting new-syntax / rejecting invalid content without writing,run_scriptexecuting against a live emulator (1 passed),list_devicesseeing all connected devices.Gap found by the surface audit:
probe migrate maestrohad no MCP representation. Addedmigrate_maestro, sharing the exact CLI code path —DiscoverYAMLFilesmoved frominternal/clitointernal/migrate(its natural home;cliimportsmcp, somcpcouldn't importcli). Live-verified through the protocol against nect-flutter's real 76-flow suite: 76/76 converted, subdirectory layout mirrored.Release 0.13.0
New tool = new feature = minor bump per the versioning policy. All checklist files bumped; both CHANGELOGs sectioned;
mcp.mdtools table updated. Tag after merge.Test plan
go build ./.../go test ./...green, incl. 2 new MCP handler tests (recursive conversion with layout mirroring; source-required validation) and the tools-list count/name assertions updatedinternal/climigrate tests still green on the shared helper