问题域/PD-149

角色路由系统

Role-Based Routing

基于用户角色的智能路由,自动检测 maintainer/contributor 并路由到不同仓库

子问题

1.角色自动检测

2.路由策略配置

3.多仓库管理

4.权限隔离

5.URL 启发式不可靠性(fork contributor 也可能用 SSH)

6.多仓库 hydration 配置复杂性

7.Stealth mode 与 git worktree 兼容性

各项目的解法1 solutions

Signals

横向对比

维度beads
角色检测方式git config 显式配置 + URL 启发式(SSH/HTTPS)双层降级
路由策略五级优先级链:--repo flag > auto 模式 > DefaultRepo > 当前目录
隔离级别物理隔离(独立 git 仓库 + 独立数据库),非逻辑标记
配置自动化bd init --contributor 一键向导,自动检测 fork + 创建 planning repo
Stealth 支持.git/info/exclude 实现 git 级别隐身,支持 worktree
向后兼容配置键迁移(contributor.* → routing.*)+ 数据库 fallback
可测试性gitCommandRunner 函数变量注入 + gitStub mock 框架

最佳实践

1.git config 显式配置优先

2.URL 启发式作为 fallback

3.stealth mode 支持本地使用

4.contributor mode 隔离实验性工作

5.安全降级:无配置时默认 Contributor 避免污染

6.环境变量兜底:BEADS_DIR 优先级高于所有路由配置

7.物理隔离优于逻辑标记:独立仓库比 visibility flag 更可靠

8.可测试性设计:函数变量注入支持 git 命令 mock