---
name: construction-directive-contract
scope:
  - '*'
products:
  - '*'
id: ka-hard-rule-施工指令契约规则
type: governance_rule
asset_kind: governance_rule
lifecycle_status: active
authority: canonical
owner_mechanism_id: mc-instruction-contract
routes: ['*']
primary_triggers:
  - 代码修改
  - 文件创建
  - 重构操作
secondary_triggers: []
negative_triggers: []
priority: P0
specificity: 5
consumes:
  - ka-hard-rule-核心工程执行原则
hard_blocks:
  - 无施工指令直接编码
  - 空目标/空范围/空验收标准
  - 缺失字段不澄清直接执行
  - 只改测试/文档/registry 自证
fallback: manual_required
required_evidence:
  - instruction_contract
  - user_confirmation
  - scope_boundary_check
version: 1.1.0
last_reviewed: '2026-06-01'
stages: ["*"]
---

# 施工指令契约规则

## 硬规则

### HR-1: 任何实现/编码/写文件前必须有施工指令

AI 在执行任何代码修改、文件创建、重构操作前，必须先确认存在施工指令。

施工指令必须包含以下字段（全部必填，不可为空）：

| 字段 | 说明 | 示例 |
|------|------|------|
| 目标 | 本次施工要达成什么 | "为用户登录功能添加 JWT 认证" |
| 范围 | 涉及哪些文件/模块 | `["src/auth/jwt.ts", "src/middleware/auth.ts"]` |
| 非目标 | 明确不做什么 | "不改动现有 session 机制" |
| 落点 | 产出物放在哪里 | "src/auth/jwt.ts" |
| 验收标准 | 怎样算完成 | "单元测试通过，token 过期能正确拒绝" |
| 禁止绕过项 | 不可跳过的检查 | "不可跳过测试、不可跳过 review" |

### HR-2: 缺失字段时必须先澄清

如果施工指令缺少任何必填字段，AI 必须：
1. 向用户指出缺失的字段
2. 提供推荐值和理由
3. 等待用户确认后再继续

**禁止**：猜测缺失字段、使用空值或占位符填充、跳过澄清直接编码。

### HR-3: 施工指令不可假通过

以下情况不得判定为通过：
- 空目标/空范围/空验收标准
- 非目标写"无"但不提供理由
- 落点不明确（如"某个目录"）
- 禁止绕过项列表为空

### HR-4: 用户项目同样适用

通过 sync-templates 注入到用户项目后，本规则在用户项目开发中同样生效。
用户使用 SoloForge 时，AI 工具在执行写操作前会自动检查施工指令。
