用途:security-gate 负责两件事。一是在用户仍处于需求访谈、选择功能时应用 threat-model-lite,避免后续阶段猜测安全决策;二是在任务规划时对每个切片应用 deep-pass 触发清单,并在验证阶段让 deep 切片对照已记录的安全决策接受 full-review。该技能本身不执行审查,findings、漏洞利用与修复属于 full-review。
主要能力:threat-model-lite 是 spec 阶段的交互清单,在需求访谈内运行,只把未解决的安全决策返回访谈前沿,与访谈共用五问上限,不另发第二批问题;答案记入决策记录,由 to-prd 带入 PRD 的 Security Decisions 部分。清单维度包括 Actors & auth、Untrusted input、Data sensitivity、Secrets、Dependencies、Tenancy & access scope、Abuse、Failure exposure。复用已记录的决策,非关键细节可用安全范围内的默认值;仅当答案会改变访问、数据处理、范围、成本、允许效果或未解决的安全决策时才提问,沉默不视为批准。
使用方式:规划时,若切片触及认证、授权、会话或权限逻辑,解析或反序列化不可信输入,密钥令牌凭据或密码学,PII 或受监管数据及其日志,新的第三方依赖或外部服务集成,CORS、CSP、安全头、Cookie、重定向,用变量构造 SQL/NoSQL 查询、shell 命令或模板渲染,数据库迁移或数据回填,以及由用户输入派生的文件系统路径,则标记 security: deep;否则标记 security: standard。验证时每个 deep 切片都要由 full-review 配合 security_focus=true 覆盖,并传入其记录的安全决策,纳入已批准的 review 计划;若同一次功能评审覆盖相同最终代码与风险,可在任务完成或功能评审时运行,无新证据不重复。standard 切片走常规范围审查,不加额外评审组。阶段边界参见 shared/references/workflow-stage-routing.md。
输出契约:spec 阶段返回已答清单作为 security_decisions;规划阶段返回每个切片的安全级别与命中的触发条件;验证阶段返回交给 full-review 的优先级指示。
限制:不要机械地问完八个清单问题,只问该功能真正暴露的;自主阶段不得把 deep 降级,规划后标记只能升级;不要在此重复审查内容。