@geraldmaron/construct 1.4.2 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (519) hide show
  1. package/.env.example +36 -0
  2. package/README.md +41 -7
  3. package/bin/construct +1027 -64
  4. package/examples/distribution/sources/deck-one-pager.md +1 -1
  5. package/lib/acp/server.mjs +21 -7
  6. package/lib/adapters-sync.mjs +2 -1
  7. package/lib/audit-trail.mjs +185 -2
  8. package/lib/beads/auto-close.mjs +2 -1
  9. package/lib/beads/drift.mjs +2 -1
  10. package/lib/bridges/copilot-proxy.mjs +20 -5
  11. package/lib/certification/skill-inventory.mjs +10 -1
  12. package/lib/cli/approvals.mjs +147 -0
  13. package/lib/cli-commands.mjs +105 -14
  14. package/lib/comment-lint.mjs +127 -8
  15. package/lib/config/schema.mjs +6 -29
  16. package/lib/config/source-target-registry.mjs +70 -0
  17. package/lib/config/source-targets.mjs +179 -205
  18. package/lib/contracts/coverage.mjs +77 -0
  19. package/lib/contracts/validate.mjs +102 -13
  20. package/lib/contracts/violation-log.mjs +50 -4
  21. package/lib/db/migrate.mjs +69 -0
  22. package/lib/db/migrations/001_orchestration_runs.sql +9 -0
  23. package/lib/db/migrations/002_queue_provider.sql +50 -0
  24. package/lib/db/migrations/003_worker_registry.sql +17 -0
  25. package/lib/db/migrations/004_trace_events.sql +16 -0
  26. package/lib/db/migrations/005_shared_memory.sql +15 -0
  27. package/lib/db/migrations/006_orchestration_runs_tenant.sql +5 -0
  28. package/lib/decisions/enforced-baseline.json +0 -2
  29. package/lib/decisions/registry.mjs +3 -2
  30. package/lib/deployment/parity-contract.mjs +1 -1
  31. package/lib/deployment-mode.mjs +78 -2
  32. package/lib/diagram-export.mjs +10 -1
  33. package/lib/distill.mjs +5 -2
  34. package/lib/docs-verify.mjs +2 -1
  35. package/lib/doctor/cli.mjs +1 -0
  36. package/lib/doctor/command-on-path.mjs +24 -0
  37. package/lib/doctor/diagnosis.mjs +89 -0
  38. package/lib/doctor/embedding-health.mjs +50 -0
  39. package/lib/doctor/engine-health.mjs +93 -0
  40. package/lib/doctor/graph-validate.mjs +47 -0
  41. package/lib/doctor/index.mjs +18 -4
  42. package/lib/doctor/sidecar-providers.mjs +56 -0
  43. package/lib/doctor/watchers/consistency.mjs +93 -1
  44. package/lib/doctor/watchers/cx-budget.mjs +1 -1
  45. package/lib/doctor/watchers/graph-staleness.mjs +1 -1
  46. package/lib/doctor/watchers/mcp-protocol.mjs +17 -0
  47. package/lib/doctor/watchers/oracle-liveness.mjs +92 -0
  48. package/lib/doctor/watchers/orchestration-runs.mjs +108 -0
  49. package/lib/doctor/watchers/provider-breaker.mjs +78 -0
  50. package/lib/document-export.mjs +52 -27
  51. package/lib/document-extract/docling-client.mjs +9 -5
  52. package/lib/document-extract/docling-sidecar.py +30 -0
  53. package/lib/document-extract.mjs +1 -1
  54. package/lib/document-ingest.mjs +9 -0
  55. package/lib/embed/approval-queue.mjs +184 -88
  56. package/lib/embed/authority-guard.mjs +65 -2
  57. package/lib/embed/capability-jobs.mjs +365 -0
  58. package/lib/embed/capability-lifecycle.mjs +219 -0
  59. package/lib/embed/capability-loader.mjs +303 -0
  60. package/lib/embed/capability-runtime.mjs +58 -0
  61. package/lib/embed/cli.mjs +185 -8
  62. package/lib/embed/config.mjs +4 -0
  63. package/lib/embed/daemon.mjs +125 -6
  64. package/lib/embed/demand-fetch.mjs +190 -54
  65. package/lib/embed/inbox.mjs +12 -10
  66. package/lib/embed/presets/ops-triage.mjs +236 -0
  67. package/lib/embed/presets/pm-feedback.mjs +341 -0
  68. package/lib/embed/presets/tpm.mjs +401 -0
  69. package/lib/embed/providers/jira.mjs +72 -1
  70. package/lib/embed/providers/registry.mjs +140 -33
  71. package/lib/embedded-contract/capability.mjs +4 -0
  72. package/lib/embedded-contract/execution.mjs +1 -1
  73. package/lib/embedded-contract/model-resolve.mjs +53 -3
  74. package/lib/embedded-contract/workflow-defs.mjs +48 -73
  75. package/lib/embedded-contract/workflow-invoke.mjs +144 -4
  76. package/lib/embedded-contract/workflows/architecture-review.manifest.json +15 -0
  77. package/lib/embedded-contract/workflows/data-structure.manifest.json +14 -0
  78. package/lib/embedded-contract/workflows/evidence-ingest.manifest.json +14 -0
  79. package/lib/embedded-contract/workflows/memo-draft.manifest.json +14 -0
  80. package/lib/embedded-contract/workflows/operations-triage.manifest.json +18 -0
  81. package/lib/embedded-contract/workflows/operations.manifest.json +18 -0
  82. package/lib/embedded-contract/workflows/pm-feedback.manifest.json +18 -0
  83. package/lib/embedded-contract/workflows/prd-draft.manifest.json +15 -0
  84. package/lib/embedded-contract/workflows/proposal-review.manifest.json +15 -0
  85. package/lib/embedded-contract/workflows/research-synthesis.manifest.json +14 -0
  86. package/lib/embedded-contract/workflows/risk-review.manifest.json +15 -0
  87. package/lib/embedded-contract/workflows/structure-notes.manifest.json +14 -0
  88. package/lib/embedded-contract/workflows/transcript-process.manifest.json +14 -0
  89. package/lib/embedded-contract/workflows/triage.manifest.json +14 -0
  90. package/lib/env-config.mjs +50 -9
  91. package/lib/extensions/index.mjs +27 -0
  92. package/lib/extensions/loader.mjs +120 -0
  93. package/lib/extensions/manifest-schema.mjs +141 -0
  94. package/lib/extensions/manifests/anthropic.manifest.json +12 -0
  95. package/lib/extensions/manifests/atlassian-confluence.manifest.json +12 -0
  96. package/lib/extensions/manifests/atlassian-jira.manifest.json +53 -0
  97. package/lib/extensions/manifests/directory.manifest.json +12 -0
  98. package/lib/extensions/manifests/docling.manifest.json +37 -0
  99. package/lib/extensions/manifests/echo.manifest.json +8 -0
  100. package/lib/extensions/manifests/feedback.manifest.json +12 -0
  101. package/lib/extensions/manifests/github-copilot.manifest.json +12 -0
  102. package/lib/extensions/manifests/github.manifest.json +52 -0
  103. package/lib/extensions/manifests/linear.manifest.json +50 -0
  104. package/lib/extensions/manifests/local.manifest.json +12 -0
  105. package/lib/extensions/manifests/ollama.manifest.json +12 -0
  106. package/lib/extensions/manifests/openai.manifest.json +12 -0
  107. package/lib/extensions/manifests/openrouter-anthropic.manifest.json +12 -0
  108. package/lib/extensions/manifests/openrouter-deepseek.manifest.json +12 -0
  109. package/lib/extensions/manifests/openrouter-google.manifest.json +12 -0
  110. package/lib/extensions/manifests/openrouter-llama.manifest.json +12 -0
  111. package/lib/extensions/manifests/openrouter-qwen.manifest.json +12 -0
  112. package/lib/extensions/manifests/openrouter.manifest.json +12 -0
  113. package/lib/extensions/manifests/postgres.manifest.json +12 -0
  114. package/lib/extensions/manifests/salesforce.manifest.json +12 -0
  115. package/lib/extensions/manifests/slack.manifest.json +58 -0
  116. package/lib/extensions/manifests/whisper.manifest.json +36 -0
  117. package/lib/extensions/validate.mjs +175 -0
  118. package/lib/features.mjs +13 -9
  119. package/lib/flows/checkpoint.mjs +184 -0
  120. package/lib/flows/constants.mjs +27 -0
  121. package/lib/flows/define.mjs +146 -0
  122. package/lib/flows/engine.mjs +249 -0
  123. package/lib/flows/errors.mjs +19 -0
  124. package/lib/flows/index.mjs +27 -0
  125. package/lib/flows/joins.mjs +18 -0
  126. package/lib/flows/schema.mjs +90 -0
  127. package/lib/flows/state.mjs +31 -0
  128. package/lib/frameworks/loader.mjs +99 -0
  129. package/lib/frameworks/schema.mjs +157 -0
  130. package/lib/graph/build-from-corpus.mjs +67 -0
  131. package/lib/graph/build-from-embed.mjs +82 -0
  132. package/lib/graph/build-from-registry.mjs +164 -3
  133. package/lib/graph/cli.mjs +456 -12
  134. package/lib/graph/gap-queries.mjs +156 -0
  135. package/lib/graph/gaps.mjs +41 -0
  136. package/lib/graph/impacted.mjs +129 -0
  137. package/lib/graph/runtime-evidence.mjs +177 -0
  138. package/lib/graph/security-coverage.mjs +113 -0
  139. package/lib/graph/staleness.mjs +241 -10
  140. package/lib/graph/store.mjs +24 -7
  141. package/lib/graph/validate.mjs +161 -0
  142. package/lib/headhunt.mjs +9 -8
  143. package/lib/health-check.mjs +15 -7
  144. package/lib/hook-health.mjs +1 -1
  145. package/lib/hooks/agent-tracker.mjs +10 -4
  146. package/lib/hooks/edit-guard.mjs +3 -3
  147. package/lib/hooks/graph-impact-advisory.mjs +2 -2
  148. package/lib/hooks/guard-bash.mjs +41 -15
  149. package/lib/hooks/mcp-health-check.mjs +11 -4
  150. package/lib/hooks/model-fallback.mjs +50 -6
  151. package/lib/hooks/orchestration-dispatch-guard.mjs +14 -3
  152. package/lib/hooks/pre-compact.mjs +181 -173
  153. package/lib/hooks/rule-verifier.mjs +2 -1
  154. package/lib/hooks/session-reflect.mjs +2 -1
  155. package/lib/hooks/session-start.mjs +3 -3
  156. package/lib/host-capabilities.mjs +13 -2
  157. package/lib/host-disposition.mjs +19 -7
  158. package/lib/identity.mjs +92 -0
  159. package/lib/ingest/degraded-extract.mjs +96 -0
  160. package/lib/ingest/docling-remote.mjs +2 -1
  161. package/lib/ingest/provider-extract.mjs +7 -19
  162. package/lib/ingest/sidecar-providers.mjs +196 -0
  163. package/lib/ingest-tooling.mjs +11 -5
  164. package/lib/init-unified.mjs +55 -38
  165. package/lib/init-update.mjs +2 -1
  166. package/lib/install/legacy-global-cleanup.mjs +25 -0
  167. package/lib/intake/daemon.mjs +99 -8
  168. package/lib/intake/git-queue.mjs +110 -38
  169. package/lib/intake/queue-registry.mjs +50 -0
  170. package/lib/intake/queue.mjs +133 -17
  171. package/lib/intake/session-prelude.mjs +57 -8
  172. package/lib/integrations/intake-integrations.mjs +61 -111
  173. package/lib/intent-classifier.mjs +43 -5
  174. package/lib/libreoffice-export.mjs +8 -8
  175. package/lib/logging/rotate.mjs +5 -4
  176. package/lib/mcp/broker.mjs +332 -17
  177. package/lib/mcp/denied-store.mjs +95 -0
  178. package/lib/mcp/destructive-gate.mjs +30 -0
  179. package/lib/mcp/dispatch-envelope.mjs +199 -0
  180. package/lib/mcp/memory-bridge.mjs +2 -1
  181. package/lib/mcp/server.mjs +154 -1411
  182. package/lib/mcp/tool-definitions-memory.mjs +376 -0
  183. package/lib/mcp/tool-definitions-project.mjs +271 -0
  184. package/lib/mcp/tool-definitions-skills.mjs +311 -0
  185. package/lib/mcp/tool-definitions-workflow.mjs +398 -0
  186. package/lib/mcp/tool-definitions.mjs +25 -0
  187. package/lib/mcp/tool-registry.mjs +107 -0
  188. package/lib/mcp/tool-safety.mjs +1 -0
  189. package/lib/mcp/tools/orchestration-delegation-next.tool.mjs +68 -0
  190. package/lib/mcp/tools/orchestration-run.mjs +165 -25
  191. package/lib/mcp/tools/orchestration-task-result.tool.mjs +77 -0
  192. package/lib/mcp/tools/provider-write.mjs +187 -0
  193. package/lib/mcp/tools/scope.mjs +0 -3
  194. package/lib/mcp/tools/skills.mjs +1 -1
  195. package/lib/mcp/tools/storage.mjs +0 -8
  196. package/lib/mcp/transport/auth.mjs +238 -0
  197. package/lib/mcp/transport/http.mjs +136 -0
  198. package/lib/mcp/transport/mode.mjs +31 -0
  199. package/lib/mcp/transport/stdio.mjs +22 -0
  200. package/lib/mcp-catalog.json +4 -4
  201. package/lib/mcp-manager.mjs +34 -23
  202. package/lib/mcp-platform-config.mjs +31 -7
  203. package/lib/mode-capabilities.mjs +109 -0
  204. package/lib/model-router.mjs +42 -9
  205. package/lib/models/catalog.mjs +40 -1
  206. package/lib/net-guard.mjs +247 -0
  207. package/lib/observation-store.mjs +6 -2
  208. package/lib/ollama/provision-context.mjs +2 -1
  209. package/lib/opencode-config.mjs +22 -3
  210. package/lib/opencode-runtime-plugin.mjs +120 -2
  211. package/lib/oracle/actions.mjs +204 -10
  212. package/lib/oracle/cli.mjs +24 -3
  213. package/lib/oracle/dispatch.mjs +2 -1
  214. package/lib/oracle/execute.mjs +2 -2
  215. package/lib/oracle/gaps.mjs +3 -3
  216. package/lib/oracle/heartbeat.mjs +53 -0
  217. package/lib/oracle/read-model.mjs +69 -13
  218. package/lib/oracle/reconcile.mjs +3 -46
  219. package/lib/oracle/routing.mjs +37 -31
  220. package/lib/oracle/synthesize.mjs +1 -1
  221. package/lib/orchestration/classification.mjs +434 -0
  222. package/lib/orchestration/delegation-flow.mjs +132 -0
  223. package/lib/orchestration/flow-selection.mjs +418 -0
  224. package/lib/orchestration/gates.mjs +244 -0
  225. package/lib/orchestration/host-sampling.mjs +121 -0
  226. package/lib/orchestration/policy-constants.mjs +48 -0
  227. package/lib/orchestration/provider-outcome.mjs +197 -0
  228. package/lib/orchestration/readiness.mjs +114 -13
  229. package/lib/orchestration/run-store-postgres.mjs +32 -26
  230. package/lib/orchestration/run-store-sqlite.mjs +8 -14
  231. package/lib/orchestration/run-store.mjs +25 -12
  232. package/lib/orchestration/runtime.mjs +446 -39
  233. package/lib/orchestration/store.mjs +87 -12
  234. package/lib/orchestration/trace-store.mjs +125 -0
  235. package/lib/orchestration/web-capability.mjs +3 -2
  236. package/lib/orchestration/worker-runtime.mjs +162 -0
  237. package/lib/orchestration/worker.mjs +528 -89
  238. package/lib/orchestration-policy.mjs +67 -1111
  239. package/lib/packs/cli.mjs +144 -0
  240. package/lib/packs/core-pack.mjs +112 -0
  241. package/lib/packs/enablement.mjs +187 -0
  242. package/lib/packs/index.mjs +23 -0
  243. package/lib/packs/loader.mjs +176 -0
  244. package/lib/packs/manifest-schema.mjs +58 -0
  245. package/lib/packs/prompts.mjs +120 -0
  246. package/lib/packs/validate.mjs +208 -0
  247. package/lib/plugin-registry.mjs +4 -5
  248. package/lib/policy/audit-gate.mjs +42 -0
  249. package/lib/policy/consumption-budget.mjs +149 -0
  250. package/lib/policy/engine.mjs +81 -6
  251. package/lib/policy/role-authority.mjs +89 -0
  252. package/lib/prompt-composer.js +19 -3
  253. package/lib/providers/contract/adapters/confluence/governed-write.mjs +215 -0
  254. package/lib/providers/contract/adapters/confluence/manifest.json +17 -0
  255. package/lib/providers/contract/adapters/confluence/transport.mjs +135 -0
  256. package/lib/providers/contract/adapters/github/governed-write.mjs +121 -0
  257. package/lib/providers/contract/adapters/github/index.mjs +38 -3
  258. package/lib/providers/contract/adapters/jira/adf.mjs +151 -0
  259. package/lib/providers/contract/adapters/jira/createmeta.mjs +143 -0
  260. package/lib/providers/contract/adapters/jira/governed-write.mjs +182 -0
  261. package/lib/providers/contract/adapters/jira/manifest.json +17 -0
  262. package/lib/providers/contract/adapters/jira/transport.mjs +119 -0
  263. package/lib/providers/contract.mjs +207 -0
  264. package/lib/providers/credential-bootstrap.mjs +7 -4
  265. package/lib/providers/credential-sources.mjs +14 -2
  266. package/lib/providers/directory/index.mjs +261 -0
  267. package/lib/providers/feedback/index.mjs +392 -0
  268. package/lib/providers/filter-audit.mjs +68 -0
  269. package/lib/providers/filter-schema.mjs +54 -0
  270. package/lib/providers/github/index.mjs +31 -0
  271. package/lib/providers/instance-config.mjs +215 -0
  272. package/lib/providers/op-locate.mjs +96 -0
  273. package/lib/providers/op-run.mjs +64 -9
  274. package/lib/providers/registry.mjs +26 -3
  275. package/lib/providers/secret-audit-wiring.mjs +6 -0
  276. package/lib/providers/secret-resolver.mjs +240 -23
  277. package/lib/publish-template.mjs +6 -3
  278. package/lib/publish-tooling.mjs +4 -0
  279. package/lib/publish.mjs +32 -4
  280. package/lib/queue/pg-queue.mjs +395 -0
  281. package/lib/reflect.mjs +2 -1
  282. package/lib/registry/assemble.mjs +28 -2
  283. package/lib/registry/consolidation.mjs +8 -1
  284. package/lib/registry/custom-scaffold.mjs +200 -0
  285. package/lib/registry/custom-schema.mjs +137 -0
  286. package/lib/registry/loader.mjs +8 -3
  287. package/lib/registry/manifests/format-engines.default.json +15 -0
  288. package/lib/registry/manifests/surface-map.default.json +46 -0
  289. package/lib/registry/retired-paths.mjs +1 -0
  290. package/lib/registry/surface-map.mjs +100 -50
  291. package/lib/render-visual-check.mjs +240 -0
  292. package/lib/resources/budget.mjs +40 -17
  293. package/lib/roles/flavor-bindings.mjs +36 -14
  294. package/lib/roles/gateway.mjs +15 -8
  295. package/lib/roots.mjs +107 -0
  296. package/lib/runtime/uv-bootstrap.mjs +32 -6
  297. package/lib/runtime/whisper-bootstrap.mjs +11 -3
  298. package/lib/runtime-env.mjs +5 -2
  299. package/lib/scheduler/index.mjs +8 -20
  300. package/lib/schema-infer.mjs +31 -2
  301. package/lib/scopes/lifecycle.mjs +29 -25
  302. package/lib/scopes/loader.mjs +49 -12
  303. package/lib/scopes/teams.mjs +1 -1
  304. package/lib/security/ingest-boundary.mjs +80 -0
  305. package/lib/security/recall-wrapper.mjs +99 -0
  306. package/lib/security/trust.mjs +132 -0
  307. package/lib/service-manager.mjs +38 -19
  308. package/lib/setup.mjs +41 -23
  309. package/lib/skills-apply.mjs +4 -2
  310. package/lib/specialists/postconditions.mjs +2 -2
  311. package/lib/state-root.mjs +147 -0
  312. package/lib/status.mjs +597 -6
  313. package/lib/storage/admin.mjs +77 -5
  314. package/lib/storage/backend-registry.mjs +73 -0
  315. package/lib/storage/backend.mjs +63 -9
  316. package/lib/storage/embeddings-openai.mjs +12 -2
  317. package/lib/storage/hybrid-query.mjs +11 -3
  318. package/lib/storage/retrieval-hardening.mjs +384 -0
  319. package/lib/storage/shared-memory.mjs +158 -0
  320. package/lib/storage/vector-client.mjs +69 -2
  321. package/lib/team/health.mjs +72 -0
  322. package/lib/telemetry/backends/local.mjs +9 -3
  323. package/lib/telemetry/client.mjs +3 -7
  324. package/lib/template-registry.mjs +10 -12
  325. package/lib/tenant/context.mjs +82 -0
  326. package/lib/tenant/isolation.mjs +129 -0
  327. package/lib/test-corpus-inventory.mjs +103 -2
  328. package/lib/uninstall/uninstall.mjs +78 -12
  329. package/lib/validator.mjs +4 -6
  330. package/lib/worker/entrypoint.mjs +2 -1
  331. package/lib/worker/run.mjs +2 -2
  332. package/lib/worker/trace.mjs +5 -11
  333. package/lib/workflow-state.mjs +52 -8
  334. package/lib/workflows/liveness.mjs +203 -0
  335. package/lib/workflows/loader.mjs +177 -0
  336. package/lib/workflows/manifest-schema.mjs +71 -0
  337. package/lib/workflows/surface-parity.mjs +118 -0
  338. package/lib/workflows/validate.mjs +127 -0
  339. package/lib/writes/control-plane.mjs +140 -0
  340. package/lib/writes/envelope.mjs +206 -0
  341. package/lib/writes/sent-log.mjs +86 -0
  342. package/lib/writes/write-intent.mjs +109 -0
  343. package/package.json +16 -8
  344. package/personas/construct.md +12 -3
  345. package/registry/capabilities.json +143 -36
  346. package/rules/common/comments.md +1 -0
  347. package/schemas/project-config.schema.json +0 -12
  348. package/schemas/unified-registry.schema.json +2 -4
  349. package/scripts/sync-specialists.mjs +284 -81
  350. package/skills/docs/adr-workflow.md +1 -1
  351. package/skills/docs/codebase-research-workflow.md +3 -3
  352. package/skills/docs/prd-workflow.md +5 -6
  353. package/skills/docs/runbook-workflow.md +2 -2
  354. package/skills/docs/user-research-workflow.md +3 -3
  355. package/skills/operating/fleet-health-routing.md +77 -0
  356. package/skills/roles/ai-engineer.md +1 -1
  357. package/skills/roles/architect.md +0 -1
  358. package/skills/roles/business-strategist.md +1 -1
  359. package/skills/roles/data-analyst.telemetry.md +1 -1
  360. package/skills/roles/data-engineer.md +1 -1
  361. package/skills/roles/data-engineer.pipeline.md +1 -1
  362. package/skills/roles/data-engineer.vector-retrieval.md +1 -2
  363. package/skills/roles/data-engineer.warehouse.md +1 -1
  364. package/skills/roles/designer.accessibility.md +1 -1
  365. package/skills/roles/designer.md +0 -1
  366. package/skills/roles/devil-advocate.md +1 -1
  367. package/skills/roles/docs-keeper.md +1 -1
  368. package/skills/roles/evaluator.md +1 -1
  369. package/skills/roles/explorer.md +1 -1
  370. package/skills/roles/platform-engineer.md +1 -1
  371. package/skills/roles/qa.ai-eval.md +1 -2
  372. package/skills/roles/qa.api-contract.md +0 -1
  373. package/skills/roles/qa.data-pipeline.md +0 -1
  374. package/skills/roles/qa.md +0 -1
  375. package/skills/roles/qa.web-ui.md +0 -1
  376. package/skills/roles/release-manager.md +1 -1
  377. package/skills/roles/researcher.md +0 -2
  378. package/skills/roles/reviewer.md +0 -3
  379. package/skills/roles/security.ai.md +1 -1
  380. package/skills/roles/security.legal-compliance.md +1 -1
  381. package/skills/roles/security.md +0 -1
  382. package/skills/roles/security.privacy.md +0 -1
  383. package/skills/roles/security.supply-chain.md +1 -1
  384. package/skills/roles/sre.md +1 -1
  385. package/skills/roles/test-automation.md +1 -1
  386. package/skills/roles/trace-reviewer.md +1 -1
  387. package/skills/roles/ux-researcher.md +1 -1
  388. package/specialists/artifact-manifest.json +36 -36
  389. package/specialists/org/contracts/accessibility-to-qa.json +11 -3
  390. package/specialists/org/contracts/any-to-business-strategist.json +19 -7
  391. package/specialists/org/contracts/any-to-debugger.json +7 -1
  392. package/specialists/org/contracts/any-to-designer.json +7 -1
  393. package/specialists/org/contracts/any-to-docs-keeper.json +18 -4
  394. package/specialists/org/contracts/any-to-explorer.json +13 -4
  395. package/specialists/org/contracts/any-to-sre-incident.json +6 -2
  396. package/specialists/org/contracts/any-to-trace-reviewer.json +16 -4
  397. package/specialists/org/contracts/architect-to-ai-engineer.json +6 -2
  398. package/specialists/org/contracts/architect-to-data-engineer.json +17 -5
  399. package/specialists/org/contracts/architect-to-devil-advocate.json +11 -3
  400. package/specialists/org/contracts/architect-to-engineer.json +20 -4
  401. package/specialists/org/contracts/architect-to-evaluator.json +15 -5
  402. package/specialists/org/contracts/architect-to-legal-compliance.json +15 -5
  403. package/specialists/org/contracts/architect-to-operations.json +17 -4
  404. package/specialists/org/contracts/architect-to-platform-engineer.json +20 -4
  405. package/specialists/org/contracts/construct-to-orchestrator.json +10 -2
  406. package/specialists/org/contracts/data-analyst-to-product-manager.json +11 -2
  407. package/specialists/org/contracts/engineer-to-qa.json +20 -4
  408. package/specialists/org/contracts/engineer-to-reviewer.json +29 -5
  409. package/specialists/org/contracts/explorer-to-engineer.json +11 -3
  410. package/specialists/org/contracts/legal-compliance-to-release-manager.json +12 -4
  411. package/specialists/org/contracts/operations-to-user.json +53 -0
  412. package/specialists/org/contracts/operations-triage-output.json +53 -0
  413. package/specialists/org/contracts/pm-requirements-candidates.json +53 -0
  414. package/specialists/org/contracts/product-manager-to-architect.json +30 -10
  415. package/specialists/org/contracts/product-manager-to-data-analyst.json +13 -3
  416. package/specialists/org/contracts/product-manager-to-ux-researcher.json +15 -5
  417. package/specialists/org/contracts/qa-to-release-manager.json +11 -3
  418. package/specialists/org/contracts/researcher-to-architect.json +10 -2
  419. package/specialists/org/contracts/researcher-to-product-manager.json +16 -5
  420. package/specialists/org/contracts/reviewer-to-security.json +17 -3
  421. package/specialists/org/contracts/test-automation-to-engineer.json +11 -3
  422. package/specialists/org/contracts/trace-reviewer-to-sre.json +12 -4
  423. package/specialists/org/contracts/user-to-construct.json +11 -4
  424. package/specialists/org/frameworks/cx-architect-constraint-option-failure.md +66 -0
  425. package/specialists/org/frameworks/cx-engineer-feasibility-blast-radius.md +66 -0
  426. package/specialists/org/frameworks/cx-ops-dependency-sequencing.md +74 -0
  427. package/specialists/org/frameworks/cx-pm-value-tradeoff.md +66 -0
  428. package/specialists/org/frameworks/cx-qa-risk-based-coverage.md +69 -0
  429. package/specialists/org/groups/engineering-group.json +2 -6
  430. package/specialists/org/groups/governance-group.json +2 -3
  431. package/specialists/org/groups/operations-group.json +5 -8
  432. package/specialists/org/groups/product-group.json +4 -8
  433. package/specialists/org/groups/quality-group.json +3 -7
  434. package/specialists/org/groups/strategy-group.json +6 -9
  435. package/specialists/org/models.json.example +8 -0
  436. package/specialists/org/scopes/creative.json +6 -1
  437. package/specialists/org/scopes/operations.json +7 -1
  438. package/specialists/org/scopes/research.json +6 -1
  439. package/specialists/org/scopes/rnd.json +7 -1
  440. package/specialists/org/specialists/cx-architect.json +27 -8
  441. package/specialists/org/specialists/cx-designer.json +22 -8
  442. package/specialists/org/specialists/cx-engineer.json +71 -7
  443. package/specialists/org/specialists/cx-operations.json +89 -15
  444. package/specialists/org/specialists/cx-orchestrator.json +16 -4
  445. package/specialists/org/specialists/cx-product-manager.json +28 -9
  446. package/specialists/org/specialists/cx-qa.json +16 -6
  447. package/specialists/org/specialists/cx-researcher.json +40 -7
  448. package/specialists/org/specialists/cx-reviewer.json +61 -11
  449. package/specialists/org/specialists/cx-security.json +30 -10
  450. package/specialists/org/teams/design-team.json +3 -4
  451. package/specialists/org/teams/engineering-team.json +3 -10
  452. package/specialists/org/teams/governance-team.json +3 -5
  453. package/specialists/org/teams/operations-team.json +6 -12
  454. package/specialists/org/teams/product-management-team.json +2 -3
  455. package/specialists/org/teams/quality-team.json +4 -12
  456. package/specialists/org/teams/research-team.json +3 -3
  457. package/specialists/org/teams/strategy-team.json +7 -14
  458. package/specialists/prompts/cx-architect.md +20 -1
  459. package/specialists/prompts/cx-data-analyst.md +1 -1
  460. package/specialists/prompts/cx-designer.md +12 -4
  461. package/specialists/prompts/cx-engineer.md +15 -1
  462. package/specialists/prompts/cx-operations.md +14 -2
  463. package/specialists/prompts/cx-orchestrator.md +9 -5
  464. package/specialists/prompts/cx-product-manager.md +5 -1
  465. package/specialists/prompts/cx-qa.md +6 -2
  466. package/specialists/prompts/cx-researcher.md +25 -30
  467. package/specialists/prompts/cx-reviewer.md +19 -1
  468. package/specialists/prompts/cx-security.md +5 -1
  469. package/templates/distribution/construct-brand.typ +123 -59
  470. package/templates/distribution/construct-decision.typ +6 -3
  471. package/templates/distribution/construct-pdf.typ +11 -4
  472. package/templates/distribution/construct-prd.typ +6 -3
  473. package/templates/distribution/construct-research.typ +7 -4
  474. package/lib/providers/contract/adapters/git/index.mjs +0 -115
  475. package/lib/providers/contract/adapters/slack/index.mjs +0 -175
  476. package/specialists/org/contracts/business-strategist-to-product-manager.json +0 -39
  477. package/specialists/org/contracts/construct-to-rd-lead.json +0 -53
  478. package/specialists/org/contracts/data-engineer-to-platform-engineer.json +0 -36
  479. package/specialists/org/contracts/designer-to-accessibility.json +0 -36
  480. package/specialists/org/contracts/platform-engineer-to-engineer.json +0 -31
  481. package/specialists/org/contracts/qa-to-test-automation.json +0 -42
  482. package/specialists/org/contracts/rd-lead-to-architect.json +0 -38
  483. package/specialists/org/contracts/sre-to-release-manager.json +0 -36
  484. package/specialists/org/specialists/cx-accessibility.json +0 -69
  485. package/specialists/org/specialists/cx-ai-engineer.json +0 -75
  486. package/specialists/org/specialists/cx-business-strategist.json +0 -72
  487. package/specialists/org/specialists/cx-data-engineer.json +0 -71
  488. package/specialists/org/specialists/cx-devil-advocate.json +0 -71
  489. package/specialists/org/specialists/cx-docs-keeper.json +0 -82
  490. package/specialists/org/specialists/cx-evaluator.json +0 -69
  491. package/specialists/org/specialists/cx-explorer.json +0 -69
  492. package/specialists/org/specialists/cx-legal-compliance.json +0 -74
  493. package/specialists/org/specialists/cx-oracle.json +0 -46
  494. package/specialists/org/specialists/cx-platform-engineer.json +0 -80
  495. package/specialists/org/specialists/cx-rd-lead.json +0 -73
  496. package/specialists/org/specialists/cx-release-manager.json +0 -77
  497. package/specialists/org/specialists/cx-sre.json +0 -94
  498. package/specialists/org/specialists/cx-test-automation.json +0 -69
  499. package/specialists/org/specialists/cx-trace-reviewer.json +0 -69
  500. package/specialists/org/specialists/cx-ux-researcher.json +0 -68
  501. package/specialists/org/teams/accessibility-team.json +0 -39
  502. package/specialists/org/teams/ux-research-team.json +0 -39
  503. package/specialists/prompts/cx-accessibility.md +0 -55
  504. package/specialists/prompts/cx-ai-engineer.md +0 -124
  505. package/specialists/prompts/cx-business-strategist.md +0 -58
  506. package/specialists/prompts/cx-data-engineer.md +0 -55
  507. package/specialists/prompts/cx-devil-advocate.md +0 -59
  508. package/specialists/prompts/cx-docs-keeper.md +0 -164
  509. package/specialists/prompts/cx-evaluator.md +0 -49
  510. package/specialists/prompts/cx-explorer.md +0 -71
  511. package/specialists/prompts/cx-legal-compliance.md +0 -58
  512. package/specialists/prompts/cx-oracle.md +0 -98
  513. package/specialists/prompts/cx-platform-engineer.md +0 -97
  514. package/specialists/prompts/cx-rd-lead.md +0 -59
  515. package/specialists/prompts/cx-release-manager.md +0 -54
  516. package/specialists/prompts/cx-sre.md +0 -111
  517. package/specialists/prompts/cx-test-automation.md +0 -55
  518. package/specialists/prompts/cx-trace-reviewer.md +0 -101
  519. package/specialists/prompts/cx-ux-researcher.md +0 -53
@@ -27,9 +27,8 @@ Style constraint: do not produce a wall of bullets. Use paragraphs for reasoning
27
27
  ## Steps
28
28
 
29
29
  1. **cx-product-manager** produces the requirements package
30
- 2. **cx-ux-researcher** grounds requirements in user behavior (invoke in parallel for new features)
31
- 3. **cx-researcher** fills any evidence gaps
32
- 4. **Write to the appropriate `docs/` subdirectory** using the selected template. Each `get_template()` call resolves `.cx/templates/docs/` first, then the Construct default.
30
+ 2. **cx-researcher** grounds requirements in user behavior and fills evidence gaps (invoke in parallel for new features)
31
+ 3. **Write to the appropriate `docs/` subdirectory** using the selected template. Each `get_template()` call resolves `.cx/templates/docs/` first, then the Construct default.
33
32
 
34
33
  | Template | Output path |
35
34
  |---|---|
@@ -39,8 +38,8 @@ Style constraint: do not produce a wall of bullets. Use paragraphs for reasoning
39
38
  | `meta-prd` | `docs/meta-prd/{YYYY-MM-DD}-{slug}.md` |
40
39
  | `rfc` | `docs/decisions/rfc/{YYYY-MM-DD}-{slug}.md` |
41
40
  | `rfc-platform` | `docs/decisions/rfc/{YYYY-MM-DD}-{slug}.md` |
42
- 5. **cx-devil-advocate** runs the FMEA challenge pass (`roles/devil-advocate`) on the draft; highest-RPN failure modes need a mitigation or explicit accept-with-rationale before ship. Their specialist id must appear in `.cx/agent-log.jsonl` (manifest `releaseGate.requiredReviewers` for PRD-family types).
43
- 6. **cx-docs-keeper** updates `.cx/context.md` with a link to the PRD
41
+ 4. **cx-reviewer** runs the FMEA challenge pass (`roles/devil-advocate`) on the draft; highest-RPN failure modes need a mitigation or explicit accept-with-rationale before ship. Their specialist id must appear in `.cx/agent-log.jsonl` (manifest `releaseGate.requiredReviewers` for PRD-family types).
42
+ 5. **cx-operations** updates `.cx/context.md` with a link to the PRD
44
43
 
45
44
  Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
46
45
 
@@ -63,7 +62,7 @@ Once the PRD is approved, run `/plan feature {feature-slug}` to produce a struct
63
62
 
64
63
  ## Distribution (publish pipeline)
65
64
 
66
- **`construct workflow invoke` returns a plan only** — it does not draft the PRD. Run the listed specialists (cx-product-manager, cx-researcher, cx-ux-researcher as needed) to author the artifact from the template. **Do not hand-write a stub and publish.**
65
+ **`construct workflow invoke` returns a plan only** — it does not draft the PRD. Run the listed specialists (cx-product-manager, cx-researcher as needed) to author the artifact from the template. **Do not hand-write a stub and publish.**
67
66
 
68
67
  Before distribution:
69
68
 
@@ -11,10 +11,10 @@ Use when: creating operational procedures for services, alerts, or recurring ope
11
11
 
12
12
  ## Steps
13
13
 
14
- 1. **cx-sre** or **cx-release-manager** identifies the need
14
+ 1. **cx-operations** identifies the need
15
15
  2. **Write to `docs/operations/runbooks/{service}-{operation}.md`** using the template from `get_template("runbook")`: resolves `.cx/templates/docs/runbook.md` (override) then `templates/docs/runbook.md` (shipped)
16
16
  3. **Link from the relevant alert** or monitoring dashboard
17
- 4. **cx-docs-keeper** adds to `.cx/context.md` if it's a critical path runbook
17
+ 4. **cx-operations** adds to `.cx/context.md` if it's a critical path runbook
18
18
 
19
19
  ## File naming
20
20
  - `docs/operations/runbooks/telemetry-restart.md`
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: docs-user-research-workflow
3
- description: "Use when: cx-ux-researcher synthesizes user evidence — interviews, support tickets, session replay, surveys, or field notes."
3
+ description: "Use when: cx-researcher synthesizes user evidence — interviews, support tickets, session replay, surveys, or field notes."
4
4
  inputs: [user-research, interview-data]
5
5
  artifactType: evidence-brief
6
6
  toneDefault: pedagogical
@@ -9,7 +9,7 @@ verificationBar: "Observed behavior weighted over self-report; sample size state
9
9
  ---
10
10
  # User Research Workflow
11
11
 
12
- Use when: cx-ux-researcher gathers or synthesizes **user** evidence. Do not use for CVE lookups, API version facts, or repo structure — use `docs/research-workflow` (cx-researcher) or `docs/codebase-research-workflow` (cx-explorer) instead.
12
+ Use when: cx-researcher gathers or synthesizes **user** evidence. Do not use for CVE lookups, API version facts, or repo structure — use `docs/research-workflow` or `docs/codebase-research-workflow` (both also cx-researcher, under a different skill overlay) instead.
13
13
 
14
14
  Follow [rules/common/research.md](../../rules/common/research.md) and call `get_skill("roles/ux-researcher")` before drafting.
15
15
 
@@ -37,7 +37,7 @@ Follow [rules/common/research.md](../../rules/common/research.md) and call `get_
37
37
 
38
38
  - No invented customer names, quotes, or ticket ids.
39
39
  - Findings describe problems, not prescribed UI solutions.
40
- - cx-ux-researcher must **not** cite blog posts for API version or security claims.
40
+ - cx-researcher must **not** cite blog posts for API version or security claims.
41
41
  ## Release gate
42
42
 
43
43
  Run `construct artifact validate <path> --type=<type>` before marking the artifact approved.
@@ -0,0 +1,77 @@
1
+ ---
2
+ name: operating-fleet-health-routing
3
+ description: fleet-level gap routing and bounded-auto policy for cx-orchestrator's absorbed fleet-health synthesis duty (formerly cx-oracle). Use when handling an Oracle synthesis packet or any systemic-gap remediation routing.
4
+ inputs: [oracle-synthesis-packet]
5
+ artifactType: guidance
6
+ ---
7
+ # Fleet-health routing (absorbed from cx-oracle, construct-rf26.11)
8
+
9
+ Loaded on demand via `get_skill("operating/fleet-health-routing")`.
10
+
11
+ `cx-oracle` retired as a standalone specialist at construct-rf26.11 (the roster-consolidation pass): it had no footprint of its own in `skills/roles/` and its declared skills were already just `ai/orchestration-workflow` (the Orchestrator's own) plus a borrowed reference to what is now the Reviewer role's trace overlay. Its meta-controller function — synthesizing fleet-health gaps from the Oracle read model and routing remediation to the specialists who own it — is folded into `cx-orchestrator`. This skill is the verbatim reference for that duty; do not paraphrase the routing table or bounded-auto policy from memory.
12
+
13
+ ## Scope boundary
14
+
15
+ Diagnose fleet-level health and route work; do not implement fixes directly unless the gap is purely informational. Never commit, push, or merge as part of fleet-health routing.
16
+
17
+ ## Anti-fabrication contract
18
+
19
+ Every gap cited must trace to a signal in the Oracle read model or a durable artifact path the operator can re-verify. Do not invent violation counts, success rates, or parity summaries. When a signal is absent, write `unknown`.
20
+
21
+ ## Inputs
22
+
23
+ An Oracle synthesis packet:
24
+ - `verdict` — `healthy` | `attention` | `degraded`
25
+ - `gaps[]` — `{ id, severity, signal, detail, remediationRoute: { primary, secondary, gateType } }`
26
+ - `recommendedActions[]` — `{ kind, summary, classification?, remediationRoute: { primary, gateType } }`
27
+ - `readModel` — optional full snapshot from `collectReadModel`
28
+
29
+ Treat `readModel.parity`, `readModel.contractViolations`, `readModel.doctorLog`, `readModel.outcomes`, `readModel.alignmentCensus`, and `readModel.teamGovernance` as authoritative for their domains.
30
+
31
+ ## Routing table
32
+
33
+ | Gap signal | Primary specialist | Secondary |
34
+ |---|---|---|
35
+ | `parity-drift` | cx-engineer | cx-operations (if front-door rule stale) |
36
+ | `contract-violations` | owning producer specialist from `contractId` | cx-reviewer |
37
+ | `doctor-escalation` | cx-operations | cx-operations (beads issue) |
38
+ | `outcomes-degradation` | cx-reviewer (fleet-trace triage mode) | specialist named in degraded role |
39
+ | `census-stale` / alignment | cx-architect | cx-operations |
40
+ | `observations-empty` | cx-researcher (explorer mode) | cx-engineer |
41
+ | `team-understaffed` | cx-operations | cx-orchestrator (escalation) |
42
+ | `escalation-path-broken` | cx-operations | cx-architect (registry) |
43
+ | `team-decision-violation` | cx-operations | cx-orchestrator (role assignment) |
44
+ | `cross-team-handoff-blocked` | cx-operations | owning team specialist |
45
+
46
+ Note on the last four rows: the pre-consolidation routing table sent team-governance signals to `cx-rd-lead` (retired). This skill repoints them to `cx-operations`, which already owns dependency/ownership mapping and delivery logistics — the closer functional match — rather than to `cx-architect` (rd-lead's other absorbed function, pre-architecture framing). This is a construct-rf26.11 judgment call distinct from the rd-lead retirement itself; flag for reviewer override if a different owner is preferred.
47
+
48
+ ## Bounded-auto policy (do not override)
49
+
50
+ - **Auto** (may execute without approval): `census-run`, `registry-validate`, `adapters-sync` (tool repo only)
51
+ - **Approve** (queue to `.cx/oracle/pending.jsonl`): specialist dispatch, doctor follow-up, trace review, outcomes aggregate
52
+ - **Deny**: git push/commit, destructive deletes, force sync
53
+
54
+ ## Output format
55
+
56
+ ```
57
+ ORACLE ROUTING — {date}
58
+
59
+ VERDICT: {verdict}
60
+
61
+ GAPS:
62
+ [{severity}] {id} — {detail}
63
+ signal: {signal}
64
+ route: cx-{specialist}
65
+ handoff: {one-line DONE definition}
66
+
67
+ AUTO (already executed or skipped):
68
+ {kind}: {status}
69
+
70
+ APPROVAL QUEUE:
71
+ {id} {kind} — {summary}
72
+
73
+ BLOCKED:
74
+ {reason or "none"}
75
+ ```
76
+
77
+ Return DONE when every high-severity gap has a routed handoff or explicit approval-queue entry. Return BLOCKED when a required signal is missing and remediation cannot be scoped. Return NEEDS_MAIN_INPUT when human approval is required before any specialist dispatch.
@@ -5,7 +5,7 @@ inputs: [code-diff, prompt]
5
5
  artifactType: role-guidance
6
6
  role: ai-engineer
7
7
  applies_to:
8
- - cx-ai-engineer
8
+ - cx-engineer
9
9
  inherits: engineer
10
10
  version: 2
11
11
  scopes:
@@ -6,7 +6,6 @@ artifactType: role-guidance
6
6
  role: architect
7
7
  applies_to:
8
8
  - cx-architect
9
- - cx-rd-lead
10
9
  inherits: null
11
10
  version: 2
12
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [strategy-doc, competitive-analysis]
5
5
  artifactType: guidance
6
6
  role: business-strategist
7
7
  applies_to:
8
- - cx-business-strategist
8
+ - cx-product-manager
9
9
  inherits: null
10
10
  version: 2
11
11
  scopes:
@@ -6,7 +6,7 @@ artifactType: role-guidance
6
6
  role: data-analyst.telemetry
7
7
  applies_to:
8
8
  - cx-data-analyst
9
- - cx-sre
9
+ - cx-operations
10
10
  inherits: data-analyst
11
11
  version: 2
12
12
  scopes:
@@ -5,7 +5,7 @@ inputs: [code-diff, data-pipeline]
5
5
  artifactType: role-guidance
6
6
  role: data-engineer
7
7
  applies_to:
8
- - cx-data-engineer
8
+ - cx-engineer
9
9
  inherits: engineer
10
10
  version: 2
11
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [pipeline-design, data-contract]
5
5
  artifactType: role-guidance
6
6
  role: data-engineer.pipeline
7
7
  applies_to:
8
- - cx-data-engineer
8
+ - cx-engineer
9
9
  inherits: data-engineer
10
10
  version: 2
11
11
  scopes:
@@ -5,8 +5,7 @@ inputs: [retrieval-design, embeddings]
5
5
  artifactType: role-guidance
6
6
  role: data-engineer.vector-retrieval
7
7
  applies_to:
8
- - cx-data-engineer
9
- - cx-ai-engineer
8
+ - cx-engineer
10
9
  inherits: data-engineer
11
10
  version: 2
12
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [warehouse-model, metrics]
5
5
  artifactType: role-guidance
6
6
  role: data-engineer.warehouse
7
7
  applies_to:
8
- - cx-data-engineer
8
+ - cx-engineer
9
9
  inherits: data-engineer
10
10
  version: 2
11
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [ui-design, component]
5
5
  artifactType: role-guidance
6
6
  role: designer.accessibility
7
7
  applies_to:
8
- - cx-accessibility
8
+ - cx-designer
9
9
  inherits: designer
10
10
  version: 2
11
11
  scopes:
@@ -6,7 +6,6 @@ artifactType: role-guidance
6
6
  role: designer
7
7
  applies_to:
8
8
  - cx-designer
9
- - cx-accessibility
10
9
  inherits: null
11
10
  version: 2
12
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [plan, proposal]
5
5
  artifactType: guidance
6
6
  role: devil-advocate
7
7
  applies_to:
8
- - cx-devil-advocate
8
+ - cx-reviewer
9
9
  inherits: reviewer
10
10
  version: 2
11
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [docs, runbook]
5
5
  artifactType: role-guidance
6
6
  role: docs-keeper
7
7
  applies_to:
8
- - cx-docs-keeper
8
+ - cx-operations
9
9
  inherits: operations
10
10
  version: 2
11
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [model-output, eval-set]
5
5
  artifactType: guidance
6
6
  role: evaluator
7
7
  applies_to:
8
- - cx-evaluator
8
+ - cx-reviewer
9
9
  inherits: reviewer
10
10
  version: 2
11
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [repo, task-context]
5
5
  artifactType: guidance
6
6
  role: explorer
7
7
  applies_to:
8
- - cx-explorer
8
+ - cx-researcher
9
9
  inherits: researcher
10
10
  version: 2
11
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [code-diff, internal-tooling]
5
5
  artifactType: role-guidance
6
6
  role: platform-engineer
7
7
  applies_to:
8
- - cx-platform-engineer
8
+ - cx-engineer
9
9
  inherits: engineer
10
10
  version: 2
11
11
  scopes:
@@ -6,8 +6,7 @@ artifactType: guidance
6
6
  role: qa.ai-eval
7
7
  applies_to:
8
8
  - cx-qa
9
- - cx-test-automation
10
- - cx-evaluator
9
+ - cx-reviewer
11
10
  inherits: qa
12
11
  version: 2
13
12
  scopes:
@@ -6,7 +6,6 @@ artifactType: guidance
6
6
  role: qa.api-contract
7
7
  applies_to:
8
8
  - cx-qa
9
- - cx-test-automation
10
9
  inherits: qa
11
10
  version: 2
12
11
  scopes:
@@ -6,7 +6,6 @@ artifactType: guidance
6
6
  role: qa.data-pipeline
7
7
  applies_to:
8
8
  - cx-qa
9
- - cx-test-automation
10
9
  inherits: qa
11
10
  version: 2
12
11
  scopes:
@@ -6,7 +6,6 @@ artifactType: guidance
6
6
  role: qa
7
7
  applies_to:
8
8
  - cx-qa
9
- - cx-test-automation
10
9
  inherits: null
11
10
  version: 2
12
11
  scopes:
@@ -6,7 +6,6 @@ artifactType: guidance
6
6
  role: qa.web-ui
7
7
  applies_to:
8
8
  - cx-qa
9
- - cx-test-automation
10
9
  inherits: qa
11
10
  version: 2
12
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [release-plan, changelog]
5
5
  artifactType: role-guidance
6
6
  role: release-manager
7
7
  applies_to:
8
- - cx-release-manager
8
+ - cx-operations
9
9
  inherits: operations
10
10
  version: 2
11
11
  scopes:
@@ -6,8 +6,6 @@ artifactType: guidance
6
6
  role: researcher
7
7
  applies_to:
8
8
  - cx-researcher
9
- - cx-ux-researcher
10
- - cx-explorer
11
9
  inherits: null
12
10
  version: 2
13
11
  scopes:
@@ -6,9 +6,6 @@ artifactType: review-report
6
6
  role: reviewer
7
7
  applies_to:
8
8
  - cx-reviewer
9
- - cx-devil-advocate
10
- - cx-evaluator
11
- - cx-trace-reviewer
12
9
  inherits: null
13
10
  version: 2
14
11
  scopes:
@@ -6,7 +6,7 @@ artifactType: guidance
6
6
  role: security.ai
7
7
  applies_to:
8
8
  - cx-security
9
- - cx-ai-engineer
9
+ - cx-engineer
10
10
  inherits: security
11
11
  version: 2
12
12
  scopes:
@@ -5,7 +5,7 @@ inputs: [policy, task-context]
5
5
  artifactType: guidance
6
6
  role: security.legal-compliance
7
7
  applies_to:
8
- - cx-legal-compliance
8
+ - cx-security
9
9
  inherits: security
10
10
  version: 2
11
11
  scopes:
@@ -6,7 +6,6 @@ artifactType: guidance
6
6
  role: security
7
7
  applies_to:
8
8
  - cx-security
9
- - cx-legal-compliance
10
9
  inherits: null
11
10
  version: 2
12
11
  scopes:
@@ -6,7 +6,6 @@ artifactType: guidance
6
6
  role: security.privacy
7
7
  applies_to:
8
8
  - cx-security
9
- - cx-legal-compliance
10
9
  inherits: security
11
10
  version: 2
12
11
  scopes:
@@ -6,7 +6,7 @@ artifactType: guidance
6
6
  role: security.supply-chain
7
7
  applies_to:
8
8
  - cx-security
9
- - cx-platform-engineer
9
+ - cx-engineer
10
10
  inherits: security
11
11
  version: 2
12
12
  scopes:
@@ -5,7 +5,7 @@ inputs: [alert-config, slo]
5
5
  artifactType: role-guidance
6
6
  role: sre
7
7
  applies_to:
8
- - cx-sre
8
+ - cx-operations
9
9
  inherits: operations
10
10
  version: 2
11
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [test-suite, task-context]
5
5
  artifactType: guidance
6
6
  role: test-automation
7
7
  applies_to:
8
- - cx-test-automation
8
+ - cx-qa
9
9
  inherits: qa
10
10
  version: 2
11
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [trace, task-context]
5
5
  artifactType: guidance
6
6
  role: trace-reviewer
7
7
  applies_to:
8
- - cx-trace-reviewer
8
+ - cx-reviewer
9
9
  inherits: reviewer
10
10
  version: 2
11
11
  scopes:
@@ -5,7 +5,7 @@ inputs: [user-research, interview-data]
5
5
  artifactType: guidance
6
6
  role: ux-researcher
7
7
  applies_to:
8
- - cx-ux-researcher
8
+ - cx-researcher
9
9
  inherits: researcher
10
10
  version: 2
11
11
  scopes: