@danmoisan/drm-copilot-mcp 1.1.23 → 1.1.24

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 (199) hide show
  1. package/out/mcp-server.js +13347 -7926
  2. package/package.json +1 -1
  3. package/resources/claude-customizations/.claude/agents/discovery-capability-sentinel.md +34 -0
  4. package/resources/claude-customizations/.claude/agents/legacy-parity-analyst.md +101 -43
  5. package/resources/claude-customizations/.claude/agents/migration-coverage-reviewer.md +107 -43
  6. package/resources/claude-customizations/.claude/agents/parallel-orchestrator.md +14 -0
  7. package/resources/claude-customizations/.claude/agents/parallel-planner.md +21 -1
  8. package/resources/claude-customizations/.claude/agents/pr-author.md +17 -1
  9. package/resources/claude-customizations/.claude/agents/requirements-reconciler.md +117 -42
  10. package/resources/claude-customizations/.claude/agents/runtime-characterization-analyst.md +103 -43
  11. package/resources/claude-customizations/.claude/hooks/discovery-capability-probe.ps1 +102 -0
  12. package/resources/claude-customizations/.claude/hooks/enforce-discovery-artifact-gate.ps1 +69 -194
  13. package/resources/claude-customizations/.claude/hooks/enforce-discovery-planning-gate.ps1 +87 -0
  14. package/resources/claude-customizations/.claude/hooks/enforce-epic-merge-gate.ps1 +7 -1
  15. package/resources/claude-customizations/.claude/hooks/enforce-model-routing-receipt.ps1 +6 -3
  16. package/resources/claude-customizations/.claude/hooks/enforce-orchestration-preimplementation-gate-epic-scope.ps1 +168 -48
  17. package/resources/claude-customizations/.claude/hooks/enforce-orchestration-preimplementation-gate.ps1 +1 -1
  18. package/resources/claude-customizations/.claude/hooks/enforce-powershell-batch-budget.ps1 +59 -20
  19. package/resources/claude-customizations/.claude/hooks/enforce-pr-author-command-allowlist.ps1 +44 -3
  20. package/resources/claude-customizations/.claude/hooks/enforce-pr-author-skill-helpers.ps1 +60 -4
  21. package/resources/claude-customizations/.claude/hooks/enforce-pr-author-skill.epic-base-branch.ps1 +4 -2
  22. package/resources/claude-customizations/.claude/hooks/enforce-python-batch-budget.ps1 +59 -20
  23. package/resources/claude-customizations/.claude/hooks/record-discovery-agent-start.ps1 +132 -0
  24. package/resources/claude-customizations/.claude/hooks/validate-discovery-artifact-gate.ps1 +56 -212
  25. package/resources/claude-customizations/.claude/hooks/validate-orchestrator-output-rejection.ps1 +172 -0
  26. package/resources/claude-customizations/.claude/hooks/validate-orchestrator-output.ps1 +9 -1
  27. package/resources/claude-customizations/.claude/lib/blast-radius/BlastRadius.psm1 +9 -3
  28. package/resources/claude-customizations/.claude/lib/blast-radius/BlastRadiusAggregate.psm1 +154 -0
  29. package/resources/claude-customizations/.claude/lib/blast-radius/BlastRadiusCombination.psm1 +228 -0
  30. package/resources/claude-customizations/.claude/lib/blast-radius/BlastRadiusExtraction.psm1 +1 -0
  31. package/resources/claude-customizations/.claude/lib/blast-radius/BlastRadiusNormalization.psm1 +4 -2
  32. package/resources/claude-customizations/.claude/lib/blast-radius/BlastRadiusScheduling.psm1 +63 -16
  33. package/resources/claude-customizations/.claude/lib/blast-radius/BlastRadiusTokenShape.psm1 +56 -1
  34. package/resources/claude-customizations/.claude/lib/blast-radius/BlastRadiusWriteIntent.psm1 +4 -1
  35. package/resources/claude-customizations/.claude/lib/codex-routing/CodexDeployment.psm1 +5 -1
  36. package/resources/claude-customizations/.claude/lib/codex-routing/CodexDiscoveryRouting.psm1 +161 -0
  37. package/resources/claude-customizations/.claude/lib/codex-routing/CodexTopology.psm1 +25 -2
  38. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryAuthority.psd1 +90 -0
  39. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryAuthority.psm1 +493 -0
  40. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryAuthorization.psm1 +479 -0
  41. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryCapability.psm1 +468 -0
  42. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryEncoding.psm1 +156 -0
  43. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryManifest.psm1 +384 -0
  44. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryObservation.psm1 +217 -0
  45. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryPayload.psm1 +276 -0
  46. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryPlanning.psm1 +336 -0
  47. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryRootGrant.psm1 +164 -0
  48. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryStart.psm1 +440 -0
  49. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryStartRecord.psm1 +296 -0
  50. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryStop.psm1 +336 -0
  51. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryToolRouting.psm1 +228 -0
  52. package/resources/claude-customizations/.claude/lib/discovery-validation/DiscoveryValidation.psm1 +188 -341
  53. package/resources/claude-customizations/.claude/lib/worktree-resolution/HookTargetWorktree.psm1 +391 -0
  54. package/resources/claude-customizations/.claude/rules/orchestrator-state.md +1 -0
  55. package/resources/claude-customizations/.claude/rules/parallel-orchestration.md +150 -18
  56. package/resources/claude-customizations/.claude/settings.json +32 -3
  57. package/resources/claude-customizations/.claude/skills/adjudicate-unspecified-behavior/SKILL.md +135 -0
  58. package/resources/claude-customizations/.claude/skills/characterize-runtime-behavior/SKILL.md +134 -0
  59. package/resources/claude-customizations/.claude/skills/discovery-behavior-reconciliation/SKILL.md +28 -47
  60. package/resources/claude-customizations/.claude/skills/discovery-coverage-ledger/SKILL.md +32 -48
  61. package/resources/claude-customizations/.claude/skills/discovery-parity-matrix/SKILL.md +28 -45
  62. package/resources/claude-customizations/.claude/skills/discovery-repo-inventory/SKILL.md +28 -62
  63. package/resources/claude-customizations/.claude/skills/discovery-runtime-characterization/SKILL.md +28 -45
  64. package/resources/claude-customizations/.claude/skills/discovery-validate-artifacts/SKILL.md +28 -61
  65. package/resources/claude-customizations/.claude/skills/discovery-workflow/SKILL.md +55 -139
  66. package/resources/claude-customizations/.claude/skills/execution-environment/SKILL.md +24 -9
  67. package/resources/claude-customizations/.claude/skills/extract-feature-contract/SKILL.md +133 -0
  68. package/resources/claude-customizations/.claude/skills/generate-acceptance-scenarios/SKILL.md +132 -0
  69. package/resources/claude-customizations/.claude/skills/initialize-discovery-workspace/SKILL.md +131 -0
  70. package/resources/claude-customizations/.claude/skills/inventory-legacy-system/SKILL.md +131 -0
  71. package/resources/claude-customizations/.claude/skills/orchestrate/SKILL.md +5 -4
  72. package/resources/claude-customizations/.claude/skills/parallel-add/SKILL.md +21 -1
  73. package/resources/claude-customizations/.claude/skills/parallel-close/SKILL.md +11 -1
  74. package/resources/claude-customizations/.claude/skills/parallel-orchestrate/SKILL.md +34 -0
  75. package/resources/claude-customizations/.claude/skills/parallel-plan/SKILL.md +69 -6
  76. package/resources/claude-customizations/.claude/skills/parallel-remove/SKILL.md +15 -0
  77. package/resources/claude-customizations/.claude/skills/parallel-run/SKILL.md +6 -0
  78. package/resources/claude-customizations/.claude/skills/pr-author/SKILL.md +21 -4
  79. package/resources/claude-customizations/.claude/skills/reconcile-parity-matrix/SKILL.md +131 -0
  80. package/resources/claude-customizations/.claude/skills/review-discovery-coverage/SKILL.md +129 -0
  81. package/resources/claude-customizations/.claude/skills/validate-discovery-artifacts/SKILL.md +127 -0
  82. package/resources/claude-customizations/config/blast-radius.json +6 -5
  83. package/resources/claude-customizations/config/orchestration-routing.json +61 -1
  84. package/resources/claude-customizations/pack-manifests/core.json +33 -1
  85. package/resources/codex-and-agents-customizations/.agents/skills/adjudicate-unspecified-behavior/SKILL.md +135 -0
  86. package/resources/codex-and-agents-customizations/.agents/skills/atomic-planner/SKILL.md +7 -0
  87. package/resources/codex-and-agents-customizations/.agents/skills/characterize-runtime-behavior/SKILL.md +134 -0
  88. package/resources/codex-and-agents-customizations/.agents/skills/discovery-behavior-reconciliation/SKILL.md +46 -0
  89. package/resources/codex-and-agents-customizations/.agents/skills/discovery-coverage-ledger/SKILL.md +50 -0
  90. package/resources/codex-and-agents-customizations/.agents/skills/discovery-parity-matrix/SKILL.md +46 -0
  91. package/resources/codex-and-agents-customizations/.agents/skills/discovery-repo-inventory/SKILL.md +46 -0
  92. package/resources/codex-and-agents-customizations/.agents/skills/discovery-runtime-characterization/SKILL.md +46 -0
  93. package/resources/codex-and-agents-customizations/.agents/skills/discovery-validate-artifacts/SKILL.md +46 -0
  94. package/resources/codex-and-agents-customizations/.agents/skills/discovery-workflow/SKILL.md +62 -0
  95. package/resources/codex-and-agents-customizations/.agents/skills/execution-environment/SKILL.md +24 -9
  96. package/resources/codex-and-agents-customizations/.agents/skills/extract-feature-contract/SKILL.md +133 -0
  97. package/resources/codex-and-agents-customizations/.agents/skills/generate-acceptance-scenarios/SKILL.md +132 -0
  98. package/resources/codex-and-agents-customizations/.agents/skills/initialize-discovery-workspace/SKILL.md +131 -0
  99. package/resources/codex-and-agents-customizations/.agents/skills/inventory-legacy-system/SKILL.md +131 -0
  100. package/resources/codex-and-agents-customizations/.agents/skills/orchestrator-workflow/SKILL.md +8 -0
  101. package/resources/codex-and-agents-customizations/.agents/skills/reconcile-parity-matrix/SKILL.md +131 -0
  102. package/resources/codex-and-agents-customizations/.agents/skills/review-discovery-coverage/SKILL.md +129 -0
  103. package/resources/codex-and-agents-customizations/.agents/skills/validate-discovery-artifacts/SKILL.md +127 -0
  104. package/resources/codex-and-agents-customizations/.codex/agents/discovery-capability-sentinel.toml +51 -0
  105. package/resources/codex-and-agents-customizations/.codex/agents/legacy-parity-analyst-c1.toml +148 -0
  106. package/resources/codex-and-agents-customizations/.codex/agents/legacy-parity-analyst-c2.toml +148 -0
  107. package/resources/codex-and-agents-customizations/.codex/agents/legacy-parity-analyst-c3-elevated.toml +148 -0
  108. package/resources/codex-and-agents-customizations/.codex/agents/legacy-parity-analyst-c3.toml +148 -0
  109. package/resources/codex-and-agents-customizations/.codex/agents/legacy-parity-analyst-c4.toml +148 -0
  110. package/resources/codex-and-agents-customizations/.codex/agents/legacy-parity-analyst.toml +148 -0
  111. package/resources/codex-and-agents-customizations/.codex/agents/migration-coverage-reviewer-c1.toml +154 -0
  112. package/resources/codex-and-agents-customizations/.codex/agents/migration-coverage-reviewer-c2.toml +154 -0
  113. package/resources/codex-and-agents-customizations/.codex/agents/migration-coverage-reviewer-c3-elevated.toml +154 -0
  114. package/resources/codex-and-agents-customizations/.codex/agents/migration-coverage-reviewer-c3.toml +154 -0
  115. package/resources/codex-and-agents-customizations/.codex/agents/migration-coverage-reviewer-c4.toml +154 -0
  116. package/resources/codex-and-agents-customizations/.codex/agents/migration-coverage-reviewer.toml +154 -0
  117. package/resources/codex-and-agents-customizations/.codex/agents/requirements-reconciler-c1.toml +164 -0
  118. package/resources/codex-and-agents-customizations/.codex/agents/requirements-reconciler-c2.toml +164 -0
  119. package/resources/codex-and-agents-customizations/.codex/agents/requirements-reconciler-c3-elevated.toml +164 -0
  120. package/resources/codex-and-agents-customizations/.codex/agents/requirements-reconciler-c3.toml +164 -0
  121. package/resources/codex-and-agents-customizations/.codex/agents/requirements-reconciler-c4.toml +164 -0
  122. package/resources/codex-and-agents-customizations/.codex/agents/requirements-reconciler.toml +164 -0
  123. package/resources/codex-and-agents-customizations/.codex/agents/runtime-characterization-analyst-c1.toml +150 -0
  124. package/resources/codex-and-agents-customizations/.codex/agents/runtime-characterization-analyst-c2.toml +150 -0
  125. package/resources/codex-and-agents-customizations/.codex/agents/runtime-characterization-analyst-c3-elevated.toml +150 -0
  126. package/resources/codex-and-agents-customizations/.codex/agents/runtime-characterization-analyst-c3.toml +150 -0
  127. package/resources/codex-and-agents-customizations/.codex/agents/runtime-characterization-analyst-c4.toml +150 -0
  128. package/resources/codex-and-agents-customizations/.codex/agents/runtime-characterization-analyst.toml +150 -0
  129. package/resources/codex-and-agents-customizations/.codex/config.toml +33 -3
  130. package/resources/codex-and-agents-customizations/.codex/hooks/codex-agent-profile-attestation.ps1 +22 -0
  131. package/resources/codex-and-agents-customizations/.codex/hooks/discovery-capability-probe.ps1 +97 -0
  132. package/resources/codex-and-agents-customizations/.codex/hooks/discovery-start-attestation.ps1 +171 -0
  133. package/resources/codex-and-agents-customizations/.codex/hooks/enforce-codex-model-routing.ps1 +4 -1
  134. package/resources/codex-and-agents-customizations/.codex/hooks/enforce-discovery-artifact-gate.ps1 +187 -0
  135. package/resources/codex-and-agents-customizations/.codex/hooks/enforce-discovery-planning-gate.ps1 +149 -0
  136. package/resources/codex-and-agents-customizations/.codex/hooks/enforce-orchestration-preimplementation-gate-epic-scope.ps1 +239 -2
  137. package/resources/codex-and-agents-customizations/.codex/hooks/enforce-orchestration-preimplementation-gate.ps1 +6 -15
  138. package/resources/codex-and-agents-customizations/.codex/hooks/enforce-powershell-batch-budget.ps1 +54 -15
  139. package/resources/codex-and-agents-customizations/.codex/hooks/enforce-python-batch-budget.ps1 +54 -15
  140. package/resources/codex-and-agents-customizations/.codex/hooks/hook-target-worktree.ps1 +369 -0
  141. package/resources/codex-and-agents-customizations/.codex/hooks/record-subagent-routing-attestation.ps1 +8 -0
  142. package/resources/codex-and-agents-customizations/.codex/hooks/validate-codex-subagent-routing.ps1 +22 -1
  143. package/resources/codex-and-agents-customizations/.codex/hooks/validate-discovery-agent-output.ps1 +178 -0
  144. package/resources/codex-and-agents-customizations/.codex/scripts/Resolve-CodexTopology.ps1 +11 -1
  145. package/resources/codex-and-agents-customizations/pack-manifests/core.json +63 -1
  146. package/resources/config/orchestration-routing.json +61 -1
  147. package/resources/customizations/.github/agents/discovery-capability-sentinel.agent.md +34 -0
  148. package/resources/customizations/.github/agents/legacy-parity-analyst.agent.md +122 -0
  149. package/resources/customizations/.github/agents/migration-coverage-reviewer.agent.md +128 -0
  150. package/resources/customizations/.github/agents/requirements-reconciler.agent.md +138 -0
  151. package/resources/customizations/.github/agents/runtime-characterization-analyst.agent.md +124 -0
  152. package/resources/customizations/.github/hooks/discovery-agent-start.ps1 +139 -0
  153. package/resources/customizations/.github/hooks/discovery-agent-stop.ps1 +123 -0
  154. package/resources/customizations/.github/hooks/discovery-capability-probe.ps1 +98 -0
  155. package/resources/customizations/.github/hooks/discovery-planning.ps1 +91 -0
  156. package/resources/customizations/.github/hooks/discovery-pre-tool.ps1 +123 -0
  157. package/resources/customizations/.github/hooks/discovery.json +35 -0
  158. package/resources/customizations/.github/instructions/mermaid.instructions.md +85 -0
  159. package/resources/customizations/.github/prompts/execute-hard-lock.prompt.md +105 -0
  160. package/resources/customizations/.github/skills/adjudicate-unspecified-behavior/SKILL.md +135 -0
  161. package/resources/customizations/.github/skills/characterize-runtime-behavior/SKILL.md +134 -0
  162. package/resources/customizations/.github/skills/discovery-behavior-reconciliation/SKILL.md +46 -0
  163. package/resources/customizations/.github/skills/discovery-coverage-ledger/SKILL.md +50 -0
  164. package/resources/customizations/.github/skills/discovery-parity-matrix/SKILL.md +46 -0
  165. package/resources/customizations/.github/skills/discovery-repo-inventory/SKILL.md +46 -0
  166. package/resources/customizations/.github/skills/discovery-runtime-characterization/SKILL.md +46 -0
  167. package/resources/customizations/.github/skills/discovery-validate-artifacts/SKILL.md +46 -0
  168. package/resources/customizations/.github/skills/discovery-workflow/SKILL.md +62 -0
  169. package/resources/customizations/.github/skills/execution-environment/SKILL.md +24 -9
  170. package/resources/customizations/.github/skills/extract-feature-contract/SKILL.md +133 -0
  171. package/resources/customizations/.github/skills/generate-acceptance-scenarios/SKILL.md +132 -0
  172. package/resources/customizations/.github/skills/initialize-discovery-workspace/SKILL.md +131 -0
  173. package/resources/customizations/.github/skills/inventory-legacy-system/SKILL.md +131 -0
  174. package/resources/customizations/.github/skills/reconcile-parity-matrix/SKILL.md +131 -0
  175. package/resources/customizations/.github/skills/review-discovery-coverage/SKILL.md +129 -0
  176. package/resources/customizations/.github/skills/validate-discovery-artifacts/SKILL.md +127 -0
  177. package/resources/lib/codex-routing/CodexDeployment.psm1 +5 -1
  178. package/resources/lib/codex-routing/CodexDiscoveryRouting.psm1 +161 -0
  179. package/resources/lib/codex-routing/CodexTopology.psm1 +25 -2
  180. package/resources/lib/discovery-validation/DiscoveryAuthority.psd1 +90 -0
  181. package/resources/lib/discovery-validation/DiscoveryAuthority.psm1 +493 -0
  182. package/resources/lib/discovery-validation/DiscoveryAuthorization.psm1 +479 -0
  183. package/resources/lib/discovery-validation/DiscoveryCapability.psm1 +468 -0
  184. package/resources/lib/discovery-validation/DiscoveryEncoding.psm1 +156 -0
  185. package/resources/lib/discovery-validation/DiscoveryManifest.psm1 +384 -0
  186. package/resources/lib/discovery-validation/DiscoveryObservation.psm1 +217 -0
  187. package/resources/lib/discovery-validation/DiscoveryPayload.psm1 +276 -0
  188. package/resources/lib/discovery-validation/DiscoveryPlanning.psm1 +336 -0
  189. package/resources/lib/discovery-validation/DiscoveryRootGrant.psm1 +164 -0
  190. package/resources/lib/discovery-validation/DiscoveryStart.psm1 +440 -0
  191. package/resources/lib/discovery-validation/DiscoveryStartRecord.psm1 +296 -0
  192. package/resources/lib/discovery-validation/DiscoveryStop.psm1 +336 -0
  193. package/resources/lib/discovery-validation/DiscoveryToolRouting.psm1 +228 -0
  194. package/resources/powershell/PoshQC/PoshQC.Parallel.psm1 +452 -0
  195. package/resources/powershell/PoshQC/PoshQC.Shard.psm1 +106 -8
  196. package/resources/powershell/PoshQC/PoshQC.Testing.psm1 +12 -0
  197. package/resources/powershell/PoshQC/PoshQC.psd1 +6 -1
  198. package/resources/powershell/PoshQC/PoshQC.psm1 +7 -1
  199. package/resources/powershell/PoshQC/README.md +20 -1
@@ -0,0 +1,131 @@
1
+ ---
2
+ name: reconcile-parity-matrix
3
+ description: 'Reconcile selected feature and client parity against pinned source facts and target evidence. Use when asked to update a parity matrix or identify migration gaps without changing approved decisions.'
4
+ ---
5
+
6
+ # Reconcile Parity Matrix
7
+
8
+ ## When to Use This Skill
9
+
10
+ Use for selected feature/client comparisons against immutable source snapshot references and explicit target evidence.
11
+
12
+ ## Inputs
13
+
14
+ These are human-facing workflow selections, not additional service-request fields.
15
+ Supply explicit selections; neither omitted inputs nor profile roots create authority.
16
+
17
+ | Input | Required contract |
18
+ | --- | --- |
19
+ | profile | Required validated profile and trusted workspace binding. |
20
+ | source_snapshot_refs | Required immutable source snapshot references and content pins. |
21
+ | feature_ids | Required explicit selected feature mappings. |
22
+ | client_ids | Required explicit selected target clients. |
23
+ | target_implementation_refs | Required selected implementation records or explicit missing-state references. |
24
+ | evidence_refs | Required selected verification evidence or explicit unavailable state. |
25
+ | approved_decision_refs | Required applicable approved decisions or an explicit empty selection. |
26
+
27
+ ## Routing
28
+
29
+ Logical role: `requirements-reconciler`.
30
+ The root owns preparation and launch; this skill never auto-launches a logical
31
+ role through frontmatter. The existing resolver selects the exact deployment,
32
+ model, effort and profile hash under the existing C1-C4 ceiling and execution
33
+ context. Do not choose a model, self-launch, create another scheduler or promote
34
+ an ordinary discovery action into an issue. The production-write count is zero.
35
+
36
+ ## Exact output boundary
37
+
38
+ These rows are maximum workflow caps, not instructions to create every kind.
39
+ Only the prepared required outputs may be created or replaced.
40
+
41
+ | Artifact kind | Profile key | Constraint |
42
+ | --- | --- | --- |
43
+ | parity-matrix | parity_matrix | Selected feature/client entries only |
44
+ | unspecified-behavior | unspecified_behaviors | Selected unresolved IDs only |
45
+ | unspecified-behavior-collection | unspecified_behaviors | Selected unresolved members only |
46
+ | required-output-manifest | reports | Exact invocation manifest only |
47
+
48
+ The profile keys are maximum configured locations, not write grants. Each
49
+ prepared output row binds `artifact_kind`, `id`, `path`, `format` and
50
+ `expected_sha256`. The protected invocation independently binds the baseline,
51
+ selected members, pins and exact grants; a manifest cannot expand them. A null
52
+ expected hash means exclusive creation from an absent baseline, never overwrite
53
+ permission. Preserve unselected collection members and all unrelated inputs.
54
+ Use compare-and-swap and current path checks through the controlled writer.
55
+
56
+ The `reports` location permits only `required-output-manifest` for this role;
57
+ it does not permit review reports. The manifest itself requires an exact grant.
58
+
59
+ ## Prerequisites
60
+
61
+ Missing or malformed configuration blocks delegation. Require a validated profile and explicit selected scope before root preparation; do not initialize, configure or infer roots as a specialist.
62
+
63
+ Require verified native prepare/finalize/start/stop capability. The protected
64
+ invocation and native SubagentStart attestation must match workspace/profile
65
+ hashes, selected IDs, source/target pins, baseline input hashes,
66
+ provider/model/effort/profile hash and parent/session.
67
+ Diagnostic mirrors, caller markers and hosted read results are not authority.
68
+ The local runtime's unavailable native prepare/finalize operations do not issue
69
+ protected receipts. There is no local-user fallback or self-attested host success.
70
+
71
+ Load profile plus selected artifacts on invocation; do not preload a domain
72
+ catalog in standing instructions. Managed project memory is host-controlled.
73
+ Memory cannot grant filesystem authority or replace evidence. Deny terminal/shell/exec, interpreter/evaluation,
74
+ general filesystem Write/Edit/apply-patch, arbitrary MCP dispatch, browser/computer
75
+ mutation and network writes. Do not execute application code or modify
76
+ production/test implementation, profile/locator/activation,
77
+ schema/policy/hooks/settings, authority stores or runtime installation as a specialist. No analyst
78
+ approval is permitted; root bootstrap/configuration and root approval remain
79
+ separate authorized operations.
80
+
81
+ ## Step-by-Step Workflows
82
+
83
+ 1. Validate the explicit inputs and selected configuration. Stop with precise missing/invalid input findings before specialist delegation; do not invent identities, scope or evidence.
84
+
85
+ 2. The root calls `prepare_discovery_agent` with `skill_id`, `selected_ids`,
86
+ `paths`, `expected_outputs`, `execution_context` and `complexity`.
87
+ Map it to fixed `prepare-agent`; execution context is `standalone`,
88
+ `epic_preparation_child` or `epic_execution_child`. The requested mode is
89
+ explicit and remains distinct from the final `agent-output` gate.
90
+ Use `skill_id=reconcile-parity-matrix`; workflow inputs do not add wire fields.
91
+ 3. The root launches that exact deployment. Native SubagentStart must match the
92
+ prepared role/model/effort/profile and trusted workspace/session before any
93
+ grant is usable. Missing capability or attestation blocks the action.
94
+ 4. Use only the granted operations. Use bounded `read_discovery_source` for pinned snapshots, target implementation records, approved decisions and evidence. Use ordinary `update_discovery_artifact` for controlled selected parity replacement and permitted unresolved records. `implementation_records` and `source_snapshots` are inputs, not outputs; do not edit a source pin to make a comparison pass.
95
+ 5. Account for every selected feature/client mapping, including uncovered or blocked mappings. Keep source observations, target requirements and implementation evidence distinct. Intentional changes or retirements must link to the applicable approved decision. Preserve approved decision history and unrelated parity members. Pending questions cannot become approved requirements, and derived criteria do not authorize `feature_contracts` writes.
96
+ 6. Produce every exact required output and the stored `required-output-manifest`,
97
+ preserving its output array order for the digest. Validate claims, references,
98
+ pins and selected-ID accounting. Purpose-built tools supply authorized proposal
99
+ inputs for `input_path`/`evidence_path`; never invent a generic Write staging
100
+ step. Server-side role checks, exact one-use authorization and prospective
101
+ validation remain mandatory. Bounded source reads preserve content identity
102
+ and line ranges; truncation requires a narrower selection, not a completeness
103
+ claim or filesystem fallback.
104
+ 7. Call `finalize_discovery_agent` as the specialist, mapped to `finalize-agent`
105
+ with `mode=agent-output`, non-null `invocation_ref` and no operation inputs.
106
+ It validates the protected invocation's outputs, not final-message paths.
107
+ Native SubagentStop then verifies current output authority.
108
+ Missing final text cannot skip native stop validation.
109
+ 8. After native stop, the root records the explicit result, content-addressed artifact references,
110
+ selected-ID accounting and all findings. A successful tool call or generated
111
+ path alone is not evidence of completed discovery.
112
+
113
+ ## Stop and result
114
+
115
+ Return explicit parity findings and unresolved mappings. A valid incremental parity update does not authorize parity-complete or planning without the requested authoritative gate.
116
+
117
+ Structural success is not discovery, parity or planning completion.
118
+ Missing prepare/finalize/start/stop capability, missing outputs, invalid claims,
119
+ unresolved required work, wrong role/model/start context or a stale/missing
120
+ receipt blocks successful completion. Return explicit
121
+ PASS, FAIL or BLOCKED, distinguishing valid incremental outputs from a passing
122
+ completion gate. Missing native enforcement remains BLOCKED even when ordinary
123
+ local-user operations can run; do not substitute CLI success for native authority.
124
+
125
+ ## References
126
+
127
+ - [Canonical requirements-reconciler contract](../../../.claude/agents/requirements-reconciler.md)
128
+ - Installed v2 `service-request` and `required-output-manifest` schema contracts;
129
+ consume them through the authoritative runtime, with no checkout-schema fallback.
130
+ - The selected profile and pinned local artifacts supplied for this invocation;
131
+ references do not preload catalogs or grant access to unselected paths.
@@ -0,0 +1,129 @@
1
+ ---
2
+ name: review-discovery-coverage
3
+ description: 'Review selected discovery coverage and parity with authoritative reports and explicit findings. Use when asked for a structural, discovery-complete or parity-complete review.'
4
+ ---
5
+
6
+ # Review Discovery Coverage
7
+
8
+ ## When to Use This Skill
9
+
10
+ Use for a requested review of configured scope or a pinned snapshot. The reviewer reports readiness without editing underlying facts.
11
+
12
+ ## Inputs
13
+
14
+ These are human-facing workflow selections, not additional service-request fields.
15
+ Supply explicit selections; neither omitted inputs nor profile roots create authority.
16
+
17
+ | Input | Required contract |
18
+ | --- | --- |
19
+ | profile | Required validated profile and trusted workspace binding. |
20
+ | scope | Required exact requested scope or explicit whole configured graph. |
21
+ | snapshot | Required selected current/pinned snapshot identity for the review. |
22
+ | mode | Required explicit structural, discovery-complete or parity-complete review mode. |
23
+
24
+ ## Routing
25
+
26
+ Logical role: `migration-coverage-reviewer`.
27
+ The root owns preparation and launch; this skill never auto-launches a logical
28
+ role through frontmatter. The existing resolver selects the exact deployment,
29
+ model, effort and profile hash under the existing C1-C4 ceiling and execution
30
+ context. Do not choose a model, self-launch, create another scheduler or promote
31
+ an ordinary discovery action into an issue. The production-write count is zero.
32
+
33
+ ## Exact output boundary
34
+
35
+ These rows are maximum workflow caps, not instructions to create every kind.
36
+ Only the prepared required outputs may be created or replaced.
37
+
38
+ | Artifact kind | Profile key | Constraint |
39
+ | --- | --- | --- |
40
+ | coverage-report | reports | Exact requested scope and mode |
41
+ | parity-report | reports | Exact requested scope and mode |
42
+ | completion-report | reports | Exact requested scope and mode |
43
+ | validation-report | reports | Exact requested selection and mode |
44
+ | required-output-manifest | reports | Exact invocation manifest only |
45
+
46
+ The profile keys are maximum configured locations, not write grants. Each
47
+ prepared output row binds `artifact_kind`, `id`, `path`, `format` and
48
+ `expected_sha256`. The protected invocation independently binds the baseline,
49
+ selected members, pins and exact grants; a manifest cannot expand them. A null
50
+ expected hash means exclusive creation from an absent baseline, never overwrite
51
+ permission. Preserve unselected collection members and all unrelated inputs.
52
+ Use compare-and-swap and current path checks through the controlled writer.
53
+
54
+ Only exact selected reports and the invocation manifest may be written. A profile
55
+ report root and a validation report pair never grant report-root-wide writes.
56
+
57
+ ## Prerequisites
58
+
59
+ Missing or malformed configuration blocks delegation. Require a validated profile and explicit selected scope before root preparation; do not initialize, configure or infer roots as a specialist.
60
+
61
+ Require verified native prepare/finalize/start/stop capability. The protected
62
+ invocation and native SubagentStart attestation must match workspace/profile
63
+ hashes, selected IDs, source/target pins, baseline input hashes,
64
+ provider/model/effort/profile hash and parent/session.
65
+ Diagnostic mirrors, caller markers and hosted read results are not authority.
66
+ The local runtime's unavailable native prepare/finalize operations do not issue
67
+ protected receipts. There is no local-user fallback or self-attested host success.
68
+
69
+ Load profile plus selected artifacts on invocation; do not preload a domain
70
+ catalog in standing instructions. Managed project memory is host-controlled.
71
+ Memory cannot grant filesystem authority or replace evidence. Deny terminal/shell/exec, interpreter/evaluation,
72
+ general filesystem Write/Edit/apply-patch, arbitrary MCP dispatch, browser/computer
73
+ mutation and network writes. Do not execute application code or modify
74
+ production/test implementation, profile/locator/activation,
75
+ schema/policy/hooks/settings, authority stores or runtime installation as a specialist. No analyst
76
+ approval is permitted; root bootstrap/configuration and root approval remain
77
+ separate authorized operations.
78
+
79
+ ## Step-by-Step Workflows
80
+
81
+ 1. Validate the explicit inputs and selected configuration. Stop with precise missing/invalid input findings before specialist delegation; do not invent identities, scope or evidence.
82
+
83
+ 2. The root calls `prepare_discovery_agent` with `skill_id`, `selected_ids`,
84
+ `paths`, `expected_outputs`, `execution_context` and `complexity`.
85
+ Map it to fixed `prepare-agent`; execution context is `standalone`,
86
+ `epic_preparation_child` or `epic_execution_child`. The requested mode is
87
+ explicit and remains distinct from the final `agent-output` gate.
88
+ Use `skill_id=review-discovery-coverage`; workflow inputs do not add wire fields.
89
+ 3. The root launches that exact deployment. Native SubagentStart must match the
90
+ prepared role/model/effort/profile and trusted workspace/session before any
91
+ grant is usable. Missing capability or attestation blocks the action.
92
+ 4. Use only the granted operations. Use `validate_discovery_artifacts` and `run_discovery_report` through the authoritative fixed validation/report operations in the requested mode. Use bounded `read_discovery_source` for selected supporting inputs only. Do not guess artifact types by first-success validation. Do not create a second graph/schema engine or infer readiness from report existence.
93
+ 5. At least one required report must be recomputable structured JSON in the invocation's requested review mode. Preserve all findings for the requested scope and explicit PASS/FAIL. Do not update inventory, coverage ledger, contracts, parity entries, evidence, decisions or configuration to force a pass. The validate-all canonical report pair does not grant report-root-wide writes.
94
+ 6. Produce every exact required output and the stored `required-output-manifest`,
95
+ preserving its output array order for the digest. Validate claims, references,
96
+ pins and selected-ID accounting. Purpose-built tools supply authorized proposal
97
+ inputs for `input_path`/`evidence_path`; never invent a generic Write staging
98
+ step. Server-side role checks, exact one-use authorization and prospective
99
+ validation remain mandatory. Bounded source reads preserve content identity
100
+ and line ranges; truncation requires a narrower selection, not a completeness
101
+ claim or filesystem fallback.
102
+ 7. Call `finalize_discovery_agent` as the specialist, mapped to `finalize-agent`
103
+ with `mode=agent-output`, non-null `invocation_ref` and no operation inputs.
104
+ It validates the protected invocation's outputs, not final-message paths.
105
+ Native SubagentStop then verifies current output authority.
106
+ Missing final text cannot skip native stop validation.
107
+ 8. After native stop, the root records the explicit result, content-addressed artifact references,
108
+ selected-ID accounting and all findings. A successful tool call or generated
109
+ path alone is not evidence of completed discovery.
110
+
111
+ ## Stop and result
112
+
113
+ A valid FAIL report may finish as `output-valid/result-fail`; it never authorizes discovery, parity or planning completion. Missing required reports still block output validity. Review status and completion authority remain separate.
114
+
115
+ Structural success is not discovery, parity or planning completion.
116
+ Missing prepare/finalize/start/stop capability, missing outputs, invalid claims,
117
+ unresolved required work, wrong role/model/start context or a stale/missing
118
+ receipt blocks successful completion. Return explicit
119
+ PASS, FAIL or BLOCKED, distinguishing valid incremental outputs from a passing
120
+ completion gate. Missing native enforcement remains BLOCKED even when ordinary
121
+ local-user operations can run; do not substitute CLI success for native authority.
122
+
123
+ ## References
124
+
125
+ - [Canonical migration-coverage-reviewer contract](../../../.claude/agents/migration-coverage-reviewer.md)
126
+ - Installed v2 `service-request` and `required-output-manifest` schema contracts;
127
+ consume them through the authoritative runtime, with no checkout-schema fallback.
128
+ - The selected profile and pinned local artifacts supplied for this invocation;
129
+ references do not preload catalogs or grant access to unselected paths.
@@ -0,0 +1,127 @@
1
+ ---
2
+ name: validate-discovery-artifacts
3
+ description: 'Validate an exact discovery artifact selection or configured graph through authoritative modes. Use when asked to validate discovery artifacts or evaluate an explicit completion or planning prerequisite.'
4
+ ---
5
+
6
+ # Validate Discovery Artifacts
7
+
8
+ ## When to Use This Skill
9
+
10
+ Use for individual artifact validation or a whole configured workspace gate with an explicit mode. Do not infer type or readiness from filenames.
11
+
12
+ ## Inputs
13
+
14
+ These are human-facing workflow selections, not additional service-request fields.
15
+ Supply explicit selections; neither omitted inputs nor profile roots create authority.
16
+
17
+ | Input | Required contract |
18
+ | --- | --- |
19
+ | profile | Required validated profile and trusted workspace binding. |
20
+ | artifact_kind | Required exact supported kind for individual validation; explicit workspace selection uses the workspace validator. |
21
+ | selection | Required exact artifact paths/IDs or explicit whole configured workspace. |
22
+ | mode | Required explicit structural, discovery-complete, parity-complete or planning mode, as applicable. |
23
+
24
+ ## Routing
25
+
26
+ Logical role: `migration-coverage-reviewer`.
27
+ The root owns preparation and launch; this skill never auto-launches a logical
28
+ role through frontmatter. The existing resolver selects the exact deployment,
29
+ model, effort and profile hash under the existing C1-C4 ceiling and execution
30
+ context. Do not choose a model, self-launch, create another scheduler or promote
31
+ an ordinary discovery action into an issue. The production-write count is zero.
32
+
33
+ ## Exact output boundary
34
+
35
+ These rows are maximum workflow caps, not instructions to create every kind.
36
+ Only the prepared required outputs may be created or replaced.
37
+
38
+ | Artifact kind | Profile key | Constraint |
39
+ | --- | --- | --- |
40
+ | validation-report | reports | Exact requested selection and mode |
41
+ | coverage-report | reports | Exact workspace validation pair when requested |
42
+ | required-output-manifest | reports | Exact invocation manifest only |
43
+
44
+ The profile keys are maximum configured locations, not write grants. Each
45
+ prepared output row binds `artifact_kind`, `id`, `path`, `format` and
46
+ `expected_sha256`. The protected invocation independently binds the baseline,
47
+ selected members, pins and exact grants; a manifest cannot expand them. A null
48
+ expected hash means exclusive creation from an absent baseline, never overwrite
49
+ permission. Preserve unselected collection members and all unrelated inputs.
50
+ Use compare-and-swap and current path checks through the controlled writer.
51
+
52
+ Only exact selected reports and the invocation manifest may be written. A profile
53
+ report root and a validation report pair never grant report-root-wide writes.
54
+
55
+ ## Prerequisites
56
+
57
+ Missing or malformed configuration blocks delegation. Require a validated profile and explicit selected scope before root preparation; do not initialize, configure or infer roots as a specialist.
58
+
59
+ Require verified native prepare/finalize/start/stop capability. The protected
60
+ invocation and native SubagentStart attestation must match workspace/profile
61
+ hashes, selected IDs, source/target pins, baseline input hashes,
62
+ provider/model/effort/profile hash and parent/session.
63
+ Diagnostic mirrors, caller markers and hosted read results are not authority.
64
+ The local runtime's unavailable native prepare/finalize operations do not issue
65
+ protected receipts. There is no local-user fallback or self-attested host success.
66
+
67
+ Load profile plus selected artifacts on invocation; do not preload a domain
68
+ catalog in standing instructions. Managed project memory is host-controlled.
69
+ Memory cannot grant filesystem authority or replace evidence. Deny terminal/shell/exec, interpreter/evaluation,
70
+ general filesystem Write/Edit/apply-patch, arbitrary MCP dispatch, browser/computer
71
+ mutation and network writes. Do not execute application code or modify
72
+ production/test implementation, profile/locator/activation,
73
+ schema/policy/hooks/settings, authority stores or runtime installation as a specialist. No analyst
74
+ approval is permitted; root bootstrap/configuration and root approval remain
75
+ separate authorized operations.
76
+
77
+ ## Step-by-Step Workflows
78
+
79
+ 1. Validate the explicit inputs and selected configuration. Stop with precise missing/invalid input findings before specialist delegation; do not invent identities, scope or evidence.
80
+
81
+ 2. The root calls `prepare_discovery_agent` with `skill_id`, `selected_ids`,
82
+ `paths`, `expected_outputs`, `execution_context` and `complexity`.
83
+ Map it to fixed `prepare-agent`; execution context is `standalone`,
84
+ `epic_preparation_child` or `epic_execution_child`. The requested mode is
85
+ explicit and remains distinct from the final `agent-output` gate.
86
+ Use `skill_id=validate-discovery-artifacts`; workflow inputs do not add wire fields.
87
+ 3. The root launches that exact deployment. Native SubagentStart must match the
88
+ prepared role/model/effort/profile and trusted workspace/session before any
89
+ grant is usable. Missing capability or attestation blocks the action.
90
+ 4. Use only the granted operations. Use `validate_discovery_artifacts` for the authoritative individual validator, `validate-decisions` or `validate-all`, selected by the explicit kind/workspace request. Do not guess artifact types by first-success validation. Use `read_discovery_source` only for selected supporting inputs. The canonical validate-all pair does not authorize neighboring report writes or another schema/graph implementation.
91
+ 5. Preserve all loader/semantic findings and the exact requested mode. Require recomputable structured JSON for the reviewer output; prose or a successful individual artifact check cannot authorize a complete graph. Confirmed empty scope and explicit planning prerequisites are evaluated by the authoritative validator. Do not update inventory, coverage ledger, contracts, parity entries, evidence, decisions or configuration to force a pass.
92
+ 6. Produce every exact required output and the stored `required-output-manifest`,
93
+ preserving its output array order for the digest. Validate claims, references,
94
+ pins and selected-ID accounting. Purpose-built tools supply authorized proposal
95
+ inputs for `input_path`/`evidence_path`; never invent a generic Write staging
96
+ step. Server-side role checks, exact one-use authorization and prospective
97
+ validation remain mandatory. Bounded source reads preserve content identity
98
+ and line ranges; truncation requires a narrower selection, not a completeness
99
+ claim or filesystem fallback.
100
+ 7. Call `finalize_discovery_agent` as the specialist, mapped to `finalize-agent`
101
+ with `mode=agent-output`, non-null `invocation_ref` and no operation inputs.
102
+ It validates the protected invocation's outputs, not final-message paths.
103
+ Native SubagentStop then verifies current output authority.
104
+ Missing final text cannot skip native stop validation.
105
+ 8. After native stop, the root records the explicit result, content-addressed artifact references,
106
+ selected-ID accounting and all findings. A successful tool call or generated
107
+ path alone is not evidence of completed discovery.
108
+
109
+ ## Stop and result
110
+
111
+ A valid FAIL report may finish as `output-valid/result-fail`; it never authorizes discovery, parity or planning completion. Only a current protected passing receipt for the exact requested completion/planning mode can satisfy that gate.
112
+
113
+ Structural success is not discovery, parity or planning completion.
114
+ Missing prepare/finalize/start/stop capability, missing outputs, invalid claims,
115
+ unresolved required work, wrong role/model/start context or a stale/missing
116
+ receipt blocks successful completion. Return explicit
117
+ PASS, FAIL or BLOCKED, distinguishing valid incremental outputs from a passing
118
+ completion gate. Missing native enforcement remains BLOCKED even when ordinary
119
+ local-user operations can run; do not substitute CLI success for native authority.
120
+
121
+ ## References
122
+
123
+ - [Canonical migration-coverage-reviewer contract](../../../.claude/agents/migration-coverage-reviewer.md)
124
+ - Installed v2 `service-request` and `required-output-manifest` schema contracts;
125
+ consume them through the authoritative runtime, with no checkout-schema fallback.
126
+ - The selected profile and pinned local artifacts supplied for this invocation;
127
+ references do not preload catalogs or grant access to unselected paths.
@@ -5,8 +5,7 @@
5
5
  "config/blast-radius.json",
6
6
  "config/orchestration-routing.json",
7
7
  "package-lock.json",
8
- "poetry.lock",
9
- "quality-tiers.yml"
8
+ "poetry.lock"
10
9
  ],
11
10
  "shared_surface_globs": [],
12
11
  "mandate_reads": [
@@ -32,13 +31,15 @@
32
31
  ],
33
32
  "conflict_tolerance": {
34
33
  "tolerance_percent": 100,
35
- "weights": { "same_file": 8, "possible_overlap": 2, "append_only": 1, "module": 2 },
34
+ "weights": { "same_file": 8, "possible_overlap": 2, "append_only": 1, "module": 2, "contract": 8 },
36
35
  "band_durations": { "C1": 1, "C2": 2, "C3": 4, "C4": 8 },
37
36
  "default_band": "C1",
38
37
  "append_only_paths": [
39
38
  "**/CHANGELOG.md",
40
- "extensions/drm-copilot/resources/claude-customizations/pack-manifests/core.json"
41
- ]
39
+ "extensions/drm-copilot/resources/claude-customizations/pack-manifests/core.json",
40
+ "quality-tiers.yml"
41
+ ],
42
+ "combination_threshold_percent": 400
42
43
  },
43
44
  "write_intent_extraction": true,
44
45
  "path_roots": [],
@@ -269,6 +269,62 @@
269
269
  ],
270
270
  "receipt_key": "codex_topology_receipts"
271
271
  },
272
+ "discovery_operations": {
273
+ "inventory-legacy-system": {
274
+ "logical_agent": "legacy-parity-analyst",
275
+ "output_contract_version": "2.0.0",
276
+ "permissible_artifact_kinds": ["coverage-ledger", "evidence-reference", "inventory-snapshot", "required-output-manifest", "unspecified-behavior", "unspecified-behavior-collection"],
277
+ "gate_mode": "agent-output"
278
+ },
279
+ "extract-feature-contract": {
280
+ "logical_agent": "legacy-parity-analyst",
281
+ "output_contract_version": "2.0.0",
282
+ "permissible_artifact_kinds": ["coverage-ledger", "evidence-reference", "feature-contract", "required-output-manifest", "unspecified-behavior", "unspecified-behavior-collection"],
283
+ "gate_mode": "agent-output"
284
+ },
285
+ "characterize-runtime-behavior": {
286
+ "logical_agent": "runtime-characterization-analyst",
287
+ "output_contract_version": "2.0.0",
288
+ "permissible_artifact_kinds": ["evidence-payload", "evidence-reference", "required-output-manifest", "runtime-characterization-scenario", "unspecified-behavior", "unspecified-behavior-collection"],
289
+ "gate_mode": "agent-output"
290
+ },
291
+ "reconcile-parity-matrix": {
292
+ "logical_agent": "requirements-reconciler",
293
+ "output_contract_version": "2.0.0",
294
+ "permissible_artifact_kinds": ["parity-matrix", "required-output-manifest", "unspecified-behavior", "unspecified-behavior-collection"],
295
+ "gate_mode": "agent-output"
296
+ },
297
+ "review-discovery-coverage": {
298
+ "logical_agent": "migration-coverage-reviewer",
299
+ "output_contract_version": "2.0.0",
300
+ "permissible_artifact_kinds": ["completion-report", "coverage-report", "parity-report", "required-output-manifest", "validation-report"],
301
+ "gate_mode": "agent-output"
302
+ },
303
+ "adjudicate-unspecified-behavior": {
304
+ "logical_agent": "requirements-reconciler",
305
+ "output_contract_version": "2.0.0",
306
+ "permissible_artifact_kinds": ["acceptance-specification", "acceptance-view", "product-decision", "product-decision-collection", "required-output-manifest", "unspecified-behavior", "unspecified-behavior-collection"],
307
+ "gate_mode": "agent-output"
308
+ },
309
+ "generate-acceptance-scenarios": {
310
+ "logical_agent": "requirements-reconciler",
311
+ "output_contract_version": "2.0.0",
312
+ "permissible_artifact_kinds": ["acceptance-specification", "acceptance-view", "required-output-manifest"],
313
+ "gate_mode": "agent-output"
314
+ },
315
+ "initialize-discovery-workspace": {
316
+ "logical_agent": "migration-coverage-reviewer",
317
+ "output_contract_version": "2.0.0",
318
+ "permissible_artifact_kinds": ["coverage-report", "required-output-manifest", "validation-report"],
319
+ "gate_mode": "agent-output"
320
+ },
321
+ "validate-discovery-artifacts": {
322
+ "logical_agent": "migration-coverage-reviewer",
323
+ "output_contract_version": "2.0.0",
324
+ "permissible_artifact_kinds": ["coverage-report", "required-output-manifest", "validation-report"],
325
+ "gate_mode": "agent-output"
326
+ }
327
+ },
272
328
  "codex_model_policy": {
273
329
  "description": "Codex-native deployment profiles. Complexity selects model and reasoning independently from the file-count route; exact model slugs are mandatory and unavailable profiles do not fall back silently.",
274
330
  "profile_order": [
@@ -350,7 +406,11 @@
350
406
  "python-typed-engineer",
351
407
  "powershell-typed-engineer",
352
408
  "csharp-typed-engineer",
353
- "typescript-engineer"
409
+ "typescript-engineer",
410
+ "legacy-parity-analyst",
411
+ "runtime-characterization-analyst",
412
+ "requirements-reconciler",
413
+ "migration-coverage-reviewer"
354
414
  ]
355
415
  }
356
416
  }
@@ -6,6 +6,7 @@
6
6
  ".claude/agents/atomic-executor.md",
7
7
  ".claude/agents/atomic-planner.md",
8
8
  ".claude/agents/commit-message.md",
9
+ ".claude/agents/discovery-capability-sentinel.md",
9
10
  ".claude/agents/epic-orchestrator.md",
10
11
  ".claude/agents/epic-planner.md",
11
12
  ".claude/agents/epic-review.md",
@@ -30,6 +31,8 @@
30
31
  ".claude/hooks/enforce-completion-consistency.ps1",
31
32
  ".claude/hooks/enforce-completion-helpers.ps1",
32
33
  ".claude/hooks/enforce-discovery-artifact-gate.ps1",
34
+ ".claude/hooks/enforce-discovery-planning-gate.ps1",
35
+ ".claude/hooks/discovery-capability-probe.ps1",
33
36
  ".claude/hooks/enforce-epic-invocation-origin.ps1",
34
37
  ".claude/hooks/enforce-epic-merge-gate.ps1",
35
38
  ".claude/hooks/enforce-epic-merge-gate-authorization.ps1",
@@ -78,6 +81,7 @@
78
81
  ".claude/hooks/hook-docs-only-diff.ps1",
79
82
  ".claude/hooks/persist-session-id.ps1",
80
83
  ".claude/hooks/premortem-section.ps1",
84
+ ".claude/hooks/record-discovery-agent-start.ps1",
81
85
  ".claude/hooks/subagentstop-envelope.ps1",
82
86
  ".claude/hooks/validate-bash.ps1",
83
87
  ".claude/hooks/validate-discovery-artifact-gate.ps1",
@@ -85,6 +89,7 @@
85
89
  ".claude/hooks/validate-feature-review-coverage-metrics.ps1",
86
90
  ".claude/hooks/validate-feature-review-coverage-rules.ps1",
87
91
  ".claude/hooks/validate-feature-review-coverage.ps1",
92
+ ".claude/hooks/validate-orchestrator-output-rejection.ps1",
88
93
  ".claude/hooks/validate-orchestrator-output-resolution.ps1",
89
94
  ".claude/hooks/validate-orchestrator-output-routing.ps1",
90
95
  ".claude/hooks/validate-orchestrator-output-feature-folder.ps1",
@@ -105,7 +110,9 @@
105
110
  ".claude/rules/self-explanatory-code-commenting.md",
106
111
  ".claude/rules/tonality.md",
107
112
  ".claude/skills/acceptance-criteria-tracking/SKILL.md",
113
+ ".claude/skills/adjudicate-unspecified-behavior/SKILL.md",
108
114
  ".claude/skills/atomic-plan-contract/SKILL.md",
115
+ ".claude/skills/characterize-runtime-behavior/SKILL.md",
109
116
  ".claude/skills/cleanup-merged-worktrees/SKILL.md",
110
117
  ".claude/skills/cleanup-merged-worktrees/scripts/cleanup-worktrees.sh",
111
118
  ".claude/skills/cleanup-merged-worktrees/scripts/cleanup_worktrees_actions_lib.sh",
@@ -131,12 +138,16 @@
131
138
  ".claude/skills/evidence-and-timestamp-conventions/SKILL.md",
132
139
  ".claude/skills/execute-hard-lock/SKILL.md",
133
140
  ".claude/skills/execution-environment/SKILL.md",
141
+ ".claude/skills/extract-feature-contract/SKILL.md",
134
142
  ".claude/skills/feature-promotion-lifecycle/SKILL.md",
135
143
  ".claude/skills/feature-review-workflow/SKILL.md",
136
144
  ".claude/skills/fill-feature-docs/SKILL.md",
145
+ ".claude/skills/generate-acceptance-scenarios/SKILL.md",
137
146
  ".claude/skills/human-exception-runbook/example.runbook.md",
138
147
  ".claude/skills/human-exception-runbook/SKILL.md",
139
148
  ".claude/skills/identify-session-id/SKILL.md",
149
+ ".claude/skills/initialize-discovery-workspace/SKILL.md",
150
+ ".claude/skills/inventory-legacy-system/SKILL.md",
140
151
  ".claude/skills/make-skill-template/SKILL.md",
141
152
  ".claude/skills/orchestrate/SKILL.md",
142
153
  ".claude/skills/parallel-add/SKILL.md",
@@ -151,8 +162,10 @@
151
162
  ".claude/skills/pr-base-branch-merge-base/SKILL.md",
152
163
  ".claude/skills/pr-context-artifacts/SKILL.md",
153
164
  ".claude/skills/quota-throttling/SKILL.md",
165
+ ".claude/skills/reconcile-parity-matrix/SKILL.md",
154
166
  ".claude/skills/remediation-handoff-atomic-planner/SKILL.md",
155
167
  ".claude/skills/research-issue/SKILL.md",
168
+ ".claude/skills/review-discovery-coverage/SKILL.md",
156
169
  ".claude/skills/review-epic/SKILL.md",
157
170
  ".claude/skills/review-feature/SKILL.md",
158
171
  ".claude/skills/review-staged/SKILL.md",
@@ -180,8 +193,23 @@
180
193
  ".claude/lib/orchestrator-state/OrchestratorStateUnconditional.psm1",
181
194
  ".claude/lib/orchestrator-state/OrchestratorStateEpicWaveBarrier.psm1",
182
195
  ".claude/lib/discovery-validation/DiscoveryValidation.psm1",
196
+ ".claude/lib/discovery-validation/DiscoveryAuthority.psd1",
197
+ ".claude/lib/discovery-validation/DiscoveryAuthority.psm1",
198
+ ".claude/lib/discovery-validation/DiscoveryAuthorization.psm1",
199
+ ".claude/lib/discovery-validation/DiscoveryEncoding.psm1",
200
+ ".claude/lib/discovery-validation/DiscoveryManifest.psm1",
201
+ ".claude/lib/discovery-validation/DiscoveryPayload.psm1",
202
+ ".claude/lib/discovery-validation/DiscoveryToolRouting.psm1",
203
+ ".claude/lib/discovery-validation/DiscoveryRootGrant.psm1",
204
+ ".claude/lib/discovery-validation/DiscoveryObservation.psm1",
205
+ ".claude/lib/discovery-validation/DiscoveryStart.psm1",
206
+ ".claude/lib/discovery-validation/DiscoveryStartRecord.psm1",
207
+ ".claude/lib/discovery-validation/DiscoveryStop.psm1",
208
+ ".claude/lib/discovery-validation/DiscoveryPlanning.psm1",
209
+ ".claude/lib/discovery-validation/DiscoveryCapability.psm1",
183
210
  ".claude/lib/codex-routing/CodexDeployment.psm1",
184
211
  ".claude/lib/codex-routing/CodexTopology.psm1",
212
+ ".claude/lib/codex-routing/CodexDiscoveryRouting.psm1",
185
213
  ".claude/lib/blast-radius/BlastRadiusExtraction.psm1",
186
214
  ".claude/lib/blast-radius/BlastRadiusGlob.psm1",
187
215
  ".claude/lib/blast-radius/BlastRadiusConfig.psm1",
@@ -193,6 +221,8 @@
193
221
  ".claude/lib/blast-radius/BlastRadiusConflict.psm1",
194
222
  ".claude/lib/blast-radius/BlastRadiusScheduling.psm1",
195
223
  ".claude/lib/blast-radius/BlastRadiusWriteIntent.psm1",
224
+ ".claude/lib/blast-radius/BlastRadiusAggregate.psm1",
225
+ ".claude/lib/blast-radius/BlastRadiusCombination.psm1",
196
226
  ".claude/lib/project-file-merge/ProjectFileMergeGrammar.psm1",
197
227
  ".claude/lib/project-file-merge/ProjectFileMerge.psm1",
198
228
  ".claude/lib/project-file-merge/Resolve-MergeableConflict.ps1",
@@ -236,6 +266,7 @@
236
266
  ".claude/lib/worktree-resolution/EpicScopeReadiness.psm1",
237
267
  ".claude/lib/worktree-resolution/WorktreeRunRecordPath.psm1",
238
268
  ".claude/lib/worktree-resolution/WorktreeRunResolution.psm1",
269
+ ".claude/lib/worktree-resolution/HookTargetWorktree.psm1",
239
270
  ".claude/skills/mermaid-diagram/references/flowchart.md",
240
271
  ".claude/skills/mermaid-diagram/references/sequence.md",
241
272
  ".claude/skills/mermaid-diagram/references/class.md",
@@ -244,6 +275,7 @@
244
275
  ".claude/skills/mermaid-diagram/references/c4.md",
245
276
  ".claude/skills/mermaid-diagram/references/gantt.md",
246
277
  ".claude/skills/mermaid-diagram/references/pie.md",
247
- ".claude/skills/mermaid-diagram/references/other-types.md"
278
+ ".claude/skills/mermaid-diagram/references/other-types.md",
279
+ ".claude/skills/validate-discovery-artifacts/SKILL.md"
248
280
  ]
249
281
  }