@danmoisan/drm-copilot-mcp 0.0.1 → 0.0.6

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.
Files changed (183) hide show
  1. package/out/mcp-server.js +98 -21
  2. package/package.json +21 -5
  3. package/resources/claude-customizations/.claude/agent-memory/orchestrator/MEMORY.md +15 -3
  4. package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_branch_base_check_unmerged_pr_deps.md +16 -0
  5. package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_every_change_through_lifecycle.md +15 -0
  6. package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_policy_compliance_not_optional.md +18 -0
  7. package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_potential_to_issue_creates_github_issue.md +13 -0
  8. package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_remediation_plan_em_dash_required.md +13 -0
  9. package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_small_bug_uses_minor_audit.md +13 -0
  10. package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_test_files_count_against_500_cap.md +13 -0
  11. package/resources/claude-customizations/.claude/agents/atomic-executor.md +7 -7
  12. package/resources/claude-customizations/.claude/agents/csharp-typed-engineer.md +4 -5
  13. package/resources/claude-customizations/.claude/agents/feature-review.md +7 -3
  14. package/resources/claude-customizations/.claude/agents/orchestrator.md +22 -3
  15. package/resources/claude-customizations/.claude/agents/powershell-typed-engineer.md +1 -1
  16. package/resources/claude-customizations/.claude/agents/pr-author.md +78 -0
  17. package/resources/claude-customizations/.claude/agents/task-researcher.md +10 -6
  18. package/resources/claude-customizations/.claude/hooks/enforce-checkpoint-monotonic.ps1 +303 -0
  19. package/resources/claude-customizations/.claude/hooks/enforce-completion-consistency.ps1 +300 -0
  20. package/resources/claude-customizations/.claude/hooks/enforce-evidence-locations.ps1 +40 -14
  21. package/resources/claude-customizations/.claude/hooks/enforce-feature-folder-order.ps1 +148 -0
  22. package/resources/claude-customizations/.claude/hooks/enforce-orchestration-preimplementation-gate.ps1 +210 -0
  23. package/resources/claude-customizations/.claude/hooks/enforce-pr-author-skill.ps1 +333 -0
  24. package/resources/claude-customizations/.claude/hooks/enforce-prd-feature-before-planner.ps1 +216 -0
  25. package/resources/claude-customizations/.claude/hooks/enforce-promotion-mcp-only.ps1 +84 -15
  26. package/resources/claude-customizations/.claude/hooks/validate-executor-output.ps1 +1 -1
  27. package/resources/claude-customizations/.claude/hooks/validate-feature-review-coverage.ps1 +75 -5
  28. package/resources/claude-customizations/.claude/hooks/validate-orchestrator-output.ps1 +93 -0
  29. package/resources/claude-customizations/.claude/hooks/validate-pr-author-output.ps1 +136 -0
  30. package/resources/claude-customizations/.claude/hooks/validate-task-researcher-output.ps1 +90 -6
  31. package/resources/claude-customizations/.claude/rules/architecture-boundaries.md +46 -0
  32. package/resources/claude-customizations/.claude/rules/benchmark-baselines.md +35 -0
  33. package/resources/claude-customizations/.claude/rules/ci-workflows.md +36 -0
  34. package/resources/claude-customizations/.claude/rules/csharp.md +62 -16
  35. package/resources/claude-customizations/.claude/rules/general-code-change.md +12 -3
  36. package/resources/claude-customizations/.claude/rules/general-unit-test.md +47 -2
  37. package/resources/claude-customizations/.claude/rules/orchestrator-state.md +39 -0
  38. package/resources/claude-customizations/.claude/rules/powershell.md +5 -5
  39. package/resources/claude-customizations/.claude/rules/python.md +4 -3
  40. package/resources/claude-customizations/.claude/rules/quality-tiers.md +51 -0
  41. package/resources/claude-customizations/.claude/rules/typescript.md +37 -8
  42. package/resources/claude-customizations/.claude/settings.json +59 -12
  43. package/resources/claude-customizations/.claude/skills/atomic-plan-contract/SKILL.md +2 -2
  44. package/resources/claude-customizations/.claude/skills/csharp-qa-gate/SKILL.md +25 -10
  45. package/resources/claude-customizations/.claude/skills/evidence-and-timestamp-conventions/SKILL.md +0 -1
  46. package/resources/claude-customizations/.claude/skills/execute-hard-lock/SKILL.md +6 -6
  47. package/resources/claude-customizations/.claude/skills/feature-promotion-lifecycle/SKILL.md +8 -8
  48. package/resources/claude-customizations/.claude/skills/feature-review-workflow/SKILL.md +17 -6
  49. package/resources/claude-customizations/.claude/skills/human-exception-runbook/SKILL.md +52 -0
  50. package/resources/claude-customizations/.claude/skills/human-exception-runbook/example.runbook.md +36 -0
  51. package/resources/claude-customizations/.claude/skills/invoke-csharp-engineer/SKILL.md +4 -4
  52. package/resources/claude-customizations/.claude/skills/orchestrate/SKILL.md +172 -5
  53. package/resources/claude-customizations/.claude/skills/policy-audit-template-usage/SKILL.md +3 -3
  54. package/resources/claude-customizations/.claude/skills/powershell-qa-gate/SKILL.md +4 -4
  55. package/resources/claude-customizations/.claude/skills/pr-base-branch-merge-base/SKILL.md +3 -3
  56. package/resources/claude-customizations/.claude/skills/python-qa-gate/SKILL.md +1 -1
  57. package/resources/claude-customizations/.claude/skills/remediation-handoff-atomic-planner/SKILL.md +90 -17
  58. package/resources/claude-customizations/.claude/skills/research-issue/SKILL.md +5 -3
  59. package/resources/claude-customizations/.claude-variants/csharp-legacy/agents/csharp-typed-engineer.md +69 -0
  60. package/resources/claude-customizations/.claude-variants/csharp-legacy/rules/csharp.md +96 -0
  61. package/resources/claude-customizations/.claude-variants/csharp-legacy/skills/csharp-qa-gate/SKILL.md +77 -0
  62. package/resources/claude-customizations/.claude-variants/csharp-legacy/skills/invoke-csharp-engineer/SKILL.md +64 -0
  63. package/resources/claude-customizations/pack-manifests/core.json +65 -0
  64. package/resources/claude-customizations/pack-manifests/csharp-legacy.json +11 -0
  65. package/resources/claude-customizations/pack-manifests/csharp-modern.json +12 -0
  66. package/resources/claude-customizations/pack-manifests/powershell.json +14 -0
  67. package/resources/claude-customizations/pack-manifests/python.json +14 -0
  68. package/resources/claude-customizations/pack-manifests/typescript.json +9 -0
  69. package/resources/claude-dir-customizations/.mcp.json +3 -3
  70. package/resources/codex-and-agents-customizations/.agents/README.md +1 -1
  71. package/resources/codex-and-agents-customizations/.agents/skills/acceptance-criteria-tracking/SKILL.md +0 -5
  72. package/resources/codex-and-agents-customizations/.agents/skills/architecture-boundaries/SKILL.md +52 -0
  73. package/resources/codex-and-agents-customizations/.agents/skills/atomic-plan-contract/SKILL.md +16 -8
  74. package/resources/codex-and-agents-customizations/.agents/skills/benchmark-baselines/SKILL.md +44 -0
  75. package/resources/codex-and-agents-customizations/.agents/skills/ci-workflows/SKILL.md +45 -0
  76. package/resources/codex-and-agents-customizations/.agents/skills/commit-message/SKILL.md +3 -11
  77. package/resources/codex-and-agents-customizations/.agents/skills/csharp/SKILL.md +1 -5
  78. package/resources/codex-and-agents-customizations/.agents/skills/csharp-change-budget-router/SKILL.md +1 -6
  79. package/resources/codex-and-agents-customizations/.agents/skills/csharp-orchestration-state-machine/SKILL.md +0 -5
  80. package/resources/codex-and-agents-customizations/.agents/skills/csharp-qa-gate/SKILL.md +0 -5
  81. package/resources/codex-and-agents-customizations/.agents/skills/evidence-and-timestamp-conventions/SKILL.md +0 -5
  82. package/resources/codex-and-agents-customizations/.agents/skills/execute-hard-lock/SKILL.md +8 -17
  83. package/resources/codex-and-agents-customizations/.agents/skills/feature-promotion-lifecycle/SKILL.md +41 -25
  84. package/resources/codex-and-agents-customizations/.agents/skills/feature-review-workflow/SKILL.md +1 -6
  85. package/resources/codex-and-agents-customizations/.agents/skills/fill-feature-docs/SKILL.md +0 -5
  86. package/resources/codex-and-agents-customizations/.agents/skills/general-code-change/SKILL.md +86 -0
  87. package/resources/codex-and-agents-customizations/.agents/skills/general-unit-test/SKILL.md +111 -0
  88. package/resources/codex-and-agents-customizations/.agents/skills/human-exception-runbook/SKILL.md +57 -0
  89. package/resources/codex-and-agents-customizations/.agents/skills/human-exception-runbook/example.runbook.md +36 -0
  90. package/resources/codex-and-agents-customizations/.agents/skills/invoke-csharp-engineer/SKILL.md +0 -9
  91. package/resources/codex-and-agents-customizations/.agents/skills/invoke-powershell-engineer/SKILL.md +0 -9
  92. package/resources/codex-and-agents-customizations/.agents/skills/invoke-python-engineer/SKILL.md +0 -9
  93. package/resources/codex-and-agents-customizations/.agents/skills/make-skill-template/SKILL.md +0 -5
  94. package/resources/codex-and-agents-customizations/.agents/skills/orchestrate/SKILL.md +206 -18
  95. package/resources/codex-and-agents-customizations/.agents/skills/orchestrator-state/SKILL.md +48 -0
  96. package/resources/codex-and-agents-customizations/.agents/skills/orchestrator-workflow/SKILL.md +94 -10
  97. package/resources/codex-and-agents-customizations/.agents/skills/policy-audit-template-usage/SKILL.md +3 -8
  98. package/resources/codex-and-agents-customizations/.agents/skills/policy-compliance-order/SKILL.md +0 -10
  99. package/resources/codex-and-agents-customizations/.agents/skills/powershell/SKILL.md +4 -8
  100. package/resources/codex-and-agents-customizations/.agents/skills/powershell-change-budget-router/SKILL.md +1 -6
  101. package/resources/codex-and-agents-customizations/.agents/skills/powershell-orchestration-state-machine/SKILL.md +0 -5
  102. package/resources/codex-and-agents-customizations/.agents/skills/powershell-qa-gate/SKILL.md +3 -9
  103. package/resources/codex-and-agents-customizations/.agents/skills/pr-author/SKILL.md +1 -9
  104. package/resources/codex-and-agents-customizations/.agents/skills/pr-base-branch-merge-base/SKILL.md +4 -9
  105. package/resources/codex-and-agents-customizations/.agents/skills/pr-context-artifacts/SKILL.md +0 -5
  106. package/resources/codex-and-agents-customizations/.agents/skills/python/SKILL.md +1 -5
  107. package/resources/codex-and-agents-customizations/.agents/skills/python-change-budget-router/SKILL.md +1 -6
  108. package/resources/codex-and-agents-customizations/.agents/skills/python-qa-gate/SKILL.md +0 -5
  109. package/resources/codex-and-agents-customizations/.agents/skills/python-suppressions/SKILL.md +2 -6
  110. package/resources/codex-and-agents-customizations/.agents/skills/quality-tiers/SKILL.md +57 -0
  111. package/resources/codex-and-agents-customizations/.agents/skills/remediation-handoff-atomic-planner/SKILL.md +0 -5
  112. package/resources/codex-and-agents-customizations/.agents/skills/repo-automation-adapter/SKILL.md +96 -72
  113. package/resources/codex-and-agents-customizations/.agents/skills/repo-automation-adapter/agents/openai.yaml +1 -1
  114. package/resources/codex-and-agents-customizations/.agents/skills/research-issue/SKILL.md +0 -10
  115. package/resources/codex-and-agents-customizations/.agents/skills/review-epic/SKILL.md +0 -5
  116. package/resources/codex-and-agents-customizations/.agents/skills/review-feature/SKILL.md +0 -5
  117. package/resources/codex-and-agents-customizations/.agents/skills/review-staged/SKILL.md +0 -5
  118. package/resources/codex-and-agents-customizations/.agents/skills/self-explanatory-code-commenting/SKILL.md +2 -6
  119. package/resources/codex-and-agents-customizations/.agents/skills/skill-canonical-location-audit/SKILL.md +0 -5
  120. package/resources/codex-and-agents-customizations/.agents/skills/tonality/SKILL.md +86 -0
  121. package/resources/codex-and-agents-customizations/.agents/skills/translate-claude-to-codex/SKILL.md +297 -0
  122. package/resources/codex-and-agents-customizations/.agents/skills/translate-copilot-to-claude/SKILL.md +0 -22
  123. package/resources/codex-and-agents-customizations/.agents/skills/typescript/SKILL.md +1 -5
  124. package/resources/codex-and-agents-customizations/.agents/skills/typescript-suppressions/SKILL.md +2 -6
  125. package/resources/codex-and-agents-customizations/.agents/skills/update-status/SKILL.md +0 -5
  126. package/resources/codex-and-agents-customizations/.codex/agents/atomic-executor.toml +5 -5
  127. package/resources/codex-and-agents-customizations/.codex/agents/orchestrator.toml +91 -63
  128. package/resources/codex-and-agents-customizations/.codex/agents/powershell-atomic-executor.toml +1 -1
  129. package/resources/codex-and-agents-customizations/.codex/agents/powershell-typed-engineer.toml +1 -1
  130. package/resources/codex-and-agents-customizations/.codex/config.toml +111 -137
  131. package/resources/codex-and-agents-customizations/.codex/hooks/enforce-checkpoint-monotonic.ps1 +303 -0
  132. package/resources/codex-and-agents-customizations/.codex/hooks/enforce-completion-consistency.ps1 +300 -0
  133. package/resources/codex-and-agents-customizations/.codex/hooks/enforce-orchestration-preimplementation-gate.ps1 +148 -0
  134. package/resources/codex-and-agents-customizations/.codex/hooks/enforce-pr-author-skill.ps1 +336 -0
  135. package/resources/codex-and-agents-customizations/.codex/hooks/enforce-promotion-mcp-only.ps1 +84 -18
  136. package/resources/codex-and-agents-customizations/.codex/prompts/orchestrate-work.md +4 -3
  137. package/resources/codex-and-agents-customizations/.codex/scripts/post-codex-worktree-session.ps1 +5 -0
  138. package/resources/codex-and-agents-customizations/.github/workflows/_validate-orchestrator-state.yml +68 -0
  139. package/resources/codex-and-agents-customizations/.github/workflows/validate-orchestrator-state.yml +15 -0
  140. package/resources/config/orchestration-routing.json +76 -0
  141. package/resources/customizations/.github/agents/Powershell DI Unit Test Engineer.agent.md +1 -1
  142. package/resources/customizations/.github/agents/atomic_executor.agent.md +1 -1
  143. package/resources/customizations/.github/agents/atomic_planning.agent.md +10 -10
  144. package/resources/customizations/.github/agents/csharp-orchestrator.agent.md +6 -2
  145. package/resources/customizations/.github/agents/feature-review.agent.md +2 -2
  146. package/resources/customizations/.github/agents/orchestrator.agent.md +6 -2
  147. package/resources/customizations/.github/agents/powershell-atomic-executor.agent.md +4 -4
  148. package/resources/customizations/.github/agents/powershell-atomic-planning.agent.md +10 -10
  149. package/resources/customizations/.github/agents/powershell-orchestrator.agent.md +6 -2
  150. package/resources/customizations/.github/agents/powershell-typed-engineer.agent.md +2 -2
  151. package/resources/customizations/.github/agents/pr-author.agent.md +25 -0
  152. package/resources/customizations/.github/agents/python-orchestrator.agent.md +6 -2
  153. package/resources/customizations/.github/agents/staged-review.agent.md +1 -1
  154. package/resources/customizations/.github/agents/task-researcher.agent.md +4 -4
  155. package/resources/customizations/.github/instructions/powershell-code-change.instructions.md +6 -6
  156. package/resources/customizations/.github/prompts/fillout-prd-feature.prompt.md +1 -1
  157. package/resources/customizations/.github/prompts/generate-commit-message-repo.prompt.md +1 -1
  158. package/resources/customizations/.github/prompts/orchestrate-csharp-work.prompt.md +5 -3
  159. package/resources/customizations/.github/prompts/orchestrate-work.prompt.md +5 -3
  160. package/resources/customizations/.github/prompts/research-issue.prompt.md +4 -3
  161. package/resources/customizations/.github/skills/atomic-plan-contract/SKILL.md +14 -1
  162. package/resources/customizations/.github/skills/feature-promotion-lifecycle/SKILL.md +11 -7
  163. package/resources/customizations/.github/skills/feature-review-workflow/SKILL.md +10 -1
  164. package/resources/customizations/.github/skills/pr-base-branch-merge-base/SKILL.md +2 -2
  165. package/resources/customizations/.github/skills/remediation-handoff-atomic-planner/SKILL.md +5 -0
  166. package/resources/powershell/PoshQC/settings/pester.runsettings.psd1 +7 -0
  167. package/resources/scripts/dev_tools/_orchestrator_state_human_interaction.py +127 -0
  168. package/resources/scripts/dev_tools/_orchestrator_state_routing.py +216 -0
  169. package/resources/scripts/dev_tools/push_down_claude_customizations.py +276 -61
  170. package/resources/scripts/dev_tools/push_down_claude_filesystem.py +472 -0
  171. package/resources/scripts/dev_tools/push_down_claude_pack_selection.py +401 -0
  172. package/resources/scripts/dev_tools/validate_orchestration_artifacts.py +103 -411
  173. package/resources/scripts/dev_tools/validate_orchestration_review_artifacts.py +107 -0
  174. package/resources/scripts/dev_tools/validate_orchestrator_state.py +505 -0
  175. package/resources/scripts/dev_tools/validate_policy_audit_artifact.py +472 -0
  176. package/resources/templates/push_down_claude_customizations.py +162 -117
  177. package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_repo_root_is_source_of_truth.md +0 -11
  178. package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_vsce_verify_package_location.md +0 -19
  179. package/resources/claude-customizations/.claude/agent-memory/orchestrator/project_extension_location.md +0 -11
  180. package/resources/claude-customizations/.claude/agent-memory/prd-feature/MEMORY.md +0 -1
  181. package/resources/claude-customizations/.claude/agent-memory/prd-feature/project_push_down_pattern.md +0 -13
  182. package/resources/claude-customizations/.claude/agent-memory/task-researcher/MEMORY.md +0 -3
  183. package/resources/claude-customizations/.claude/agent-memory/task-researcher/project_push_down_claude_dir.md +0 -11
@@ -1,10 +1,3 @@
1
- # Converted skill
2
-
3
- Applied rewrites:
4
- - Rewrite merged standing-guidance source paths to the native AGENTS.md target.
5
- - Rewrite Claude skill paths to shared skill paths.
6
- - Rewrite Claude rules-directory references to the native skill root.
7
-
8
1
  ---
9
2
  name: orchestrate
10
3
  description: Route a repository request through the deterministic orchestration workflow for feature, bug, research, planning, execution, and review handoffs.
@@ -15,6 +8,17 @@ argument-hint: "[objective]"
15
8
 
16
9
  This skill frames work for the already-active main session, which serves as the orchestrator runtime for end-to-end feature or bug delivery.
17
10
 
11
+ ## Entry-Point Contract
12
+
13
+ The already-active main session is the canonical orchestrator runtime for this
14
+ skill. Optional orchestrator profiles, agent configuration files, or named
15
+ profiles are configuration aids only; they do not replace the active
16
+ main-session orchestration contract.
17
+
18
+ The main session owns route selection, checkpoint updates, lifecycle sequencing,
19
+ delegation decisions, and completion gating unless a required workflow step is
20
+ explicitly delegated by this skill or by `orchestrator-workflow`.
21
+
18
22
  ## Prerequisites
19
23
 
20
24
  Before proceeding, the orchestrator must:
@@ -30,6 +34,152 @@ On every invocation, the main session must:
30
34
  1. Read `artifacts/orchestration/orchestrator-state.json` to check for existing state.
31
35
  2. If a valid checkpoint exists with a matching objective, resume from the recorded `next_step`.
32
36
  3. If no checkpoint exists or the objective is new, begin the orchestration lifecycle from the start.
37
+ 4. Read `config/orchestration-routing.json` before route selection and copy the
38
+ selected route's required agents, skills, and MCP tools into checkpoint
39
+ state.
40
+
41
+ ## Read-Only Intake and Route Selection Gate
42
+
43
+ Before any lifecycle MCP call, the main session must complete a read-only scope
44
+ assessment. This gate is the read-only scope assessment for orchestration
45
+ intake. It includes policy reads, checkpoint reads, route config reads,
46
+ objective and scope assessment, language/file assessment, route selection, and
47
+ route metadata persistence.
48
+
49
+ The route-selection gate must be complete before calling any of:
50
+
51
+ - `new_potential_entry`
52
+ - `new_potential_bug_entry`
53
+ - `potential_to_issue`
54
+ - `new_active_feature_folder`
55
+
56
+ Until this gate is complete, the main session may read repository files and
57
+ checkpoint state, but must not create lifecycle entries, promote issues, create
58
+ active feature folders, edit implementation files, run formatters or tests,
59
+ stage files, commit files, or delegate implementation.
60
+
61
+ ## Route-Derived Work Mode
62
+
63
+ The main session must derive `${work-mode}` from the selected route before
64
+ lifecycle automation starts:
65
+
66
+ - small route -> `minor-audit`
67
+ - large feature route -> `full-feature`
68
+ - large bug route -> `full-bug`
69
+
70
+ The selected `route_id`, exact route metadata, and derived `${work-mode}` must
71
+ be persisted in `artifacts/orchestration/orchestrator-state.json` before any
72
+ lifecycle MCP call or implementation action. Route metadata must include the
73
+ selected route's `required_agents`, `required_skills`, and
74
+ `required_mcp_tools` copied from `config/orchestration-routing.json`.
75
+
76
+ ## Lifecycle Branch Sequencing
77
+
78
+ After route metadata is persisted and before potential entry creation, the main
79
+ session must create or verify a slug-only pre-issue branch:
80
+
81
+ - `${pre-issue-branch}`: `${promotion-type}/${short-name}`
82
+
83
+ The pre-issue branch must be derived only from `${promotion-type}` and
84
+ `${short-name}` because no numeric issue number exists yet. The main session
85
+ must create or verify this branch before calling `new_potential_entry` or
86
+ `new_potential_bug_entry`.
87
+
88
+ After potential entry creation, `potential_to_issue` must return a numeric
89
+ `${issue-num}` before the main session renames the branch to the final issue
90
+ branch:
91
+
92
+ - `${final-branch}`: `${promotion-type}/${short-name}-${issue-num}`
93
+
94
+ The branch rename to `${final-branch}` must complete before calling
95
+ `new_active_feature_folder`.
96
+
97
+ ## Pre-Implementation Gate
98
+
99
+ The pre-implementation gate must pass before any edits, formatters, tests,
100
+ staging, commits, or implementation delegation. This gate covers edits, formatters, tests, staging, commits, and implementation delegation. The main session must verify and persist all of the following before implementation can begin:
101
+
102
+ - checkpoint route metadata is present and matches the selected route;
103
+ - selected `${work-mode}` is present and matches the selected route;
104
+ - lifecycle readiness is complete for the selected path;
105
+ - branch state records `${pre-issue-branch}`, `${final-branch}`, and branch
106
+ rename status where lifecycle setup is required;
107
+ - required MCP receipts exist for completed lifecycle operations.
108
+
109
+ If any required item is missing, implementation is blocked until the checkpoint
110
+ and lifecycle state are corrected.
111
+
112
+ ## Pre-Implementation Violation Handling
113
+
114
+ If an implementation action is attempted before a required orchestration gate
115
+ passes, the main session must stop implementation and persist a blocked
116
+ checkpoint state. The required checkpoint outcome is blocked checkpoint state.
117
+ The checkpoint or companion artifact must record:
118
+
119
+ - violated gate name;
120
+ - attempted action;
121
+ - known mutated files, if any;
122
+ - corrective next step;
123
+ - current route metadata, lifecycle, branch, and MCP receipt state.
124
+
125
+ After a pre-implementation gate violation, the main session must not continue
126
+ implementation. It may only record the violation, restore or reconcile state
127
+ when policy permits, and resume from the corrective orchestration step.
128
+
129
+ ## Hard Enforcement Boundary
130
+
131
+ The hard completion boundary for Codex orchestration is the deterministic
132
+ orchestrator-state validator exposed through the `drm-copilot` MCP server, not
133
+ a Codex lifecycle hook. Before any DONE transition, PR creation gate, or final
134
+ completion report, the orchestrator must validate the canonical checkpoint with
135
+ `validate_orchestration_artifacts` on the `drm-copilot` MCP server using
136
+ `artifact_type: "orchestrator-state"`,
137
+ `artifact_path: "artifacts/orchestration/orchestrator-state.json"`, and
138
+ `require_complete: true`.
139
+
140
+ There is no fallback. If the MCP server or validation tool is unavailable, or
141
+ if validation fails, the orchestrator must update blocked state and stop rather
142
+ than reporting completion.
143
+
144
+ The repository CI gate `Orchestrator State Gate` runs the same validator when a
145
+ checkpoint is present. Branch protection should require this check for branches
146
+ that use orchestrated completion.
147
+
148
+ Completion validation requires the checkpoint to prove mandatory handoffs and
149
+ skill use. The checkpoint must include:
150
+
151
+ - `route_id`: the selected route key from `config/orchestration-routing.json`
152
+ - `required_agents`: exactly the selected route's `required_agents`
153
+ - `required_skills`: exactly the selected route's `required_skills`
154
+ - `required_mcp_tools`: exactly the selected route's `required_mcp_tools`
155
+ - `delegation_receipts`: one receipt for each required agent
156
+ - `skill_receipts`: one required receipt for each required skill, with evidence
157
+ - `mcp_call_receipts`: one successful receipt for each required MCP tool
158
+ - `local_execution_overrides`: an empty list at completion
159
+ - `delegation_bypasses`: an empty list at completion
160
+ - `lifecycle_operations`: any lifecycle operation must record `surface: "mcp"`
161
+
162
+ If any required handoff, skill receipt, MCP receipt, or empty bypass list is
163
+ missing, `validate_orchestration_artifacts --require-complete` fails and the
164
+ orchestrator must not report DONE.
165
+
166
+ ## Autonomous-Execution Mandate
167
+
168
+ The orchestrator must achieve all actions agentically with no unrecorded manual
169
+ dependency. Every unautomatable requirement must be detected early, resolved by
170
+ exactly one of the permitted responses below, and recorded in checkpoint state
171
+ under `human_interaction.requirements[]`.
172
+
173
+ Permitted responses:
174
+
175
+ - `scope_change`: change scope to remove the manual dependency.
176
+ - `exception`: permit an exception only when a runbook exists and its path is
177
+ recorded in `runbook_path`.
178
+ - `halt`: halt until further instruction. A `halt` blocks DONE while present.
179
+
180
+ The checkpoint validator enforces the `human_interaction` invariants. An
181
+ unresolved response, invalid response value, `halt`, or exception without an
182
+ existing runbook path blocks completion.
33
183
 
34
184
  ## Delegation Model
35
185
 
@@ -37,12 +187,38 @@ After reading `artifacts/orchestration/orchestrator-state.json`, the main sessio
37
187
 
38
188
  - `atomic-planner` — generates phased implementation plans
39
189
  - `atomic-executor` — executes approved plans task-by-task
40
- - `feature-review` — produces policy, code, and feature audit artifacts
41
- - `commit-steward` writes commit messages from commit-context artifacts
190
+ - `feature-reviewer` — produces policy, code, and feature audit artifacts by
191
+ applying the `feature-review` workflow skill
42
192
  - `task-researcher` — performs deep research and writes findings to `artifacts/research/`
193
+ - `prd-feature` — produces issue, specification, and user-story artifacts when required by the selected workflow
194
+ - `staged-review` — reviews staged changes when a pre-commit review is required
195
+ - `epic-review` — reviews epic-level artifacts when the work item is an epic
196
+ - `status-updater` — produces status update artifacts when the workflow requires status synchronization
197
+ - `python-typed-engineer` — performs delegated Python implementation work
198
+ - `powershell-typed-engineer` — performs delegated PowerShell implementation work
199
+ - `csharp-typed-engineer` — performs delegated C# implementation work
200
+ - `typescript-engineer` — performs delegated TypeScript implementation work
201
+ - `commit-steward` — writes commit messages from commit-context artifacts
43
202
 
44
203
  The orchestrator does not perform deep implementation itself. It coordinates, tracks state, and enforces completion.
45
204
 
205
+ Every worker listed above must exist as a native Codex agent under `.codex/agents/`.
206
+ For required delegated steps, missing agent configuration, failed spawn, missing
207
+ receipt, or missing required artifact output is a hard block. The orchestrator
208
+ must persist blocked state and stop rather than performing that step locally.
209
+
210
+ Every required skill listed in the selected route must be acknowledged in
211
+ `skill_receipts[]` with:
212
+
213
+ - `skill`
214
+ - `required: true`
215
+ - `acknowledged_at_phase`
216
+ - `evidence`
217
+
218
+ The evidence value must point to objective evidence: a checkpoint field, MCP
219
+ receipt, artifact path, validator output, or test result. A bare narrative
220
+ statement is not sufficient.
221
+
46
222
  ## Evidence Location Authority
47
223
 
48
224
  All evidence artifacts produced during orchestration MUST comply with the canonical scheme defined in `.agents/skills/evidence-and-timestamp-conventions/SKILL.md`. Evidence MUST be written to `<FEATURE>/evidence/<kind>/` only.
@@ -66,22 +242,24 @@ The orchestrator must not report completion until:
66
242
  1. All required artifacts for the selected workflow path are present on disk.
67
243
  2. All validation gates (toolchain, acceptance criteria, audit artifacts) have passed.
68
244
  3. The checkpoint file at `artifacts/orchestration/orchestrator-state.json` reflects the completed state.
245
+ 4. The orchestrator-state validator passes with `--require-complete`.
69
246
 
70
- ## Pre-Feature-Review Commit
247
+ ## Pre-Review Commit
71
248
 
72
- Before delegating to the `feature-review` subagent, the orchestrator must:
249
+ Before delegating to the `feature-reviewer` agent, the orchestrator must:
73
250
 
74
251
  1. Stage all modified and new files: `git add -A`.
75
252
  2. Run MCP tool `collect_commit_context` and capture the returned on-disk artifact path.
76
253
  3. Delegate to `commit_steward` using that commit-context artifact as the authoritative staged-change input.
77
254
  4. Commit using the generated message: `git commit -m "<generated message>"`.
78
- 5. Only after a successful commit may the orchestrator proceed to the `feature-review` delegation.
255
+ 5. Only after a successful commit may the orchestrator proceed to the
256
+ `feature-reviewer` delegation.
79
257
 
80
258
  The review subagent compares against a base branch; uncommitted changes are invisible to the diff tool and cannot be audited.
81
259
 
82
260
  ## Post-Review Outcome Evaluation
83
261
 
84
- After each `feature-review` delegation returns:
262
+ After each `feature-reviewer` delegation returns:
85
263
 
86
264
  1. Read the exact terminal status lines from the review result.
87
265
  2. If the result does not include `REVIEW_STATUS: PASS` or `REVIEW_STATUS: REMEDIATION_REQUIRED`, stop and record blocked state.
@@ -96,7 +274,7 @@ A bounded loop consisting of five steps. The loop variable `remediation_pass` st
96
274
  - **R2 — Preflight clearance:** Delegate to `atomic-executor` for precondition validation only (no implementation). If the executor does not return `PREFLIGHT: ALL CLEAR`, return to R1 by re-delegating to `atomic-planner` against the same remediation-plan path with the required-changes output from the executor. Only after `PREFLIGHT: ALL CLEAR` may the orchestrator advance to R3.
97
275
  - **R3 — Remediation execution:** Delegate to `atomic-executor` with full execution authorization. Each task's toolchain loop (format → lint → type-check → test) is mandatory; no skipping.
98
276
  - **Pre-R4 commit:** Stage all changes (`git add -A`), run MCP tool `collect_commit_context`, delegate to `commit_steward` using the resulting artifact, and commit with the generated message. Advance to R4 only after a successful commit.
99
- - **R4 — Re-audit:** Refresh PR context via MCP tool `collect_pr_context`, then delegate to `feature-review` with the same inputs as the original review (resolved base branch, feature folder, refreshed PR context artifacts, acceptance-criteria source). No scope narrowing. The canonical issue number line must be included.
277
+ - **R4 — Re-audit:** Refresh PR context via MCP tool `collect_pr_context`, then delegate to `feature-reviewer` with the same inputs as the original review (resolved base branch, feature folder, refreshed PR context artifacts, acceptance-criteria source). No scope narrowing. The canonical issue number line must be included.
100
278
  - **R5 — Loop-exit decision:** If the re-audit returns `REVIEW_STATUS: PASS`, exit the loop and advance to the PR creation gate. Otherwise, record `remediation_pass` increment in the checkpoint and return to R1.
101
279
 
102
280
  **Termination guard:** If `remediation_pass` reaches 3 without resolution, the orchestrator records `step6_status: "blocked_remediation_loop_limit"` in the checkpoint and halts. No further automation is attempted.
@@ -105,34 +283,44 @@ A bounded loop consisting of five steps. The loop variable `remediation_pass` st
105
283
 
106
284
  The canonical issue number is derived once from the active feature folder name: extract the trailing integer from the folder base name (e.g., `2026-04-26-push-down-claude-customizations-162` yields `162`). Record as `issue_num` in the checkpoint.
107
285
 
108
- Every delegation prompt to `atomic-planner`, `atomic-executor`, and `feature-review` must include the line:
286
+ Every delegation prompt to `atomic-planner`, `atomic-executor`, and
287
+ `feature-reviewer` must include the line:
109
288
 
110
289
  > `Canonical issue number for this feature is <issue_num>. All artifact content, file paths, and cross-references must use this number.`
111
290
 
112
291
  If a subagent artifact references a different issue number, the orchestrator rejects it, requests correction, and records the discrepancy under `artifact_errors` in the checkpoint.
113
292
 
293
+ ## CI Green Gate
294
+
295
+ Before PR/DONE completion, the orchestrator must observe the live PR head SHA
296
+ and required GitHub checks through `gh`. The checkpoint must record the checked
297
+ head SHA and CI result. DONE is blocked unless the required checks pass for the
298
+ current PR head SHA.
299
+
114
300
  ## PR Creation Gate
115
301
 
116
302
  The orchestrator must not create a PR, push a branch for PR purposes, or report work complete until all four conditions are simultaneously true:
117
303
 
118
- 1. `blocking_findings_resolved: true` — the most recent `feature-review` produced zero blocking findings.
304
+ 1. `blocking_findings_resolved: true` — the most recent `feature-reviewer`
305
+ result produced zero blocking findings.
119
306
  Equivalent deterministic gate: the latest review returned `REVIEW_STATUS: PASS`.
120
307
  2. The AC verification artifact (`p14-acceptance-criteria-checkoff.md` or equivalent) confirms all acceptance criteria pass.
121
308
  3. The mandatory toolchain passed in its most recent run on the branch (no linting/type-check/test failures).
122
309
  4. The checkpoint `next_step` is `S8_create_pr`.
310
+ 5. The required CI checks pass for the current PR head SHA.
123
311
 
124
312
  This gate is non-negotiable. Each condition is independently verified before PR creation proceeds.
125
313
 
126
314
  ## Step 6 Delegation — Prohibited Prompt Language
127
315
 
128
- When delegating to the `feature-review` subagent, the orchestrator prompt MUST NOT:
316
+ When delegating to the `feature-reviewer` agent, the orchestrator prompt MUST NOT:
129
317
 
130
318
  - describe the review scope as "plan scope," "plan-scope only," or any equivalent narrowing of scope to the currently-executed plan;
131
319
  - instruct the agent to skip, waive, or mark as "out of scope," "informational only," or "not applicable" any toolchain step or coverage check for a language that has changed files in the branch diff;
132
320
  - assert that a language category is "not applicable" when that language has changed files in the branch diff;
133
321
  - imply that coverage is not required because the plan scope contains only documentation changes when the branch diff contains non-documentation changes contributed by prior commits on the same branch.
134
322
 
135
- The orchestrator supplies only the following to the `feature-review` subagent:
323
+ The orchestrator supplies only the following to the `feature-reviewer` agent:
136
324
 
137
325
  - the resolved base branch and merge-base SHA;
138
326
  - the active feature folder path;
@@ -0,0 +1,48 @@
1
+ ---
2
+ name: orchestrator-state
3
+ description: Orchestrator-state remediation-cycle and human-interaction invariants.
4
+ ---
5
+
6
+ # Converted rule
7
+
8
+ Source: legacy Claude rule `orchestrator-state`.
9
+
10
+ # Orchestrator-State Remediation-Cycle and Human-Interaction Invariants
11
+
12
+ This rule governs remediation-cycle records and the optional `human_interaction` block in the orchestrator-state checkpoint at `artifacts/orchestration/orchestrator-state.json`. It documents three invariants that must hold for each remediation cycle, plus three invariants for the `human_interaction` block, so that resume and review workflows do not depend on a structurally invalid checkpoint.
13
+
14
+ ## Foreign Schema Warning (do not copy verbatim)
15
+
16
+ A hardened snapshot from another repository contains a JSON Schema for the orchestrator-state artifact whose `$id` references a foreign origin (`drmoisan.github.io/mix-calculator/`). That schema MUST NOT be copied verbatim into this repository: its `$id`, its top-level required-field set, and its cycle-level `additionalProperties: false` do not match this repository's checkpoint contract. The invariants below are re-expressed here as prose and enforced by validator logic in `scripts/dev_tools/validate_orchestrator_state.py`, not by importing a foreign schema file.
17
+
18
+ This prohibition is specific to the disqualified foreign schema identified by the `drmoisan.github.io/mix-calculator/` `$id`. A schema whose `$id` is repo-local and whose required-field set and `additionalProperties` policy match this repository's checkpoint contract is not the disqualified foreign artifact; even so, the repository's enforcement mechanism remains the Python validator prose-and-logic above, not an imported schema file.
19
+
20
+ ## Scope and Backward Compatibility
21
+
22
+ These invariants apply only when the checkpoint contains a top-level `remediation_loop` with a `cycles` array. A checkpoint with no `remediation_loop` (the existing step-based checkpoint shape) is unaffected: it validates exactly as before and produces no new errors. The invariants are additive.
23
+
24
+ ## Invariants (per remediation cycle)
25
+
26
+ 1. **Non-empty `plan_path`.** Each cycle's `plan_path` must be a non-empty string. A missing value, a non-string value, or an empty/whitespace-only string is a malformed cycle.
27
+
28
+ 2. **Execution requires cleared preflight.** A cycle's `execution_status` may be in `{in_progress, complete, failed}` only when that cycle's `preflight.final_status` is exactly `'clear'`. Any other preflight status with one of those execution statuses is a malformed cycle (execution was recorded before preflight cleared).
29
+
30
+ 3. **Exit gate requires zero blocking findings.** When a cycle's `exit_condition_met == true`, its `blocking_count` must be `0`. A non-zero `blocking_count` with `exit_condition_met == true` is a malformed cycle (the exit gate was marked satisfied while blocking findings remained).
31
+
32
+ ## Human-Interaction Scope and Backward Compatibility
33
+
34
+ These invariants apply only when the checkpoint contains a top-level `human_interaction` block. A checkpoint with no `human_interaction` key (the existing checkpoint shape) is unaffected: it validates exactly as before and produces no new errors. The invariants are additive and support the autonomous-execution mandate documented in `.agents/skills/orchestrate/SKILL.md`.
35
+
36
+ ## Invariants (human_interaction block)
37
+
38
+ 1. **Required `requirements` list.** When `human_interaction` is present, it must be an object containing a `requirements` list. A non-object `human_interaction`, or a `requirements` value that is not a list, is a malformed block.
39
+
40
+ 2. **Per-requirement `response` enum membership.** Each requirement must be an object whose `response` value is one of `scope_change`, `exception`, or `halt`. A requirement that is not an object, or whose `response` is outside this enum, is a malformed requirement.
41
+
42
+ 3. **Exception requires `runbook_path`.** A requirement whose `response == "exception"` must carry a non-empty `runbook_path` string. A missing, non-string, or empty/whitespace-only `runbook_path` on an `exception` requirement is a malformed requirement.
43
+
44
+ ## Enforcement
45
+
46
+ - `scripts/dev_tools/validate_orchestrator_state.py` appends one error per violated invariant when a `remediation_loop` is present, using the existing validator message style (literal, checkpoint-context prefixed). The validator returns a list of error strings and does not mutate its input.
47
+ - `scripts/dev_tools/validate_orchestrator_state.py` likewise appends one error per violated `human_interaction` invariant when a `human_interaction` key is present, using the same literal, checkpoint-context-prefixed message style. The check does not import or read any schema file.
48
+ - The validator is consumed by the MCP tool `validate_orchestration_artifacts`; backward compatibility for existing step-based checkpoints is preserved.
@@ -30,11 +30,22 @@ Use as needed:
30
30
  - Required delegated specialists:
31
31
  - `atomic-planner`
32
32
  - `atomic-executor`
33
+ - `feature-review`
33
34
  - `feature-reviewer`
35
+ - `task-researcher`
36
+ - `prd-feature`
37
+ - `staged-review`
38
+ - `epic-review`
39
+ - `status-updater`
40
+ - `python-typed-engineer`
41
+ - `powershell-typed-engineer`
42
+ - `csharp-typed-engineer`
43
+ - `typescript-engineer`
34
44
  - `commit-steward`
35
45
  - Deterministic availability rule:
36
- - if the host exposes `spawn_agent`, treat all four required delegated specialists as available,
46
+ - if the host exposes `spawn_agent` and the required `.codex/agents/<name>.toml` file exists, treat that delegated specialist as available,
37
47
  - do not infer unavailability from missing nicknames, missing prior agent instances, or lack of a dedicated launcher alias.
48
+ - Every required delegated specialist must exist as a native Codex agent under `.codex/agents/`. If a required agent file is missing, set `blocked_reason` to `spawn_agent_unavailable` and stop.
38
49
  - Required delegated steps MUST delegate or stop execution.
39
50
  - If a required delegated handoff cannot be started, resumed, or completed with a receipt, persist blocked state and stop. Do not perform that step directly.
40
51
  - Direct local execution is allowed only for workflow steps that are not designated below as required delegated handoffs.
@@ -44,12 +55,18 @@ Use as needed:
44
55
  Canonical checkpoint path:
45
56
  - `artifacts/orchestration/orchestrator-state.json`
46
57
 
58
+ Canonical route matrix:
59
+ - `config/orchestration-routing.json`
60
+
47
61
  Persist and reuse these fields exactly:
48
62
  - `objective`
49
63
  - `change_budget_estimate`
50
64
  - `path_selected`
51
65
  - `promotion-type`
52
66
  - `short-name`
67
+ - `pre-issue-branch`
68
+ - `final-branch`
69
+ - `branch-rename-status`
53
70
  - `relativeFile`
54
71
  - `long-name`
55
72
  - `issue-num`
@@ -73,6 +90,16 @@ Persist and reuse these fields exactly:
73
90
  - `step10_status`
74
91
  - `delegation_receipts`
75
92
  - `blocked_reason`
93
+ - `route_id`
94
+ - `required_agents`
95
+ - `required_skills`
96
+ - `required_mcp_tools`
97
+ - `skill_receipts`
98
+ - `mcp_call_receipts`
99
+ - `local_execution_overrides`
100
+ - `delegation_bypasses`
101
+ - `lifecycle_operations`
102
+ - `pre-implementation-violation`
76
103
 
77
104
  For small-path runs, also persist:
78
105
  - `bootstrap_mode`
@@ -103,6 +130,15 @@ Blocked-reason enum:
103
130
  - `review_status_missing`
104
131
  - `commit_context_missing`
105
132
  - `no_staged_changes`
133
+ - `pre_implementation_gate_violation`
134
+
135
+ Pre-implementation violation schema:
136
+ - `pre-implementation-violation` MUST be either `null` or an object with:
137
+ - `violated_gate`
138
+ - `attempted_action`
139
+ - `known_mutated_files`
140
+ - `corrective_next_step`
141
+ - `recorded_at`
106
142
 
107
143
  Delegation receipt schema:
108
144
  - `delegation_receipts` MUST be a list of objects with:
@@ -115,6 +151,32 @@ Delegation receipt schema:
115
151
  - `result_signal`
116
152
  - `artifact_paths`
117
153
 
154
+ Skill receipt schema:
155
+ - `skill_receipts` MUST be a list of objects with:
156
+ - `skill`
157
+ - `required`
158
+ - `acknowledged_at_phase`
159
+ - `evidence`
160
+
161
+ MCP receipt schema:
162
+ - `mcp_call_receipts` MUST be a list of objects with:
163
+ - `tool`
164
+ - `ok`
165
+ - `evidence`
166
+
167
+ Completion-state invariants:
168
+ - `route_id` MUST identify an entry in `config/orchestration-routing.json`.
169
+ - `required_agents`, `required_skills`, and `required_mcp_tools` MUST exactly
170
+ match the selected route matrix entry.
171
+ - every required agent MUST have a matching `delegation_receipts[].agent_name`.
172
+ - every required skill MUST have a matching required `skill_receipts[].skill`
173
+ with non-empty evidence.
174
+ - every required MCP tool MUST have a successful `mcp_call_receipts[].tool`
175
+ receipt with non-empty evidence.
176
+ - `local_execution_overrides` and `delegation_bypasses` MUST be empty lists at
177
+ completion.
178
+ - every recorded `lifecycle_operations[]` item MUST use `surface: "mcp"`.
179
+
118
180
  Required-delegation step map:
119
181
  - small path:
120
182
  - Step 5 -> `atomic-planner`
@@ -170,6 +232,9 @@ If an exact signal or required path field is missing, set the relevant step to `
170
232
  4. If the scope is primarily PowerShell, use `powershell-change-budget-router`.
171
233
  5. If the scope is mixed-language, ambiguous, or unsupported by an existing change-budget router, fail closed to the large path.
172
234
  6. Treat any request outside the applicable small-path budget as large path.
235
+ 7. Select `route_id` from `config/orchestration-routing.json` and persist the
236
+ exact required agent, skill, and MCP lists from the matrix before starting
237
+ lifecycle automation.
173
238
 
174
239
  ## Small Path
175
240
 
@@ -181,10 +246,12 @@ Required behavior:
181
246
  2. Use `feature-promotion-lifecycle` as the source of truth for lifecycle variables, branch naming, and `${plan-path}` resolution.
182
247
  3. Route all promotion, issue, and feature-folder automation through `repo-automation-adapter`.
183
248
  4. Enforce lifecycle preconditions before any active-folder authoring:
249
+ - route metadata persistence must be complete in the canonical checkpoint before potential-entry creation
250
+ - `${pre-issue-branch}` must be created or verified before potential-entry creation
184
251
  - `${relativeFile}` must resolve to a real potential markdown path and must not be `NONE`, `TBD`, or empty
185
- - issue promotion must complete before branch or folder creation
186
- - `${issue-num}` must be numeric before `new_active_feature_folder` runs
187
- - do not create or edit `${feature-folder}/issue.md`, `${feature-folder}/spec.md`, `${feature-folder}/user-story.md`, or `plan*.md` until promotion and folder creation both succeed
252
+ - `${issue-num}` must be numeric before final branch rename or `new_active_feature_folder` runs
253
+ - final branch rename must complete before `new_active_feature_folder` runs
254
+ - do not create or edit `${feature-folder}/issue.md`, `${feature-folder}/spec.md`, `${feature-folder}/user-story.md`, or `plan*.md` until potential-entry creation, promotion, final branch rename, and folder creation all succeed
188
255
  - if any lifecycle precondition fails, set the relevant step status to `blocked`, set `blocked_reason` to `lifecycle_preconditions_missing`, and stop
189
256
  5. Enforce minor-audit folder integrity:
190
257
  - `${feature-folder}/issue.md` must exist
@@ -199,7 +266,8 @@ Required behavior:
199
266
  7. Spawn `atomic-executor` to execute Phase 0 only.
200
267
  - Record a delegation receipt and set `step6_status` to `verified` before branching
201
268
  - If the handoff cannot be started or does not return a receipt, set `step6_status` to `blocked`, set `blocked_reason`, and stop
202
- 8. If the request is manual bootstrap, persist the resume checkpoint and stop after Phase 0.
269
+ 8. If and only if the initial user request explicitly opted into manual orchestration from the beginning, persist the resume checkpoint and stop after Phase 0.
270
+ - Otherwise manual bootstrap is prohibited; continue automated execution.
203
271
  9. Otherwise continue with constrained implementation:
204
272
  - steps that are not modeled as required delegated handoffs may execute directly while staying within the approved plan and applicable repo policy
205
273
  10. Validate the delivered work against `${feature-folder}/issue.md` and persist plan or acceptance-criteria checkoffs before review.
@@ -227,10 +295,12 @@ Required behavior:
227
295
  2. Use `feature-promotion-lifecycle` as the source of truth for lifecycle variables, branch naming, and `${plan-path}` resolution.
228
296
  3. Route all promotion, issue, and feature-folder automation through `repo-automation-adapter`.
229
297
  4. Enforce lifecycle preconditions before any active-folder authoring:
298
+ - route metadata persistence must be complete in the canonical checkpoint before potential-entry creation
299
+ - `${pre-issue-branch}` must be created or verified before potential-entry creation
230
300
  - `${relativeFile}` must resolve to a real potential markdown path and must not be `NONE`, `TBD`, or empty
231
- - issue promotion must complete before branch or folder creation
232
- - `${issue-num}` must be numeric before `new_active_feature_folder` runs
233
- - do not create or edit `${feature-folder}/issue.md`, `${feature-folder}/spec.md`, `${feature-folder}/user-story.md`, or `plan*.md` until promotion and folder creation both succeed
301
+ - `${issue-num}` must be numeric before final branch rename or `new_active_feature_folder` runs
302
+ - final branch rename must complete before `new_active_feature_folder` runs
303
+ - do not create or edit `${feature-folder}/issue.md`, `${feature-folder}/spec.md`, `${feature-folder}/user-story.md`, or `plan*.md` until potential-entry creation, promotion, final branch rename, and folder creation all succeed
234
304
  - if any lifecycle precondition fails, set the relevant step status to `blocked`, set `blocked_reason` to `lifecycle_preconditions_missing`, and stop
235
305
  5. Complete the requirements-authoring steps before planning:
236
306
  - fill the potential entry details
@@ -287,10 +357,15 @@ Do not claim mission completion until all of the following are true:
287
357
 
288
358
  - the selected path completed end to end
289
359
  - all required delegations completed with receipts
360
+ - all required skills have `skill_receipts` with evidence
361
+ - all required MCP tools have successful `mcp_call_receipts`
362
+ - no local execution override or delegation bypass is recorded
290
363
  - the checkpoint is updated with the final state
291
364
  - the canonical checkpoint path was used without sidecar replacement or backup substitution
292
365
  - `${relativeFile}` is a real promoted-input path and `${issue-num}` is numeric when lifecycle setup was required
293
366
  - `${feature-folder}` and `${plan-path}` are known when lifecycle setup was required
367
+ - route metadata, selected work mode, branch state, lifecycle receipts, and
368
+ folder readiness are present before implementation begins
294
369
  - the approved plan is executor-compliant and references the required baseline and final-QA evidence tasks
295
370
  - required review artifacts exist on disk
296
371
  - small path has Phase 0 evidence plus reduced audit artifacts
@@ -299,6 +374,8 @@ Do not claim mission completion until all of the following are true:
299
374
  - any required remediation artifacts exist on disk and the latest re-review is clean
300
375
  - any required remediation loop run also includes a remediation execution receipt, a remediation commit receipt, and a final `REVIEW_STATUS: PASS`
301
376
  - validator-backed checks for the approved plan, policy audit, code review, feature audit, and checkpoint state pass
377
+ - the canonical checkpoint passes `validate_orchestration_artifacts` with `artifact_type: "orchestrator-state"` and `require_complete: true`
378
+ - required GitHub checks pass for the current PR head SHA before PR/DONE completion
302
379
 
303
380
  ## Hard Constraints
304
381
 
@@ -308,10 +385,17 @@ Do not claim mission completion until all of the following are true:
308
385
  - Do not bypass `repo-automation-adapter` for host-specific lifecycle steps.
309
386
  - Do not rename, back up, or create sidecar checkpoint files to avoid using the canonical checkpoint path.
310
387
  - Do not proceed when the canonical checkpoint belongs to another in-progress mission; stop and report the conflict.
311
- - Do not create or edit active feature docs before potential-entry creation, issue promotion, and active-folder creation succeed.
312
- - Do not call `new_active_feature_folder` before `${issue-num}` is numeric and backed by promotion output.
388
+ - Do not create or edit active feature docs before route metadata persistence,
389
+ pre-issue branch setup, potential-entry creation, issue promotion, final branch
390
+ rename, and active-folder creation succeed.
391
+ - Do not call `new_active_feature_folder` before `${issue-num}` is numeric,
392
+ backed by promotion output, and the final branch rename is complete.
393
+ - Do not begin implementation edits, formatters, tests, staging, commits, or
394
+ implementation delegation when route metadata, branch state, lifecycle
395
+ receipts, or folder readiness are missing.
313
396
  - Do not persist placeholder lifecycle values such as `NONE` or `TBD` for `${relativeFile}`, `${issue-num}`, `${feature-folder}`, or `${plan-path}` once lifecycle setup begins.
314
397
  - Do not create replacement audit artifacts yourself for any required delegated review step.
315
398
  - Do not execute required delegated steps locally as a fallback.
316
399
  - Do not accept stale PR-context artifacts, unsupported checklist checkoffs, or missing required evidence as PASS outcomes.
400
+ - Do not treat Codex lifecycle hooks as the hard completion boundary; use deterministic validator and CI gates for completion enforcement.
317
401
  - Do not claim completion without reporting the checkpoint path and the created or updated artifact paths.
@@ -1,8 +1,3 @@
1
- # Converted skill
2
-
3
- Applied rewrites:
4
- - None
5
-
6
1
  ---
7
2
  name: policy-audit-template-usage
8
3
  description: 'Policy audit template usage and output requirements. Use when creating policy-audit.<timestamp>.md artifacts from the repo templates.'
@@ -20,13 +15,13 @@ Use this skill when:
20
15
 
21
16
  ## Template Source
22
17
 
23
- - Required template source: the MCP server tool `mcp__drmCopilotExtension__resolve_policy_audit_template_asset` with asset selector `template`.
18
+ - Required template source: the MCP server tool `mcp__drm-copilot__resolve_policy_audit_template_asset` with asset selector `template`.
24
19
  - The resolved MCP asset is authoritative even when a matching repo file also exists.
25
20
  - If MCP asset resolution fails, create a minimal policy audit artifact marked BLOCKED and document the missing template resolution.
26
21
 
27
22
  ## Required Steps
28
23
 
29
- 1) Resolve the policy-audit template through the MCP server tool `mcp__drmCopilotExtension__resolve_policy_audit_template_asset` with asset `template`, then copy the resolved asset to the target location using an ISO-8601 timestamp.
24
+ 1) Resolve the policy-audit template through the MCP server tool `mcp__drm-copilot__resolve_policy_audit_template_asset` with asset `template`, then copy the resolved asset to the target location using an ISO-8601 timestamp.
30
25
  2) Replace placeholders with actual values (component, date, files under test, commits).
31
26
  3) Remove any template usage instructions per template guidance.
32
27
  4) Mark each section PASS/FAIL/N/A using the template’s expected conventions.
@@ -44,7 +39,7 @@ Use this skill when:
44
39
  - `## 10. Compliance Verdict`
45
40
  - `## Appendix A: Test Inventory`
46
41
  - `## Appendix B: Toolchain Commands Reference`
47
- 6) Run the `mcp__drmCopilotExtension__validate_orchestration_artifacts` MCP tool with `artifact_type: "policy-audit"` and `artifact_path: <path>` and fail closed on any non-zero result.
42
+ 6) Run the `mcp__drm-copilot__validate_orchestration_artifacts` MCP tool with `artifact_type: "policy-audit"` and `artifact_path: <path>` and fail closed on any non-zero result.
48
43
 
49
44
  ## Invalid Outputs
50
45
 
@@ -1,13 +1,3 @@
1
- # Converted skill
2
-
3
- Applied rewrites:
4
- - Rewrite merged standing-guidance source paths to the native AGENTS.md target.
5
- - Rewrite merged standing-guidance source paths to the native AGENTS.md target.
6
- - Rewrite merged standing-guidance source paths to the native AGENTS.md target.
7
- - Rewrite GitHub Copilot instruction-directory references to the native skill root.
8
- - Rewrite Claude rule paths to shared skill paths.
9
- - Rewrite Claude rules-directory references to the native skill root.
10
-
11
1
  ---
12
2
  name: policy-compliance-order
13
3
  description: 'Repository policy compliance order and hard constraints. Use when an agent must read mandatory policy files, apply repo-wide constraints, or restate policy precedence without duplicating blocks across agents.'
@@ -1,9 +1,5 @@
1
- # Converted skill
2
-
3
- Applied rewrites:
4
- - None
5
-
6
1
  ---
2
+ name: powershell
7
3
  paths:
8
4
  - "**/*.ps1"
9
5
  - "**/*.psm1"
@@ -17,10 +13,10 @@ This rule file summarizes the PowerShell-specific policies for this repository.
17
13
 
18
14
  ## Toolchain
19
15
 
20
- 1. **Formatting — Invoke-Formatter**: Format all PowerShell files via PoshQC. MCP command: `mcp__drmCopilotExtension__run_poshqc_format`
21
- 2. **Linting — PSScriptAnalyzer**: Run PoshQC analyzer with repo settings. MCP command: `mcp__drmCopilotExtension__run_poshqc_analyze`. Optional autofix: `mcp__drmCopilotExtension__run_poshqc_analyze_autofix`
16
+ 1. **Formatting — Invoke-Formatter**: Format all PowerShell files via PoshQC. MCP command: `mcp__drm-copilot__run_poshqc_format`
17
+ 2. **Linting — PSScriptAnalyzer**: Run PoshQC analyzer with repo settings. MCP command: `mcp__drm-copilot__run_poshqc_analyze`. Optional autofix: `mcp__drm-copilot__run_poshqc_analyze_autofix`
22
18
  3. **Type checking**: Not applicable for PowerShell; skip to testing.
23
- 4. **Testing — Pester (v5.x)**: Run tests via MCP. MCP command: `mcp__drmCopilotExtension__run_poshqc_test`. Use repo config at `scripts/powershell/PoshQC/settings/pester.runsettings.psd1`.
19
+ 4. **Testing — Pester (v5.x)**: Run tests via MCP. MCP command: `mcp__drm-copilot__run_poshqc_test`. Use repo config at `scripts/powershell/PoshQC/settings/pester.runsettings.psd1`.
24
20
 
25
21
  Run the toolchain in order: format → analyze → test. Restart from step 1 if any step fails or changes files. Use the MCP server functions; do not substitute VS Code task wrappers.
26
22