workspai 0.49.0 → 0.50.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/README.md +88 -28
  2. package/contracts/analyze-last-run.v1.json +2 -2
  3. package/contracts/artifact-remediation-plan.v1.json +3 -9
  4. package/contracts/autopilot-release.v1.json +2 -0
  5. package/contracts/bootstrap-compliance.v1.json +2 -1
  6. package/contracts/cli-log-event.v1.json +1 -1
  7. package/contracts/cli-runtime-command-inventory.v1.snapshot.json +80 -0
  8. package/contracts/compatibility-matrix.v1.json +2 -0
  9. package/contracts/create-planner-capabilities.v1.json +144 -32
  10. package/contracts/doctor-project-evidence.v1.json +191 -11
  11. package/contracts/doctor-project-scan.v2.json +2 -0
  12. package/contracts/doctor-remediation-plan.v1.json +2 -2
  13. package/contracts/doctor-remediation-plan.v2.json +2 -2
  14. package/contracts/doctor-workspace-cache.v2.json +2 -0
  15. package/contracts/doctor-workspace-evidence.v1.json +189 -10
  16. package/contracts/extension-cli-compatibility.v1.json +10 -1
  17. package/contracts/infra-plan.v1.json +2 -0
  18. package/contracts/ingestion-plan.v1.json +85 -0
  19. package/contracts/ingestion-result.v1.json +59 -0
  20. package/contracts/mirror-ops.v1.json +2 -1
  21. package/contracts/pipeline-last-run.v1.json +2 -2
  22. package/contracts/private-product-manifest.v1.json +2 -0
  23. package/contracts/product-factory-plan.v1.json +2 -0
  24. package/contracts/project-archive.v1.json +2 -0
  25. package/contracts/project-entry-capability.v1.json +2 -3
  26. package/contracts/project-test-coverage.v1.json +189 -0
  27. package/contracts/project-workspace-link.v1.json +66 -0
  28. package/contracts/project-workspace-resolution.v1.json +28 -0
  29. package/contracts/published-contract-catalog.v1.json +45 -0
  30. package/contracts/release-readiness.v1.json +2 -2
  31. package/contracts/runtime-command-surface.v1.json +1456 -139
  32. package/contracts/transparency-evidence.v1.json +2 -1
  33. package/contracts/workspace-archive-capabilities.v1.json +11 -5
  34. package/contracts/workspace-archive-manifest.v1.json +236 -0
  35. package/contracts/workspace-archive-operation-result.v1.json +236 -0
  36. package/contracts/workspace-contract.v1.json +1 -1
  37. package/contracts/workspace-intelligence/agent-action-outcome.v1.json +2 -2
  38. package/contracts/workspace-intelligence/agent-customization-pack-report.v1.json +1 -1
  39. package/contracts/workspace-intelligence/agent-hooks.v1.json +2 -0
  40. package/contracts/workspace-intelligence/agent-reports-index.v1.json +1 -1
  41. package/contracts/workspace-intelligence/blocker-resolution.v1.json +3 -9
  42. package/contracts/workspace-intelligence/doctor-fix-result.v1.json +2 -2
  43. package/contracts/workspace-intelligence/doctor-graph-diagnosis.v1.json +208 -0
  44. package/contracts/workspace-intelligence/fact-freshness.v1.json +2 -2
  45. package/contracts/workspace-intelligence/mcp-design.v1.json +2 -0
  46. package/contracts/workspace-intelligence/model-usage-event.v1.json +1 -1
  47. package/contracts/workspace-intelligence/project-context-agent.v1.json +360 -0
  48. package/contracts/workspace-intelligence/studio-blocker-handoff.v1.json +1 -1
  49. package/contracts/workspace-intelligence/workspace-context.v1.json +1 -1
  50. package/contracts/workspace-intelligence/workspace-contract-verify.v1.json +2 -2
  51. package/contracts/workspace-intelligence/workspace-dependency-graph.v1.json +1 -1
  52. package/contracts/workspace-intelligence/workspace-explain.v1.json +1 -1
  53. package/contracts/workspace-intelligence/workspace-graph-stream.v1.json +1 -1
  54. package/contracts/workspace-intelligence/workspace-graph-token-efficiency.v1.json +1 -1
  55. package/contracts/workspace-intelligence/workspace-impact.v1.json +1 -1
  56. package/contracts/workspace-intelligence/workspace-intelligence-evaluation-comparison.v1.json +1 -1
  57. package/contracts/workspace-intelligence/workspace-intelligence-evaluation.v1.json +1 -1
  58. package/contracts/workspace-intelligence/workspace-intelligence-history.v1.json +1 -1
  59. package/contracts/workspace-intelligence/workspace-intelligence-run.v1.json +2 -2
  60. package/contracts/workspace-intelligence/workspace-knowledge-graph-change-overlay.v1.json +1 -1
  61. package/contracts/workspace-intelligence/workspace-knowledge-graph.v1.json +48 -5
  62. package/contracts/workspace-intelligence/workspace-knowledge-search.v1.json +1 -1
  63. package/contracts/workspace-intelligence/workspace-model-diff.v1.json +1 -1
  64. package/contracts/workspace-intelligence/workspace-model-snapshot.v1.json +1 -1
  65. package/contracts/workspace-intelligence/workspace-model.v1.json +97 -5
  66. package/contracts/workspace-intelligence/workspace-operational-skill.v1.json +1 -1
  67. package/contracts/workspace-intelligence/workspace-skills-index.v1.json +1 -1
  68. package/contracts/workspace-intelligence/workspace-verify.v1.json +1 -1
  69. package/contracts/workspace-intelligence-architecture.v1.json +33 -7
  70. package/contracts/workspace-intelligence-chain.v1.json +1 -1
  71. package/contracts/workspace-list.v1.json +2 -0
  72. package/contracts/workspace-model-cache.v1.json +2 -0
  73. package/contracts/workspace-registry.v1.json +1 -1
  74. package/contracts/workspace-run-last.v1.json +1 -1
  75. package/contracts/workspace-share-bundle.v1.json +2 -1
  76. package/contracts/workspace-snapshot.v1.json +2 -0
  77. package/contracts/workspace-snapshot.v2.json +2 -0
  78. package/contracts/workspace-sync.v1.json +2 -0
  79. package/contracts/workspace-watch-event.v1.json +2 -0
  80. package/dist/analyze-ZFQWTCJQ.js +1 -0
  81. package/dist/{artifact-remediation-plan-SPOUHMK5.js → artifact-remediation-plan-ICN3KOFG.js} +1 -1
  82. package/dist/autopilot-release-VKXQ7BS7.js +1 -0
  83. package/dist/chunk-2AXEGYPL.js +1 -0
  84. package/dist/chunk-2D4UOYOJ.js +1 -0
  85. package/dist/chunk-2OIBHUVH.js +1 -0
  86. package/dist/chunk-3GRKUP5W.js +33 -0
  87. package/dist/{managed-agent-markers-AXUM75OE.js → chunk-3RBUSW7H.js} +1 -1
  88. package/dist/chunk-5EXZBCAZ.js +4 -0
  89. package/dist/chunk-6UTM5AJI.js +1 -0
  90. package/dist/chunk-AFIFZTOY.js +2 -0
  91. package/dist/{chunk-BMWFQXGW.js → chunk-AHLMIL2T.js} +1 -1
  92. package/dist/chunk-AL237TSJ.js +7 -0
  93. package/dist/chunk-AL2A7Q4X.js +86 -0
  94. package/dist/{chunk-VU7NZHPM.js → chunk-BHYTI3RH.js} +1 -1
  95. package/dist/{chunk-ESLPI3XZ.js → chunk-BQGBU2Y3.js} +1 -1
  96. package/dist/chunk-C35UXTDM.js +2 -0
  97. package/dist/chunk-C3FLCDRN.js +2 -0
  98. package/dist/chunk-CZC5P2MF.js +1 -0
  99. package/dist/{chunk-TIE2XMGH.js → chunk-DDQ3XK3H.js} +12 -12
  100. package/dist/{chunk-CRHYBQI3.js → chunk-DQ3PI7EP.js} +1 -1
  101. package/dist/chunk-EWZZUQBR.js +1 -0
  102. package/dist/{chunk-4KUIFXHM.js → chunk-GNQRYISX.js} +3 -3
  103. package/dist/chunk-I42F552T.js +2 -0
  104. package/dist/chunk-IDQKVJUF.js +2 -0
  105. package/dist/{chunk-3VFA7D5T.js → chunk-IND3TUVU.js} +1 -1
  106. package/dist/chunk-IPJ5URDF.js +1 -0
  107. package/dist/{chunk-EKZLUMCS.js → chunk-JFUD73OZ.js} +51 -51
  108. package/dist/chunk-KKAOTTYO.js +8 -0
  109. package/dist/chunk-KMLPHFLD.js +2 -0
  110. package/dist/{chunk-NHN4QXPP.js → chunk-KVSYBHUR.js} +1 -1
  111. package/dist/chunk-KXG6E5VK.js +1 -0
  112. package/dist/chunk-L2YK5RV2.js +1 -0
  113. package/dist/chunk-LAJM2SBP.js +15 -0
  114. package/dist/{chunk-K4X3DM7R.js → chunk-LZQUZGXB.js} +1 -1
  115. package/dist/chunk-MOSXTVPU.js +1 -0
  116. package/dist/chunk-MV7KF75Q.js +13 -0
  117. package/dist/chunk-MVLIONQD.js +1 -0
  118. package/dist/chunk-RJIYCDVC.js +1 -0
  119. package/dist/{chunk-BGPXQQNY.js → chunk-RTVRZFIJ.js} +1 -1
  120. package/dist/chunk-RVQLMTTI.js +2 -0
  121. package/dist/chunk-SHXJ2GDR.js +75 -0
  122. package/dist/{chunk-32OJDBIG.js → chunk-SS2VV3D5.js} +1 -1
  123. package/dist/chunk-TDTCMZK7.js +10 -0
  124. package/dist/chunk-UETZ7USY.js +36 -0
  125. package/dist/chunk-VKTUWUS6.js +1 -0
  126. package/dist/chunk-VRW6KXNK.js +6 -0
  127. package/dist/chunk-Y5YAP4F3.js +2 -0
  128. package/dist/chunk-YPKNQCLK.js +2 -0
  129. package/dist/{create-S64IWHAP.js → create-I23DC7SN.js} +1 -1
  130. package/dist/{demo-kit-DZ7TPG7K.js → demo-kit-KHH63TNA.js} +2 -2
  131. package/dist/{doctor-4NNUDNGZ.js → doctor-DOOMYLIH.js} +1 -1
  132. package/dist/{dotnet-webapi-clean-A6MVDYXX.js → dotnet-webapi-clean-VXEF4SHM.js} +5 -5
  133. package/dist/{gofiber-standard-I5YPQG5V.js → gofiber-standard-AQGSC7ON.js} +3 -3
  134. package/dist/{gogin-standard-VY2L4QT5.js → gogin-standard-7DU3OCBX.js} +3 -3
  135. package/dist/index.d.ts +38 -6
  136. package/dist/index.js +267 -355
  137. package/dist/managed-agent-markers-COE5DJ3W.js +1 -0
  138. package/dist/pipeline-U77HSINC.js +5 -0
  139. package/dist/platform-capabilities-PR6YL4KC.js +1 -0
  140. package/dist/project-intelligence-lens-BKKVPCLC.js +1 -0
  141. package/dist/project-test-coverage-4TEHZJFC.js +1 -0
  142. package/dist/{pythonRapidkitExec-CVCIK225.js → pythonRapidkitExec-YR7P5LWG.js} +1 -1
  143. package/dist/rust-axum-4HXDICIB.js +140 -0
  144. package/dist/{springboot-standard-55XKCBIZ.js → springboot-standard-EK6GYN5T.js} +7 -7
  145. package/dist/workspace-ZEYUVR26.js +1 -0
  146. package/dist/{workspace-agent-sync-662QHXGF.js → workspace-agent-sync-DKYJLUDP.js} +1 -1
  147. package/dist/workspace-archive-4JNT4S7N.js +1 -0
  148. package/dist/{workspace-context-23YYCUCP.js → workspace-context-IHUFMZT3.js} +1 -1
  149. package/dist/workspace-contract-PVLGPBBV.js +1 -0
  150. package/dist/workspace-explain-64HNKAHO.js +1 -0
  151. package/dist/workspace-explain-contract-H7O26QJU.js +1 -0
  152. package/dist/{workspace-feedback-SUVH2LUJ.js → workspace-feedback-RATRXFUC.js} +1 -1
  153. package/dist/{workspace-foundation-WPLD7OEO.js → workspace-foundation-D33LJLGT.js} +1 -1
  154. package/dist/workspace-graph-stream-THNG2T7R.js +1 -0
  155. package/dist/{workspace-history-BANOJRQ2.js → workspace-history-EWFPT74O.js} +1 -1
  156. package/dist/workspace-intelligence-MCNSWWDV.js +1 -0
  157. package/dist/{workspace-intelligence-evaluation-IPH7M3WV.js → workspace-intelligence-evaluation-7CABG5Y6.js} +1 -1
  158. package/dist/workspace-intelligence-runner-TG2VLHNZ.js +1 -0
  159. package/dist/workspace-intelligence-runtime-registry-ZZ3GRAL2.js +1 -0
  160. package/dist/{workspace-knowledge-graph-ARDC6HHG.js → workspace-knowledge-graph-2EYR7N56.js} +1 -1
  161. package/dist/{workspace-marker-SMBC3Z2Q.js → workspace-marker-7NHMDIRL.js} +1 -1
  162. package/dist/workspace-mcp-serve-FLAVKWYW.js +3 -0
  163. package/dist/workspace-model-FMFYLHE4.js +1 -0
  164. package/dist/workspace-model-hash-ZXYPIGCW.js +1 -0
  165. package/dist/workspace-onboarding-MYROZDI2.js +1 -0
  166. package/dist/{workspace-python-engine-state-2MLKJYQG.js → workspace-python-engine-state-J4QKW55K.js} +1 -1
  167. package/dist/{workspace-registry-summary-ORDK7A36.js → workspace-registry-summary-6VXIAQLX.js} +1 -1
  168. package/dist/workspace-run-2ZI5UMJ2.js +1 -0
  169. package/dist/{workspace-verify-EBVL7FWT.js → workspace-verify-FKYI65UQ.js} +1 -1
  170. package/dist/workspace-watch-RP5KMVP2.js +1 -0
  171. package/docs/GLOSSARY.md +17 -16
  172. package/docs/OPEN_SOURCE_USER_SCENARIOS.md +8 -3
  173. package/docs/README.md +6 -3
  174. package/docs/README_CONTENT_CONTRACT.md +18 -9
  175. package/docs/commands-reference.md +39 -8
  176. package/docs/contracts/ARTIFACT_CATALOG.md +65 -26
  177. package/docs/contracts/COMMAND_OWNERSHIP_MATRIX.md +2 -0
  178. package/docs/contracts/RUNTIME_SUPPORT_MATRIX.md +3 -3
  179. package/docs/contracts/rapidkit-cli-contracts.json +2 -2
  180. package/docs/create-planner-capabilities.md +36 -5
  181. package/docs/creating-workspaces-and-projects.md +59 -3
  182. package/docs/doctor-command.md +118 -11
  183. package/docs/from-code-to-shared-understanding.md +4 -1
  184. package/docs/graph-benchmark-methodology.md +2 -2
  185. package/docs/workspace-intelligence-evaluation.md +5 -0
  186. package/docs/workspace-knowledge-graph.md +102 -7
  187. package/docs/workspace-operations.md +146 -10
  188. package/package.json +2 -2
  189. package/scripts/enterprise-package-smoke.mjs +13 -1
  190. package/dist/analyze-EEEU3MIF.js +0 -1
  191. package/dist/autopilot-release-R4XRTWEM.js +0 -1
  192. package/dist/chunk-22DT744Z.js +0 -1
  193. package/dist/chunk-37CVKXBD.js +0 -1
  194. package/dist/chunk-3NU32T4A.js +0 -2
  195. package/dist/chunk-3ZK2GU7C.js +0 -1
  196. package/dist/chunk-4HDYADHT.js +0 -13
  197. package/dist/chunk-52PBRX7F.js +0 -1
  198. package/dist/chunk-54EP5CEV.js +0 -8
  199. package/dist/chunk-5XATWNME.js +0 -1
  200. package/dist/chunk-7YHK5NM3.js +0 -2
  201. package/dist/chunk-AFL3ACCR.js +0 -2
  202. package/dist/chunk-BFLJ2R4D.js +0 -80
  203. package/dist/chunk-E2KJ5QWY.js +0 -4
  204. package/dist/chunk-EYJ2CQSK.js +0 -1
  205. package/dist/chunk-FTY7GGXJ.js +0 -33
  206. package/dist/chunk-FXQJX34Z.js +0 -1
  207. package/dist/chunk-GSWPGELT.js +0 -2
  208. package/dist/chunk-GZTYAEWX.js +0 -1
  209. package/dist/chunk-HDXNIN4N.js +0 -1
  210. package/dist/chunk-HZDXO65G.js +0 -36
  211. package/dist/chunk-J5ENLXDF.js +0 -1
  212. package/dist/chunk-KB44JP4M.js +0 -2
  213. package/dist/chunk-LHOZXC2M.js +0 -2
  214. package/dist/chunk-MER6ZBN2.js +0 -13
  215. package/dist/chunk-NAJCUQ4X.js +0 -2
  216. package/dist/chunk-OA537ZQ5.js +0 -1
  217. package/dist/chunk-OW42TZFB.js +0 -1
  218. package/dist/chunk-P3D5YQB2.js +0 -1
  219. package/dist/chunk-PHXQR6PX.js +0 -2
  220. package/dist/chunk-PRTR2DQ2.js +0 -1
  221. package/dist/chunk-RHQW3DTP.js +0 -1
  222. package/dist/chunk-T4YR4RAI.js +0 -2
  223. package/dist/chunk-Y45WZR5N.js +0 -5
  224. package/dist/chunk-YJZOMRAS.js +0 -1
  225. package/dist/pipeline-LHTPE3DR.js +0 -5
  226. package/dist/platform-capabilities-2B4QMZXE.js +0 -1
  227. package/dist/workspace-PJPRBUMQ.js +0 -1
  228. package/dist/workspace-archive-P76EDIUG.js +0 -10
  229. package/dist/workspace-contract-TU2I7GC2.js +0 -1
  230. package/dist/workspace-dependency-graph-BP4EXYQ5.js +0 -1
  231. package/dist/workspace-explain-MWUEN643.js +0 -1
  232. package/dist/workspace-explain-contract-ZPI3JXJU.js +0 -1
  233. package/dist/workspace-graph-stream-KAGGQPJT.js +0 -1
  234. package/dist/workspace-intelligence-MFJE7W67.js +0 -1
  235. package/dist/workspace-intelligence-runner-OTYTHV6B.js +0 -1
  236. package/dist/workspace-mcp-serve-EZR6O76D.js +0 -3
  237. package/dist/workspace-model-7OU2M3LE.js +0 -1
  238. package/dist/workspace-model-hash-MHXK5MEI.js +0 -1
  239. package/dist/workspace-run-QND2SIYA.js +0 -1
  240. package/dist/workspace-watch-7HWGA5TF.js +0 -1
@@ -19,56 +19,80 @@
19
19
  "id": "fastapi.standard",
20
20
  "runtime": "python",
21
21
  "framework": "fastapi",
22
+ "category": "backend",
22
23
  "owner": "core",
23
24
  "stability": "stable",
25
+ "versionPolicy": "tested-baseline",
24
26
  "moduleSupport": true
25
27
  },
26
28
  {
27
29
  "id": "fastapi.ddd",
28
30
  "runtime": "python",
29
31
  "framework": "fastapi",
32
+ "category": "backend",
30
33
  "owner": "core",
31
34
  "stability": "stable",
35
+ "versionPolicy": "tested-baseline",
32
36
  "moduleSupport": true
33
37
  },
34
38
  {
35
39
  "id": "nestjs.standard",
36
40
  "runtime": "node",
37
41
  "framework": "nestjs",
42
+ "category": "backend",
38
43
  "owner": "core",
39
44
  "stability": "stable",
45
+ "versionPolicy": "tested-baseline",
40
46
  "moduleSupport": true
41
47
  },
42
48
  {
43
49
  "id": "springboot.standard",
44
50
  "runtime": "java",
45
51
  "framework": "springboot",
52
+ "category": "backend",
46
53
  "owner": "npm",
47
54
  "stability": "stable",
55
+ "versionPolicy": "tested-baseline",
48
56
  "moduleSupport": false
49
57
  },
50
58
  {
51
59
  "id": "gofiber.standard",
52
60
  "runtime": "go",
53
61
  "framework": "gofiber",
62
+ "category": "backend",
54
63
  "owner": "npm",
55
64
  "stability": "stable",
65
+ "versionPolicy": "tested-baseline",
56
66
  "moduleSupport": false
57
67
  },
58
68
  {
59
69
  "id": "gogin.standard",
60
70
  "runtime": "go",
61
71
  "framework": "gogin",
72
+ "category": "backend",
62
73
  "owner": "npm",
63
74
  "stability": "stable",
75
+ "versionPolicy": "tested-baseline",
64
76
  "moduleSupport": false
65
77
  },
66
78
  {
67
79
  "id": "dotnet.webapi.clean",
68
80
  "runtime": "dotnet",
69
81
  "framework": "dotnet",
82
+ "category": "backend",
70
83
  "owner": "npm",
71
84
  "stability": "preview",
85
+ "versionPolicy": "tested-baseline",
86
+ "moduleSupport": false
87
+ },
88
+ {
89
+ "id": "rust.axum",
90
+ "runtime": "rust",
91
+ "framework": "axum",
92
+ "category": "backend",
93
+ "owner": "npm",
94
+ "stability": "preview",
95
+ "versionPolicy": "tested-baseline",
72
96
  "moduleSupport": false
73
97
  }
74
98
  ],
@@ -84,10 +108,12 @@
84
108
  "ecosystem": "nextjs",
85
109
  "status": "available",
86
110
  "canExecuteCreate": true,
111
+ "versionPolicy": "latest-stable",
87
112
  "officialCommands": [
88
113
  "npx create-next-app@latest <name>"
89
114
  ],
90
- "adoptAfterCreate": true
115
+ "adoptAfterCreate": true,
116
+ "category": "frontend"
91
117
  },
92
118
  {
93
119
  "id": "frontend.remix",
@@ -100,10 +126,12 @@
100
126
  "ecosystem": "remix",
101
127
  "status": "available",
102
128
  "canExecuteCreate": true,
129
+ "versionPolicy": "latest-stable",
103
130
  "officialCommands": [
104
131
  "npx create-react-router@latest <name>"
105
132
  ],
106
- "adoptAfterCreate": true
133
+ "adoptAfterCreate": true,
134
+ "category": "frontend"
107
135
  },
108
136
  {
109
137
  "id": "frontend.vite-react",
@@ -116,10 +144,12 @@
116
144
  "ecosystem": "react",
117
145
  "status": "available",
118
146
  "canExecuteCreate": true,
147
+ "versionPolicy": "latest-stable",
119
148
  "officialCommands": [
120
149
  "npm create vite@latest <name> -- --template react-ts"
121
150
  ],
122
- "adoptAfterCreate": true
151
+ "adoptAfterCreate": true,
152
+ "category": "frontend"
123
153
  },
124
154
  {
125
155
  "id": "frontend.vite-vue",
@@ -132,10 +162,12 @@
132
162
  "ecosystem": "vue",
133
163
  "status": "available",
134
164
  "canExecuteCreate": true,
165
+ "versionPolicy": "latest-stable",
135
166
  "officialCommands": [
136
167
  "npm create vite@latest <name> -- --template vue-ts"
137
168
  ],
138
- "adoptAfterCreate": true
169
+ "adoptAfterCreate": true,
170
+ "category": "frontend"
139
171
  },
140
172
  {
141
173
  "id": "frontend.vite-svelte",
@@ -148,10 +180,12 @@
148
180
  "ecosystem": "svelte",
149
181
  "status": "available",
150
182
  "canExecuteCreate": true,
183
+ "versionPolicy": "latest-stable",
151
184
  "officialCommands": [
152
185
  "npm create vite@latest <name> -- --template svelte-ts"
153
186
  ],
154
- "adoptAfterCreate": true
187
+ "adoptAfterCreate": true,
188
+ "category": "frontend"
155
189
  },
156
190
  {
157
191
  "id": "frontend.vite-solid",
@@ -165,10 +199,12 @@
165
199
  "ecosystem": "solid",
166
200
  "status": "available",
167
201
  "canExecuteCreate": true,
202
+ "versionPolicy": "latest-stable",
168
203
  "officialCommands": [
169
204
  "npm create vite@latest <name> -- --template solid-ts"
170
205
  ],
171
- "adoptAfterCreate": true
206
+ "adoptAfterCreate": true,
207
+ "category": "frontend"
172
208
  },
173
209
  {
174
210
  "id": "frontend.vite-vanilla",
@@ -181,10 +217,12 @@
181
217
  "ecosystem": "vite",
182
218
  "status": "available",
183
219
  "canExecuteCreate": true,
220
+ "versionPolicy": "latest-stable",
184
221
  "officialCommands": [
185
222
  "npm create vite@latest <name> -- --template vanilla-ts"
186
223
  ],
187
- "adoptAfterCreate": true
224
+ "adoptAfterCreate": true,
225
+ "category": "frontend"
188
226
  },
189
227
  {
190
228
  "id": "frontend.nuxt",
@@ -197,10 +235,12 @@
197
235
  "ecosystem": "nuxt",
198
236
  "status": "available",
199
237
  "canExecuteCreate": true,
238
+ "versionPolicy": "latest-stable",
200
239
  "officialCommands": [
201
240
  "npx create-nuxt@latest <name> --template minimal --packageManager npm --gitInit true"
202
241
  ],
203
- "adoptAfterCreate": true
242
+ "adoptAfterCreate": true,
243
+ "category": "frontend"
204
244
  },
205
245
  {
206
246
  "id": "frontend.angular",
@@ -212,10 +252,12 @@
212
252
  "ecosystem": "angular",
213
253
  "status": "available",
214
254
  "canExecuteCreate": true,
255
+ "versionPolicy": "latest-stable",
215
256
  "officialCommands": [
216
- "npx @angular/cli@19 new <name>"
257
+ "npx @angular/cli@latest new <name>"
217
258
  ],
218
- "adoptAfterCreate": true
259
+ "adoptAfterCreate": true,
260
+ "category": "frontend"
219
261
  },
220
262
  {
221
263
  "id": "frontend.astro",
@@ -226,10 +268,12 @@
226
268
  "ecosystem": "astro",
227
269
  "status": "available",
228
270
  "canExecuteCreate": true,
271
+ "versionPolicy": "latest-stable",
229
272
  "officialCommands": [
230
- "npm create astro@4 <name>"
273
+ "npm create astro@latest <name>"
231
274
  ],
232
- "adoptAfterCreate": true
275
+ "adoptAfterCreate": true,
276
+ "category": "frontend"
233
277
  },
234
278
  {
235
279
  "id": "frontend.sveltekit",
@@ -241,10 +285,81 @@
241
285
  "ecosystem": "sveltekit",
242
286
  "status": "available",
243
287
  "canExecuteCreate": true,
288
+ "versionPolicy": "latest-stable",
244
289
  "officialCommands": [
245
290
  "npx sv@latest create <name>"
246
291
  ],
247
- "adoptAfterCreate": true
292
+ "adoptAfterCreate": true,
293
+ "category": "frontend"
294
+ },
295
+ {
296
+ "id": "desktop.tauri",
297
+ "aliases": [
298
+ "desktop.tauri",
299
+ "tauri",
300
+ "tauri-app"
301
+ ],
302
+ "ecosystem": "tauri",
303
+ "status": "available",
304
+ "canExecuteCreate": true,
305
+ "versionPolicy": "latest-stable",
306
+ "officialCommands": [
307
+ "npm create tauri-app@latest <name> -- --template vanilla-ts"
308
+ ],
309
+ "adoptAfterCreate": true,
310
+ "category": "desktop"
311
+ },
312
+ {
313
+ "id": "desktop.electron",
314
+ "aliases": [
315
+ "desktop.electron",
316
+ "electron",
317
+ "electron-forge"
318
+ ],
319
+ "ecosystem": "electron",
320
+ "status": "available",
321
+ "canExecuteCreate": true,
322
+ "versionPolicy": "latest-stable",
323
+ "officialCommands": [
324
+ "npx create-electron-app@latest <name> --template=vite-typescript"
325
+ ],
326
+ "adoptAfterCreate": true,
327
+ "category": "desktop"
328
+ },
329
+ {
330
+ "id": "extension.vscode",
331
+ "aliases": [
332
+ "extension.vscode",
333
+ "vscode",
334
+ "vscode-extension",
335
+ "visual-studio-code-extension"
336
+ ],
337
+ "ecosystem": "vscode-extension",
338
+ "status": "available",
339
+ "canExecuteCreate": true,
340
+ "versionPolicy": "latest-stable",
341
+ "officialCommands": [
342
+ "npx --package yo@latest --package generator-code@latest -- yo code <name> --quick --extensionType ts --pkgManager npm --bundle esbuild"
343
+ ],
344
+ "adoptAfterCreate": true,
345
+ "category": "extension"
346
+ },
347
+ {
348
+ "id": "php.laravel",
349
+ "aliases": [
350
+ "php.laravel",
351
+ "laravel",
352
+ "php-laravel"
353
+ ],
354
+ "ecosystem": "laravel",
355
+ "status": "available",
356
+ "canExecuteCreate": true,
357
+ "versionPolicy": "latest-stable",
358
+ "officialCommands": [
359
+ "composer create-project --no-interaction --prefer-dist --stability=stable laravel/laravel <name>"
360
+ ],
361
+ "adoptAfterCreate": true,
362
+ "category": "backend"
248
363
  },
249
364
  {
250
365
  "id": "wordpress-site",
@@ -257,13 +372,15 @@
257
372
  "ecosystem": "wordpress",
258
373
  "status": "planned",
259
374
  "canExecuteCreate": false,
375
+ "versionPolicy": "planned",
260
376
  "officialCommands": [
261
377
  "wp core download",
262
378
  "wp config create",
263
379
  "wp db create",
264
380
  "wp core install"
265
381
  ],
266
- "adoptAfterCreate": true
382
+ "adoptAfterCreate": true,
383
+ "category": "backend"
267
384
  },
268
385
  {
269
386
  "id": "wordpress-block",
@@ -275,24 +392,12 @@
275
392
  "ecosystem": "wordpress",
276
393
  "status": "planned",
277
394
  "canExecuteCreate": false,
395
+ "versionPolicy": "planned",
278
396
  "officialCommands": [
279
397
  "npx @wordpress/create-block@latest <slug>"
280
398
  ],
281
- "adoptAfterCreate": true
282
- },
283
- {
284
- "id": "laravel",
285
- "aliases": [
286
- "laravel",
287
- "php-laravel"
288
- ],
289
- "ecosystem": "php",
290
- "status": "planned",
291
- "canExecuteCreate": false,
292
- "officialCommands": [
293
- "composer create-project laravel/laravel <name>"
294
- ],
295
- "adoptAfterCreate": true
399
+ "adoptAfterCreate": true,
400
+ "category": "backend"
296
401
  },
297
402
  {
298
403
  "id": "symfony",
@@ -303,10 +408,12 @@
303
408
  "ecosystem": "php",
304
409
  "status": "planned",
305
410
  "canExecuteCreate": false,
411
+ "versionPolicy": "planned",
306
412
  "officialCommands": [
307
413
  "composer create-project symfony/skeleton <name>"
308
414
  ],
309
- "adoptAfterCreate": true
415
+ "adoptAfterCreate": true,
416
+ "category": "backend"
310
417
  },
311
418
  {
312
419
  "id": "rails",
@@ -318,10 +425,12 @@
318
425
  "ecosystem": "ruby",
319
426
  "status": "planned",
320
427
  "canExecuteCreate": false,
428
+ "versionPolicy": "planned",
321
429
  "officialCommands": [
322
430
  "rails new <name>"
323
431
  ],
324
- "adoptAfterCreate": true
432
+ "adoptAfterCreate": true,
433
+ "category": "backend"
325
434
  }
326
435
  ],
327
436
  "existingRuntimeSignals": [
@@ -337,6 +446,9 @@
337
446
  "Do not translate unsupported stack requests into unrelated native kits.",
338
447
  "If native create is unavailable, explain the lane and guide to adopt/import.",
339
448
  "The existing lane is open-ended for readable projects; existingRuntimeSignals are examples for planner detection, not an allowlist.",
340
- "Use the same capability contract in CLI, CI, VS Code, and AI planning surfaces."
449
+ "Use the same capability contract in CLI, CI, VS Code, and AI planning surfaces.",
450
+ "Available official generators request the upstream latest stable channel and record that policy in project evidence.",
451
+ "Native Workspai-owned kits use tested dependency baselines so repeated creates remain deterministic.",
452
+ "Workspace management during project creation is foundation-only; it must not install the optional Python engine. Each selected kit owns its runtime prerequisites and install flow."
341
453
  ]
342
454
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://getrapidkit.com/schemas/doctor-project-evidence.v1.json",
4
- "title": "RapidKit Doctor Project Evidence",
3
+ "$id": "https://workspai.dev/schemas/doctor-project-evidence.v1.json",
4
+ "title": "Workspai Doctor Project Evidence",
5
5
  "type": "object",
6
6
  "required": [
7
7
  "schemaVersion",
@@ -25,7 +25,7 @@
25
25
  "workspacePath": { "type": ["string", "null"] },
26
26
  "projectPath": { "type": "string", "minLength": 1 },
27
27
  "projectName": { "type": "string", "minLength": 1 },
28
- "healthScore": { "type": "object", "additionalProperties": true },
28
+ "healthScore": { "$ref": "#/$defs/healthScore" },
29
29
  "evidenceFreshness": { "$ref": "#/$defs/evidenceFreshness" },
30
30
  "system": { "type": "object", "additionalProperties": true },
31
31
  "project": {
@@ -38,14 +38,24 @@
38
38
  "repairCapabilities": {
39
39
  "type": "array",
40
40
  "items": { "$ref": "#/$defs/repairCapability" }
41
- }
41
+ },
42
+ "dependencyAudit": { "$ref": "#/$defs/dependencyAudit" },
43
+ "graphDiagnosis": {
44
+ "$ref": "https://workspai.dev/schemas/workspace-intelligence/doctor-graph-diagnosis.v1.json"
45
+ },
46
+ "verdict": { "enum": ["passed", "attention", "blocked"] },
47
+ "probeSummary": { "$ref": "#/$defs/probeSummary" }
42
48
  },
43
49
  "additionalProperties": true
44
50
  },
45
51
  "summary": {
46
52
  "type": "object",
47
53
  "properties": {
48
- "scopeProvenance": { "type": "object", "additionalProperties": true }
54
+ "scopeProvenance": { "type": "object", "additionalProperties": true },
55
+ "verdict": { "enum": ["passed", "attention", "blocked"] },
56
+ "probeSummary": { "$ref": "#/$defs/probeSummary" },
57
+ "blockingFindings": { "type": "integer", "minimum": 0 },
58
+ "advisoryFindings": { "type": "integer", "minimum": 0 }
49
59
  },
50
60
  "additionalProperties": true
51
61
  },
@@ -58,16 +68,154 @@
58
68
  "policyProfile": { "$ref": "#/$defs/policyProfile" }
59
69
  },
60
70
  "$defs": {
61
- "freshness": {
71
+ "dependencyAudit": {
62
72
  "type": "object",
63
73
  "required": [
64
- "category",
65
- "generatedAt",
66
- "ttlSeconds",
74
+ "schemaVersion",
75
+ "runtime",
76
+ "ecosystem",
77
+ "tool",
67
78
  "status",
68
- "verifyBeforeUse",
69
- "reason"
79
+ "generatedAt",
80
+ "findingCount",
81
+ "blockingFindingCount",
82
+ "severityCounts",
83
+ "reason",
84
+ "limitations"
70
85
  ],
86
+ "properties": {
87
+ "schemaVersion": { "const": "doctor-dependency-audit-v1" },
88
+ "runtime": {
89
+ "enum": [
90
+ "node",
91
+ "bun",
92
+ "deno",
93
+ "python",
94
+ "go",
95
+ "java",
96
+ "rust",
97
+ "elixir",
98
+ "clojure",
99
+ "php",
100
+ "ruby",
101
+ "dotnet",
102
+ "scala",
103
+ "kotlin",
104
+ "c",
105
+ "cpp",
106
+ "unknown"
107
+ ]
108
+ },
109
+ "ecosystem": { "type": "string", "minLength": 1 },
110
+ "tool": { "type": "string", "minLength": 1 },
111
+ "status": {
112
+ "enum": ["clean", "vulnerable", "tool-unavailable", "unsupported", "failed"]
113
+ },
114
+ "generatedAt": { "type": "string", "format": "date-time" },
115
+ "invocation": { "$ref": "#/$defs/commandInvocation" },
116
+ "exitCode": { "type": "integer" },
117
+ "findingCount": { "type": ["integer", "null"], "minimum": 0 },
118
+ "blockingFindingCount": { "type": ["integer", "null"], "minimum": 0 },
119
+ "severityCounts": {
120
+ "type": "object",
121
+ "required": ["low", "moderate", "high", "critical", "unknown"],
122
+ "properties": {
123
+ "low": { "type": "integer", "minimum": 0 },
124
+ "moderate": { "type": "integer", "minimum": 0 },
125
+ "high": { "type": "integer", "minimum": 0 },
126
+ "critical": { "type": "integer", "minimum": 0 },
127
+ "unknown": { "type": "integer", "minimum": 0 }
128
+ },
129
+ "additionalProperties": false
130
+ },
131
+ "subjects": {
132
+ "type": "array",
133
+ "items": { "$ref": "#/$defs/dependencyAuditSubject" }
134
+ },
135
+ "reason": { "type": "string", "minLength": 1 },
136
+ "limitations": { "type": "array", "items": { "type": "string" } }
137
+ },
138
+ "additionalProperties": false
139
+ },
140
+ "dependencyAuditSubject": {
141
+ "type": "object",
142
+ "required": ["name", "advisoryIds", "severities"],
143
+ "properties": {
144
+ "name": { "type": "string", "minLength": 1 },
145
+ "version": { "type": "string", "minLength": 1 },
146
+ "direct": { "type": "boolean" },
147
+ "advisoryIds": {
148
+ "type": "array",
149
+ "items": { "type": "string", "minLength": 1 },
150
+ "uniqueItems": true
151
+ },
152
+ "severities": {
153
+ "type": "array",
154
+ "items": { "enum": ["low", "moderate", "high", "critical", "unknown"] },
155
+ "uniqueItems": true
156
+ }
157
+ },
158
+ "additionalProperties": false
159
+ },
160
+ "scoreComponent": {
161
+ "type": "object",
162
+ "required": ["errors"],
163
+ "properties": {
164
+ "percent": { "type": "number", "minimum": 0, "maximum": 100 },
165
+ "total": { "type": "integer", "minimum": 0 },
166
+ "passed": { "type": "integer", "minimum": 0 },
167
+ "warnings": { "type": "integer", "minimum": 0 },
168
+ "errors": { "type": "integer", "minimum": 0 }
169
+ },
170
+ "additionalProperties": false
171
+ },
172
+ "healthScore": {
173
+ "type": "object",
174
+ "required": ["errors"],
175
+ "properties": {
176
+ "percent": { "type": "number", "minimum": 0, "maximum": 100 },
177
+ "total": { "type": "integer", "minimum": 0 },
178
+ "passed": { "type": "integer", "minimum": 0 },
179
+ "warnings": { "type": "integer", "minimum": 0 },
180
+ "errors": { "type": "integer", "minimum": 0 },
181
+ "verdict": { "enum": ["passed", "attention", "blocked"] },
182
+ "components": {
183
+ "type": "object",
184
+ "required": ["host", "projects"],
185
+ "properties": {
186
+ "host": { "$ref": "#/$defs/scoreComponent" },
187
+ "projects": { "$ref": "#/$defs/scoreComponent" }
188
+ },
189
+ "additionalProperties": false
190
+ }
191
+ },
192
+ "additionalProperties": false
193
+ },
194
+ "probeSummary": {
195
+ "type": "object",
196
+ "required": [
197
+ "total",
198
+ "passed",
199
+ "warnings",
200
+ "failed",
201
+ "blockingFindings",
202
+ "advisoryFindings",
203
+ "verdict"
204
+ ],
205
+ "properties": {
206
+ "total": { "type": "integer", "minimum": 0 },
207
+ "passed": { "type": "integer", "minimum": 0 },
208
+ "warnings": { "type": "integer", "minimum": 0 },
209
+ "failed": { "type": "integer", "minimum": 0 },
210
+ "blockingFindings": { "type": "integer", "minimum": 0 },
211
+ "advisoryFindings": { "type": "integer", "minimum": 0 },
212
+ "verdict": { "enum": ["passed", "attention", "blocked"] }
213
+ },
214
+ "additionalProperties": false
215
+ },
216
+ "freshness": {
217
+ "type": "object",
218
+ "required": ["category", "generatedAt", "ttlSeconds", "status", "verifyBeforeUse", "reason"],
71
219
  "properties": {
72
220
  "category": { "enum": ["structure", "verification", "state"] },
73
221
  "generatedAt": { "type": "string", "format": "date-time" },
@@ -237,6 +385,11 @@
237
385
  "requiresReview": { "type": "boolean" },
238
386
  "files": { "type": "array", "items": { "type": "string" } },
239
387
  "command": { "type": "string" },
388
+ "invocation": { "$ref": "#/$defs/commandInvocation" },
389
+ "strategy": {
390
+ "type": "array",
391
+ "items": { "$ref": "#/$defs/repairStrategyStage" }
392
+ },
240
393
  "operation": { "$ref": "#/$defs/repairOperation" },
241
394
  "verifyCommand": { "type": "string" },
242
395
  "refreshCommands": { "type": "array", "items": { "type": "string" } },
@@ -245,6 +398,33 @@
245
398
  },
246
399
  "additionalProperties": true
247
400
  },
401
+ "commandInvocation": {
402
+ "type": "object",
403
+ "required": ["cwd", "executable", "args"],
404
+ "properties": {
405
+ "cwd": { "type": "string", "minLength": 1 },
406
+ "executable": { "type": "string", "minLength": 1 },
407
+ "args": { "type": "array", "items": { "type": "string" } }
408
+ },
409
+ "additionalProperties": false
410
+ },
411
+ "repairStrategyStage": {
412
+ "type": "object",
413
+ "required": ["id", "kind", "description", "risk", "continueWhen"],
414
+ "properties": {
415
+ "id": { "type": "string", "minLength": 1 },
416
+ "kind": {
417
+ "enum": ["diagnose", "safe-fix", "targeted-upgrade", "verify", "exception-review"]
418
+ },
419
+ "description": { "type": "string", "minLength": 1 },
420
+ "risk": { "enum": ["safe", "guarded", "invasive"] },
421
+ "invocation": { "$ref": "#/$defs/commandInvocation" },
422
+ "continueWhen": {
423
+ "enum": ["always", "previous-passed", "blocker-remains", "manual-decision"]
424
+ }
425
+ },
426
+ "additionalProperties": false
427
+ },
248
428
  "repairOperation": {
249
429
  "type": "object",
250
430
  "required": ["type", "path"],
@@ -1,5 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://workspai.dev/schemas/doctor-project-scan.v2.json",
4
+ "title": "Workspai Doctor Project Scan",
3
5
  "type": "object",
4
6
  "required": [
5
7
  "schemaVersion",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://rapidkit.dev/contracts/doctor-remediation-plan.v1.json",
4
- "title": "RapidKit Doctor Remediation Plan v2 Legacy Path Alias",
3
+ "$id": "https://workspai.dev/contracts/doctor-remediation-plan.v1.json",
4
+ "title": "Workspai Doctor Remediation Plan v2 Legacy Path Alias",
5
5
  "description": "Deprecated compatibility path. New consumers must resolve contracts/doctor-remediation-plan.v2.json.",
6
6
  "type": "object",
7
7
  "additionalProperties": false,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://rapidkit.dev/contracts/doctor-remediation-plan.v2.json",
4
- "title": "RapidKit Doctor Remediation Plan v2",
3
+ "$id": "https://workspai.dev/contracts/doctor-remediation-plan.v2.json",
4
+ "title": "Workspai Doctor Remediation Plan v2",
5
5
  "description": "Canonical v2 contract. The referenced v1 path is retained as a deprecated compatibility alias.",
6
6
  "$ref": "doctor-remediation-plan.v1.json"
7
7
  }
@@ -1,5 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://workspai.dev/schemas/doctor-workspace-cache.v2.json",
4
+ "title": "Workspai Doctor Workspace Cache",
3
5
  "type": "object",
4
6
  "required": [
5
7
  "schemaVersion",