## 🛡️ Gatekeeper Report — PR #15222 feat(org): add team project binding shortcuts

**Verdict: ❌ REQUEST_CHANGES**  ·  Score: 55/100  ·  policy: gatekeeper.yaml@v1

| Dimension | Weight | Score | Notes |
|-----------|:------:|:-----:|-------|
| Review findings | 40 | 5/40 | 0 blocker / 1 major / 2 minor / 0 nit |
| Test coverage   | 20 | 20/20 | 1 src / 1 test files |
| PR hygiene      | 15 | 10/15 | desc ✓ / linked issue ✗ / size ✓ |
| Commit quality  | 15 | 15/15 | 0/0 conventional |
| CI status       | 10 | 5/10 | unknown |

### 👥 Suggested reviewers (3)
- @doc-maintainer — 6 file(s): README.md, README.zh-CN.md, doc/changes/org-team-projects.md …
- @go-reviewer — 2 file(s): shortcuts/org/org.go, shortcuts/org/org_test.go
- @qa-reviewer — 1 file(s): shortcuts/org/org_test.go

### 🔴 Must fix (1)
- [major] parseBool 只把字面 "true" 当真：用户传 --dry-run=1 / t / TRUE 以外写法会被静默解析为 false。该 flag 守护的是 team-projects-remove-all（批量移除团队全部项目）这类破坏性操作——预览意图被静默降级为真实执行。建议改用 strconv.ParseBool（与 shortcuts/common/runner.go:52 解析 flag 默认值的行为一致），无法识别的值应报错而非吞掉 — shortcuts/org/org.go:156

### 🟡 Should fix (2)
- [minor] team-projects-remove-all 一条命令清空团队全部项目绑定，除 --dry-run 外无确认机制；建议在 Description/help 标注危险性，或要求显式 --yes 二次确认 — shortcuts/org/org.go:103
- [minor] dry-run 预览 payload 中 action（add_all_team_projects/remove_all_team_projects）与实际请求 path 段（create_all/destroy_all，见 :134）是两套词汇，排查问题时易误导；建议统一或在 payload 同时给出两者映射 — shortcuts/org/org.go:142

### Next steps
1. 评分低于阈值，按上方 Must/Should fix 修复后重新触发 gatekeeper
---
*Generated by gitlink-gatekeeper · policy-as-code PR gate · re-run after changes*
