universal-dev-standards 5.3.2 → 5.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,177 +1,43 @@
1
- # Agent Communication Protocol - AI Optimized
2
- # Source: core/agent-communication-protocol.md
3
- # Spec: docs/specs/SPEC-AGENT-COMM-001-agent-communication-protocol.md
1
+ # Agent Communication Protocol - DEPRECATED STUB
2
+ # This file has been migrated to DevAP per DEC-049 (UDS/DevAP responsibility split).
3
+ # Canonical location: dev-autopilot/standards/orchestration/agent-communication-protocol.ai.yaml
4
+ # Migration: XSPEC-086 Phase 2 (2026-04-27)
5
+ #
6
+ # Human-readable standard: core/agent-communication-protocol.md (remains in UDS)
7
+ # Deprecation schedule: UDS 5.4.0 deprecated → UDS 6.0.0 removed
4
8
 
5
9
  standard:
6
10
  id: agent-communication
7
- name: Agent Communication Protocol
8
- description: 跨專案 Agent 統一通訊協定
9
-
10
11
  meta:
11
- version: "1.0.0"
12
- updated: "2026-03-30"
12
+ version: "1.0.1"
13
+ updated: "2026-04-27"
14
+ deprecated: true
15
+ deprecated_since: "5.4.0"
16
+ removal_version: "6.0.0"
17
+ canonical_owner: devap
18
+ canonical_path: "dev-autopilot/standards/orchestration/agent-communication-protocol.ai.yaml"
13
19
  source: core/agent-communication-protocol.md
14
- description: 統一狀態碼、訊息信封、結構化交接與協定版本管理
15
- scope: universal
16
-
17
- guidelines:
18
- - "Agent 間通訊必須使用 Envelope 格式,禁止 prompt injection"
19
- - "狀態碼必須使用統一 8 碼超集:success / success_partial / failed / blocked / needs_context / skipped / timeout / unknown"
20
- - "上下文傳遞必須使用 Handoff 物件,引用 artifact_id 而非嵌入完整內容"
21
- - "未知狀態碼映射為 unknown,記錄警告,不中斷執行"
22
- - "同 MAJOR 版本保證向後相容,不同 MAJOR 回報 VERSION_INCOMPATIBLE"
23
-
24
- status_protocol:
25
- - unified: success
26
- uds: DONE
27
- devap: success
28
- vibeops: success
29
- - unified: success_partial
30
- uds: DONE_WITH_CONCERNS
31
- devap: done_with_concerns
32
- vibeops: partial
33
- - unified: failed
34
- uds: null
35
- devap: failed
36
- vibeops: failure
37
- - unified: blocked
38
- uds: BLOCKED
39
- devap: blocked
40
- vibeops: null
41
- - unified: needs_context
42
- uds: NEEDS_CONTEXT
43
- devap: needs_context
44
- vibeops: null
45
- - unified: skipped
46
- uds: null
47
- devap: skipped
48
- vibeops: null
49
- - unified: timeout
50
- uds: null
51
- devap: timeout
52
- vibeops: null
53
- - unified: unknown
54
- uds: null
55
- devap: null
56
- vibeops: null
57
-
58
- envelope:
59
- version: "1.0"
60
- required_fields:
61
- - field: envelope_version
62
- type: string
63
- description: "協定版本(MAJOR.MINOR)"
64
- - field: message_id
65
- type: uuid
66
- description: "訊息唯一 ID"
67
- - field: source
68
- type: object
69
- description: "發送者 { agent_id, agent_type, project }"
70
- - field: target
71
- type: object
72
- description: "接收者 { agent_id?, agent_type }(broadcast 時可省略)"
73
- - field: status
74
- type: string
75
- description: "統一狀態碼"
76
- - field: timestamp
77
- type: iso8601
78
- description: "訊息建立時間"
79
- - field: payload.artifact_type
80
- type: string
81
- enum: [spec, code, test, review, plan, design]
82
- - field: payload.artifact_id
83
- type: string
84
- description: "Artifact 唯一 ID"
85
- optional_fields:
86
- - field: correlation_id
87
- description: "關聯 ID(同一任務鏈)"
88
- - field: parent_message_id
89
- description: "父訊息 ID(回應時填寫)"
90
- - field: metadata
91
- description: "擴展元資料(model_tier, token_usage, duration_ms)"
92
- - field: concerns
93
- description: "success_partial 時的疑慮列表"
94
-
95
- handoff:
96
- required_fields:
97
- - field: from
98
- description: "發送者 { agent_id, agent_type, message_id }"
99
- - field: to
100
- description: "接收者 { agent_type }"
101
- - field: artifacts
102
- description: "Artifact 引用陣列 [{ artifact_id, artifact_type, summary }]"
103
- optional_fields:
104
- - field: decision_log
105
- description: "決策記錄 [{ decision, reason, agent_id, timestamp }]"
106
- - field: pending_items
107
- description: "待處理事項 [{ item, priority, context? }]"
108
- - field: constraints
109
- description: "約束條件 [string]"
110
-
111
- hook_exit_codes:
112
20
  description: >
113
- Hook 退出碼三分類(借鑑 lintsinghua/claude-code-book Ch.7 Hooks 協議)。
114
- 適用於所有 DevAP/VibeOps 生成的 Claude Code hook shell 腳本。
115
- codes:
116
- - code: 0
117
- name: pass
118
- description: "Hook 通過,工具/Agent 執行繼續"
119
- blocking: false
120
- stdout_handling: "忽略"
121
- stderr_handling: "忽略"
122
- - code: 2
123
- name: block
124
- description: "阻止執行;stderr 輸出作為回饋文字直接注入 AI 上下文"
125
- blocking: true
126
- stdout_handling: "忽略"
127
- stderr_handling: "作為 AI feedback 注入(支援 JSON 格式 decision:block/reason)"
128
- note: "PreToolUse exit 2 → 阻止工具呼叫;Stop exit 2 → 中止 session"
129
- - code: other
130
- name: warn
131
- description: "非阻擋性警告;記錄日誌但執行繼續(exit 1 為常用警告代碼)"
132
- blocking: false
133
- stdout_handling: "記錄到系統日誌"
134
- stderr_handling: "顯示為 warning,不注入 AI 上下文"
135
- rules:
136
- - "MUST: 阻擋行為只能用 exit 2,不得用 exit 1 或其他非零代碼"
137
- - "MUST: exit 2 時 stderr 必須是人類可讀的原因(推薦 JSON: {reason: string})"
138
- - "SHOULD: 軟性警告(deprecated pattern、style 違反)使用 exit 1"
139
- - "MAY: exit 0 時可輸出 JSON 到 stdout(Stop hook 用 decision:block 要求 AI 繼續)"
21
+ DEPRECATED: This standard has moved to DevAP (orchestration layer).
22
+ Install DevAP and load standards/orchestration/agent-communication-protocol.ai.yaml instead.
140
23
 
141
24
  rules:
25
+ - id: deprecation-notice
26
+ trigger: any agent communication operation
27
+ instruction: >
28
+ This standard (agent-communication-protocol.ai.yaml) has been migrated to DevAP.
29
+ For the canonical executable definition, load:
30
+ dev-autopilot/standards/orchestration/agent-communication-protocol.ai.yaml
31
+
32
+ The human-readable standard remains at:
33
+ universal-dev-standards/core/agent-communication-protocol.md
34
+ priority: required
35
+
142
36
  - id: ACP-001
143
37
  trigger: "訊息缺少必要欄位"
144
- action: "拒絕並回報 INVALID_ENVELOPE,指出缺少的欄位"
145
- priority: critical
146
- - id: ACP-002
147
- trigger: "收到未知狀態碼"
148
- action: "映射為 unknown,記錄警告,繼續執行"
149
- priority: high
150
- - id: ACP-003
151
- trigger: "收到不同 MAJOR 版本的訊息"
152
- action: "回報 VERSION_INCOMPATIBLE,附帶支援的版本範圍"
153
- priority: high
154
- - id: ACP-004
155
- trigger: "收到同 MAJOR 更高 MINOR 版本的訊息"
156
- action: "解析已知欄位,忽略未知欄位,不報錯"
157
- priority: medium
158
- - id: ACP-005
159
- trigger: "建立 Handoff"
160
- action: "引用 artifact_id,不嵌入完整內容"
161
- priority: medium
162
- - id: ACP-006
163
- trigger: "生成 hook 腳本"
164
- action: "依照 hook_exit_codes 三分類:0=pass, 2=block+feedback, 其他=warn"
165
- priority: high
38
+ instruction: >
39
+ DEPRECATED — load dev-autopilot/standards/orchestration/agent-communication-protocol.ai.yaml
40
+ for the current executable communication protocol.
166
41
 
167
- physical_spec:
168
- type: checklist
169
- validator:
170
- type: ai_review
171
- rule: "檢查 Agent 通訊是否遵循 Envelope 格式、統一狀態碼、Handoff 結構"
172
- checks:
173
- - "訊息是否使用 Envelope 格式(非 prompt injection)"
174
- - "狀態碼是否為 8 碼超集之一"
175
- - "Handoff 是否引用 artifact_id 而非嵌入內容"
176
- - "decision_log 每筆是否包含 decision, reason, agent_id, timestamp"
177
- - "版本不相容時是否回報 VERSION_INCOMPATIBLE"
42
+ Minimal fallback: Reject messages missing required Envelope fields and report INVALID_ENVELOPE.
43
+ priority: critical
@@ -1,69 +1,43 @@
1
- # Agent Dispatch & Parallel Coordination - AI Optimized
2
- # Source: core/agent-dispatch.md
3
- # Inspired by Superpowers dispatching-parallel-agents + subagent-driven-development (MIT)
1
+ # Agent Dispatch & Parallel Coordination - DEPRECATED STUB
2
+ # This file has been migrated to DevAP per DEC-049 (UDS/DevAP responsibility split).
3
+ # Canonical location: dev-autopilot/standards/orchestration/agent-dispatch.ai.yaml
4
+ # Migration: XSPEC-086 Phase 2 (2026-04-27)
5
+ #
6
+ # Human-readable standard: core/agent-dispatch.md (remains in UDS)
7
+ # Deprecation schedule: UDS 5.4.0 deprecated → UDS 6.0.0 removed
4
8
 
5
9
  standard:
6
10
  id: agent-dispatch
7
- name: Agent Dispatch & Parallel Coordination
8
- description: 子代理派遣與並行協調標準
9
-
10
11
  meta:
11
- version: "1.0.0"
12
- updated: "2026-03-20"
12
+ version: "1.0.1"
13
+ updated: "2026-04-27"
14
+ deprecated: true
15
+ deprecated_since: "5.4.0"
16
+ removal_version: "6.0.0"
17
+ canonical_owner: devap
18
+ canonical_path: "dev-autopilot/standards/orchestration/agent-dispatch.ai.yaml"
13
19
  source: core/agent-dispatch.md
14
- description: 子代理派遣、並行協調與狀態回報標準
15
- inspired_by: superpowers/subagent-driven-development
16
-
17
- guidelines:
18
- - "派遣前必須識別獨立域(無共享狀態 → 可並行)"
19
- - "每個代理的 prompt 必須 Focused(單一問題域)、Self-contained(完整上下文)、Specific output(明確回報格式)"
20
- - "代理必須回報明確狀態:DONE / DONE_WITH_CONCERNS / NEEDS_CONTEXT / BLOCKED"
21
- - "並行代理返回後必須檢查檔案衝突"
22
- - "所有代理完成後必須跑完整測試套件驗證整合"
20
+ description: >
21
+ DEPRECATED: This standard has moved to DevAP (orchestration layer).
22
+ Install DevAP and load standards/orchestration/agent-dispatch.ai.yaml instead.
23
23
 
24
- status_protocol:
25
- - status: DONE
26
- description: "任務完成,無問題"
27
- orchestrator_action: "繼續後續任務"
28
- - status: DONE_WITH_CONCERNS
29
- description: "任務完成,但有疑慮需記錄"
30
- orchestrator_action: "記錄 concerns 到報告,繼續後續任務"
31
- - status: NEEDS_CONTEXT
32
- description: "需要更多上下文才能完成"
33
- orchestrator_action: "注入額外 context,重新派遣(不計為 retry)"
34
- - status: BLOCKED
35
- description: "無法完成,需要人工介入或升級處理"
36
- orchestrator_action: "嘗試升級模型或拆分任務"
24
+ rules:
25
+ - id: deprecation-notice
26
+ trigger: any agent dispatch operation
27
+ instruction: >
28
+ This standard (agent-dispatch.ai.yaml) has been migrated to DevAP.
29
+ For the canonical executable definition, load:
30
+ dev-autopilot/standards/orchestration/agent-dispatch.ai.yaml
37
31
 
38
- prompt_structure:
39
- - principle: Focused
40
- description: "每個代理只處理單一問題域"
41
- - principle: Self-contained
42
- description: "prompt 包含完整執行所需的上下文"
43
- - principle: Specific_output
44
- description: "明確定義期望的回報格式"
32
+ The human-readable standard remains at:
33
+ universal-dev-standards/core/agent-dispatch.md
34
+ priority: required
45
35
 
46
- rules:
47
- - id: AD-001
48
- trigger: "多個代理編輯相同檔案"
49
- action: "標記衝突,需要人工或自動合併"
50
- priority: critical
51
- - id: AD-002
52
- trigger: "代理回報 BLOCKED"
53
- action: "嘗試升級模型等級再試一次"
54
- priority: high
55
36
  - id: AD-003
56
37
  trigger: "所有並行代理完成"
57
- action: "跑完整測試套件驗證整合"
58
- priority: high
38
+ instruction: >
39
+ DEPRECATED — load dev-autopilot/standards/orchestration/agent-dispatch.ai.yaml
40
+ for the current executable dispatch protocol.
59
41
 
60
- physical_spec:
61
- type: checklist
62
- validator:
63
- type: ai_review
64
- rule: "檢查代理派遣是否遵循獨立域識別、prompt 三原則、狀態協定"
65
- checks:
66
- - "並行代理是否在獨立域上工作(無共享檔案)"
67
- - "代理 prompt 是否包含完整上下文"
68
- - "代理是否回報標準化狀態碼"
69
- - "並行完成後是否執行整合測試"
42
+ Minimal fallback: Run full test suite after all parallel agents complete.
43
+ priority: high
@@ -1,82 +1,46 @@
1
- # Branch Completion Workflow - AI Optimized
2
- # Source: core/branch-completion.md
3
- # Inspired by Superpowers finishing-a-development-branch (MIT)
1
+ # Branch Completion Workflow - DEPRECATED STUB
2
+ # This file has been migrated to DevAP per DEC-049 (UDS/DevAP responsibility split).
3
+ # Canonical location: dev-autopilot/standards/flow/branch-completion.ai.yaml
4
+ # Migration: XSPEC-086 Phase 2 (2026-04-27)
5
+ #
6
+ # Human-readable standard: core/branch-completion.md (remains in UDS)
7
+ # Deprecation schedule: UDS 5.4.0 deprecated → UDS 6.0.0 removed
4
8
 
5
9
  standard:
6
10
  id: branch-completion
7
- name: Branch Completion Workflow
8
- description: 分支完成工作流標準
9
-
10
11
  meta:
11
- version: "1.0.0"
12
- updated: "2026-03-20"
12
+ version: "1.0.1"
13
+ updated: "2026-04-27"
14
+ deprecated: true
15
+ deprecated_since: "5.4.0"
16
+ removal_version: "6.0.0"
17
+ canonical_owner: devap
18
+ canonical_path: "dev-autopilot/standards/flow/branch-completion.ai.yaml"
13
19
  source: core/branch-completion.md
14
- description: 分支完成決策與清理標準
15
- inspired_by: superpowers/finishing-a-development-branch
20
+ description: >
21
+ DEPRECATED: This standard has moved to DevAP (flow orchestration layer).
22
+ Install DevAP and load standards/flow/branch-completion.ai.yaml instead.
16
23
 
17
- guidelines:
18
- - "測試全過才能談完成"
19
- - "提供 4 個完成選項讓使用者選擇"
20
- - "Discard 需要明確確認,防止誤刪"
21
- - "Worktree 對應分支完成後必須清理"
24
+ rules:
25
+ - id: deprecation-notice
26
+ trigger: any branch completion operation
27
+ instruction: >
28
+ This standard (branch-completion.ai.yaml) has been migrated to DevAP.
29
+ For the canonical executable definition, load:
30
+ dev-autopilot/standards/flow/branch-completion.ai.yaml
22
31
 
23
- prerequisites:
24
- - "所有測試通過"
25
- - "lint 通過"
26
- - "type check 通過"
27
- - "無未提交的變更"
32
+ The human-readable standard remains at:
33
+ universal-dev-standards/core/branch-completion.md
28
34
 
29
- options:
30
- - id: merge_locally
31
- description: "合併到目標分支"
32
- steps:
33
- - "git checkout <target>"
34
- - "git merge --no-ff <branch>"
35
- - "刪除分支"
36
- - "清理 worktree(若有)"
37
- - id: create_pr
38
- description: "建立 Pull Request"
39
- steps:
40
- - "推送分支到 remote"
41
- - "建立 PR(含描述與測試計畫)"
42
- - "等待審查"
43
- - id: keep_as_is
44
- description: "保持現狀不動"
45
- steps:
46
- - "記錄分支狀態"
47
- - "提醒使用者稍後處理"
48
- - id: discard
49
- description: "丟棄所有變更"
50
- steps:
51
- - "要求使用者明確確認(輸入分支名稱)"
52
- - "刪除分支(git branch -D)"
53
- - "清理 worktree(若有)"
35
+ To install DevAP: npm install -g @devap/cli
36
+ priority: required
54
37
 
55
- rules:
56
- - id: BC-001
57
- trigger: "使用者選擇 discard"
58
- action: "要求輸入分支名稱確認,防止誤刪"
59
- priority: critical
60
- - id: BC-002
61
- trigger: "分支有 worktree"
62
- action: "完成後自動清理 worktree"
63
- priority: high
64
38
  - id: BC-003
65
39
  trigger: "前置條件未滿足"
66
- action: "阻止完成,顯示失敗的檢查項目"
67
- priority: high
68
- - id: BC-004
69
- trigger: "分支閒置超過 14 天"
70
- action: "通知使用者完成或丟棄"
71
- priority: medium
40
+ instruction: >
41
+ DEPRECATED — load dev-autopilot/standards/flow/branch-completion.ai.yaml
42
+ for the current executable branch completion flow.
72
43
 
73
- physical_spec:
74
- type: checklist
75
- validator:
76
- type: ai_review
77
- rule: "檢查分支完成是否遵循前置條件檢查和四選項流程"
78
- checks:
79
- - "完成前是否通過所有前置條件(測試、lint、type check)"
80
- - "是否提供完成選項供使用者選擇"
81
- - "Discard 操作是否要求明確確認"
82
- - "關聯的 worktree 是否被清理"
44
+ Minimal fallback: Block branch completion when prerequisites (tests, lint,
45
+ type check, no uncommitted changes) are not met.
46
+ priority: high
@@ -1,195 +1,46 @@
1
- # Change Batching Standards - AI Optimized
2
- # Source: core/change-batching-standards.md
1
+ # Change Batching Standards - DEPRECATED STUB
2
+ # This file has been migrated to DevAP per DEC-049 (UDS/DevAP responsibility split).
3
+ # Canonical location: dev-autopilot/standards/flow/change-batching-standards.ai.yaml
4
+ # Migration: XSPEC-086 Phase 2 (2026-04-27)
5
+ #
6
+ # Human-readable standard: core/change-batching-standards.md (remains in UDS)
7
+ # Deprecation schedule: UDS 5.4.0 deprecated → UDS 6.0.0 removed
3
8
 
4
9
  standard:
5
10
  id: change-batching-standards
6
- name: Change Batching Standards
7
- description: Pending changes state machine, threshold strategies, and atomicity guarantees for batch commits
8
-
9
11
  meta:
10
- version: "1.0.0"
11
- updated: "2026-03-18"
12
+ version: "1.0.1"
13
+ updated: "2026-04-27"
14
+ deprecated: true
15
+ deprecated_since: "5.4.0"
16
+ removal_version: "6.0.0"
17
+ canonical_owner: devap
18
+ canonical_path: "dev-autopilot/standards/flow/change-batching-standards.ai.yaml"
12
19
  source: core/change-batching-standards.md
13
- references:
14
- - "SWEBOK v4.0 Chapter 6 (Software Configuration Management)"
15
- - "ISO/IEC 12207 (Configuration Management Process)"
16
- - "Continuous Delivery (Jez Humble) — Small batch sizes"
17
- - "Lean Software Development — Batch size optimization"
18
-
19
- state_machine:
20
- description: Pending changes lifecycle
21
- states:
22
- - state: PENDING
23
- description: Change recorded, waiting for threshold
24
- - state: READY
25
- description: Threshold met, batch prepared for merge
26
- - state: MERGED
27
- description: Batch successfully committed
28
- - state: FAILED
29
- description: Merge attempt failed
30
- - state: ARCHIVED
31
- description: Post-commit record for audit
32
-
33
- transitions:
34
- - from: PENDING
35
- to: PENDING
36
- trigger: New change added
37
- action: Increment counters, re-evaluate thresholds
38
- - from: PENDING
39
- to: READY
40
- trigger: Threshold met
41
- action: Prepare merge batch, run pre-merge validation
42
- - from: READY
43
- to: MERGED
44
- trigger: Merge succeeds
45
- action: Create commit, clear batch, archive
46
- - from: READY
47
- to: FAILED
48
- trigger: Merge fails
49
- action: Log failure, preserve changes
50
- - from: FAILED
51
- to: PENDING
52
- trigger: Reset
53
- action: Re-queue changes, clear failure state
54
- - from: MERGED
55
- to: ARCHIVED
56
- trigger: Post-commit
57
- action: Record batch metadata for audit
58
-
59
- threshold_strategies:
60
- strategies:
61
- - name: count
62
- parameter: maxChanges
63
- default: 5
64
- description: Merge after N individual changes accumulated
65
-
66
- - name: score
67
- parameter: maxScore
68
- default: 10
69
- description: Merge when cumulative change score >= M
70
-
71
- - name: time
72
- parameter: maxAge
73
- default: "30m"
74
- description: Merge when oldest pending change exceeds TTL
75
-
76
- - name: manual
77
- parameter: null
78
- default: null
79
- description: Merge only on explicit user request
80
-
81
- change_scoring:
82
- - type: trivial
83
- score: 1
84
- example: Typo fix, whitespace, comment update
85
- - type: minor
86
- score: 2
87
- example: Single function change, variable rename
88
- - type: standard
89
- score: 3
90
- example: New function, modified logic flow
91
- - type: complex
92
- score: 5
93
- example: Multi-file change, API modification
94
- - type: critical
95
- score: 8
96
- example: Schema change, breaking change
97
-
98
- composite_rule: "Multiple thresholds combine with OR logic (first met triggers merge)"
99
-
100
- merge_rules:
101
- priority_order:
102
- - Same-spec affinity — changes referencing same SPEC-ID merge first
103
- - Same-file grouping — changes to same files merge together
104
- - Dependency order — changes with dependencies merge in order
105
- - Chronological — within same priority, merge by creation time
106
-
107
- conflict_resolution:
108
- - type: Same line, same file
109
- strategy: Latest change wins
110
- fallback: Manual resolution
111
- - type: Overlapping functions
112
- strategy: Semantic merge if possible
113
- fallback: Manual resolution
114
- - type: Dependency conflict
115
- strategy: Resolve dependency first
116
- fallback: Reject batch, split
117
-
118
- pre_merge_validation:
119
- - check: All tests pass
120
- required: true
121
- - check: No lint errors
122
- required: true
123
- - check: No conflicts
124
- required: true
125
- - check: AC coverage maintained
126
- required: false
127
- note: Recommended
128
-
129
- atomicity:
130
- principle: All-or-nothing
131
- rules:
132
- - Single commit — each merged batch produces exactly one commit
133
- - No partial merge — any change failure rejects entire batch
134
- - Rollback support — failed merges restore all changes to PENDING
135
- - Isolation — batch merge does not affect changes outside batch
136
-
137
- rollback:
138
- on_failure:
139
- - Log failure with batch details
140
- - Return all changes to PENDING state
141
- - Diagnose failing change(s)
142
- - Options — fix and retry, remove failing change, split batch
143
-
144
- triggers:
145
- - trigger: Test failure
146
- action: Reject entire batch
147
- automatic: true
148
- - trigger: Lint error
149
- action: Reject entire batch
150
- automatic: true
151
- - trigger: Merge conflict
152
- action: Reject and notify
153
- automatic: true
154
- - trigger: Build failure
155
- action: Reject entire batch
156
- automatic: true
157
- - trigger: Manual rejection
158
- action: Return to PENDING
159
- automatic: false
20
+ description: >
21
+ DEPRECATED: This standard has moved to DevAP (flow orchestration layer).
22
+ Install DevAP and load standards/flow/change-batching-standards.ai.yaml instead.
160
23
 
161
24
  rules:
162
- - id: set-thresholds
163
- trigger: configuring batch pipeline
164
- instruction: Set explicit thresholds; do not accumulate changes indefinitely
165
- priority: required
25
+ - id: deprecation-notice
26
+ trigger: any batch change operation
27
+ instruction: >
28
+ This standard (change-batching-standards.ai.yaml) has been migrated to DevAP.
29
+ For the canonical executable definition, load:
30
+ dev-autopilot/standards/flow/change-batching-standards.ai.yaml
166
31
 
167
- - id: group-by-spec
168
- trigger: batching changes
169
- instruction: Group changes by specification or feature for cohesive commits
170
- priority: recommended
32
+ The human-readable standard remains at:
33
+ universal-dev-standards/core/change-batching-standards.md
171
34
 
172
- - id: validate-before-merge
173
- trigger: batch reaches READY state
174
- instruction: Run full validation (tests, lint, conflicts) before merging
35
+ To install DevAP: npm install -g @devap/cli
175
36
  priority: required
176
37
 
177
38
  - id: atomic-commits
178
39
  trigger: merging a batch
179
- instruction: Enforce all-or-nothing — either all changes commit or none do
180
- priority: required
40
+ instruction: >
41
+ DEPRECATED — load dev-autopilot/standards/flow/change-batching-standards.ai.yaml
42
+ for the current executable batch orchestration rules.
181
43
 
182
- - id: preserve-on-failure
183
- trigger: batch merge fails
184
- instruction: Return all changes to PENDING state; never lose changes
44
+ Minimal fallback: Enforce all-or-nothing batch merging — either all changes
45
+ commit or none do.
185
46
  priority: required
186
-
187
- - id: log-batch-decisions
188
- trigger: any batch state transition
189
- instruction: Log batch decisions (threshold met, merge result) for auditability
190
- priority: recommended
191
-
192
- related_standards:
193
- - checkin-standards.md
194
- - pipeline-integration-standards.md
195
- - commit-message-guide.md