ultra-builder-pro-cli 0.25.1 → 0.26.1

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 (243) hide show
  1. package/.ultra-template/changes/abandoned/.gitkeep +0 -0
  2. package/.ultra-template/contexts/TEMPLATE.md +94 -0
  3. package/.ultra-template/decisions/.gitkeep +1 -0
  4. package/.ultra-template/evidence/.gitkeep +1 -0
  5. package/.ultra-template/north-star.md +46 -0
  6. package/.ultra-template/research/.gitkeep +1 -0
  7. package/.ultra-template/specs/discovery.md +2 -2
  8. package/.ultra-template/tasks.json +3 -0
  9. package/.ultra-template/test-report.json +27 -0
  10. package/CHANGELOG.md +107 -1
  11. package/README.md +217 -579
  12. package/adapters/_shared/delegate-profiles/kimi-read-only.md +15 -0
  13. package/adapters/_shared/delegate-profiles/kimi-write.md +17 -0
  14. package/adapters/_shared/file-ops.cjs +76 -2
  15. package/adapters/_shared/host-profile.cjs +97 -0
  16. package/adapters/_shared/plugin-core.cjs +204 -0
  17. package/adapters/_shared/runtime-assets.cjs +31 -96
  18. package/adapters/claude.js +92 -291
  19. package/adapters/codex.js +309 -842
  20. package/adapters/grok.js +143 -1469
  21. package/adapters/kimi.js +124 -1053
  22. package/adapters/opencode.js +230 -742
  23. package/bin/delegate-worker.cjs +328 -0
  24. package/bin/delegate.cjs +463 -0
  25. package/bin/install.js +38 -11
  26. package/docs/ARCHITECTURE.md +125 -216
  27. package/docs/ARTIFACT-AUTHORITY.md +90 -268
  28. package/docs/DECISIONS.md +77 -87
  29. package/docs/PHILOSOPHY.md +208 -0
  30. package/docs/PLUGIN-ISOLATION-CONTRACT.md +65 -39
  31. package/docs/RUNTIME-COMPAT-MATRIX.md +140 -155
  32. package/docs/SKILL-AUTHORING.md +94 -73
  33. package/docs/WORKFLOW-LIFECYCLE.md +97 -189
  34. package/hooks/README.md +19 -37
  35. package/hooks/_common.py +113 -0
  36. package/hooks/adapters/codex.py +9 -16
  37. package/hooks/adapters/grok.py +5 -5
  38. package/hooks/adapters/kimi.py +8 -14
  39. package/hooks/block_dangerous_commands.py +201 -0
  40. package/hooks/compact_context.py +65 -0
  41. package/hooks/mid_workflow_recall.py +25 -0
  42. package/hooks/post_edit_guard.py +105 -0
  43. package/hooks/session_context.py +30 -0
  44. package/package.json +17 -52
  45. package/skills/ultra-change/SKILL.md +115 -50
  46. package/skills/ultra-change/references/change-contract.md +68 -3
  47. package/skills/ultra-delegate/SKILL.md +89 -0
  48. package/skills/ultra-delegate/references/delegation-contract.md +59 -0
  49. package/skills/ultra-delegate/scripts/delegate_wait.py +86 -0
  50. package/skills/ultra-deliver/SKILL.md +98 -42
  51. package/skills/ultra-deliver/references/baseline-reconciliation.md +39 -20
  52. package/skills/ultra-dev/SKILL.md +115 -62
  53. package/skills/ultra-dev/references/debugging.md +22 -0
  54. package/skills/ultra-domain-modeling/SKILL.md +79 -0
  55. package/skills/ultra-grilling/SKILL.md +118 -0
  56. package/skills/ultra-grilling/references/reframing.md +72 -0
  57. package/skills/ultra-init/SKILL.md +102 -37
  58. package/skills/ultra-init/references/brownfield-adoption.md +33 -83
  59. package/skills/ultra-init/scripts/init_project.cjs +84 -0
  60. package/skills/ultra-plan/SKILL.md +101 -68
  61. package/skills/ultra-research/SKILL.md +68 -48
  62. package/skills/ultra-research/references/00-problem-validation.md +5 -5
  63. package/skills/ultra-research/references/01-opportunity-discovery.md +3 -3
  64. package/skills/ultra-research/references/02-market-assessment.md +5 -4
  65. package/skills/ultra-research/references/03-competitive-landscape.md +3 -3
  66. package/skills/ultra-research/references/04-product-strategy.md +3 -3
  67. package/skills/ultra-research/references/05-assumptions-validation.md +5 -5
  68. package/skills/ultra-research/references/10-user-personas.md +3 -2
  69. package/skills/ultra-research/references/11-user-scenarios.md +3 -3
  70. package/skills/ultra-research/references/20-user-stories.md +4 -3
  71. package/skills/ultra-research/references/21-features-scope.md +3 -2
  72. package/skills/ultra-research/references/22-success-metrics.md +3 -3
  73. package/skills/ultra-research/references/30-architecture-context.md +3 -3
  74. package/skills/ultra-research/references/31-solution-strategy.md +3 -3
  75. package/skills/ultra-research/references/32-building-blocks.md +3 -3
  76. package/skills/ultra-research/references/40-deployment.md +3 -3
  77. package/skills/ultra-research/references/41-quality-risks.md +3 -3
  78. package/skills/ultra-research/references/99-synthesis.md +7 -7
  79. package/skills/ultra-review/SKILL.md +84 -32
  80. package/skills/ultra-review/references/code.md +17 -0
  81. package/skills/ultra-review/references/comments.md +12 -0
  82. package/skills/ultra-review/references/design.md +12 -0
  83. package/skills/ultra-review/references/errors.md +13 -0
  84. package/skills/ultra-review/references/spec.md +13 -0
  85. package/skills/ultra-review/references/tests.md +12 -0
  86. package/skills/ultra-review/references/worker-packet.md +40 -0
  87. package/skills/ultra-review/scripts/review_wait.py +26 -15
  88. package/skills/ultra-status/SKILL.md +61 -36
  89. package/skills/ultra-tdd/SKILL.md +81 -0
  90. package/skills/ultra-tdd/references/templates/README.md +20 -0
  91. package/skills/ultra-tdd/references/templates/feature-flag-default-audit.sh +79 -0
  92. package/skills/ultra-tdd/references/templates/persistence-real.ts +78 -0
  93. package/skills/ultra-tdd/references/templates/testcontainer-postgres.py +78 -0
  94. package/skills/ultra-tdd/references/templates/testcontainer-postgres.ts +73 -0
  95. package/skills/ultra-tdd/references/templates/vertical-slice.ts +66 -0
  96. package/skills/ultra-tdd/references/test-execution.md +18 -0
  97. package/skills/ultra-test/SKILL.md +75 -30
  98. package/skills/ultra-test/references/export-syntax.md +18 -0
  99. package/skills/ultra-test/scripts/worktree_digest.cjs +54 -0
  100. package/skills/ultra-think/SKILL.md +49 -27
  101. package/skills/ultra-think/references/autonomy-boundary.md +48 -0
  102. package/skills/ultra-think/references/interaction-boundary.md +18 -33
  103. package/.ultra-template/docs/research/README.md +0 -55
  104. package/.ultra-template/reports/templates/delivery-report.json +0 -17
  105. package/.ultra-template/reports/templates/test-report.json +0 -18
  106. package/.ultra-template/tasks/tasks.json +0 -15
  107. package/.ultra-template/templates/task-context.md +0 -19
  108. package/adapters/_shared/codex-assets.cjs +0 -725
  109. package/adapters/_shared/codex-ultra-tools-entry.cjs +0 -11
  110. package/adapters/_shared/interaction-contract.cjs +0 -129
  111. package/adapters/_shared/path-rewrite.cjs +0 -79
  112. package/adapters/_shared/runtime-native.cjs +0 -132
  113. package/adapters/_shared/settings-merge.cjs +0 -76
  114. package/agents/code-reviewer.md +0 -42
  115. package/agents/debugger.md +0 -40
  116. package/agents/review-code.md +0 -49
  117. package/agents/review-comments.md +0 -38
  118. package/agents/review-coordinator.md +0 -56
  119. package/agents/review-design.md +0 -40
  120. package/agents/review-errors.md +0 -43
  121. package/agents/review-spec.md +0 -39
  122. package/agents/review-tests.md +0 -40
  123. package/agents/tdd-runner.md +0 -38
  124. package/bin/orchestrator.js +0 -383
  125. package/commands/ultra-change.md +0 -10
  126. package/commands/ultra-deliver.md +0 -10
  127. package/commands/ultra-dev.md +0 -10
  128. package/commands/ultra-doctor.md +0 -10
  129. package/commands/ultra-init.md +0 -10
  130. package/commands/ultra-plan.md +0 -10
  131. package/commands/ultra-research.md +0 -10
  132. package/commands/ultra-review.md +0 -10
  133. package/commands/ultra-status.md +0 -10
  134. package/commands/ultra-test.md +0 -10
  135. package/commands/ultra-think.md +0 -10
  136. package/docs/AGENT-CONTEXT.md +0 -191
  137. package/docs/COMMIT-HASH-BACKFILL.md +0 -51
  138. package/docs/LEGACY-CLI-CROSSWALK.md +0 -175
  139. package/docs/ROADMAP.md +0 -101
  140. package/docs/STATE-DB-ACCESS-POLICY.md +0 -161
  141. package/hooks/active_task_context.py +0 -152
  142. package/hooks/context_envelope.py +0 -100
  143. package/hooks/health_check.py +0 -196
  144. package/hooks/pre_stop_check.py +0 -66
  145. package/hooks/runtime_paths.py +0 -396
  146. package/hooks/subagent_tracker.py +0 -88
  147. package/hooks/workflow_checkpoint.py +0 -76
  148. package/hooks/workflow_context.py +0 -48
  149. package/hooks/workflow_resume.py +0 -84
  150. package/mcp-server/hook-context.cjs +0 -38
  151. package/mcp-server/hook-event.cjs +0 -34
  152. package/mcp-server/lib/archive-journal.cjs +0 -1119
  153. package/mcp-server/lib/archive-mutation-worker.py +0 -365
  154. package/mcp-server/lib/artifact-registry.cjs +0 -1232
  155. package/mcp-server/lib/baseline-workflow.cjs +0 -1193
  156. package/mcp-server/lib/canonical-json.cjs +0 -19
  157. package/mcp-server/lib/change-authority.cjs +0 -26
  158. package/mcp-server/lib/change-packet.cjs +0 -790
  159. package/mcp-server/lib/change-workflow.cjs +0 -65
  160. package/mcp-server/lib/context-envelope.cjs +0 -581
  161. package/mcp-server/lib/context-paths.cjs +0 -142
  162. package/mcp-server/lib/decision-records.cjs +0 -423
  163. package/mcp-server/lib/delivery-transaction.cjs +0 -471
  164. package/mcp-server/lib/doctor-backup-worker.cjs +0 -328
  165. package/mcp-server/lib/doctor.cjs +0 -627
  166. package/mcp-server/lib/git-bootstrap.cjs +0 -651
  167. package/mcp-server/lib/init-project.cjs +0 -1021
  168. package/mcp-server/lib/kernel-change-workflow.cjs +0 -2029
  169. package/mcp-server/lib/legacy-change-workflow.cjs +0 -3032
  170. package/mcp-server/lib/managed-file-write.cjs +0 -172
  171. package/mcp-server/lib/plan-checkpoint.cjs +0 -177
  172. package/mcp-server/lib/plan-publication-worker.cjs +0 -830
  173. package/mcp-server/lib/plan-store.cjs +0 -794
  174. package/mcp-server/lib/prd-parser.cjs +0 -83
  175. package/mcp-server/lib/pricing.cjs +0 -44
  176. package/mcp-server/lib/project-context.cjs +0 -178
  177. package/mcp-server/lib/projector.cjs +0 -386
  178. package/mcp-server/lib/provider-refs.cjs +0 -42
  179. package/mcp-server/lib/runtime-paths.cjs +0 -1714
  180. package/mcp-server/lib/runtime-state.cjs +0 -222
  181. package/mcp-server/lib/safe-project-file.cjs +0 -385
  182. package/mcp-server/lib/stage-checkpoints.cjs +0 -463
  183. package/mcp-server/lib/state-authority.cjs +0 -95
  184. package/mcp-server/lib/state-db.cjs +0 -1580
  185. package/mcp-server/lib/state-ops.cjs +0 -1428
  186. package/mcp-server/lib/task-contract.cjs +0 -404
  187. package/mcp-server/lib/task-expander.cjs +0 -105
  188. package/mcp-server/lib/task-ledger.cjs +0 -1964
  189. package/mcp-server/lib/telemetry.cjs +0 -85
  190. package/mcp-server/lib/topo.cjs +0 -131
  191. package/mcp-server/lib/ultra-facade.cjs +0 -2684
  192. package/mcp-server/lib/worker-packet.cjs +0 -358
  193. package/mcp-server/server.cjs +0 -437
  194. package/orchestrator/auto-merge.cjs +0 -128
  195. package/orchestrator/daemon.cjs +0 -264
  196. package/orchestrator/dispatch-rules.cjs +0 -78
  197. package/orchestrator/parallel-orchestrator.cjs +0 -903
  198. package/orchestrator/planner/plan-builder.cjs +0 -125
  199. package/orchestrator/recovery.cjs +0 -188
  200. package/orchestrator/session-close-journal-worker.cjs +0 -5
  201. package/orchestrator/session-close-journal.cjs +0 -1014
  202. package/orchestrator/session-runner.cjs +0 -1153
  203. package/orchestrator/worktree-manager.cjs +0 -282
  204. package/settings.json +0 -7
  205. package/skills/cc-collab/SKILL.md +0 -42
  206. package/skills/code-review-expert/SKILL.md +0 -43
  207. package/skills/code-review-expert/references/correctness-reliability.md +0 -30
  208. package/skills/code-review-expert/references/design-boundaries.md +0 -26
  209. package/skills/code-review-expert/references/removal-plan.md +0 -24
  210. package/skills/codex-collab/SKILL.md +0 -49
  211. package/skills/codex-collab/evals/evals.json +0 -35
  212. package/skills/integration-rules/SKILL.md +0 -32
  213. package/skills/security-rules/SKILL.md +0 -38
  214. package/skills/testing-rules/SKILL.md +0 -32
  215. package/skills/ultra-doctor/SKILL.md +0 -41
  216. package/skills/ultra-plan/references/semantic-preflight.md +0 -20
  217. package/skills/ultra-verify/SKILL.md +0 -46
  218. package/skills/ultra-verify/evals/evals.json +0 -46
  219. package/skills/ultra-verify/references/cross-verify-modes.md +0 -28
  220. package/skills/ultra-verify/references/evidence-status.md +0 -21
  221. package/skills/ultra-verify/scripts/verify_wait.py +0 -94
  222. package/spec/cli-protocol.md +0 -102
  223. package/spec/mcp-tools.yaml +0 -312
  224. package/spec/schemas/baseline-reconciliation.v1.schema.json +0 -73
  225. package/spec/schemas/change-delta.v1.schema.json +0 -153
  226. package/spec/schemas/command-manifest.schema.json +0 -29
  227. package/spec/schemas/context-file.v4.5.schema.json +0 -54
  228. package/spec/schemas/delivery-report.v1.schema.json +0 -66
  229. package/spec/schemas/documentation-reconciliation.v1.schema.json +0 -106
  230. package/spec/schemas/mcp-tools.schema.json +0 -136
  231. package/spec/schemas/skill-manifest.schema.json +0 -24
  232. package/spec/schemas/state-db.sql +0 -641
  233. package/spec/schemas/task-ledger.v2.schema.json +0 -296
  234. package/spec/schemas/tasks.v4.5.schema.json +0 -96
  235. package/spec/schemas/test-report.v1.schema.json +0 -225
  236. package/ultra-tools/cli.cjs +0 -129
  237. package/ultra-tools/commands/db.cjs +0 -226
  238. package/ultra-tools/commands/legacy-memory.cjs +0 -159
  239. package/ultra-tools/commands/migrate.cjs +0 -1386
  240. package/ultra-tools/commands/session.cjs +0 -213
  241. package/ultra-tools/commands/status.cjs +0 -559
  242. package/ultra-tools/commands/system.cjs +0 -498
  243. package/ultra-tools/commands/task.cjs +0 -105
@@ -1,312 +0,0 @@
1
- # Ultra Builder Pro — MCP tool contracts
2
- # Single source for tool name, schema, errors, and CLI mapping.
3
- # Validated by spec/schemas/mcp-tools.schema.json (run `npm run test:spec`).
4
- # Current authority boundary: docs/DECISIONS.md.
5
-
6
- version: '2.0'
7
-
8
- info:
9
- title: Ultra Builder Pro MCP tool contracts
10
- phase: '24'
11
- trace_to: 'docs/DECISIONS.md and mcp-server/server.cjs'
12
- notes: |
13
- This published contract contains only tools registered by the MCP server.
14
- Host-native review, impact, skill discovery, and human-interaction capabilities
15
- are documented by each adapter's capability map rather than advertised as MCP.
16
- Generators consume this YAML to derive types, validators, and CLI parsers.
17
- cli_subcommand values reserve stable names. Skills adapt semantic workflows;
18
- MCP persists facts, creates immutable checkpoints, and protects only transactional
19
- safety boundaries.
20
- Adding a tool requires: (a) update this file, (b) add valid+invalid
21
- fixture to spec/fixtures/{valid,invalid}/, (c) `npm run test:spec` green.
22
-
23
- families:
24
- - { name: ultra, description: 'model-facing persistence and safety kernel', phase: '24' }
25
-
26
- tools:
27
-
28
- # ───────────────────── public model-facing kernel ─────────────────────
29
- - name: ultra.context
30
- family: ultra
31
- description: Read one bounded canonical Context Envelope. This tool is side-effect free and reports diagnostics without choosing the next semantic action.
32
- phase: '24'
33
- readonly: true
34
- writer_role: mcp
35
- input_schema:
36
- type: object
37
- additionalProperties: false
38
- properties:
39
- stage: { type: string, enum: [project, research, plan, dev, test, review, deliver] }
40
- scope:
41
- type: object
42
- additionalProperties: false
43
- properties:
44
- change_id: { type: string, minLength: 1 }
45
- task_id: { type: string, minLength: 1 }
46
- detail: { type: string, enum: [summary, full] }
47
- output_schema: { type: object }
48
- errors:
49
- - { code: VALIDATION_ERROR, description: 'input failed structural validation' }
50
- - { code: STATE_CORRUPT, description: 'local authority cannot be read safely' }
51
- cli_subcommand: 'ultra context'
52
-
53
- - name: ultra.record
54
- family: ultra
55
- description: Record one or more typed draft facts or actions with per-entry idempotency. Entry data is checked against its kind/action contract so one invalid batch item can return a mutable diagnostic without hiding the other results.
56
- phase: '24'
57
- writer_role: mcp
58
- input_schema:
59
- type: object
60
- required: [entries]
61
- additionalProperties: false
62
- properties:
63
- entries:
64
- type: array
65
- minItems: 1
66
- items:
67
- type: object
68
- required: [kind, action, data, idempotency_key]
69
- additionalProperties: false
70
- properties:
71
- kind:
72
- type: string
73
- enum: [baseline, change_contract, decision, task_contract, task_outcome, artifact, event]
74
- description: Selects the entry data contract. Task contracts own durable intent; Task outcomes own status and post-commit attestation.
75
- action:
76
- type: string
77
- enum:
78
- - initialize
79
- - start
80
- - observe
81
- - accept
82
- - open
83
- - revise
84
- - cancel
85
- - supersede
86
- - define
87
- - remove
88
- - complete
89
- - block
90
- - reopen
91
- - attest_commit
92
- - bind
93
- - append
94
- description: Valid actions are checked with kind at runtime; task_outcome uses start, block, reopen, complete, or attest_commit.
95
- data:
96
- type: object
97
- description: |
98
- Every kind/action selects one exact data contract. Unknown fields,
99
- wrong scalar/container types, invalid closed mechanical enums,
100
- malformed digests, and mismatched authority references return an entry-level mutable
101
- VALIDATION_ERROR before SQLite or filesystem mutation.
102
-
103
- baseline uses mode greenfield|brownfield; spec kinds
104
- discovery|product|architecture|quality|delivery|other; evidence kinds
105
- source|docs|runtime|test|deploy|external; verification status
106
- pass|known_red|not_run; gap status open|accepted|resolved|deferred and
107
- category baseline_blocker|documentation_drift|known_defect|
108
- technical_debt|unknown|future_change. blocking and acceptance flags
109
- are booleans, never truthy strings.
110
-
111
- change_contract/open accepts a bounded caller-defined kind; quick,
112
- standard, major, and incident are recommended Skill-level profiles,
113
- docs_impact.status unknown|required|none, risk flags
114
- public_contract|schema_migration|data_migration|authorization|
115
- security|multi_module|external_integration|release_semantics are
116
- recommended Skill-level labels rather than a closed MCP vocabulary, and
117
- research status none|bounded|required with mode
118
- product|feature|architecture|custom are likewise recommended profiles;
119
- bounded repository-defined status, mode, and risk labels remain valid.
120
- revise uses {id, patch};
121
- cancel uses {id}. supersede uses an archived or cancelled source id,
122
- a successor_id, and optional title/kind/intent overrides. Draft
123
- semantic corrections remain reversible; immutable history creates a
124
- linked active successor instead of reopening in place.
125
-
126
- decision/accept has exact scope {baseline_id} or {change_id};
127
- applied_refs items are exactly {ref, field, digest?}. effects and
128
- provenance are JSON objects; non_goals is a string array.
129
-
130
- Task contracts are structurally exact. task_contract/define requires
131
- id, title, and bounded non-empty type and priority strings.
132
- architecture|feature|bugfix and P0|P1|P2|P3 are recommended
133
- Skill-level vocabulary, not SQLite business verdicts.
134
- id matches [A-Za-z0-9_-]+ and title has at least 3 characters.
135
- Optional complexity is integer 1..10, estimated_days is >0,
136
- slice_kind is an optional bounded caller-defined string; tracer_bullet,
137
- expand_contract, and integration_checkpoint are recommended profiles.
138
- deps/files_modified are non-empty-string arrays, and
139
- acceptance/context_refs are object arrays. task_contract/revise uses
140
- {id, patch} and permits contract fields, including corrected
141
- title/type, only. status, session_id, stale, tag, context_file, and
142
- completion_commit are runtime-owned and forbidden in Task Contracts.
143
- task_outcome start|block|reopen uses {id}. complete uses exactly
144
- {id, packet_digest} with a 64-hex packet digest; patch and
145
- completion_commit are forbidden.
146
- After durable completion is synced and committed, attest_commit uses
147
- exactly {id, completion_commit}; the commit is a full 40- or 64-hex
148
- Git object id recorded as checkout-local proof.
149
-
150
- artifact/bind uses owner_type project|baseline|change|task|workflow,
151
- status current|stale|terminal|archived, 64-lowercase-hex content
152
- digests, and exact reference items {type, id, relation}; type is
153
- artifact|project|baseline|change|task|workflow|external. Current
154
- public authority rejects workflow-owned legacy references.
155
-
156
- event/append is exactly {type, task_id?, change_id?, session_id?,
157
- runtime?, payload?}. Identifiers/runtime are strings or null and
158
- payload is a JSON object.
159
- idempotency_key: { type: string, minLength: 3 }
160
- output_schema: { type: object }
161
- errors:
162
- - { code: VALIDATION_ERROR, description: 'input failed structural validation' }
163
- - { code: STATE_CORRUPT, description: 'local authority cannot be updated safely' }
164
- - { code: PATH_AUTHORITY_VIOLATION, description: 'a requested write escapes managed authority' }
165
- cli_subcommand: 'ultra record'
166
- emits_events: [ultra_facade_call]
167
-
168
- - name: ultra.checkpoint
169
- family: ultra
170
- description: Commit one caller-declared stage checkpoint after validating scope, structure, idempotency, current file bytes, digests, and transactional publication. Semantic completeness remains a Skill/model judgment and is returned only as advisory diagnostics.
171
- phase: '24'
172
- writer_role: mcp
173
- input_schema:
174
- type: object
175
- required: [stage, scope, payload, idempotency_key]
176
- additionalProperties: false
177
- properties:
178
- stage: { type: string, enum: [research, plan, dev, test, review, deliver] }
179
- scope:
180
- type: object
181
- additionalProperties: false
182
- properties:
183
- change_id: { type: string, minLength: 1 }
184
- task_id: { type: string, minLength: 1 }
185
- payload:
186
- type: object
187
- description: |
188
- Stage-specific semantic fields remain model-owned. Kernel-owned evidence
189
- is an object array whose kind/ref/summary/digest/artifact_id values are
190
- strings when present. diagnostics is an exact object array with required
191
- string code and optional string severity/message plus JSON details.
192
- Evidence authority, current bytes, scope, checkpoint identity, and the
193
- accepted receipt are validated atomically.
194
- idempotency_key: { type: string, minLength: 3 }
195
- output_schema: { type: object }
196
- errors:
197
- - { code: VALIDATION_ERROR, description: 'input failed structural validation' }
198
- - { code: STATE_CORRUPT, description: 'local authority cannot be checkpointed safely' }
199
- - { code: PATH_AUTHORITY_VIOLATION, description: 'checkpoint evidence escapes managed authority' }
200
- - { code: CHECKPOINT_EVIDENCE_AUTHORITY_MISSING, description: 'declared checkpoint evidence is not current managed authority' }
201
- - { code: CHECKPOINT_EVIDENCE_DIGEST_MISMATCH, description: 'declared checkpoint evidence bytes changed' }
202
- - { code: CHECKPOINT_SCOPE_NOT_FOUND, description: 'the explicit Task or Change scope does not exist' }
203
- - { code: CHECKPOINT_SCOPE_MISMATCH, description: 'the explicit Task does not belong to the supplied Change scope' }
204
- cli_subcommand: 'ultra checkpoint'
205
- emits_events: [ultra_checkpoint_accepted, ultra_checkpoint_rejected]
206
-
207
- - name: ultra.sync
208
- family: ultra
209
- description: Inspect, import, or publish the Git team checkpoint while preserving local sessions and rejecting real concurrent team-state conflicts.
210
- phase: '24'
211
- writer_role: mcp
212
- input_schema:
213
- type: object
214
- required: [action]
215
- additionalProperties: false
216
- properties:
217
- action: { type: string, enum: [inspect, import, publish, migrate] }
218
- reason:
219
- type: string
220
- description: Allowed only for publish.
221
- idempotency_key:
222
- type: string
223
- minLength: 3
224
- description: Required only for publish; binds the exact request and ledger generation.
225
- output_schema: { type: object }
226
- errors:
227
- - { code: VALIDATION_ERROR, description: 'input failed structural validation' }
228
- - { code: TASK_LEDGER_HISTORY_CONFLICT, description: 'team checkpoint histories conflict' }
229
- - { code: TASK_LEDGER_TASK_CONFLICT, description: 'the same durable task changed concurrently' }
230
- cli_subcommand: 'ultra sync'
231
-
232
- - name: ultra.session
233
- family: ultra
234
- description: Acquire, inspect, heartbeat, or release the small execution lease that requires transactional concurrency control.
235
- phase: '24'
236
- writer_role: mcp
237
- input_schema:
238
- type: object
239
- required: [action]
240
- additionalProperties: false
241
- properties:
242
- action: { type: string, enum: [admission, acquire, get, list, heartbeat, release] }
243
- scope:
244
- type: object
245
- description: |
246
- admission/acquire/list use task_id (list may omit it); get/heartbeat/release
247
- use sid. Unknown scope fields are rejected.
248
- payload:
249
- type: object
250
- description: |
251
- admission/get/list/heartbeat accept no payload fields. acquire accepts only
252
- role, runtime, output_path, output_schema, evidence_refs, diff_range,
253
- changed_files, takeover, and worktree_base. release accepts status
254
- completed|crashed and optional boolean remove_worktree. Acquire, heartbeat,
255
- and release compensate Session, lease, Worker Packet, and worktree effects
256
- if their durable receipt fails.
257
- idempotency_key:
258
- type: string
259
- minLength: 3
260
- description: Required for acquire, heartbeat, and release.
261
- output_schema: { type: object }
262
- errors:
263
- - { code: VALIDATION_ERROR, description: 'input failed structural validation' }
264
- - { code: SESSION_STATUS_CONFLICT, description: 'a concurrent session transition won' }
265
- - { code: LEASE_EXPIRED, description: 'the execution lease already expired' }
266
- cli_subcommand: 'ultra session'
267
-
268
- - name: ultra.archive
269
- family: ultra
270
- description: Archive one caller-declared local Change handoff through a recoverable filesystem and database transaction. The kernel validates authority, paths, digests, reconciliation structure, and recovery safety without requiring a fixed semantic stage sequence.
271
- phase: '24'
272
- writer_role: mcp
273
- input_schema:
274
- type: object
275
- required: [change_id, payload, idempotency_key]
276
- additionalProperties: false
277
- properties:
278
- change_id: { type: string, minLength: 1 }
279
- payload:
280
- type: object
281
- additionalProperties: false
282
- properties:
283
- summary: { type: string }
284
- baseline_updates:
285
- type: array
286
- items: { type: string }
287
- no_baseline_change_reason: { type: string }
288
- reconciliation_path: { type: string }
289
- description: The payload cannot replace the caller-declared change_id.
290
- idempotency_key: { type: string, minLength: 3 }
291
- output_schema: { type: object }
292
- errors:
293
- - { code: VALIDATION_ERROR, description: 'input failed structural validation' }
294
- - { code: STATE_CORRUPT, description: 'archive authority cannot be trusted' }
295
- - { code: ARCHIVE_RUNTIME_UNAVAILABLE, description: 'safe archive primitives are unavailable' }
296
- cli_subcommand: 'ultra archive'
297
-
298
- - name: ultra.doctor
299
- family: ultra
300
- description: Inspect mechanical health and optionally apply only backup-first deterministic repairs. Semantic choices remain with the model and owner.
301
- phase: '24'
302
- writer_role: mcp
303
- input_schema:
304
- type: object
305
- additionalProperties: false
306
- properties:
307
- repair: { type: boolean }
308
- output_schema: { type: object }
309
- errors:
310
- - { code: STATE_CORRUPT, description: 'the state database cannot be inspected safely' }
311
- - { code: BACKUP_FAILED, description: 'a required recovery backup could not be created' }
312
- cli_subcommand: 'ultra doctor'
@@ -1,73 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://ultra-builder-pro.dev/schemas/baseline-reconciliation.v1.schema.json",
4
- "title": "Ultra baseline reconciliation v1",
5
- "type": "object",
6
- "required": [
7
- "$schema", "change_id", "baseline_id", "baseline_updates", "semantic_changes",
8
- "resolved_gap_ids", "resolved_unknowns", "verification"
9
- ],
10
- "additionalProperties": false,
11
- "properties": {
12
- "$schema": { "const": "ultra-baseline-reconciliation-v1" },
13
- "change_id": { "type": "string", "minLength": 1 },
14
- "baseline_id": { "type": ["string", "null"] },
15
- "baseline_updates": {
16
- "type": "array",
17
- "uniqueItems": true,
18
- "items": { "type": "string", "minLength": 1 }
19
- },
20
- "semantic_changes": {
21
- "type": "array",
22
- "items": {
23
- "type": "object",
24
- "required": ["id", "action", "source_ref", "before_digest", "after_digest"],
25
- "additionalProperties": false,
26
- "properties": {
27
- "id": { "type": "string", "pattern": "^[a-zA-Z0-9_-]+$" },
28
- "action": { "enum": ["add", "update"] },
29
- "source_ref": { "type": "string", "pattern": "^[^#]+#[^#]+$" },
30
- "before_digest": { "type": ["string", "null"], "pattern": "^[0-9a-f]{64}$" },
31
- "after_digest": { "type": "string", "pattern": "^[0-9a-f]{64}$" }
32
- }
33
- }
34
- },
35
- "resolved_gap_ids": {
36
- "type": "array", "uniqueItems": true,
37
- "items": { "type": "string", "minLength": 1 }
38
- },
39
- "resolved_unknowns": {
40
- "type": "array", "uniqueItems": true,
41
- "items": { "type": "string", "minLength": 1 }
42
- },
43
- "verification": {
44
- "type": "array",
45
- "minItems": 1,
46
- "items": {
47
- "type": "object",
48
- "required": ["name", "command", "status", "evidence"],
49
- "additionalProperties": false,
50
- "properties": {
51
- "name": { "type": "string", "minLength": 1 },
52
- "command": { "type": "string", "minLength": 1 },
53
- "status": { "const": "pass" },
54
- "evidence": { "type": "string", "minLength": 1 }
55
- }
56
- }
57
- },
58
- "semantic_no_change_reason": { "type": ["string", "null"], "minLength": 3 }
59
- },
60
- "allOf": [
61
- {
62
- "if": { "properties": { "baseline_updates": { "maxItems": 0 } } },
63
- "then": {
64
- "required": ["semantic_no_change_reason"],
65
- "properties": {
66
- "semantic_changes": { "maxItems": 0 },
67
- "semantic_no_change_reason": { "type": "string", "minLength": 3 }
68
- }
69
- },
70
- "else": { "properties": { "semantic_changes": { "minItems": 1 } } }
71
- }
72
- ]
73
- }
@@ -1,153 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://ultra-builder-pro.dev/schemas/change-delta.v1.schema.json",
4
- "title": "Ultra Change delta v1",
5
- "type": "object",
6
- "required": [
7
- "$schema",
8
- "change_id",
9
- "baseline_anchor",
10
- "decisions",
11
- "non_goals",
12
- "acceptance",
13
- "documentation_impact",
14
- "unknowns",
15
- "mutations"
16
- ],
17
- "additionalProperties": false,
18
- "properties": {
19
- "$schema": { "const": "ultra-change-delta-v1" },
20
- "change_id": { "type": "string", "minLength": 1 },
21
- "baseline_anchor": {
22
- "type": "object",
23
- "required": ["baseline_id", "repository_revision", "specs"],
24
- "additionalProperties": false,
25
- "properties": {
26
- "baseline_id": { "type": "string", "minLength": 1 },
27
- "repository_revision": { "type": ["string", "null"] },
28
- "specs": {
29
- "type": "array",
30
- "uniqueItems": true,
31
- "items": {
32
- "type": "object",
33
- "required": ["path", "digest"],
34
- "additionalProperties": false,
35
- "properties": {
36
- "path": { "type": "string", "minLength": 1 },
37
- "digest": { "type": "string", "pattern": "^[0-9a-f]{64}$" }
38
- }
39
- }
40
- }
41
- }
42
- },
43
- "decisions": {
44
- "type": "array",
45
- "items": {
46
- "type": "object",
47
- "required": ["id", "summary"],
48
- "additionalProperties": false,
49
- "properties": {
50
- "id": { "type": "string", "pattern": "^[a-zA-Z0-9_\\-]+$" },
51
- "summary": { "type": "string", "minLength": 1 },
52
- "rationale": { "type": "string", "minLength": 1 }
53
- }
54
- }
55
- },
56
- "non_goals": {
57
- "type": "array",
58
- "uniqueItems": true,
59
- "items": { "type": "string", "minLength": 1 }
60
- },
61
- "acceptance": {
62
- "type": "array",
63
- "minItems": 1,
64
- "items": {
65
- "type": "object",
66
- "required": ["id", "criterion", "verification"],
67
- "additionalProperties": false,
68
- "properties": {
69
- "id": { "type": "string", "pattern": "^[a-zA-Z0-9_\\-]+$" },
70
- "criterion": { "type": "string", "minLength": 1 },
71
- "verification": { "type": "string", "minLength": 1 }
72
- }
73
- }
74
- },
75
- "documentation_impact": {
76
- "type": "object",
77
- "required": ["status", "files", "rationale"],
78
- "additionalProperties": false,
79
- "properties": {
80
- "status": { "enum": ["none", "required"] },
81
- "files": {
82
- "type": "array",
83
- "uniqueItems": true,
84
- "items": { "type": "string", "minLength": 1 }
85
- },
86
- "rationale": { "type": "string", "minLength": 3 }
87
- }
88
- },
89
- "unknowns": {
90
- "type": "array",
91
- "items": {
92
- "type": "object",
93
- "required": ["id", "summary", "blocking"],
94
- "additionalProperties": false,
95
- "properties": {
96
- "id": { "type": "string", "pattern": "^[a-zA-Z0-9_\\-]+$" },
97
- "summary": { "type": "string", "minLength": 1 },
98
- "blocking": { "type": "boolean" }
99
- }
100
- }
101
- },
102
- "no_semantic_change_reason": { "type": "string", "minLength": 3 },
103
- "mutations": {
104
- "type": "array",
105
- "items": {
106
- "type": "object",
107
- "required": [
108
- "id",
109
- "action",
110
- "target_path",
111
- "overlay_path",
112
- "before_digest",
113
- "after_digest",
114
- "acceptance_refs",
115
- "documentation_refs"
116
- ],
117
- "additionalProperties": false,
118
- "properties": {
119
- "id": { "type": "string", "pattern": "^[a-zA-Z0-9_\\-]+$" },
120
- "action": { "enum": ["add", "update"] },
121
- "target_path": { "type": "string", "minLength": 1 },
122
- "overlay_path": { "type": "string", "minLength": 1 },
123
- "before_digest": {
124
- "type": ["string", "null"],
125
- "pattern": "^[0-9a-f]{64}$"
126
- },
127
- "after_digest": { "type": "string", "pattern": "^[0-9a-f]{64}$" },
128
- "acceptance_refs": {
129
- "type": "array",
130
- "minItems": 1,
131
- "uniqueItems": true,
132
- "items": { "type": "string", "minLength": 1 }
133
- },
134
- "documentation_refs": {
135
- "type": "array",
136
- "uniqueItems": true,
137
- "items": { "type": "string", "minLength": 1 }
138
- }
139
- }
140
- }
141
- }
142
- },
143
- "allOf": [
144
- {
145
- "if": {
146
- "properties": {
147
- "mutations": { "maxItems": 0 }
148
- }
149
- },
150
- "then": { "required": ["no_semantic_change_reason"] }
151
- }
152
- ]
153
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://ultra-builder-pro.dev/spec/command-manifest.schema.json",
4
- "title": "Ultra command launcher frontmatter",
5
- "description": "Portable source contract for a thin command launcher. Runtime metadata and workflow procedure belong outside the command file.",
6
- "type": "object",
7
- "required": ["description", "workflow-ref"],
8
- "additionalProperties": false,
9
- "properties": {
10
- "description": {
11
- "type": "string",
12
- "minLength": 10,
13
- "maxLength": 240,
14
- "description": "Concise user-visible action description."
15
- },
16
- "argument-hint": {
17
- "oneOf": [
18
- { "type": "string" },
19
- { "type": "array", "items": { "type": "string" }, "minItems": 1 }
20
- ],
21
- "description": "Optional host launcher hint; it does not define argument semantics."
22
- },
23
- "workflow-ref": {
24
- "type": "string",
25
- "pattern": "^@skills/[a-z][a-z0-9\\-]*/SKILL\\.md$",
26
- "description": "The single Skill that owns this workflow."
27
- }
28
- }
29
- }
@@ -1,54 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://ultra-builder-pro.dev/spec/context-file.v4.5.schema.json",
4
- "title": "context-file projection (v4.5)",
5
- "description": "Schema for the parsed representation of .ultra/.runtime/projections/contexts/task-*.md. The file is regenerated by the projector from state.db and remains checkout-local. Authority boundary: docs/ARTIFACT-AUTHORITY.md.",
6
- "type": "object",
7
- "required": ["header", "body"],
8
- "additionalProperties": false,
9
- "properties": {
10
- "header": {
11
- "type": "object",
12
- "required": ["task_id", "title", "status", "schema_version"],
13
- "additionalProperties": false,
14
- "properties": {
15
- "task_id": { "type": "string" },
16
- "title": { "type": "string" },
17
- "status": {
18
- "type": "string",
19
- "enum": ["pending", "in_progress", "completed", "blocked", "expanded"],
20
- "x-derived": true,
21
- "description": "DERIVED from state.db tasks.status; written by projector, not by humans"
22
- },
23
- "priority": { "type": "string", "minLength": 1, "maxLength": 80 },
24
- "type": { "type": "string", "minLength": 1, "maxLength": 80 },
25
- "session_id": { "type": "string", "x-derived": true },
26
- "schema_version": { "const": "4.5" },
27
- "generated_at": { "type": "string", "format": "date-time" }
28
- }
29
- },
30
- "body": {
31
- "type": "object",
32
- "required": ["sections"],
33
- "additionalProperties": false,
34
- "properties": {
35
- "sections": {
36
- "type": "array",
37
- "items": {
38
- "type": "object",
39
- "required": ["heading", "content"],
40
- "additionalProperties": false,
41
- "properties": {
42
- "heading": {
43
- "type": "string",
44
- "not": { "pattern": "^[Ss]tatus" },
45
- "description": "body sections cannot be 'Status' — that lives only in header (D17)"
46
- },
47
- "content": { "type": "string" }
48
- }
49
- }
50
- }
51
- }
52
- }
53
- }
54
- }