用途:在 React Router 仓库中按流程实施一份 RFC。输入为 GitHub discussion URL;若只给编号则拼接为 https://github.com/remix-run/react-router/discussions/<number>。
主要流程与能力:从干净工作树开始,必要时基于 main 新建 {author}/rfc-{semantic-name} 分支;抓取并理解 RFC,提取问题、提议 API、受影响模式、破坏性变更、未决问题及跟踪 issue。抓取讨论全部评论,归纳共识、争议与未答问题,并区分维护者回复。写代码前以编号列表呈现所有未决问题,给出推荐答案,等待逐条确认、覆盖或延期,并保存至 tasks/rfc-decisions.md;随后给出实现计划并等待批准。
实现约束:涉及现有公共 API 行为变更时须置于 unstable_ 前缀的 future flag 之后,在 packages/react-router/lib/router/utils.ts 的 FutureConfig 添加并门控;纯新增 API 无需 flag。需按既有命名与风格改动,导出公共入口,为被替代 API 加 @deprecated JSDoc;避免无关重构。可按需运行 pnpm typecheck、pnpm lint、pnpm test packages/react-router/ 及 pnpm test:integration:run --project chromium(仅当新增或改动集成测试)。
测试与交付:单元测试放 packages/react-router/tests/,覆盖正常路径、边界、future flag 门控与弃用警告;涉及 Framework Mode、文件路由或 SSR 时补充 integration/。changeset 写入 packages/<package>/.changes/<bump-level>.<descriptive-name>.md,等级为 patch/minor/major/unstable。最后汇总新公开 API、弃用迁移路径、flag 名称、测试覆盖与延期项,经确认后提交并以 gh pr create --base main --title "feat: <RFC title>" --body "..." 开 PR。
限制:必须有人工交互确认与审批;分支、命令与文件路径均按资料要求原样执行;具体仓库版本、维护状态与适用范围暂未提供。