Files
reverse-skills-max/reverse-skill-repo/skills/field-journal/2026-08-08_client-neutral-structured-routing-pr-integration.md

100 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 2026-08-08 平台无关结构化路由 PR 集成
## 场景分类
代码审计 / 工具链维护 / 多平台路由
## 目标概述
对多组高冲突 PR 做增量价值审查,并将有价值部分重构为平台无关核心后集成。
## Scope 摘要(脱敏)
- auth_basis: repository_owner_authorized
- network_profile: authorized_upstream_only
- asset_types: [source_repository, pull_request_refs, local_tests]
## 角色
- lead_role: lead
- specialists: [cae, doc]
## 完整执行链路
1. 从远端抓取 PR refs,在隔离 worktree 中比较各 PR 与当前主线。
2. 先按增量价值判断,再用 merge parent 保留来源关系,并按语义解决冲突。
3. 将结构化路由从客户端接入中解耦,以 JSON 作为 PowerShell/Bash 共同事实源。
4. 对大 PR 只取授权门禁和 Bash parity,排除客户端专属与生成资产。
5. 运行全量路由、结构门禁、语言单测、语法与 manifest 校验。
## Evidence 链摘要(脱敏)
| E-id | source_type | 可复用命令模式 | 关联 Finding |
|------|-------------|----------------|--------------|
| E-001 | git diff | `git diff <main>...<pr-ref>` | F-001 |
| E-002 | regression | `test-routing.ps1` + coherence + smoke | F-001 |
| E-003 | unit tests | Python unittest + Node test + Bash parity | F-002 |
## Finding / Path 摘要
- top_finding: 客户端集成不是结构化路由的核心价值,单一事实源与自动门禁才是。
- path_type: callflow
- path_one_liner: 任意宿主 → 可选适配器 → routing.json → 跨平台 router → 统一回归门禁
## 踩坑记录
| 问题 | 原因 | 解决方案 | 耗时 |
|------|------|---------|------|
| 大 PR 同时混入客户端清单、GIF、脚本和文档 | 关注点未拆分 | 只合并最小跨平台子集 | 中 |
| Bash router 与 PowerShell 各自硬编码 | 两份事实源必然漂移 | Bash 通过 Python 读取同一 JSON | 中 |
| 新 pin gate 首次失败 | Kali manifest 保留浮动源 | pin manifest 且让实际安装命令使用 pin | 中 |
| Gradle wrapper 下载 TLS 中断 | 外部网络握手异常 | 记录并在最终验证重试 | 低 |
| Bash CaseName 可写出 work 根 | 选择性合并时漏掉 PowerShell 已有的路径约束 | 补跨平台等价校验与负向 CI | 中 |
| 授权 URL 被标成 offline | Bash 默认值未与 PowerShell 对齐 | 网络目标默认 authorized_target_only;offline 仅本地样本 | 低 |
| INDEX 在开发机通过、clean clone 失败 | 生成器扫描了被忽略的本地私有模块 | 只枚举 Git 已跟踪 SKILL.md | 中 |
## 工具链发现
Git merge parent 能保留 PR 来源关系,同时允许在 merge commit 内做语义删减。供应链 gate 只有在 manifest 元数据与实际安装命令共同固定时才有效。
## 关键代码/命令
```text
git merge --no-ff --no-commit <pr-ref>
powershell -File skills/scripts/test-routing.ps1
powershell -File skills/scripts/verify-routing-coherence.ps1
bash skills/scripts/master-route.sh --hint "case review evidence graph"
```
## 对本包的改进建议
所有客户端适配器放在独立边界;禁止将客户端配置写进核心路由 PR。大型 PR 必须按核心、适配器、演示资产和文档拆分。
## 可复用的模式/脚本片段
结构化路由 parity 测试至少覆盖普通路由、冲突优先级路由和最新新增路由,防止某个平台入口滞后。
对同一 163 条基准做旧/新 A/B:旧硬编码实现 137/163(84.05%),结构化实现 163/163(100%)。只有这种同输入量化对比,才能证明重构是实质提升而非文件数量增长。
## 进化动作
- [x] 更新了路由矩阵
- [ ] 更新了 tool-index
- [x] 更新了 bootstrap-manifest
- [x] 更新了子 skill 文档
- [x] 新增了 pitfalls 记录
- [ ] 无需更新
## 环境信息
- OS: Windows(主验证)+ Linux CI 定义
- 工具版本: Git / PowerShell / Python 3 / Node.js / Bash
- 目标平台/版本: client-neutral repository core
## 脱敏要求
本条目不包含真实目标、凭据、内部地址或个人身份信息。
---
<!-- [社区贡献] 已按仓库所有者指示准备推送主线。 -->