docs: add v1.0 TypeScript/npx migration plan#116
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
✅ Files skipped from review due to trivial changes (1)
📝 WalkthroughWalkthroughThis PR adds a comprehensive migration plan documenting the transition from a Python/ ChangesPython to TypeScript MCP Server Migration Plan
Estimated Code Review Effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Adds a detailed migration plan documenting a potential move from the current Python/uvx distribution to a TypeScript/Node.js implementation distributed via npx, with emphasis on PTY behavior parity and stage-gated execution.
Changes:
- Introduces a comprehensive, stage-gated TypeScript migration plan (scope, risks, timeline, tooling).
- Documents schema/tool contract requirements and testing strategy (golden files + PTY integration).
- Outlines packaging/CI/Docker implications for a Node.js + native-module stack (
node-pty,sharp).
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/MIGRATION_PLAN.md`:
- Around line 418-429: The migration doc has several fenced code blocks
containing function signatures (e.g., interactive_openroad_query,
interactive_openroad_exec, create_interactive_session,
list_interactive_sessions, terminate_interactive_session,
inspect_interactive_session, get_session_history, get_session_metrics,
list_report_images, read_report_image) that lack a language identifier—edit each
fenced block and add a language tag (suggest "typescript" or "ts") immediately
after the opening ``` so linters accept them; also locate the inline code span
that currently has an extra space inside its backticks (the inline symbol near
the session/metrics section) and remove the extra space so the inline code span
contains the identifier exactly with no surrounding spaces.
- Line 286: Update the sentence claiming JSON "stays identical" to a caveated
statement: note that Zod's z.object().parse() behavior varies with .optional(),
.nullish(), .nullable(), and .default() (keys may be omitted, null preserved, or
defaults populated), so JSON may differ; instruct readers to add parity tests
that cover undefined vs null vs omitted fields and default values to verify
equivalence between each Pydantic model and its Zod schema.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
Code reviewFound 2 issues:
🤖 Generated with Claude Code - If this code review was useful, please react with 👍. Otherwise, react with 👎. |
|
Please sync the plan to the latest codebase. |
luarss
left a comment
There was a problem hiding this comment.
You may start contributing to feat/ts-migration
Description
This MR adds a scoped migration plan for deciding whether OpenROAD MCP should move from Python/
uvxto TypeScript/npxfor v1.0.Refs: #114
Summary by CodeRabbit