workspai 0.52.3 → 0.54.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.
- package/README.md +2 -0
- package/contracts/artifact-remediation-plan.v1.json +23 -3
- package/contracts/cli-runtime-command-inventory.v1.snapshot.json +36 -0
- package/contracts/doctor-project-evidence.v1.json +21 -2
- package/contracts/doctor-remediation-plan.v1.json +22 -3
- package/contracts/doctor-workspace-evidence.v1.json +21 -2
- package/contracts/extension-cli-compatibility.v1.json +24 -2
- package/contracts/published-contract-catalog.v1.json +113 -2
- package/contracts/runtime-command-surface.v1.json +216 -5
- package/contracts/studio-card-repair-capabilities.v1.json +378 -0
- package/contracts/workspace-intelligence/doctor-dependency-repair-transaction.v1.json +52 -13
- package/contracts/workspace-intelligence/workspace-repair-proposal.v1.json +78 -0
- package/contracts/workspace-intelligence/workspace-repair-transaction.v1.json +299 -0
- package/contracts/workspace-intelligence-chain.v1.json +6 -0
- package/contracts/workspace-repair-capabilities.v1.json +364 -0
- package/dist/analyze-AAZEJ4FC.js +1 -0
- package/dist/artifact-remediation-plan-A2PRCUNA.js +1 -0
- package/dist/autopilot-release-63XHNGR6.js +1 -0
- package/dist/{chunk-OTDGTAZJ.js → chunk-2FJW6GSW.js} +1 -1
- package/dist/chunk-3DONU3DU.js +1 -0
- package/dist/chunk-3LVJBH7V.js +5 -0
- package/dist/chunk-44VJHNZB.js +1 -0
- package/dist/chunk-4HTSZGEU.js +88 -0
- package/dist/chunk-5XDPQ3CB.js +1 -0
- package/dist/chunk-7AR5PDLD.js +1 -0
- package/dist/chunk-7KKP7RNB.js +3 -0
- package/dist/chunk-AMB42V2F.js +1 -0
- package/dist/chunk-BPACED27.js +8 -0
- package/dist/chunk-BYVTHIC3.js +2 -0
- package/dist/{chunk-6PBSAAS5.js → chunk-EBKYSDCX.js} +1 -1
- package/dist/chunk-FQLB4BIC.js +7 -0
- package/dist/{chunk-ICLYL3N5.js → chunk-FZCYTRBQ.js} +1 -1
- package/dist/{chunk-ZVOEPWQM.js → chunk-GDU7VP6G.js} +1 -1
- package/dist/chunk-H7P7SSUW.js +75 -0
- package/dist/{chunk-MZFSINY7.js → chunk-HRN5J6PW.js} +12 -12
- package/dist/chunk-HY3RMPW5.js +10 -0
- package/dist/chunk-I5CGTCP5.js +1 -0
- package/dist/chunk-IQQWQ3II.js +3 -0
- package/dist/chunk-KFKZOPZC.js +1 -0
- package/dist/{chunk-HPWLSLMC.js → chunk-KVUYAYTY.js} +1 -1
- package/dist/chunk-MQ73VS4E.js +2 -0
- package/dist/{chunk-2OIBHUVH.js → chunk-MRFN5ZQP.js} +1 -1
- package/dist/{chunk-4UVGTFOX.js → chunk-NYHVCFBT.js} +1 -1
- package/dist/{chunk-IO54DFWR.js → chunk-OLX6LX77.js} +1 -1
- package/dist/chunk-OUBBBC7T.js +36 -0
- package/dist/{chunk-WJY7ZXVJ.js → chunk-P7K5RHJC.js} +1 -1
- package/dist/chunk-QZ7PNMVP.js +1 -0
- package/dist/chunk-RA24WQLF.js +1 -0
- package/dist/{chunk-3PTIIBRY.js → chunk-RMXXK64P.js} +1 -1
- package/dist/{chunk-PTTZPDLX.js → chunk-S7Z4DP3P.js} +1 -1
- package/dist/chunk-SJLUE6AY.js +1 -0
- package/dist/chunk-UFOCUHG3.js +1 -0
- package/dist/chunk-WD2XDMGB.js +1 -0
- package/dist/chunk-WIO6L24E.js +2 -0
- package/dist/{chunk-QURMI7ID.js → chunk-WZA5ISAQ.js} +1 -1
- package/dist/chunk-XVRJVKOX.js +1 -0
- package/dist/chunk-ZLYEYHMH.js +1 -0
- package/dist/{create-ESK3CQPK.js → create-R6A7EHQZ.js} +1 -1
- package/dist/{doctor-MYRJ5BFF.js → doctor-HJ3O7SAO.js} +1 -1
- package/dist/index.d.ts +92 -23
- package/dist/index.js +246 -244
- package/dist/pipeline-TDQK5QYQ.js +5 -0
- package/dist/{project-intelligence-lens-Q4SZDI2N.js → project-intelligence-lens-ZOAWXYC5.js} +1 -1
- package/dist/project-test-coverage-44ZPCOPV.js +1 -0
- package/dist/{verified-goal-PSQF2TF2.js → verified-goal-S2PEBJUV.js} +1 -1
- package/dist/{workspace-LSOZM2CG.js → workspace-B53XH35L.js} +1 -1
- package/dist/{workspace-agent-sync-RZBQXCNJ.js → workspace-agent-sync-446AXPHJ.js} +1 -1
- package/dist/{workspace-archive-ZOWQXWJ6.js → workspace-archive-VHUPOBAV.js} +1 -1
- package/dist/{workspace-context-IYJKO5BN.js → workspace-context-XSECHC7O.js} +1 -1
- package/dist/{workspace-contract-AZFISDLS.js → workspace-contract-AYFTZIKM.js} +1 -1
- package/dist/workspace-explain-SZI2WAAD.js +1 -0
- package/dist/workspace-explain-contract-N2XQHAPM.js +1 -0
- package/dist/{workspace-feedback-LIHEWTNV.js → workspace-feedback-WXE7NVMV.js} +1 -1
- package/dist/{workspace-foundation-H5UTAUXQ.js → workspace-foundation-FFNCK5ZD.js} +1 -1
- package/dist/{workspace-graph-stream-KUDOZE73.js → workspace-graph-stream-AJPS45FD.js} +1 -1
- package/dist/{workspace-history-HULG5EFN.js → workspace-history-YY7YRDOH.js} +1 -1
- package/dist/{workspace-intelligence-A4UE4DZK.js → workspace-intelligence-FWRB47EJ.js} +1 -1
- package/dist/{workspace-intelligence-evaluation-AOLGHYHC.js → workspace-intelligence-evaluation-UP2K3L35.js} +1 -1
- package/dist/{workspace-intelligence-runner-5VAAMKMK.js → workspace-intelligence-runner-EQFLRVRL.js} +1 -1
- package/dist/workspace-intelligence-runtime-registry-MRSF7RTT.js +1 -0
- package/dist/{workspace-knowledge-graph-LEM6X5CM.js → workspace-knowledge-graph-BMMM2FUE.js} +1 -1
- package/dist/{workspace-mcp-serve-N2QPR7VJ.js → workspace-mcp-serve-COA4FMCA.js} +1 -1
- package/dist/{workspace-model-FJXX3NET.js → workspace-model-MNJOGBPP.js} +1 -1
- package/dist/{workspace-onboarding-IKFISWWY.js → workspace-onboarding-2B7CYZ5H.js} +1 -1
- package/dist/{workspace-readme-E2M35RJH.js → workspace-readme-4S6PJ74A.js} +1 -1
- package/dist/{workspace-registry-summary-HOQ3OBNT.js → workspace-registry-summary-GPJEL7K7.js} +1 -1
- package/dist/workspace-repair-engine-OZXOXVVV.js +3 -0
- package/dist/workspace-run-VPXRRHDK.js +1 -0
- package/dist/{workspace-verify-32AWCJQG.js → workspace-verify-C6HWHRLJ.js} +1 -1
- package/dist/{workspace-watch-4WVNB26E.js → workspace-watch-DLPHLF5R.js} +1 -1
- package/docs/README.md +2 -0
- package/docs/commands-reference.md +10 -8
- package/docs/contracts/ARTIFACT_CATALOG.md +27 -22
- package/docs/contracts/README.md +3 -0
- package/docs/contracts/RUNTIME_ACCEPTANCE_MATRIX.md +20 -11
- package/docs/doctor-command.md +16 -4
- package/docs/workspace-intelligence-runner.md +2 -1
- package/docs/workspace-knowledge-graph.md +6 -1
- package/docs/workspace-operations.md +3 -1
- package/docs/workspace-repair-engine.md +122 -0
- package/docs/workspace-run.md +17 -14
- package/package.json +3 -2
- package/scripts/enterprise-package-smoke.mjs +9 -6
- package/dist/analyze-J7VNZMDH.js +0 -1
- package/dist/artifact-remediation-plan-IDCJGULX.js +0 -3
- package/dist/autopilot-release-XRNPBYC6.js +0 -1
- package/dist/chunk-23JDMHSD.js +0 -86
- package/dist/chunk-2E6WGUN6.js +0 -1
- package/dist/chunk-2ZRMYFJG.js +0 -1
- package/dist/chunk-3D3PFPP5.js +0 -1
- package/dist/chunk-4D7DIGAB.js +0 -1
- package/dist/chunk-5XJRCP3D.js +0 -36
- package/dist/chunk-62K2H72S.js +0 -1
- package/dist/chunk-7MQZQ4UU.js +0 -1
- package/dist/chunk-AL237TSJ.js +0 -7
- package/dist/chunk-B4CPDK6J.js +0 -2
- package/dist/chunk-CZC5P2MF.js +0 -1
- package/dist/chunk-DZ4VKAXB.js +0 -75
- package/dist/chunk-FUPHQOJB.js +0 -1
- package/dist/chunk-GHB6QMQH.js +0 -1
- package/dist/chunk-LOCPNNSK.js +0 -1
- package/dist/chunk-LPCL4U4L.js +0 -1
- package/dist/chunk-MBRU3VWJ.js +0 -2
- package/dist/chunk-NHVHRBBV.js +0 -4
- package/dist/chunk-OXNV7OJM.js +0 -8
- package/dist/chunk-P4OSLAVD.js +0 -3
- package/dist/chunk-Q6CUJ3WF.js +0 -10
- package/dist/chunk-ULR66OJR.js +0 -2
- package/dist/chunk-XHRHNVCZ.js +0 -1
- package/dist/chunk-ZTKIBREF.js +0 -1
- package/dist/pipeline-P6DFMDL4.js +0 -5
- package/dist/project-test-coverage-A677ZLW3.js +0 -1
- package/dist/workspace-explain-26UGV7L4.js +0 -1
- package/dist/workspace-explain-contract-GIWPCCEF.js +0 -1
- package/dist/workspace-intelligence-runtime-registry-YOQ5GFFJ.js +0 -1
- package/dist/workspace-run-HRKCACGR.js +0 -1
package/docs/README.md
CHANGED
|
@@ -77,6 +77,7 @@ or use `import` to copy or clone one into the workspace.
|
|
|
77
77
|
| Create a workspace or project | [Creating workspaces and projects](./creating-workspaces-and-projects.md) | A registered project with canonical `.workspai` metadata |
|
|
78
78
|
| Bring an existing repository under governance | [Workspace operations](./workspace-operations.md#import-and-adoption) | Source stays in place with `adopt`, or is copied/cloned with `import` |
|
|
79
79
|
| Run the complete intelligence loop | [Unified runner](./workspace-intelligence-runner.md) | One ordered run report with durable stage evidence |
|
|
80
|
+
| Repair a blocker through an approved transaction | [Workspace Repair Engine](./workspace-repair-engine.md) | Checkpointed execution, validation, canonical verify, and safe rollback |
|
|
80
81
|
| Set a release, security, or coverage outcome | [Verified engineering goals](./workspace-intelligence-runner.md#verified-engineering-goals) | A durable success contract with a current evidence-backed verdict |
|
|
81
82
|
| Ask an architecture or dependency question | [Workspace Knowledge Graph](./workspace-knowledge-graph.md) | A bounded answer with proof references rather than the whole graph |
|
|
82
83
|
| Measure agent token, cost, and outcome efficiency | [Workspace Intelligence Evaluation](./workspace-intelligence-evaluation.md) | A live, provenance-aware report suitable for CLI, IDE, and CI |
|
|
@@ -100,6 +101,7 @@ with [AI Quickstart](./AI_QUICKSTART.md) only when that is your goal.
|
|
|
100
101
|
| [workspace-operations.md](./workspace-operations.md) | Import, adopt, snapshots, archives, contracts, infra |
|
|
101
102
|
| [workspace-run.md](./workspace-run.md) | Polyglot fleet orchestration (`workspace run`) |
|
|
102
103
|
| [workspace-intelligence-runner.md](./workspace-intelligence-runner.md) | Canonical unified runner, execution envelope, report schema, exit codes, failure propagation, and CI consumption |
|
|
104
|
+
| [workspace-repair-engine.md](./workspace-repair-engine.md) | CLI-owned plan, approval, checkpoint, execution, verification, decision, and rollback state machine |
|
|
103
105
|
| [workspace-knowledge-graph.md](./workspace-knowledge-graph.md) | Two-minute graph quickstart, proof model, AI/MCP consumption, performance, and honest token-efficiency measurement |
|
|
104
106
|
| [graph-benchmark-methodology.md](./graph-benchmark-methodology.md) | Reproducible payload-reduction benchmark, formulas, claim boundaries, and publication rules |
|
|
105
107
|
| [workspace-intelligence-evaluation.md](./workspace-intelligence-evaluation.md) | Provider usage, cost provenance, verified outcomes, comparison, and extension consumption |
|
|
@@ -62,11 +62,12 @@ npx workspai workspace goal plan <release-readiness|dependency-security|test-cov
|
|
|
62
62
|
npx workspai workspace goal status <goal-id> [--json]
|
|
63
63
|
npx workspai workspace goal verify <goal-id> [--no-run] [--reuse-intelligence] [--json]
|
|
64
64
|
npx workspai workspace model [--workspace <path>] [--json] [--write] [--strict] [--cache] [--incremental] [--include-paths] [--include-evidence] [--scan-depth <count>]
|
|
65
|
-
npx workspai workspace context --for-agent [codex|claude|cursor|orca] [--workspace <path>] [--json] [--write] [--agent-sync|--no-agent-sync] [--target <targets>] [--preset minimal|enterprise] [--include-evidence] [--scan-depth <count>]
|
|
65
|
+
npx workspai workspace context --for-agent [generic|codex|claude|cursor|orca] [--workspace <path>] [--scope project:<name>] [--json] [--write] [--agent-sync|--no-agent-sync] [--target <targets>] [--preset minimal|enterprise] [--project-grounding managed|local|off] [--include-evidence] [--scan-depth <count>] [--strict]
|
|
66
66
|
npx workspai workspace agent-sync [--workspace <path>] [--write] [--refresh-context] [--strict] [--json] [--preset minimal|enterprise] [--target all|vscode|agents,copilot,cursor,claude,codex,orca] [--project-grounding managed|local|off] [--experimental-hooks] [--hydrate-prompts]
|
|
67
67
|
npx workspai workspace remediation-plan [--json] [--write] [--ci] [--include-paths]
|
|
68
|
+
npx workspai workspace repair <capabilities|plan|propose|approve|decide|execute|resume|status|list|rollback|cancel> [--workspace <path>] [--card <id>] [--action-id <id>] [--project <name>] [--proposal <file>] [--transaction <id>] [--approved-by <actor>] [--decision <choice>] [--max-risk safe|guarded|invasive] [--allow-breaking] [--allow-force] [--no-auto-rollback] [--json]
|
|
68
69
|
npx workspai workspace snapshot [--workspace <path>] [--json] [--include-paths] [--include-evidence] [--scan-depth <count>]
|
|
69
|
-
npx workspai workspace diff --from <snapshot-or-
|
|
70
|
+
npx workspai workspace diff --from <snapshot-or-model|git[:ref]> [--workspace <path>] [--json] [--include-paths] [--include-evidence] [--scan-depth <count>] [--strict]
|
|
70
71
|
npx workspai workspace impact --from <workspace-diff-report> [--workspace <path>] [--scope project:<name>] [--json] [--include-paths] [--include-evidence] [--scan-depth <count>] [--strict]
|
|
71
72
|
npx workspai workspace verify [--from-impact <file>] [--workspace <path>] [--scope project:<name>] [--strict] [--json] [--include-paths] [--include-evidence] [--scan-depth <count>]
|
|
72
73
|
npx workspai workspace graph [emit|explain|search|benchmark|entities|evidence|path|overlay|dot|mermaid|jsonld|graphml|gexf] [key] [value] [--from <graph.json>] [--output <file>] [--limit <1..100>] [--workspace <path>] [--scope project:<name>] [--json] [--include-paths] [--include-evidence] [--scan-depth <count>]
|
|
@@ -95,7 +96,7 @@ npx workspai project restore <archive> [--name <project-name>] [--force] [--dry-
|
|
|
95
96
|
npx workspai project delete <name> [--permanent --confirm <name>] [--dry-run] [--json]
|
|
96
97
|
npx workspai project workspace [status|relink] [--workspace <path>] [--project <path>] [--json]
|
|
97
98
|
npx workspai workspace init
|
|
98
|
-
npx workspai workspace run <init|test|build|start> [--affected] [--blast-radius] [--since <ref>] [--parallel] [--max-workers <n>] [--strict] [--json]
|
|
99
|
+
npx workspai workspace run <init|test|build|start|custom-stage> [--workspace <path>] [--scope project:<name>] [--affected] [--blast-radius] [--since <ref>] [--parallel] [--max-workers <n>] [--continue-on-error] [--reuse-passed] [--strict] [--no-gates] [--json]
|
|
99
100
|
npx workspai infra plan [--workspace <path>] [--json] [--dry-run] [--verbose]
|
|
100
101
|
npx workspai infra up [--workspace <path>] [--no-plan] [--build]
|
|
101
102
|
npx workspai infra down [--workspace <path>] [--volumes]
|
|
@@ -162,8 +163,10 @@ artifacts, proof additions/removals/content changes, bounded one-hop impact,
|
|
|
162
163
|
and a risk summary. Observation timestamps and freshness alone do not create
|
|
163
164
|
false change noise. Query indexes are cached
|
|
164
165
|
per immutable graph object and invalidated automatically when a new graph is
|
|
165
|
-
built. `dot` and `mermaid` intentionally remain project-topology renderers
|
|
166
|
-
emit raw text for direct piping.
|
|
166
|
+
built. `dot` and `mermaid` intentionally remain project-topology renderers.
|
|
167
|
+
Without `--output` they emit raw text for direct piping. With `--output` they
|
|
168
|
+
write a durable file; adding `--json` returns a structured operation receipt
|
|
169
|
+
with the format, node and edge counts, and resolved output path.
|
|
167
170
|
|
|
168
171
|
Every integrated `workspace graph` Knowledge Graph is derived from the
|
|
169
172
|
canonical Workspace Model. Its contract fixes the source artifact to
|
|
@@ -182,9 +185,8 @@ assert equivalent answer quality or model-specific billing savings.
|
|
|
182
185
|
|
|
183
186
|
`workspace graph jsonld|graphml|gexf` exports the current derived,
|
|
184
187
|
evidence-backed Knowledge Graph for semantic, graph-analysis, and interactive
|
|
185
|
-
2D/3D consumers.
|
|
186
|
-
|
|
187
|
-
documentation-oriented renderings.
|
|
188
|
+
2D/3D consumers. All five export modes accept `--output <file>`; Mermaid and
|
|
189
|
+
DOT remain compact documentation-oriented project-topology renderings.
|
|
188
190
|
|
|
189
191
|
`workspace eval` records provider/tokenizer/estimate provenance, tool activity,
|
|
190
192
|
cost, latency, and verified task outcome. `eval record` accepts a
|
|
@@ -25,12 +25,12 @@ exclude the canonical marker.
|
|
|
25
25
|
These paths are relative to each registered project root, not the workspace
|
|
26
26
|
root:
|
|
27
27
|
|
|
28
|
-
| Artifact
|
|
29
|
-
|
|
|
30
|
-
| `.workspai/workspace-link.local.json`
|
|
31
|
-
| `.workspai/reports/project-context-agent.json` | Project lens reconciliation and `workspace agent-sync --write`
|
|
32
|
-
| `.workspai/PROJECT-GROUNDING.md`
|
|
33
|
-
| `AGENTS.md` managed section
|
|
28
|
+
| Artifact | Writer | Schema / format | Portability and reader purpose |
|
|
29
|
+
| ---------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------- | ------------------------------------------------------------------------------------- |
|
|
30
|
+
| `.workspai/workspace-link.local.json` | `adopt`, `import`, project creation, `workspace sync`, `project workspace relink` | `project-workspace-link.v1` | Machine-local absolute binding; always gitignored and never an agent evidence payload |
|
|
31
|
+
| `.workspai/reports/project-context-agent.json` | Project lens reconciliation and `workspace agent-sync --write` | `project-context-agent.v1` | Portable bounded model/graph/proof projection for project-local agents |
|
|
32
|
+
| `.workspai/PROJECT-GROUNDING.md` | Project lens reconciliation | Markdown | Portable human/agent entry guide with path-free workspace references |
|
|
33
|
+
| `AGENTS.md` managed section | Project lens reconciliation in `managed` mode | Managed Markdown block | Preserves user content and routes compatible agents to project/workspace evidence |
|
|
34
34
|
|
|
35
35
|
The project link is validated against the canonical workspace contract and a
|
|
36
36
|
SHA-256 binding over workspace identity, project identity, portable relative
|
|
@@ -52,19 +52,21 @@ and model/graph freshness for the selected project.
|
|
|
52
52
|
|
|
53
53
|
## Governance evidence loop
|
|
54
54
|
|
|
55
|
-
| Command | Primary artifact | Schema version
|
|
56
|
-
| ------------------------------------ | ----------------------------------------------------------- |
|
|
57
|
-
| `doctor workspace` | `.workspai/reports/doctor-last-run.json` | `doctor-workspace-evidence-v1`
|
|
58
|
-
| `doctor project` | `.workspai/reports/doctor-project-last-run.json` | `doctor-project-evidence-v1`
|
|
59
|
-
| `project coverage` | `.workspai/reports/project-test-coverage-last-run.json` | `workspai.project-test-coverage.v1`
|
|
60
|
-
| `doctor * --plan` | `.workspai/reports/doctor-remediation-plan-last-run.json` | `doctor-remediation-plan-v2`
|
|
61
|
-
| `doctor * --fix/--apply` | `.workspai/reports/doctor-fix-result-last-run.json` | `rapidkit-doctor-fix-result-v1`
|
|
62
|
-
| `workspace remediation-plan --write` | `.workspai/reports/artifact-remediation-plan-last-run.json` | `artifact-remediation-plan-v1`
|
|
63
|
-
| `
|
|
64
|
-
| `
|
|
65
|
-
| `
|
|
66
|
-
| `
|
|
67
|
-
|
|
|
55
|
+
| Command | Primary artifact | Schema version | JSON Schema |
|
|
56
|
+
| ------------------------------------ | ----------------------------------------------------------- | ------------------------------------------- | ----------------------------------------------------------------------- |
|
|
57
|
+
| `doctor workspace` | `.workspai/reports/doctor-last-run.json` | `doctor-workspace-evidence-v1` | `contracts/doctor-workspace-evidence.v1.json` |
|
|
58
|
+
| `doctor project` | `.workspai/reports/doctor-project-last-run.json` | `doctor-project-evidence-v1` | `contracts/doctor-project-evidence.v1.json` |
|
|
59
|
+
| `project coverage` | `.workspai/reports/project-test-coverage-last-run.json` | `workspai.project-test-coverage.v1` | `contracts/project-test-coverage.v1.json` |
|
|
60
|
+
| `doctor * --plan` | `.workspai/reports/doctor-remediation-plan-last-run.json` | `doctor-remediation-plan-v2` | `contracts/doctor-remediation-plan.v2.json` |
|
|
61
|
+
| `doctor * --fix/--apply` | `.workspai/reports/doctor-fix-result-last-run.json` | `rapidkit-doctor-fix-result-v1` | `contracts/workspace-intelligence/doctor-fix-result.v1.json` |
|
|
62
|
+
| `workspace remediation-plan --write` | `.workspai/reports/artifact-remediation-plan-last-run.json` | `artifact-remediation-plan-v1` | `contracts/artifact-remediation-plan.v1.json` |
|
|
63
|
+
| `workspace repair *` | `.workspai/reports/workspace-repair-last-run.json` | `workspai.workspace-repair-transaction.v1` | `contracts/workspace-intelligence/workspace-repair-transaction.v1.json` |
|
|
64
|
+
| `workspace repair capabilities` | CLI capability output | `workspai.workspace-repair-capabilities.v1` | `contracts/workspace-repair-capabilities.v1.json` |
|
|
65
|
+
| `analyze` | `.workspai/reports/analyze-last-run.json` | `rapidkit-analyze-v1` | `contracts/analyze-last-run.v1.json` |
|
|
66
|
+
| `readiness` | `.workspai/reports/release-readiness-last-run.json` | `release-readiness-v1` | `contracts/release-readiness.v1.json` |
|
|
67
|
+
| `pipeline` | `.workspai/reports/pipeline-last-run.json` | `rapidkit-pipeline-v1` | `contracts/pipeline-last-run.v1.json` |
|
|
68
|
+
| `autopilot release` | `.workspai/reports/autopilot-release-last-run.json` | `autopilot-release-v1` | `contracts/autopilot-release.v1.json` |
|
|
69
|
+
| | `.workspai/reports/autopilot-release.json` | (alias, same payload) | `contracts/autopilot-release.v1.json` |
|
|
68
70
|
|
|
69
71
|
Side/cache (not gates): `.workspai/reports/doctor-workspace-cache.json` (`doctor-workspace-cache-v2`).
|
|
70
72
|
|
|
@@ -146,10 +148,13 @@ graph whose binding does not match the current model.
|
|
|
146
148
|
projections from that bound graph. These files are portable exports, not competing
|
|
147
149
|
canonical or `last-run` artifacts: JSON-LD preserves semantic identifiers,
|
|
148
150
|
GraphML targets general graph tooling, and GEXF targets exploration and
|
|
149
|
-
visualization tools.
|
|
150
|
-
and diagrams.
|
|
151
|
+
visualization tools. `workspace graph dot|mermaid --output <path>` writes the
|
|
152
|
+
bounded project-topology projections used by docs and diagrams. For DOT and
|
|
153
|
+
Mermaid, `--output --json` returns a `cli-operation-result-v1` receipt containing
|
|
154
|
+
the resolved output path; omitting `--output` keeps raw graph text on stdout.
|
|
151
155
|
|
|
152
|
-
**CLI semantics:** `workspace diff --from` expects a **model
|
|
156
|
+
**CLI semantics:** `workspace diff --from` expects a **model, snapshot, or explicit
|
|
157
|
+
Git (`git[:ref]`)** baseline. `workspace impact --from` expects a **diff report**.
|
|
153
158
|
Persisted artifacts retain their artifact schema. JSON command projections that add operation metadata
|
|
154
159
|
such as `outputPath`, `status`, or structured errors use
|
|
155
160
|
`contracts/cli-operation-result.v1.json`; the canonical artifact is nested under `artifact`.
|
package/docs/contracts/README.md
CHANGED
|
@@ -61,6 +61,9 @@ Published under `../../contracts/` (not duplicated in this folder):
|
|
|
61
61
|
- `doctor-workspace-evidence.v1.json` / `doctor-project-evidence.v1.json` — doctor evidence
|
|
62
62
|
- `doctor-remediation-plan.v2.json` — canonical persisted Doctor fix/plan Studio handoff contract (`v1` path is a deprecated compatibility alias)
|
|
63
63
|
- `artifact-remediation-plan.v1.json` — cross-artifact Studio handoff for Bootstrap, Analyze, Readiness, Pipeline, Workspace Run, Workspace Verify, and Doctor plan bridging
|
|
64
|
+
- `workspace-intelligence/workspace-repair-proposal.v1.json` — bounded, hash-pinned source changes and optional runtime-native validation proposed by an IDE model; proposals never execute themselves
|
|
65
|
+
- `workspace-intelligence/workspace-repair-transaction.v1.json` — durable CLI-owned repair state from immutable plan and approval through checkpoint, execution, canonical verification, rollback, or an explicit decision
|
|
66
|
+
- `workspace-repair-capabilities.v1.json` — canonical multi-runtime adapter inventory, conditional support boundaries, preflight policy, and fail-closed repair invariants
|
|
64
67
|
- `analyze-last-run.v1.json` — analyze evidence
|
|
65
68
|
- `pipeline-last-run.v1.json` — governance pipeline orchestration
|
|
66
69
|
- `project-entry-capability.v1.json` — open-ended adopt/import contract for readable projects
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Workspai Runtime Acceptance Matrix
|
|
2
2
|
|
|
3
|
-
Last updated: 2026-06
|
|
3
|
+
Last updated: 2026-08-06
|
|
4
4
|
|
|
5
5
|
This document defines the executable acceptance gate for Workspai workspace
|
|
6
6
|
and project orchestration. It complements
|
|
@@ -14,8 +14,9 @@ workspace.
|
|
|
14
14
|
npm run test:runtime-matrix
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
-
For a stricter prepared-machine run where Go, Java, .NET,
|
|
18
|
-
toolchains are
|
|
17
|
+
For a stricter prepared-machine run where the supported Go, Java, .NET,
|
|
18
|
+
Python/RapidKit Core, Node, Rust, and PHP/Composer toolchains are healthy and
|
|
19
|
+
dependency registries are reachable (or already cached):
|
|
19
20
|
|
|
20
21
|
```bash
|
|
21
22
|
npm run test:runtime-matrix:full
|
|
@@ -32,7 +33,7 @@ node scripts/runtime-acceptance-matrix.mjs --report ./runtime-acceptance-report.
|
|
|
32
33
|
| Mode | Purpose | External runtime requirement |
|
|
33
34
|
| -------- | ----------------------------------------------------------------------- | ---------------------------- |
|
|
34
35
|
| default | Scaffold, import, contract, doctor, archive, and actionable diagnostics | no |
|
|
35
|
-
| `--full` |
|
|
36
|
+
| `--full` | Supported lifecycle commands pass; unsupported commands reject cleanly | yes |
|
|
36
37
|
|
|
37
38
|
Default mode is intentionally network-safe. It creates a minimal workspace,
|
|
38
39
|
uses `--skip-install` for scaffolded projects, and accepts missing-runtime
|
|
@@ -48,12 +49,12 @@ The matrix verifies:
|
|
|
48
49
|
`info`, `frameworks`, `modules`, and `license`. The normal
|
|
49
50
|
`workspai --version` path remains wrapper-owned.
|
|
50
51
|
- `create workspace` with a Python-free minimal profile.
|
|
51
|
-
- `create project` for npm-backed Go Fiber, Go Gin, Spring Boot,
|
|
52
|
-
|
|
52
|
+
- `create project` for npm-backed Go Fiber, Go Gin, Spring Boot, ASP.NET Core
|
|
53
|
+
Clean Web API, and Rust Axum kits.
|
|
53
54
|
- `create project` for core-backed FastAPI and NestJS kits through the current
|
|
54
55
|
bridge/fallback path.
|
|
55
|
-
- `import` for
|
|
56
|
-
Laravel/PHP, Rails/Ruby, Axum/Rust, and generic unknown backends.
|
|
56
|
+
- `import` for existing projects across supported and observed runtime lanes,
|
|
57
|
+
including Laravel/PHP, Rails/Ruby, Axum/Rust, and generic unknown backends.
|
|
57
58
|
- `workspace sync`, `workspace policy show/set`.
|
|
58
59
|
- Snapshot safety flows: create/list/inspect/restore dry-run.
|
|
59
60
|
- Project safety flows: archive list, archive dry-run, and delete dry-run.
|
|
@@ -62,13 +63,20 @@ The matrix verifies:
|
|
|
62
63
|
- `project commands --json` capability reporting for every generated/imported
|
|
63
64
|
project.
|
|
64
65
|
- Project lifecycle `init`, `help`, `test`, `build`, `lint`, and `format` in
|
|
65
|
-
default and full modes
|
|
66
|
-
|
|
66
|
+
default and full modes. The project capability map is authoritative:
|
|
67
|
+
supported commands run, unsupported commands must reject cleanly, and
|
|
68
|
+
missing runtime/tooling must produce actionable setup diagnostics in default
|
|
69
|
+
mode.
|
|
67
70
|
- `workspace run init/test/build`, including default-mode actionable setup
|
|
68
71
|
failures and full-mode hard pass requirements.
|
|
69
72
|
- Rejection of unsupported fleet stages such as `workspace run dev`.
|
|
70
73
|
- Portable archive export, inspect, strict verify, doctor, and hydrate preview.
|
|
71
74
|
|
|
75
|
+
The contract-driven official-generator smoke matrix complements this runtime
|
|
76
|
+
matrix for network-backed official scaffolds such as Laravel and the frontend,
|
|
77
|
+
desktop, and extension generator families. Runtime acceptance proves workspace
|
|
78
|
+
orchestration; official-generator smoke proves the upstream scaffold itself.
|
|
79
|
+
|
|
72
80
|
## Report Contract
|
|
73
81
|
|
|
74
82
|
Each run writes a JSON report with:
|
|
@@ -93,6 +101,7 @@ For npm releases:
|
|
|
93
101
|
1. Run `npm run test:runtime-matrix` locally before publishing a release
|
|
94
102
|
candidate.
|
|
95
103
|
2. Run `npm run test:runtime-matrix:full` on at least one prepared release
|
|
96
|
-
machine with
|
|
104
|
+
machine with all extended toolchains used by the matrix installed, a healthy
|
|
105
|
+
RapidKit Core environment, and dependency registry access or warm caches.
|
|
97
106
|
3. Any newly added first-class or extended runtime must add at least one matrix
|
|
98
107
|
scenario before release.
|
package/docs/doctor-command.md
CHANGED
|
@@ -155,6 +155,12 @@ unparseable response, or unsupported zero-configuration workflow is explicit
|
|
|
155
155
|
evidence—not a zero-vulnerability result. Compatible automatic fixes never use
|
|
156
156
|
force.
|
|
157
157
|
|
|
158
|
+
When a declared dependency tree has not been installed, Doctor emits a typed
|
|
159
|
+
`dependency-materialization` capability instead of only a human shell hint. The capability
|
|
160
|
+
records the runtime-native executable, project scope, observable installed-tree state, and
|
|
161
|
+
required validation stages. An unchanged manifest or lockfile is valid in this case: successful
|
|
162
|
+
installation plus declared test/build checks and canonical verification are the completion proof.
|
|
163
|
+
|
|
158
164
|
When a scanner has no direct automatic fix—or advertises a downgrade—Doctor
|
|
159
165
|
does not conclude that the project has no compatible repair. It emits guarded
|
|
160
166
|
`resolutionCandidates` for the affected direct or transitive dependency. Each
|
|
@@ -442,7 +448,7 @@ jobs:
|
|
|
442
448
|
with:
|
|
443
449
|
node-version: '20.19.0'
|
|
444
450
|
- run: npm ci
|
|
445
|
-
- run: npx workspai doctor
|
|
451
|
+
- run: npx workspai doctor workspace --ci --json
|
|
446
452
|
```
|
|
447
453
|
|
|
448
454
|
## Exit Codes
|
|
@@ -556,15 +562,21 @@ These fields are designed for release gates and extension timeline cards that mu
|
|
|
556
562
|
|
|
557
563
|
- `npx workspai doctor workspace --strict` exits `1` when health score reports errors **or** warnings.
|
|
558
564
|
- `npx workspai doctor workspace --ci` exits `1` on errors and `2` on warnings only (errors take precedence).
|
|
559
|
-
- Without `--strict` or `--ci`,
|
|
565
|
+
- Without `--strict` or `--ci`, the local profile exits `1` for errors and `0`
|
|
566
|
+
for passed or warning-only results. Warnings remain advisory; errors never
|
|
567
|
+
become a successful local result.
|
|
560
568
|
|
|
561
569
|
## Workspace fix behavior
|
|
562
570
|
|
|
563
|
-
- Reuses cached project scans when
|
|
571
|
+
- Reuses cached project scans only when their inputs and Doctor scoring/safety
|
|
572
|
+
policy still match; stale policy signatures force a rescan. Cached payloads
|
|
573
|
+
are re-sanitized before they can become current evidence.
|
|
564
574
|
- `--fix` runs interactive remediation; `--plan` prints remediation plan only; `--apply` applies non-interactively.
|
|
565
575
|
- `--plan` cannot be combined with `--fix` or `--apply`.
|
|
566
576
|
- JSON fix/apply output includes the same `doctor-remediation-plan-v2` contract used by Studio.
|
|
567
|
-
- Advisory warnings do not automatically become shell fix commands.
|
|
577
|
+
- Advisory warnings do not automatically become shell fix commands. URLs stay
|
|
578
|
+
in issue guidance and recommendations; Doctor never exposes a documentation
|
|
579
|
+
URL as an executable `fixCommand` or repair action.
|
|
568
580
|
- Go `go mod tidy` fixes are skipped when the Go toolchain is unavailable.
|
|
569
581
|
|
|
570
582
|
## Workspace JSON fields (AI/automation)
|
|
@@ -7,7 +7,8 @@ Use one command when you want the latest answer to these questions:
|
|
|
7
7
|
- Is the workspace healthy and ready?
|
|
8
8
|
- What should developers, CI, IDEs, and AI tools read?
|
|
9
9
|
|
|
10
|
-
Run it from a Workspai workspace root
|
|
10
|
+
Run it from a Workspai workspace root or any project with a validated workspace
|
|
11
|
+
binding:
|
|
11
12
|
|
|
12
13
|
```bash
|
|
13
14
|
npx workspai workspace intelligence run --for-agent generic --strict --json
|
|
@@ -107,6 +107,7 @@ because it appears in more files. No embedding service or model call is involved
|
|
|
107
107
|
| How are two things connected? | `workspace graph path <from> <to> --json` |
|
|
108
108
|
| What changed between graph revisions? | `workspace graph overlay --from <graph.json> --json` |
|
|
109
109
|
| What is the full portable graph? | `workspace graph emit --json` |
|
|
110
|
+
| How do I render the project topology? | `workspace graph dot\|mermaid [--output <file>]` |
|
|
110
111
|
| How do I export to semantic or graph-analysis tools? | `workspace graph jsonld\|graphml\|gexf --output <file>` |
|
|
111
112
|
| How much retrieval payload did one query avoid? | `workspace graph benchmark <query> --limit <n> --json` |
|
|
112
113
|
| How should an MCP-compatible agent retrieve context? | `workspace mcp serve` → `searchWorkspaceGraph` |
|
|
@@ -330,12 +331,16 @@ deterministic projections of that same graph revision:
|
|
|
330
331
|
```bash
|
|
331
332
|
npx workspai workspace graph mermaid
|
|
332
333
|
npx workspai workspace graph dot
|
|
334
|
+
npx workspai workspace graph mermaid --output workspace-graph.mmd --json
|
|
335
|
+
npx workspai workspace graph dot --output workspace-graph.dot --json
|
|
333
336
|
npx workspai workspace graph jsonld --output workspace-graph.jsonld
|
|
334
337
|
npx workspai workspace graph graphml --output workspace-graph.graphml
|
|
335
338
|
npx workspai workspace graph gexf --output workspace-graph.gexf
|
|
336
339
|
```
|
|
337
340
|
|
|
338
|
-
- Mermaid and DOT are suited to documentation and architecture diagrams.
|
|
341
|
+
- Mermaid and DOT are suited to documentation and architecture diagrams. They
|
|
342
|
+
print raw text when `--output` is omitted. With `--output --json`, the file is
|
|
343
|
+
written and stdout is a structured operation receipt rather than graph text.
|
|
339
344
|
- JSON-LD carries semantic identities, relations, and proof references.
|
|
340
345
|
- GraphML and GEXF work with graph-analysis and interactive visualization tools.
|
|
341
346
|
- The canonical JSON, JSON-LD, GraphML, and GEXF outputs can drive 2D or 3D
|
|
@@ -388,7 +388,9 @@ before consuming its report from CI, IDE, or agent integrations.
|
|
|
388
388
|
presence check. Required project evidence must match the affected project in
|
|
389
389
|
`workspace-run-last.json`, and evidence generated before the current impact
|
|
390
390
|
report is treated as stale and blocking. Re-run the recommended commands from
|
|
391
|
-
`workspace impact --
|
|
391
|
+
`workspace impact --from .workspai/reports/workspace-model-diff-last-run.json --json` before using
|
|
392
|
+
`workspace verify --strict` in CI. Both `diff` and `impact` require an explicit trusted input; the
|
|
393
|
+
CLI never guesses which historical baseline or diff should authorize a release decision.
|
|
392
394
|
|
|
393
395
|
For doctor CI exit codes and JSON evidence fields, see [doctor-command.md](./doctor-command.md).
|
|
394
396
|
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
# Workspace Repair Engine
|
|
2
|
+
|
|
3
|
+
The Workspace Repair Engine is the CLI-owned execution boundary for blocker repair. IDEs,
|
|
4
|
+
agents, and CI may request work and render progress, but they do not invent commands or decide
|
|
5
|
+
that a repair is complete.
|
|
6
|
+
|
|
7
|
+
```text
|
|
8
|
+
canonical evidence
|
|
9
|
+
↓
|
|
10
|
+
plan → preconditions → approval → checkpoint → execute
|
|
11
|
+
→ reconcile → audit → test → build → canonical verify
|
|
12
|
+
→ closed | rolled-back | decision-required
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Command flow
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# Inspect the exact adapter and fail-closed policy contract first.
|
|
19
|
+
npx workspai workspace repair capabilities --json
|
|
20
|
+
|
|
21
|
+
# 1. Build an immutable plan from current governed evidence.
|
|
22
|
+
npx workspai workspace repair plan --card doctor --project api --json
|
|
23
|
+
|
|
24
|
+
# Or compile hash-pinned model output into the same CLI-owned transaction.
|
|
25
|
+
npx workspai workspace repair propose \
|
|
26
|
+
--proposal .workspai/repair/inbox/proposal.json \
|
|
27
|
+
--json
|
|
28
|
+
|
|
29
|
+
# 2. Bind approval to the exact plan hash returned above.
|
|
30
|
+
npx workspai workspace repair approve \
|
|
31
|
+
--transaction <transaction-id> \
|
|
32
|
+
--approved-by local-user \
|
|
33
|
+
--json
|
|
34
|
+
|
|
35
|
+
# 3. Execute or resume the durable transaction.
|
|
36
|
+
npx workspai workspace repair execute --transaction <transaction-id> --json
|
|
37
|
+
npx workspai workspace repair resume --transaction <transaction-id> --json
|
|
38
|
+
|
|
39
|
+
# Inspect or resolve a terminal decision.
|
|
40
|
+
npx workspai workspace repair status --transaction <transaction-id> --json
|
|
41
|
+
npx workspai workspace repair decide --transaction <transaction-id> --decision <available-option> --json
|
|
42
|
+
npx workspai workspace repair rollback --transaction <transaction-id> --json
|
|
43
|
+
npx workspai workspace repair cancel --transaction <transaction-id> --json
|
|
44
|
+
npx workspai workspace repair list --json
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
`capabilities` is global discovery and works outside a Workspai workspace. When it is run from
|
|
48
|
+
an attached project or workspace, the same response also includes local adapter inspection. All
|
|
49
|
+
other repair actions require an unambiguous canonical workspace root.
|
|
50
|
+
|
|
51
|
+
`plan` never mutates source files. `approve` never executes work. `execute` refuses an expired,
|
|
52
|
+
tampered, unapproved, or precondition-stale plan.
|
|
53
|
+
|
|
54
|
+
`propose` is the dynamic repair boundary for IDE models. A model may provide bounded complete-file
|
|
55
|
+
writes/deletes and optional structured audit/test/build commands. The CLI rejects stale source
|
|
56
|
+
hashes, duplicate targets, workspace evidence edits, Git internals, installed dependency trees,
|
|
57
|
+
secret-bearing files, path/link escapes, and ungoverned commands. Dependency manifest proposals
|
|
58
|
+
still receive CLI-inferred reconcile, audit, test, and build stages before strict verification.
|
|
59
|
+
|
|
60
|
+
Doctor also publishes a distinct `dependency-materialization` transaction when manifests exist
|
|
61
|
+
but the installed runtime tree is missing. Its install or restore invocation is the repair stage
|
|
62
|
+
itself; it does not require a manifest or lockfile diff and is never run twice. Declared tests and
|
|
63
|
+
builds, followed by canonical verification, prove closure. Dependency-security transactions still
|
|
64
|
+
require manifest/lock reconciliation and a clean focused audit.
|
|
65
|
+
|
|
66
|
+
## Safety and ownership
|
|
67
|
+
|
|
68
|
+
- The immutable plan hash covers target, policy, preconditions, structured invocations, risk,
|
|
69
|
+
and the existence/hash baseline of every checkpointed path.
|
|
70
|
+
- Only typed Doctor operations and allowlisted structured process invocations are executable.
|
|
71
|
+
Shell evaluation is disabled, secret-like environment variables are removed, and autonomous
|
|
72
|
+
package fetching through `npx` is rejected.
|
|
73
|
+
- Force and breaking changes require explicit policy approval. A different policy means a new
|
|
74
|
+
plan and a new approval.
|
|
75
|
+
- Files are bounded to the workspace, regular files only, at most 5 MiB each and 25 MiB per
|
|
76
|
+
transaction. A source change between planning and execution expires approval.
|
|
77
|
+
- A workspace-level owner lock prevents concurrent repair writers and is not stolen from a live
|
|
78
|
+
process merely because a long transaction exceeded a wall-clock threshold. Resume skips
|
|
79
|
+
durable passed stages.
|
|
80
|
+
- Required stage failure triggers bounded rollback by default. Before restoring the first byte,
|
|
81
|
+
rollback verifies every target and backup hash, rejects path/link conflicts, restores files
|
|
82
|
+
atomically with their recorded modes, and reconciles installed dependencies with the restored
|
|
83
|
+
manifests and lockfiles. It reports `decision-required` if any part cannot be proven complete.
|
|
84
|
+
- Strict canonical Workspace Intelligence always runs before closure. The receipt separates
|
|
85
|
+
`verification.targetStatus` from `verification.workspaceStatus`: a proven selected action may
|
|
86
|
+
close while unrelated governed findings keep the workspace blocked. Those findings remain the
|
|
87
|
+
next repair target and never trigger rollback of a valid bounded repair.
|
|
88
|
+
- Required executables are resolved before approval and again immediately before execution. A
|
|
89
|
+
missing or changed toolchain expires approval instead of starting a partial transaction.
|
|
90
|
+
|
|
91
|
+
## Runtime adapters
|
|
92
|
+
|
|
93
|
+
Dependency transactions are package-manager aware. The canonical inventory is published at
|
|
94
|
+
`contracts/workspace-repair-capabilities.v1.json` and exposed through `workspace repair
|
|
95
|
+
capabilities`. It distinguishes full support from conditional support instead of treating “the
|
|
96
|
+
command exists” as proof that the whole repair is executable.
|
|
97
|
+
|
|
98
|
+
Node, Python, Go, Rust, Composer, Bundler, Elixir, Deno, .NET, Maven, Gradle, Clojure, and sbt
|
|
99
|
+
surfaces are detected independently. A genuinely multi-runtime project receives collision-free
|
|
100
|
+
stages for every applicable adapter. Doctor dependency actions remain bound to the ecosystem
|
|
101
|
+
declared by their evidence so an npm finding cannot accidentally trigger an unrelated Python
|
|
102
|
+
transaction. If a manifest, required executable, isolated environment, project-declared
|
|
103
|
+
validation, or audit surface is unavailable, the engine returns `decision-required`; it never
|
|
104
|
+
hides the gap behind a model fallback.
|
|
105
|
+
|
|
106
|
+
## Consumer contract
|
|
107
|
+
|
|
108
|
+
The latest transaction is written to:
|
|
109
|
+
|
|
110
|
+
```text
|
|
111
|
+
.workspai/reports/workspace-repair-last-run.json
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
The schema is
|
|
115
|
+
`contracts/workspace-intelligence/workspace-repair-transaction.v1.json`. Full transaction state
|
|
116
|
+
is durable under `.workspai/repair/transactions/<transaction-id>/`. Consumers should discover
|
|
117
|
+
the `workspace repair` action from `runtime-command-surface.v1.json`, render its stages and
|
|
118
|
+
events, and send explicit user decisions back to the CLI. They must not reproduce the executor.
|
|
119
|
+
|
|
120
|
+
IDE-generated input follows
|
|
121
|
+
`contracts/workspace-intelligence/workspace-repair-proposal.v1.json`. The proposal is evidence,
|
|
122
|
+
not authority: only the approved transaction created by the CLI may mutate the workspace.
|
package/docs/workspace-run.md
CHANGED
|
@@ -16,21 +16,18 @@ npx workspai workspace run build --json --max-workers 8
|
|
|
16
16
|
`.rapidkit/workspace-dependency-graph.json` fallback. It expands direct
|
|
17
17
|
`dependsOn` and publish/consume event relationships.
|
|
18
18
|
|
|
19
|
-
##
|
|
19
|
+
## Runtime support
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
| Ruby | Rails, Sinatra, RSpec | Observed |
|
|
32
|
-
|
|
33
|
-
Public scaffold/import/lifecycle contract: [contracts/RUNTIME_SUPPORT_MATRIX.md](./contracts/RUNTIME_SUPPORT_MATRIX.md).
|
|
21
|
+
`workspace run` does not infer support from a hard-coded framework list. It
|
|
22
|
+
reads the effective project capability map produced by the runtime adapters and
|
|
23
|
+
project metadata. First-class and extended Node.js, Python, Go, Java, .NET,
|
|
24
|
+
PHP, and Rust projects can expose governed lifecycle stages; observed runtimes
|
|
25
|
+
run only commands explicitly declared by their project context.
|
|
26
|
+
|
|
27
|
+
The authoritative scaffold/import/lifecycle tiers are in
|
|
28
|
+
[contracts/RUNTIME_SUPPORT_MATRIX.md](./contracts/RUNTIME_SUPPORT_MATRIX.md).
|
|
29
|
+
Inspect one project's effective surface with
|
|
30
|
+
`npx workspai project commands --json` before orchestration.
|
|
34
31
|
|
|
35
32
|
## Enterprise configuration
|
|
36
33
|
|
|
@@ -83,6 +80,12 @@ cat test-results.json | jq '.projects[] | {path, status, errorCategory}'
|
|
|
83
80
|
```
|
|
84
81
|
|
|
85
82
|
`errorCategory` values: `setup`, `test-failure`, `runtime`, `dependency`, `timeout`.
|
|
83
|
+
For failures, `reason` and `errorMessage` select the most specific terminal
|
|
84
|
+
failure signal instead of an earlier readiness warning.
|
|
85
|
+
`failureDiagnostic.outputExcerpt` is a bounded head-and-tail excerpt, preserving
|
|
86
|
+
both command context and the final root cause without copying the full log.
|
|
87
|
+
Consumers should render these fields rather than reconstructing a diagnosis
|
|
88
|
+
from arbitrary stdout lines.
|
|
86
89
|
|
|
87
90
|
## Command semantics
|
|
88
91
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "workspai",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.54.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Open-source workspace intelligence CLI for software systems: create, adopt, govern, verify, and align polyglot workspaces for humans, CI, IDEs, and AI agents.",
|
|
6
6
|
"keywords": [
|
|
@@ -110,6 +110,7 @@
|
|
|
110
110
|
"test:scenarios:full": "node scripts/run-scenario-matrix-local.mjs --full",
|
|
111
111
|
"test:scenarios:docker": "bash scripts/scenario-matrix.sh",
|
|
112
112
|
"test:runtime-matrix": "node scripts/runtime-acceptance-matrix.mjs",
|
|
113
|
+
"test:runtime-contract": "node scripts/runtime-acceptance-matrix.mjs --contract-only",
|
|
113
114
|
"test:runtime-matrix:full": "node scripts/runtime-acceptance-matrix.mjs --full",
|
|
114
115
|
"lint": "eslint src --ext .ts",
|
|
115
116
|
"lint:fix": "eslint src --ext .ts --fix",
|
|
@@ -139,7 +140,7 @@
|
|
|
139
140
|
"analyze": "corepack npm run build && node scripts/analyze-dist.mjs",
|
|
140
141
|
"size-check": "corepack npm run build && size-limit",
|
|
141
142
|
"bench": "npx tsx scripts/benchmarks.ts",
|
|
142
|
-
"quality": "corepack npm run check:package-manager && corepack npm run typecheck && corepack npm run lint && corepack npm run format:check && corepack npm test && corepack npm run size-check && corepack npm run check:workspace-intelligence-runtime && corepack npm run check:workspace-intelligence-adversarial && corepack npm run security && corepack npm run validate:docs && corepack npm run check:generator-smoke-coverage && corepack npm run smoke:official-generators && corepack npm run check:contracts && corepack npm run check:shared-contracts && corepack npm run check:parity-snapshot && corepack npm run check:agent-customization-drift",
|
|
143
|
+
"quality": "corepack npm run check:package-manager && corepack npm run typecheck && corepack npm run lint && corepack npm run format:check && corepack npm test && corepack npm run size-check && corepack npm run check:workspace-intelligence-runtime && corepack npm run check:workspace-intelligence-adversarial && corepack npm run test:runtime-contract && corepack npm run security && corepack npm run validate:docs && corepack npm run check:generator-smoke-coverage && corepack npm run smoke:official-generators && corepack npm run check:contracts && corepack npm run check:shared-contracts && corepack npm run check:parity-snapshot && corepack npm run check:agent-customization-drift",
|
|
143
144
|
"act-matrix": "act -P ubuntu-latest=ghcr.io/catthehacker/ubuntu:act-22.04 -P macos-latest=ghcr.io/catthehacker/ubuntu:act-22.04 -P windows-latest=ghcr.io/catthehacker/ubuntu:act-22.04 --pull=false -j build-test-matrix",
|
|
144
145
|
"release:dry": "bash scripts/release.sh --no-publish --yes --allow-dirty",
|
|
145
146
|
"release:patch": "bash scripts/release.sh patch",
|
|
@@ -201,6 +201,10 @@ const REQUIRED_PACKAGE_FILES = [
|
|
|
201
201
|
'contracts/project-entry-capability.v1.json',
|
|
202
202
|
'contracts/workspace-intelligence-architecture.v1.json',
|
|
203
203
|
'contracts/workspace-intelligence-chain.v1.json',
|
|
204
|
+
'contracts/studio-card-repair-capabilities.v1.json',
|
|
205
|
+
'contracts/workspace-repair-capabilities.v1.json',
|
|
206
|
+
'contracts/workspace-intelligence/workspace-repair-proposal.v1.json',
|
|
207
|
+
'contracts/workspace-intelligence/workspace-repair-transaction.v1.json',
|
|
204
208
|
'contracts/extension-cli-compatibility.v1.json',
|
|
205
209
|
'data/modules-embeddings.json',
|
|
206
210
|
'templates/kits/fastapi-standard/README.md.j2',
|
|
@@ -380,12 +384,7 @@ function smokeCreateNpmBackedKits() {
|
|
|
380
384
|
kit: 'rust.axum',
|
|
381
385
|
name: 'enterprise-rust-axum',
|
|
382
386
|
extraArgs: [],
|
|
383
|
-
expectedFiles: [
|
|
384
|
-
'Cargo.toml',
|
|
385
|
-
'src/main.rs',
|
|
386
|
-
'.workspai/project.json',
|
|
387
|
-
'rapidkit',
|
|
388
|
-
],
|
|
387
|
+
expectedFiles: ['Cargo.toml', 'src/main.rs', '.workspai/project.json', 'rapidkit'],
|
|
389
388
|
},
|
|
390
389
|
];
|
|
391
390
|
|
|
@@ -504,6 +503,10 @@ for (const relativePath of [
|
|
|
504
503
|
'contracts/project-entry-capability.v1.json',
|
|
505
504
|
'contracts/workspace-intelligence-architecture.v1.json',
|
|
506
505
|
'contracts/workspace-intelligence-chain.v1.json',
|
|
506
|
+
'contracts/studio-card-repair-capabilities.v1.json',
|
|
507
|
+
'contracts/workspace-repair-capabilities.v1.json',
|
|
508
|
+
'contracts/workspace-intelligence/workspace-repair-proposal.v1.json',
|
|
509
|
+
'contracts/workspace-intelligence/workspace-repair-transaction.v1.json',
|
|
507
510
|
'contracts/extension-cli-compatibility.v1.json',
|
|
508
511
|
'data/modules-embeddings.json',
|
|
509
512
|
]) {
|
package/dist/analyze-J7VNZMDH.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{b as printAnalyzeReport,a as runAnalyze}from'./chunk-HPWLSLMC.js';
|