workspai 0.51.0 → 0.52.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 (110) hide show
  1. package/README.md +1 -0
  2. package/contracts/artifact-remediation-plan.v1.json +87 -0
  3. package/contracts/cli-runtime-command-inventory.v1.snapshot.json +24 -0
  4. package/contracts/doctor-project-evidence.v1.json +72 -0
  5. package/contracts/doctor-remediation-plan.v1.json +82 -0
  6. package/contracts/doctor-workspace-evidence.v1.json +72 -0
  7. package/contracts/extension-cli-compatibility.v1.json +6 -2
  8. package/contracts/published-contract-catalog.v1.json +22 -1
  9. package/contracts/runtime-command-surface.v1.json +104 -0
  10. package/contracts/workspace-intelligence/doctor-dependency-repair-transaction.v1.json +66 -0
  11. package/contracts/workspace-intelligence/studio-blocker-handoff.v1.json +5 -0
  12. package/contracts/workspace-intelligence/verified-goal-status.v1.json +27 -0
  13. package/contracts/workspace-intelligence/verified-goal.v1.json +163 -0
  14. package/contracts/workspace-intelligence-chain.v1.json +6 -0
  15. package/dist/analyze-J7VNZMDH.js +1 -0
  16. package/dist/artifact-remediation-plan-2UKY4TKO.js +3 -0
  17. package/dist/autopilot-release-QRJ6EN6W.js +1 -0
  18. package/dist/chunk-27UR373Z.js +1 -0
  19. package/dist/chunk-2PY65U6X.js +5 -0
  20. package/dist/{chunk-DQ3PI7EP.js → chunk-3D3PFPP5.js} +1 -1
  21. package/dist/chunk-4D7DIGAB.js +1 -0
  22. package/dist/{chunk-IND3TUVU.js → chunk-4UVGTFOX.js} +1 -1
  23. package/dist/{chunk-U2QL5733.js → chunk-5XJRCP3D.js} +24 -24
  24. package/dist/chunk-62K2H72S.js +1 -0
  25. package/dist/{chunk-TROHVI2V.js → chunk-6HJJHEL6.js} +1 -1
  26. package/dist/{chunk-BHYTI3RH.js → chunk-6PBSAAS5.js} +1 -1
  27. package/dist/{chunk-MVLIONQD.js → chunk-7MQZQ4UU.js} +1 -1
  28. package/dist/chunk-B4CPDK6J.js +2 -0
  29. package/dist/{chunk-SHXJ2GDR.js → chunk-DZ4VKAXB.js} +1 -1
  30. package/dist/chunk-FUPHQOJB.js +1 -0
  31. package/dist/{chunk-BG4FWJJ3.js → chunk-GHB6QMQH.js} +1 -1
  32. package/dist/chunk-GR6442P7.js +1 -0
  33. package/dist/{chunk-Q6TKQVKQ.js → chunk-HPS5V7PI.js} +1 -1
  34. package/dist/{chunk-DLM6C7FU.js → chunk-HPWLSLMC.js} +1 -1
  35. package/dist/{chunk-HMGPELXS.js → chunk-ICLYL3N5.js} +1 -1
  36. package/dist/{chunk-MAF3LLGK.js → chunk-IO54DFWR.js} +1 -1
  37. package/dist/chunk-JXSRYQAR.js +86 -0
  38. package/dist/{chunk-FZ76CF2W.js → chunk-KHEJO3JU.js} +1 -1
  39. package/dist/{chunk-U2LR73E2.js → chunk-LOCPNNSK.js} +1 -1
  40. package/dist/{chunk-EPVFKJF4.js → chunk-LPCL4U4L.js} +1 -1
  41. package/dist/{chunk-4WJC5QCD.js → chunk-M5ICGR55.js} +1 -1
  42. package/dist/{chunk-XBM2P45G.js → chunk-MBRU3VWJ.js} +1 -1
  43. package/dist/{chunk-VCW5HSPC.js → chunk-MZFSINY7.js} +3 -3
  44. package/dist/{chunk-E3CT7TYT.js → chunk-OTDGTAZJ.js} +1 -1
  45. package/dist/chunk-P4OSLAVD.js +3 -0
  46. package/dist/{chunk-GBAO4GSW.js → chunk-PTTZPDLX.js} +1 -1
  47. package/dist/chunk-Q6CUJ3WF.js +10 -0
  48. package/dist/{chunk-6HLPTJZ3.js → chunk-QURMI7ID.js} +1 -1
  49. package/dist/chunk-U63L5CCD.js +1 -0
  50. package/dist/{chunk-RVQLMTTI.js → chunk-ULR66OJR.js} +1 -1
  51. package/dist/{chunk-FKWB66NQ.js → chunk-WHHK2DF5.js} +1 -1
  52. package/dist/{chunk-HSZCINFX.js → chunk-WJY7ZXVJ.js} +1 -1
  53. package/dist/{chunk-VU2BKKMB.js → chunk-XHRHNVCZ.js} +1 -1
  54. package/dist/chunk-ZTKIBREF.js +1 -0
  55. package/dist/{chunk-HE4PUMU4.js → chunk-ZVOEPWQM.js} +1 -1
  56. package/dist/{create-SBFBFXKN.js → create-ESK3CQPK.js} +1 -1
  57. package/dist/{doctor-OPCMTBJB.js → doctor-D6MRX264.js} +1 -1
  58. package/dist/index.d.ts +26 -11
  59. package/dist/index.js +240 -240
  60. package/dist/{pipeline-7BUXAFS2.js → pipeline-OQPYAI3G.js} +1 -1
  61. package/dist/{project-intelligence-lens-BKKVPCLC.js → project-intelligence-lens-Q4SZDI2N.js} +1 -1
  62. package/dist/project-test-coverage-A677ZLW3.js +1 -0
  63. package/dist/verified-goal-75G64OUV.js +1 -0
  64. package/dist/{workspace-U6ZQLELX.js → workspace-LSOZM2CG.js} +1 -1
  65. package/dist/{workspace-agent-sync-L4SY7B4Q.js → workspace-agent-sync-RZBQXCNJ.js} +1 -1
  66. package/dist/{workspace-archive-4JNT4S7N.js → workspace-archive-ZOWQXWJ6.js} +1 -1
  67. package/dist/{workspace-context-KOBSLZTI.js → workspace-context-IYJKO5BN.js} +1 -1
  68. package/dist/{workspace-contract-SOD3OOVF.js → workspace-contract-AZFISDLS.js} +1 -1
  69. package/dist/workspace-explain-26UGV7L4.js +1 -0
  70. package/dist/workspace-explain-contract-GIWPCCEF.js +1 -0
  71. package/dist/{workspace-feedback-ZZ4HPW2T.js → workspace-feedback-LIHEWTNV.js} +1 -1
  72. package/dist/{workspace-foundation-PUIYBQUF.js → workspace-foundation-H5UTAUXQ.js} +1 -1
  73. package/dist/{workspace-graph-stream-BLKIC7VN.js → workspace-graph-stream-KUDOZE73.js} +1 -1
  74. package/dist/{workspace-history-SPKNRHIX.js → workspace-history-HULG5EFN.js} +1 -1
  75. package/dist/{workspace-intelligence-I3ABOH2F.js → workspace-intelligence-A4UE4DZK.js} +1 -1
  76. package/dist/{workspace-intelligence-evaluation-7CABG5Y6.js → workspace-intelligence-evaluation-AOLGHYHC.js} +1 -1
  77. package/dist/workspace-intelligence-runner-ZHAPAMT3.js +1 -0
  78. package/dist/{workspace-intelligence-runtime-registry-ZZ3GRAL2.js → workspace-intelligence-runtime-registry-YOQ5GFFJ.js} +1 -1
  79. package/dist/{workspace-knowledge-graph-5MKEI4Z5.js → workspace-knowledge-graph-LEM6X5CM.js} +1 -1
  80. package/dist/{workspace-mcp-serve-ETNUA72W.js → workspace-mcp-serve-N2QPR7VJ.js} +1 -1
  81. package/dist/{workspace-model-HHA37SNH.js → workspace-model-FJXX3NET.js} +1 -1
  82. package/dist/{workspace-onboarding-ELHZABJE.js → workspace-onboarding-IKFISWWY.js} +1 -1
  83. package/dist/{workspace-readme-HGGZ4AZB.js → workspace-readme-E2M35RJH.js} +1 -1
  84. package/dist/{workspace-registry-summary-D2QM5JF6.js → workspace-registry-summary-HOQ3OBNT.js} +1 -1
  85. package/dist/workspace-run-5E5HWOOY.js +1 -0
  86. package/dist/{workspace-verify-4WJTLXRA.js → workspace-verify-32AWCJQG.js} +1 -1
  87. package/dist/workspace-watch-4WVNB26E.js +1 -0
  88. package/docs/README.md +1 -0
  89. package/docs/ci-workflows.md +40 -11
  90. package/docs/commands-reference.md +12 -0
  91. package/docs/doctor-command.md +16 -0
  92. package/docs/workspace-intelligence-runner.md +48 -0
  93. package/package.json +4 -2
  94. package/dist/analyze-4H33PAUB.js +0 -1
  95. package/dist/artifact-remediation-plan-TQ6KTTXD.js +0 -3
  96. package/dist/autopilot-release-BHZYM5KX.js +0 -1
  97. package/dist/chunk-2D4UOYOJ.js +0 -1
  98. package/dist/chunk-3D2PAIRH.js +0 -3
  99. package/dist/chunk-AHLMIL2T.js +0 -1
  100. package/dist/chunk-BBGNDMRU.js +0 -2
  101. package/dist/chunk-BYTFXQ6G.js +0 -1
  102. package/dist/chunk-GQRWRHSR.js +0 -86
  103. package/dist/chunk-L2E2Z4OE.js +0 -5
  104. package/dist/chunk-TDTCMZK7.js +0 -10
  105. package/dist/project-test-coverage-BALEHHTT.js +0 -1
  106. package/dist/workspace-explain-2CTMW2YW.js +0 -1
  107. package/dist/workspace-explain-contract-H7O26QJU.js +0 -1
  108. package/dist/workspace-intelligence-runner-Q2XSR3ZL.js +0 -1
  109. package/dist/workspace-run-DAAZBCN7.js +0 -1
  110. package/dist/workspace-watch-2PIFTQ6B.js +0 -1
package/README.md CHANGED
@@ -181,6 +181,7 @@ modules; Workspai remains the workspace-level CLI.
181
181
  | Create, adopt, import, or connect software | [Creating workspaces and projects](docs/creating-workspaces-and-projects.md) |
182
182
  | Query Graph and inspect proof | [Workspace Knowledge Graph](docs/workspace-knowledge-graph.md) |
183
183
  | Understand the exact decision loop | [Workspace Intelligence runner](docs/workspace-intelligence-runner.md) |
184
+ | Set a release, security, or coverage outcome | [Verified engineering goals](docs/workspace-intelligence-runner.md#verified-engineering-goals) |
184
185
  | Integrate CI | [CI workflows](docs/ci-workflows.md) |
185
186
  | Find generated files and schemas | [Artifact Catalog](docs/contracts/ARTIFACT_CATALOG.md) |
186
187
  | Browse all documentation | [Documentation index](docs/README.md) |
@@ -85,6 +85,81 @@
85
85
  }
86
86
  ]
87
87
  },
88
+ "commandInvocation": {
89
+ "type": "object",
90
+ "additionalProperties": false,
91
+ "required": ["cwd", "executable", "args"],
92
+ "properties": {
93
+ "cwd": { "type": "string", "minLength": 1 },
94
+ "executable": { "type": "string", "minLength": 1 },
95
+ "args": {
96
+ "type": "array",
97
+ "items": { "type": "string" }
98
+ }
99
+ }
100
+ },
101
+ "repairStrategyStage": {
102
+ "type": "object",
103
+ "additionalProperties": false,
104
+ "required": ["id", "kind", "description", "risk", "continueWhen"],
105
+ "properties": {
106
+ "id": { "type": "string", "minLength": 1 },
107
+ "kind": {
108
+ "enum": ["diagnose", "safe-fix", "targeted-upgrade", "verify", "exception-review"]
109
+ },
110
+ "description": { "type": "string", "minLength": 1 },
111
+ "risk": { "enum": ["safe", "guarded", "invasive"] },
112
+ "invocation": { "$ref": "#/$defs/commandInvocation" },
113
+ "continueWhen": {
114
+ "enum": ["always", "previous-passed", "blocker-remains", "manual-decision"]
115
+ }
116
+ }
117
+ },
118
+ "dependencyRepairTransaction": {
119
+ "type": "object",
120
+ "additionalProperties": false,
121
+ "required": [
122
+ "schemaVersion",
123
+ "kind",
124
+ "state",
125
+ "projectPath",
126
+ "ecosystem",
127
+ "requiredStages",
128
+ "completion"
129
+ ],
130
+ "properties": {
131
+ "schemaVersion": {
132
+ "const": "workspai.doctor-dependency-repair-transaction.v1"
133
+ },
134
+ "kind": { "const": "dependency-security" },
135
+ "state": { "const": "planned" },
136
+ "projectPath": { "type": "string", "minLength": 1 },
137
+ "ecosystem": { "type": "string", "minLength": 1 },
138
+ "requiredStages": {
139
+ "type": "array",
140
+ "items": { "enum": ["reconcile", "audit", "test", "build"] },
141
+ "uniqueItems": true
142
+ },
143
+ "completion": {
144
+ "type": "object",
145
+ "additionalProperties": false,
146
+ "required": [
147
+ "manifestLockConsistent",
148
+ "auditClean",
149
+ "declaredTestsPass",
150
+ "declaredBuildPass",
151
+ "canonicalVerificationRequired"
152
+ ],
153
+ "properties": {
154
+ "manifestLockConsistent": { "const": true },
155
+ "auditClean": { "const": true },
156
+ "declaredTestsPass": { "const": true },
157
+ "declaredBuildPass": { "const": true },
158
+ "canonicalVerificationRequired": { "const": true }
159
+ }
160
+ }
161
+ }
162
+ },
88
163
  "action": {
89
164
  "type": "object",
90
165
  "additionalProperties": false,
@@ -116,6 +191,18 @@
116
191
  "order": { "type": "integer", "minimum": 0 },
117
192
  "phase": { "type": "string" },
118
193
  "scope": { "enum": ["workspace", "project"] },
194
+ "projectName": { "type": "string", "minLength": 1 },
195
+ "projectPath": { "type": "string", "minLength": 1 },
196
+ "sourceStepId": { "type": "string", "minLength": 1 },
197
+ "dependsOn": {
198
+ "type": "array",
199
+ "items": { "type": "string", "minLength": 1 }
200
+ },
201
+ "strategy": {
202
+ "type": "array",
203
+ "items": { "$ref": "#/$defs/repairStrategyStage" }
204
+ },
205
+ "transaction": { "$ref": "#/$defs/dependencyRepairTransaction" },
119
206
  "status": { "enum": ["ready", "review-required", "blocked", "guidance-only"] },
120
207
  "mode": {
121
208
  "enum": [
@@ -1423,6 +1423,30 @@
1423
1423
  {
1424
1424
  "flags": "--no-gates",
1425
1425
  "attributeName": "gates"
1426
+ },
1427
+ {
1428
+ "flags": "--allow-breaking",
1429
+ "attributeName": "allowBreaking"
1430
+ },
1431
+ {
1432
+ "flags": "--allow-force",
1433
+ "attributeName": "allowForce"
1434
+ },
1435
+ {
1436
+ "flags": "--no-build",
1437
+ "attributeName": "build"
1438
+ },
1439
+ {
1440
+ "flags": "--no-tests",
1441
+ "attributeName": "tests"
1442
+ },
1443
+ {
1444
+ "flags": "--no-run",
1445
+ "attributeName": "run"
1446
+ },
1447
+ {
1448
+ "flags": "--reuse-intelligence",
1449
+ "attributeName": "reuseIntelligence"
1426
1450
  }
1427
1451
  ]
1428
1452
  }
@@ -132,11 +132,37 @@
132
132
  "type": "array",
133
133
  "items": { "$ref": "#/$defs/dependencyAuditSubject" }
134
134
  },
135
+ "remediation": { "$ref": "#/$defs/dependencyRemediation" },
135
136
  "reason": { "type": "string", "minLength": 1 },
136
137
  "limitations": { "type": "array", "items": { "type": "string" } }
137
138
  },
138
139
  "additionalProperties": false
139
140
  },
141
+ "dependencyRemediation": {
142
+ "type": "object",
143
+ "required": ["disposition", "compatibleFixAvailable", "breakingFixAvailable", "candidates"],
144
+ "properties": {
145
+ "disposition": {
146
+ "enum": ["not-needed", "compatible", "breaking-only", "mixed", "none", "unknown"]
147
+ },
148
+ "compatibleFixAvailable": { "type": "boolean" },
149
+ "breakingFixAvailable": { "type": "boolean" },
150
+ "candidates": {
151
+ "type": "array",
152
+ "items": {
153
+ "type": "object",
154
+ "required": ["packageName", "breaking"],
155
+ "properties": {
156
+ "packageName": { "type": "string", "minLength": 1 },
157
+ "version": { "type": "string", "minLength": 1 },
158
+ "breaking": { "type": "boolean" }
159
+ },
160
+ "additionalProperties": false
161
+ }
162
+ }
163
+ },
164
+ "additionalProperties": false
165
+ },
140
166
  "dependencyAuditSubject": {
141
167
  "type": "object",
142
168
  "required": ["name", "advisoryIds", "severities"],
@@ -390,6 +416,7 @@
390
416
  "type": "array",
391
417
  "items": { "$ref": "#/$defs/repairStrategyStage" }
392
418
  },
419
+ "transaction": { "$ref": "#/$defs/dependencyRepairTransaction" },
393
420
  "operation": { "$ref": "#/$defs/repairOperation" },
394
421
  "verifyCommand": { "type": "string" },
395
422
  "refreshCommands": { "type": "array", "items": { "type": "string" } },
@@ -398,6 +425,51 @@
398
425
  },
399
426
  "additionalProperties": true
400
427
  },
428
+ "dependencyRepairTransaction": {
429
+ "type": "object",
430
+ "required": [
431
+ "schemaVersion",
432
+ "kind",
433
+ "state",
434
+ "projectPath",
435
+ "ecosystem",
436
+ "requiredStages",
437
+ "completion"
438
+ ],
439
+ "properties": {
440
+ "schemaVersion": {
441
+ "const": "workspai.doctor-dependency-repair-transaction.v1"
442
+ },
443
+ "kind": { "const": "dependency-security" },
444
+ "state": { "const": "planned" },
445
+ "projectPath": { "type": "string", "minLength": 1 },
446
+ "ecosystem": { "type": "string", "minLength": 1 },
447
+ "requiredStages": {
448
+ "type": "array",
449
+ "items": { "enum": ["reconcile", "audit", "test", "build"] },
450
+ "uniqueItems": true
451
+ },
452
+ "completion": {
453
+ "type": "object",
454
+ "required": [
455
+ "manifestLockConsistent",
456
+ "auditClean",
457
+ "declaredTestsPass",
458
+ "declaredBuildPass",
459
+ "canonicalVerificationRequired"
460
+ ],
461
+ "properties": {
462
+ "manifestLockConsistent": { "const": true },
463
+ "auditClean": { "const": true },
464
+ "declaredTestsPass": { "const": true },
465
+ "declaredBuildPass": { "const": true },
466
+ "canonicalVerificationRequired": { "const": true }
467
+ },
468
+ "additionalProperties": false
469
+ }
470
+ },
471
+ "additionalProperties": false
472
+ },
401
473
  "commandInvocation": {
402
474
  "type": "object",
403
475
  "required": ["cwd", "executable", "args"],
@@ -140,6 +140,81 @@
140
140
  }
141
141
  }
142
142
  },
143
+ "commandInvocation": {
144
+ "type": "object",
145
+ "additionalProperties": false,
146
+ "required": ["cwd", "executable", "args"],
147
+ "properties": {
148
+ "cwd": { "type": "string", "minLength": 1 },
149
+ "executable": { "type": "string", "minLength": 1 },
150
+ "args": {
151
+ "type": "array",
152
+ "items": { "type": "string" }
153
+ }
154
+ }
155
+ },
156
+ "repairStrategyStage": {
157
+ "type": "object",
158
+ "additionalProperties": false,
159
+ "required": ["id", "kind", "description", "risk", "continueWhen"],
160
+ "properties": {
161
+ "id": { "type": "string", "minLength": 1 },
162
+ "kind": {
163
+ "enum": ["diagnose", "safe-fix", "targeted-upgrade", "verify", "exception-review"]
164
+ },
165
+ "description": { "type": "string", "minLength": 1 },
166
+ "risk": { "enum": ["safe", "guarded", "invasive"] },
167
+ "invocation": { "$ref": "#/$defs/commandInvocation" },
168
+ "continueWhen": {
169
+ "enum": ["always", "previous-passed", "blocker-remains", "manual-decision"]
170
+ }
171
+ }
172
+ },
173
+ "dependencyRepairTransaction": {
174
+ "type": "object",
175
+ "additionalProperties": false,
176
+ "required": [
177
+ "schemaVersion",
178
+ "kind",
179
+ "state",
180
+ "projectPath",
181
+ "ecosystem",
182
+ "requiredStages",
183
+ "completion"
184
+ ],
185
+ "properties": {
186
+ "schemaVersion": {
187
+ "const": "workspai.doctor-dependency-repair-transaction.v1"
188
+ },
189
+ "kind": { "const": "dependency-security" },
190
+ "state": { "const": "planned" },
191
+ "projectPath": { "type": "string", "minLength": 1 },
192
+ "ecosystem": { "type": "string", "minLength": 1 },
193
+ "requiredStages": {
194
+ "type": "array",
195
+ "items": { "enum": ["reconcile", "audit", "test", "build"] },
196
+ "uniqueItems": true
197
+ },
198
+ "completion": {
199
+ "type": "object",
200
+ "additionalProperties": false,
201
+ "required": [
202
+ "manifestLockConsistent",
203
+ "auditClean",
204
+ "declaredTestsPass",
205
+ "declaredBuildPass",
206
+ "canonicalVerificationRequired"
207
+ ],
208
+ "properties": {
209
+ "manifestLockConsistent": { "const": true },
210
+ "auditClean": { "const": true },
211
+ "declaredTestsPass": { "const": true },
212
+ "declaredBuildPass": { "const": true },
213
+ "canonicalVerificationRequired": { "const": true }
214
+ }
215
+ }
216
+ }
217
+ },
143
218
  "repairIntent": {
144
219
  "type": "object",
145
220
  "additionalProperties": false,
@@ -478,6 +553,13 @@
478
553
  "operation": {
479
554
  "$ref": "#/$defs/repairOperation"
480
555
  },
556
+ "strategy": {
557
+ "type": "array",
558
+ "items": { "$ref": "#/$defs/repairStrategyStage" }
559
+ },
560
+ "transaction": {
561
+ "$ref": "#/$defs/dependencyRepairTransaction"
562
+ },
481
563
  "preview": {
482
564
  "$ref": "#/$defs/preview"
483
565
  },
@@ -142,11 +142,37 @@
142
142
  "type": "array",
143
143
  "items": { "$ref": "#/$defs/dependencyAuditSubject" }
144
144
  },
145
+ "remediation": { "$ref": "#/$defs/dependencyRemediation" },
145
146
  "reason": { "type": "string", "minLength": 1 },
146
147
  "limitations": { "type": "array", "items": { "type": "string" } }
147
148
  },
148
149
  "additionalProperties": false
149
150
  },
151
+ "dependencyRemediation": {
152
+ "type": "object",
153
+ "required": ["disposition", "compatibleFixAvailable", "breakingFixAvailable", "candidates"],
154
+ "properties": {
155
+ "disposition": {
156
+ "enum": ["not-needed", "compatible", "breaking-only", "mixed", "none", "unknown"]
157
+ },
158
+ "compatibleFixAvailable": { "type": "boolean" },
159
+ "breakingFixAvailable": { "type": "boolean" },
160
+ "candidates": {
161
+ "type": "array",
162
+ "items": {
163
+ "type": "object",
164
+ "required": ["packageName", "breaking"],
165
+ "properties": {
166
+ "packageName": { "type": "string", "minLength": 1 },
167
+ "version": { "type": "string", "minLength": 1 },
168
+ "breaking": { "type": "boolean" }
169
+ },
170
+ "additionalProperties": false
171
+ }
172
+ }
173
+ },
174
+ "additionalProperties": false
175
+ },
150
176
  "dependencyAuditSubject": {
151
177
  "type": "object",
152
178
  "required": ["name", "advisoryIds", "severities"],
@@ -400,6 +426,7 @@
400
426
  "type": "array",
401
427
  "items": { "$ref": "#/$defs/repairStrategyStage" }
402
428
  },
429
+ "transaction": { "$ref": "#/$defs/dependencyRepairTransaction" },
403
430
  "operation": { "$ref": "#/$defs/repairOperation" },
404
431
  "verifyCommand": { "type": "string" },
405
432
  "refreshCommands": { "type": "array", "items": { "type": "string" } },
@@ -408,6 +435,51 @@
408
435
  },
409
436
  "additionalProperties": true
410
437
  },
438
+ "dependencyRepairTransaction": {
439
+ "type": "object",
440
+ "required": [
441
+ "schemaVersion",
442
+ "kind",
443
+ "state",
444
+ "projectPath",
445
+ "ecosystem",
446
+ "requiredStages",
447
+ "completion"
448
+ ],
449
+ "properties": {
450
+ "schemaVersion": {
451
+ "const": "workspai.doctor-dependency-repair-transaction.v1"
452
+ },
453
+ "kind": { "const": "dependency-security" },
454
+ "state": { "const": "planned" },
455
+ "projectPath": { "type": "string", "minLength": 1 },
456
+ "ecosystem": { "type": "string", "minLength": 1 },
457
+ "requiredStages": {
458
+ "type": "array",
459
+ "items": { "enum": ["reconcile", "audit", "test", "build"] },
460
+ "uniqueItems": true
461
+ },
462
+ "completion": {
463
+ "type": "object",
464
+ "required": [
465
+ "manifestLockConsistent",
466
+ "auditClean",
467
+ "declaredTestsPass",
468
+ "declaredBuildPass",
469
+ "canonicalVerificationRequired"
470
+ ],
471
+ "properties": {
472
+ "manifestLockConsistent": { "const": true },
473
+ "auditClean": { "const": true },
474
+ "declaredTestsPass": { "const": true },
475
+ "declaredBuildPass": { "const": true },
476
+ "canonicalVerificationRequired": { "const": true }
477
+ },
478
+ "additionalProperties": false
479
+ }
480
+ },
481
+ "additionalProperties": false
482
+ },
411
483
  "commandInvocation": {
412
484
  "type": "object",
413
485
  "required": ["cwd", "executable", "args"],
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": "rapidkit-extension-cli-compatibility.v1",
3
3
  "cli": "workspai",
4
- "minimumVerifiedCliVersion": "0.51.0",
4
+ "minimumVerifiedCliVersion": "0.52.1",
5
5
  "publishedContractSchemas": {
6
6
  "workspaceContract": 1,
7
7
  "runtimeCommandSurface": "rapidkit-runtime-command-surface-v1",
@@ -21,6 +21,8 @@
21
21
  "doctorWorkspaceEvidence": "doctor-workspace-evidence-v1",
22
22
  "doctorGraphDiagnosis": "doctor-graph-diagnosis.v1",
23
23
  "projectTestCoverage": "workspai.project-test-coverage.v1",
24
+ "verifiedGoal": "workspai.verified-goal.v1",
25
+ "verifiedGoalStatus": "workspai.verified-goal-status.v1",
24
26
  "workspaceIntelligenceArchitecture": "workspai-workspace-intelligence-architecture-v1",
25
27
  "workspaceIntelligenceChain": "workspai-workspace-intelligence-chain-v1",
26
28
  "workspaceIntelligenceArtifacts": {
@@ -43,7 +45,8 @@
43
45
  "explain": "workspace-explain.v1",
44
46
  "intelligenceRun": "workspace-intelligence-run.v1",
45
47
  "evaluationLive": "workspace-intelligence-evaluation.v1",
46
- "evaluationLastRun": "workspace-intelligence-evaluation.v1"
48
+ "evaluationLastRun": "workspace-intelligence-evaluation.v1",
49
+ "verifiedGoalStatus": "workspai.verified-goal-status.v1"
47
50
  },
48
51
  "cliLogEvent": "cli-log-event-v1",
49
52
  "freshnessMetadata": "rapidkit-freshness-metadata-v1",
@@ -71,6 +74,7 @@
71
74
  "workspaceExplain": "workspace-explain.v1",
72
75
  "agentActionOutcome": "agent-action-outcome.v1",
73
76
  "doctorRemediationPlan": "doctor-remediation-plan-v2",
77
+ "doctorDependencyRepairTransaction": "workspai.doctor-dependency-repair-transaction.v1",
74
78
  "artifactRemediationPlan": "artifact-remediation-plan-v1",
75
79
  "doctorFixResult": "rapidkit-doctor-fix-result-v1",
76
80
  "autopilotRelease": "autopilot-release-v1",
@@ -91,6 +91,16 @@
91
91
  "contractPath": "contracts/project-test-coverage.v1.json",
92
92
  "publication": "json-schema"
93
93
  },
94
+ "verifiedGoal": {
95
+ "schemaVersion": "workspai.verified-goal.v1",
96
+ "contractPath": "contracts/workspace-intelligence/verified-goal.v1.json",
97
+ "publication": "json-schema"
98
+ },
99
+ "verifiedGoalStatus": {
100
+ "schemaVersion": "workspai.verified-goal-status.v1",
101
+ "contractPath": "contracts/workspace-intelligence/verified-goal-status.v1.json",
102
+ "publication": "json-schema"
103
+ },
94
104
  "workspaceIntelligenceArchitecture": {
95
105
  "schemaVersion": "workspai-workspace-intelligence-architecture-v1",
96
106
  "contractPath": "contracts/workspace-intelligence-architecture.v1.json",
@@ -122,7 +132,8 @@
122
132
  "explain": "workspace-explain.v1",
123
133
  "intelligenceRun": "workspace-intelligence-run.v1",
124
134
  "evaluationLive": "workspace-intelligence-evaluation.v1",
125
- "evaluationLastRun": "workspace-intelligence-evaluation.v1"
135
+ "evaluationLastRun": "workspace-intelligence-evaluation.v1",
136
+ "verifiedGoalStatus": "workspai.verified-goal-status.v1"
126
137
  },
127
138
  "contractPath": null,
128
139
  "publication": "embedded-type",
@@ -226,6 +237,11 @@
226
237
  "path": ".workspai/reports/workspace-intelligence-evaluation-last-run.json",
227
238
  "schemaVersion": "workspace-intelligence-evaluation.v1",
228
239
  "contractPath": "contracts/workspace-intelligence/workspace-intelligence-evaluation.v1.json"
240
+ },
241
+ "verifiedGoalStatus": {
242
+ "path": ".workspai/reports/verified-goal-last-run.json",
243
+ "schemaVersion": "workspai.verified-goal-status.v1",
244
+ "contractPath": "contracts/workspace-intelligence/verified-goal-status.v1.json"
229
245
  }
230
246
  }
231
247
  },
@@ -359,6 +375,11 @@
359
375
  "contractPath": "contracts/doctor-remediation-plan.v2.json",
360
376
  "publication": "json-schema"
361
377
  },
378
+ "doctorDependencyRepairTransaction": {
379
+ "schemaVersion": "workspai.doctor-dependency-repair-transaction.v1",
380
+ "contractPath": "contracts/workspace-intelligence/doctor-dependency-repair-transaction.v1.json",
381
+ "publication": "json-schema"
382
+ },
362
383
  "artifactRemediationPlan": {
363
384
  "schemaVersion": "artifact-remediation-plan-v1",
364
385
  "contractPath": "contracts/artifact-remediation-plan.v1.json",
@@ -1045,6 +1045,32 @@
1045
1045
  "foundation"
1046
1046
  ]
1047
1047
  },
1048
+ {
1049
+ "invocation": "workspace goal",
1050
+ "summary": "Plan, resume, and evidence-verify a durable engineering goal with explicit scope, constraints, and success criteria.",
1051
+ "canonicalArgv": [
1052
+ "workspace",
1053
+ "goal"
1054
+ ]
1055
+ },
1056
+ {
1057
+ "invocation": "workspace goal plan",
1058
+ "summary": "Create or deterministically resume a goal contract and capture its current baseline.",
1059
+ "canonicalArgv": [
1060
+ "workspace",
1061
+ "goal",
1062
+ "plan"
1063
+ ]
1064
+ },
1065
+ {
1066
+ "invocation": "workspace goal verify",
1067
+ "summary": "Run the goal-specific checks and publish an evidence-derived verified, blocked, or failed state.",
1068
+ "canonicalArgv": [
1069
+ "workspace",
1070
+ "goal",
1071
+ "verify"
1072
+ ]
1073
+ },
1048
1074
  {
1049
1075
  "invocation": "workspace graph",
1050
1076
  "summary": "Query or export the evidence-backed workspace graph derived from the canonical model.",
@@ -1601,6 +1627,23 @@
1601
1627
  ]
1602
1628
  ]
1603
1629
  },
1630
+ {
1631
+ "artifactPath": ".workspai/reports/verified-goal-last-run.json",
1632
+ "schemaVersion": "workspai.verified-goal-status.v1",
1633
+ "contractPath": "contracts/workspace-intelligence/verified-goal-status.v1.json",
1634
+ "producerCommands": [
1635
+ [
1636
+ "workspace",
1637
+ "goal",
1638
+ "plan"
1639
+ ],
1640
+ [
1641
+ "workspace",
1642
+ "goal",
1643
+ "verify"
1644
+ ]
1645
+ ]
1646
+ },
1604
1647
  {
1605
1648
  "artifactPath": ".workspai/workspace-link.local.json",
1606
1649
  "schemaVersion": "project-workspace-link.v1",
@@ -1925,6 +1968,7 @@
1925
1968
  "diff",
1926
1969
  "impact",
1927
1970
  "verify",
1971
+ "goal",
1928
1972
  "graph",
1929
1973
  "watch",
1930
1974
  "context",
@@ -2280,6 +2324,65 @@
2280
2324
  "workspai workspace verify --from-impact .workspai/reports/workspace-impact-last-run.json --json"
2281
2325
  ]
2282
2326
  },
2327
+ {
2328
+ "id": "goal",
2329
+ "usage": "workspai workspace goal <plan|status|verify> <kind|goal-id> [--scope <scope>] [--target <percent>] [--json]",
2330
+ "summary": "Plan, resume, and evidence-verify a durable engineering goal for people and agents.",
2331
+ "options": [
2332
+ {
2333
+ "flag": "--workspace",
2334
+ "description": "Use an explicit workspace root instead of the nearest workspace."
2335
+ },
2336
+ {
2337
+ "flag": "--json",
2338
+ "description": "Emit machine-readable JSON."
2339
+ },
2340
+ {
2341
+ "flag": "--scope",
2342
+ "description": "Limit the operation to a bounded scope such as project:<name>."
2343
+ },
2344
+ {
2345
+ "flag": "--target",
2346
+ "description": "Set the required test coverage percentage (0–100)."
2347
+ },
2348
+ {
2349
+ "flag": "--allow-breaking",
2350
+ "description": "Allow a verified goal to use breaking dependency changes."
2351
+ },
2352
+ {
2353
+ "flag": "--allow-force",
2354
+ "description": "Allow a verified goal to use force-based repair commands."
2355
+ },
2356
+ {
2357
+ "flag": "--no-build",
2358
+ "description": "Do not require build validation for the selected verified goal."
2359
+ },
2360
+ {
2361
+ "flag": "--no-tests",
2362
+ "description": "Do not require test validation for the selected verified goal."
2363
+ },
2364
+ {
2365
+ "flag": "--no-run",
2366
+ "description": "Read current goal evidence without executing verification commands."
2367
+ },
2368
+ {
2369
+ "flag": "--reuse-intelligence",
2370
+ "description": "Reuse a just-completed canonical intelligence run while executing goal-specific checks."
2371
+ }
2372
+ ],
2373
+ "subactions": [
2374
+ "plan",
2375
+ "status",
2376
+ "verify"
2377
+ ],
2378
+ "artifact": ".workspai/reports/verified-goal-last-run.json",
2379
+ "examples": [
2380
+ "workspai workspace goal plan release-readiness --json",
2381
+ "workspai workspace goal plan dependency-security --scope project:api --json",
2382
+ "workspai workspace goal plan test-coverage --scope project:web --target 75 --json",
2383
+ "workspai workspace goal verify <goal-id> --json"
2384
+ ]
2385
+ },
2283
2386
  {
2284
2387
  "id": "graph",
2285
2388
  "usage": "workspai workspace graph [mode] [query|from] [to] [--json]",
@@ -3124,6 +3227,7 @@
3124
3227
  "impact",
3125
3228
  "contract",
3126
3229
  "verify",
3230
+ "goal",
3127
3231
  "graph",
3128
3232
  "watch",
3129
3233
  "context",