workspai 0.48.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 (243) hide show
  1. package/README.md +151 -75
  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 +84 -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 +11 -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 +50 -0
  30. package/contracts/release-readiness.v1.json +2 -2
  31. package/contracts/runtime-command-surface.v1.json +1456 -123
  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 +262 -0
  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-Y5UJLPS4.js → chunk-DDQ3XK3H.js} +13 -13
  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-I46XEIPL.js → chunk-JFUD73OZ.js} +52 -52
  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-5S3DJQEP.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-DBQNAMKP.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 +41 -6
  136. package/dist/index.js +268 -356
  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-WXJ6I7ES.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 +18 -10
  173. package/docs/README.md +49 -14
  174. package/docs/README_CONTENT_CONTRACT.md +19 -10
  175. package/docs/ci-workflows.md +3 -3
  176. package/docs/commands-reference.md +41 -10
  177. package/docs/contracts/ARTIFACT_CATALOG.md +72 -27
  178. package/docs/contracts/COMMAND_OWNERSHIP_MATRIX.md +2 -0
  179. package/docs/contracts/RUNTIME_SUPPORT_MATRIX.md +3 -3
  180. package/docs/contracts/rapidkit-cli-contracts.json +2 -2
  181. package/docs/create-planner-capabilities.md +36 -5
  182. package/docs/creating-workspaces-and-projects.md +75 -15
  183. package/docs/doctor-command.md +148 -39
  184. package/docs/examples/ci-agent-grounding.yml +1 -1
  185. package/docs/from-code-to-shared-understanding.md +6 -3
  186. package/docs/graph-benchmark-methodology.md +2 -2
  187. package/docs/workspace-intelligence-evaluation.md +13 -6
  188. package/docs/workspace-intelligence-runner.md +17 -6
  189. package/docs/workspace-knowledge-graph.md +102 -7
  190. package/docs/workspace-operations.md +154 -10
  191. package/package.json +10 -5
  192. package/scripts/enterprise-package-smoke.mjs +13 -1
  193. package/templates/kits/fastapi-ddd/README.md.j2 +1 -1
  194. package/dist/analyze-EEEU3MIF.js +0 -1
  195. package/dist/autopilot-release-XGVXPOZI.js +0 -1
  196. package/dist/chunk-22DT744Z.js +0 -1
  197. package/dist/chunk-37CVKXBD.js +0 -1
  198. package/dist/chunk-3NU32T4A.js +0 -2
  199. package/dist/chunk-3ZK2GU7C.js +0 -1
  200. package/dist/chunk-4HDYADHT.js +0 -13
  201. package/dist/chunk-52PBRX7F.js +0 -1
  202. package/dist/chunk-54EP5CEV.js +0 -8
  203. package/dist/chunk-5XATWNME.js +0 -1
  204. package/dist/chunk-7YHK5NM3.js +0 -2
  205. package/dist/chunk-AFL3ACCR.js +0 -2
  206. package/dist/chunk-BFLJ2R4D.js +0 -80
  207. package/dist/chunk-EYJ2CQSK.js +0 -1
  208. package/dist/chunk-FTY7GGXJ.js +0 -33
  209. package/dist/chunk-FXQJX34Z.js +0 -1
  210. package/dist/chunk-GSWPGELT.js +0 -2
  211. package/dist/chunk-GZTYAEWX.js +0 -1
  212. package/dist/chunk-HDXNIN4N.js +0 -1
  213. package/dist/chunk-HZDXO65G.js +0 -36
  214. package/dist/chunk-J5ENLXDF.js +0 -1
  215. package/dist/chunk-KB44JP4M.js +0 -2
  216. package/dist/chunk-LHOZXC2M.js +0 -2
  217. package/dist/chunk-MER6ZBN2.js +0 -13
  218. package/dist/chunk-NAJCUQ4X.js +0 -2
  219. package/dist/chunk-OA537ZQ5.js +0 -1
  220. package/dist/chunk-OW42TZFB.js +0 -1
  221. package/dist/chunk-P3D5YQB2.js +0 -1
  222. package/dist/chunk-PHXQR6PX.js +0 -2
  223. package/dist/chunk-PRTR2DQ2.js +0 -1
  224. package/dist/chunk-QNONOO4F.js +0 -4
  225. package/dist/chunk-RHQW3DTP.js +0 -1
  226. package/dist/chunk-T4YR4RAI.js +0 -2
  227. package/dist/chunk-Y45WZR5N.js +0 -5
  228. package/dist/chunk-YJZOMRAS.js +0 -1
  229. package/dist/pipeline-TQM43A3K.js +0 -5
  230. package/dist/platform-capabilities-2B4QMZXE.js +0 -1
  231. package/dist/workspace-NCWRINEF.js +0 -1
  232. package/dist/workspace-archive-P76EDIUG.js +0 -10
  233. package/dist/workspace-contract-TU2I7GC2.js +0 -1
  234. package/dist/workspace-dependency-graph-BP4EXYQ5.js +0 -1
  235. package/dist/workspace-explain-MWUEN643.js +0 -1
  236. package/dist/workspace-explain-contract-ZPI3JXJU.js +0 -1
  237. package/dist/workspace-intelligence-MFJE7W67.js +0 -1
  238. package/dist/workspace-intelligence-runner-THYLHHMF.js +0 -1
  239. package/dist/workspace-mcp-serve-EZR6O76D.js +0 -3
  240. package/dist/workspace-model-7OU2M3LE.js +0 -1
  241. package/dist/workspace-model-hash-MHXK5MEI.js +0 -1
  242. package/dist/workspace-run-RLIYSOTN.js +0 -1
  243. package/dist/workspace-watch-3BPGLFLB.js +0 -1
@@ -1,4 +1,4 @@
1
- import {b as b$1,c}from'./chunk-IBJEQHJR.js';import {c as c$1}from'./chunk-Y45WZR5N.js';import {b as b$2,a}from'./chunk-TQEMLBAG.js';import {promises}from'fs';import o from'path';import i from'chalk';import S from'ora';import {execa}from'execa';var b="net8.0",j="8080";function y(e){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").replace(/-{2,}/g,"-")}function E(e,r){return e.trim().replace(/[^A-Za-z0-9_.]+/g,".").replace(/^\.+|\.+$/g,"").replace(/\.{2,}/g,".").split(".").map(a=>a.replace(/^[^A-Za-z_]+/,"").replace(/[^A-Za-z0-9_]/g,"")).filter(Boolean).join(".")||r}function _(e,r){return e.replace(/[\r\n\t]+/g," ").trim()||r}function D(e){return e.trim()===b}function $(){return JSON.stringify({engine:"npm",runtime:"dotnet"},null,2)}function I(e,r){return JSON.stringify({kit_name:"dotnet.webapi.clean",runtime:"dotnet",framework:"dotnet",module_support:false,project_name:e.project_name,root_namespace:e.root_namespace,target_framework:e.target_framework,app_version:e.app_version,created_by:"workspai",workspai_version:r,rapidkit_version:r,created_at:new Date().toISOString()},null,2)}function P(e){return `<Project Sdk="Microsoft.NET.Sdk.Web">
1
+ import {b as b$1,c}from'./chunk-IBJEQHJR.js';import {i}from'./chunk-VRW6KXNK.js';import {b as b$2,a}from'./chunk-TQEMLBAG.js';import {promises}from'fs';import o from'path';import i$1 from'chalk';import S from'ora';import {execa}from'execa';var b="net8.0",j="8080";function y(e){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").replace(/-{2,}/g,"-")}function E(e,r){return e.trim().replace(/[^A-Za-z0-9_.]+/g,".").replace(/^\.+|\.+$/g,"").replace(/\.{2,}/g,".").split(".").map(a=>a.replace(/^[^A-Za-z_]+/,"").replace(/[^A-Za-z0-9_]/g,"")).filter(Boolean).join(".")||r}function _(e,r){return e.replace(/[\r\n\t]+/g," ").trim()||r}function D(e){return e.trim()===b}function $(){return JSON.stringify({engine:"npm",runtime:"dotnet"},null,2)}function I(e,r){return JSON.stringify({kit_name:"dotnet.webapi.clean",runtime:"dotnet",framework:"dotnet",module_support:false,project_name:e.project_name,root_namespace:e.root_namespace,target_framework:e.target_framework,app_version:e.app_version,created_by:"workspai",workspai_version:r,rapidkit_version:r,created_at:new Date().toISOString()},null,2)}function P(e){return `<Project Sdk="Microsoft.NET.Sdk.Web">
2
2
  <PropertyGroup>
3
3
  <TargetFramework>${e.target_framework}</TargetFramework>
4
4
  <Nullable>enable</Nullable>
@@ -417,9 +417,9 @@ Global
417
417
  {22222222-2222-2222-2222-222222222222} = {44444444-4444-4444-4444-444444444444}
418
418
  EndGlobalSection
419
419
  EndGlobal
420
- `.trimStart()}async function q(e,r){if(!r)try{if(await b$2(e)){console.log(i.gray("\u26A0 git init skipped (target is inside an existing git worktree)"));return}await execa("git",["init"],{cwd:e,stdio:"ignore",env:a()});}catch{console.log(i.gray("\u26A0 git init skipped (git not found or error)"));}}async function B(e){try{await execa("dotnet",["--version"],{cwd:e,timeout:3e3,stdio:"pipe"});}catch{console.log(i.yellow("\u26A0 .NET SDK not found in PATH - project scaffolded, but init/build need .NET 8+")),console.log(i.gray(" Install: https://dotnet.microsoft.com/download"));}}async function oe(e,r){let s=y(r.project_name)||"dotnet-api",c$2=E(r.root_namespace||`Workspai.${b$1(s)}`,"Workspai.App"),a=r.target_framework?.trim(),C=a&&D(a)?a:b,R=r.port&&/^\d+$/.test(r.port)?r.port:j,t={project_name:s,root_namespace:c$2,description:_(r.description||"","Production-ready ASP.NET Core Web API scaffolded by Workspai."),target_framework:C,app_version:r.app_version||"0.1.0",port:R,skipGit:r.skipGit??false,skipInstall:r.skipInstall??false},A=S(`Creating ASP.NET Core Web API project ${s}`).start();await promises.mkdir(e,{recursive:true}),await c(o.join(e,`${s}.sln`),H(t)),await c(o.join(e,"src",`${s}.csproj`),P(t)),await c(o.join(e,"src","Program.cs"),T(t)),await c(o.join(e,"src","Application","ApplicationInfoOptions.cs"),w(t)),await c(o.join(e,"src","Application","ApplicationServiceRegistration.cs"),x(t)),await c(o.join(e,"src","Application","SystemInfoService.cs"),v(t)),await c(o.join(e,"src","Infrastructure","InfrastructureServiceRegistration.cs"),N(t)),await c(o.join(e,"src","Presentation","PresentationServiceRegistration.cs"),h(t)),await c(o.join(e,"src","Presentation","SystemEndpoints.cs"),V(t)),await c(o.join(e,"src","appsettings.json"),g(t)),await c(o.join(e,"src","appsettings.Development.json"),g(t)),await c(o.join(e,"tests",`${s}.Tests.csproj`),k(t)),await c(o.join(e,"tests","RuntimeSmokeTests.cs"),L(t)),await c(o.join(e,"Dockerfile"),U(t)),await c(o.join(e,"docker-compose.yml"),O(t)),await c(o.join(e,"Makefile"),W(t)),await c(o.join(e,"rapidkit"),M(t)),await c(o.join(e,"rapidkit.cmd"),G(t)),await c(o.join(e,".env.example"),`ASPNETCORE_ENVIRONMENT=Development
420
+ `.trimStart()}async function q(e,r){if(!r)try{if(await b$2(e)){console.log(i$1.gray("\u26A0 git init skipped (target is inside an existing git worktree)"));return}await execa("git",["init"],{cwd:e,stdio:"ignore",env:a()});}catch{console.log(i$1.gray("\u26A0 git init skipped (git not found or error)"));}}async function B(e){try{await execa("dotnet",["--version"],{cwd:e,timeout:3e3,stdio:"pipe"});}catch{console.log(i$1.yellow("\u26A0 .NET SDK not found in PATH - project scaffolded, but init/build need .NET 8+")),console.log(i$1.gray(" Install: https://dotnet.microsoft.com/download"));}}async function oe(e,r){let s=y(r.project_name)||"dotnet-api",c$1=E(r.root_namespace||`Workspai.${b$1(s)}`,"Workspai.App"),a=r.target_framework?.trim(),C=a&&D(a)?a:b,R=r.port&&/^\d+$/.test(r.port)?r.port:j,t={project_name:s,root_namespace:c$1,description:_(r.description||"","Production-ready ASP.NET Core Web API scaffolded by Workspai."),target_framework:C,app_version:r.app_version||"0.1.0",port:R,skipGit:r.skipGit??false,skipInstall:r.skipInstall??false},A=S(`Creating ASP.NET Core Web API project ${s}`).start();await promises.mkdir(e,{recursive:true}),await c(o.join(e,`${s}.sln`),H(t)),await c(o.join(e,"src",`${s}.csproj`),P(t)),await c(o.join(e,"src","Program.cs"),T(t)),await c(o.join(e,"src","Application","ApplicationInfoOptions.cs"),w(t)),await c(o.join(e,"src","Application","ApplicationServiceRegistration.cs"),x(t)),await c(o.join(e,"src","Application","SystemInfoService.cs"),v(t)),await c(o.join(e,"src","Infrastructure","InfrastructureServiceRegistration.cs"),N(t)),await c(o.join(e,"src","Presentation","PresentationServiceRegistration.cs"),h(t)),await c(o.join(e,"src","Presentation","SystemEndpoints.cs"),V(t)),await c(o.join(e,"src","appsettings.json"),g(t)),await c(o.join(e,"src","appsettings.Development.json"),g(t)),await c(o.join(e,"tests",`${s}.Tests.csproj`),k(t)),await c(o.join(e,"tests","RuntimeSmokeTests.cs"),L(t)),await c(o.join(e,"Dockerfile"),U(t)),await c(o.join(e,"docker-compose.yml"),O(t)),await c(o.join(e,"Makefile"),W(t)),await c(o.join(e,"rapidkit"),M(t)),await c(o.join(e,"rapidkit.cmd"),G(t)),await c(o.join(e,".env.example"),`ASPNETCORE_ENVIRONMENT=Development
421
421
  PORT=${t.port}
422
- `),await c(o.join(e,".github","workflows","ci.yml"),F(t)),await c(o.join(e,".workspai","context.json"),$()),await c(o.join(e,".workspai","project.json"),I(t,c$1())),process.platform!=="win32"&&await promises.chmod(o.join(e,"rapidkit"),493),await q(e,t.skipGit),A.succeed("ASP.NET Core Web API project ready"),t.skipInstall||await B(e),console.log(i.green(`
422
+ `),await c(o.join(e,".github","workflows","ci.yml"),F(t)),await c(o.join(e,".workspai","context.json"),$()),await c(o.join(e,".workspai","project.json"),I(t,i())),process.platform!=="win32"&&await promises.chmod(o.join(e,"rapidkit"),493),await q(e,t.skipGit),A.succeed("ASP.NET Core Web API project ready"),t.skipInstall||await B(e),console.log(i$1.green(`
423
423
  \u2705 ASP.NET Core project ready!
424
- `)),console.log(i.gray("Next steps:")),console.log(i.white(` cd ${s}`)),console.log(i.white(" npx workspai init")),console.log(i.white(" npx workspai dev")),console.log(i.gray(`
425
- Endpoints: /health/live, /health/ready, /api/v1/system/info, /docs`)),console.log(i.gray("\u2139 RapidKit Core modules are not available for .NET projects yet."));}export{j as DEFAULT_DOTNET_PORT,b as DEFAULT_DOTNET_TARGET_FRAMEWORK,oe as generateDotnetWebApiCleanKit};
424
+ `)),console.log(i$1.gray("Next steps:")),console.log(i$1.white(` cd ${s}`)),console.log(i$1.white(" npx workspai init")),console.log(i$1.white(" npx workspai dev")),console.log(i$1.gray(`
425
+ Endpoints: /health/live, /health/ready, /api/v1/system/info, /docs`)),console.log(i$1.gray("\u2139 RapidKit Core modules are not available for .NET projects yet."));}export{j as DEFAULT_DOTNET_PORT,b as DEFAULT_DOTNET_TARGET_FRAMEWORK,oe as generateDotnetWebApiCleanKit};
@@ -1,4 +1,4 @@
1
- import {c as c$1,b as b$1,d,e,f,a as a$1}from'./chunk-IBJEQHJR.js';import {c}from'./chunk-Y45WZR5N.js';import {b,a}from'./chunk-TQEMLBAG.js';import {promises}from'fs';import p from'path';import o from'chalk';import T from'ora';import {execa}from'execa';function q(e){return `package main
1
+ import {c,b as b$1,d,e,f,a as a$1}from'./chunk-IBJEQHJR.js';import {i}from'./chunk-VRW6KXNK.js';import {b,a}from'./chunk-TQEMLBAG.js';import {promises}from'fs';import p from'path';import o from'chalk';import T from'ora';import {execa}from'execa';function q(e){return `package main
2
2
 
3
3
  import (
4
4
  "fmt"
@@ -1392,6 +1392,6 @@ issues:
1392
1392
  linters:
1393
1393
  - errcheck
1394
1394
  - wrapcheck
1395
- `}function z(){return JSON.stringify({engine:"npm",runtime:"go"},null,2)}function Z(e$1){return e({runtimeLabel:"Go/Fiber",projectName:e$1.project_name,fallbackDevCommand:'exec go run ./cmd/server "$@"'})}function ee(e){return f({runtimeLabel:"Go/Fiber",projectName:e.project_name})}function te(e,i){return JSON.stringify({kit_name:"gofiber.standard",runtime:"go",module_support:false,project_name:e.project_name,module_path:e.module_path,app_version:e.app_version,created_by:"workspai",workspai_version:i,rapidkit_version:i,created_at:new Date().toISOString()},null,2)}async function ce(e,i){let r={project_name:i.project_name,module_path:i.module_path||i.project_name,author:i.author||"Workspai User",description:i.description||`Go/Fiber REST API \u2014 ${i.project_name}`,go_version:i.go_version||a$1,app_version:i.app_version||"0.1.0",port:i.port||"3000",skipGit:i.skipGit??false,skipInstall:i.skipInstall??false},v=c();if(!r.skipInstall)try{await execa("go",["version"],{timeout:3e3});}catch{console.log(o.yellow("\n\u26A0 Go not found in PATH \u2014 project will be scaffolded, but `go mod tidy` requires Go 1.21+")),console.log(o.gray(` Install: https://go.dev/dl/
1396
- `));}let n=T(`Generating Go/Fiber project: ${r.project_name}\u2026`).start();try{let t=(S,_)=>c$1(p.join(e,S),_),w=p.join(e,"rapidkit"),R=p.join(e,"rapidkit.cmd");if(await Promise.all([t("cmd/server/main.go",q(r)),t("go.mod",O(r)),t("internal/config/config.go",y(r)),t("internal/server/server.go",C(r)),t("internal/middleware/requestid.go",P()),t("internal/middleware/requestid_test.go",D(r)),t("internal/apierr/apierr.go",M()),t("internal/apierr/apierr_test.go",B(r)),t("internal/handlers/health.go",N()),t("internal/handlers/health_test.go",E(r)),t("internal/handlers/example.go",j(r)),t("internal/handlers/example_test.go",H(r)),t("internal/config/config_test.go",U(r)),t("internal/middleware/cors.go",V()),t("internal/middleware/cors_test.go",J(r)),t("internal/middleware/ratelimit.go",K(r)),t("internal/middleware/ratelimit_test.go",X(r)),t("internal/server/server_test.go",W(r)),t("docs/doc.go",$(r)),t(".air.toml",Q(r)),t("Dockerfile",L()),t("docker-compose.yml",G(r)),t("Makefile",A(r)),t(".golangci.yml",Y(r.module_path)),t(".env.example",I(r)),t(".gitignore",k()),t(".github/workflows/ci.yml",F(r)),t("README.md",x(r)),t(".workspai/project.json",te(r,v)),t(".workspai/context.json",z()),t("rapidkit",Z(r)),t("rapidkit.cmd",ee(r))]),await promises.chmod(w,493),await promises.chmod(R,493),n.succeed(o.green(`Project created at ${e}`)),r.skipInstall)n.info(o.gray("Skipped Go dependency warm-up (--skip-install)."));else try{n.start("Fetching Go dependencies\u2026"),await execa("go",["mod","tidy"],{cwd:e,timeout:12e4}),n.succeed(o.gray("\u2713 go mod tidy completed"));}catch{n.warn(o.yellow("\u26A0 go mod tidy failed \u2014 run manually: go mod tidy"));}if(!r.skipGit)try{await b(e)?console.log(o.gray("\u26A0 git init skipped (target is inside an existing git worktree)")):(await execa("git",["init"],{cwd:e,env:a()}),await execa("git",["add","-A"],{cwd:e,env:a()}),await execa("git",["commit","-m","chore: initial scaffold (rapidkit gofiber.standard)"],{cwd:e,env:a()}),console.log(o.gray("\u2713 git repository initialized")));}catch{console.log(o.gray("\u26A0 git init skipped (git not found or error)"));}console.log(""),console.log(o.bold("\u2705 Go/Fiber project ready!")),console.log(""),console.log(o.cyan("Next steps:")),console.log(o.white(` cd ${r.project_name}`)),console.log(o.white(" make run # start dev server")),console.log(o.white(" make test # run tests")),console.log(""),console.log(o.gray("Server will listen on port "+r.port)),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/live")),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/ready")),console.log(""),console.log(o.yellow("\u2139 RapidKit Core modules are not available for Go projects (module system uses Python/pip).")),console.log("");}catch(t){throw n.fail(o.red("Failed to generate Go/Fiber project")),t}}
1395
+ `}function z(){return JSON.stringify({engine:"npm",runtime:"go"},null,2)}function Z(e$1){return e({runtimeLabel:"Go/Fiber",projectName:e$1.project_name,fallbackDevCommand:'exec go run ./cmd/server "$@"'})}function ee(e){return f({runtimeLabel:"Go/Fiber",projectName:e.project_name})}function te(e,i){return JSON.stringify({kit_name:"gofiber.standard",runtime:"go",module_support:false,project_name:e.project_name,module_path:e.module_path,app_version:e.app_version,created_by:"workspai",workspai_version:i,rapidkit_version:i,created_at:new Date().toISOString()},null,2)}async function ce(e,i$1){let r={project_name:i$1.project_name,module_path:i$1.module_path||i$1.project_name,author:i$1.author||"Workspai User",description:i$1.description||`Go/Fiber REST API \u2014 ${i$1.project_name}`,go_version:i$1.go_version||a$1,app_version:i$1.app_version||"0.1.0",port:i$1.port||"3000",skipGit:i$1.skipGit??false,skipInstall:i$1.skipInstall??false},v=i();if(!r.skipInstall)try{await execa("go",["version"],{timeout:3e3});}catch{console.log(o.yellow("\n\u26A0 Go not found in PATH \u2014 project will be scaffolded, but `go mod tidy` requires Go 1.21+")),console.log(o.gray(` Install: https://go.dev/dl/
1396
+ `));}let n=T(`Generating Go/Fiber project: ${r.project_name}\u2026`).start();try{let t=(S,_)=>c(p.join(e,S),_),w=p.join(e,"rapidkit"),R=p.join(e,"rapidkit.cmd");if(await Promise.all([t("cmd/server/main.go",q(r)),t("go.mod",O(r)),t("internal/config/config.go",y(r)),t("internal/server/server.go",C(r)),t("internal/middleware/requestid.go",P()),t("internal/middleware/requestid_test.go",D(r)),t("internal/apierr/apierr.go",M()),t("internal/apierr/apierr_test.go",B(r)),t("internal/handlers/health.go",N()),t("internal/handlers/health_test.go",E(r)),t("internal/handlers/example.go",j(r)),t("internal/handlers/example_test.go",H(r)),t("internal/config/config_test.go",U(r)),t("internal/middleware/cors.go",V()),t("internal/middleware/cors_test.go",J(r)),t("internal/middleware/ratelimit.go",K(r)),t("internal/middleware/ratelimit_test.go",X(r)),t("internal/server/server_test.go",W(r)),t("docs/doc.go",$(r)),t(".air.toml",Q(r)),t("Dockerfile",L()),t("docker-compose.yml",G(r)),t("Makefile",A(r)),t(".golangci.yml",Y(r.module_path)),t(".env.example",I(r)),t(".gitignore",k()),t(".github/workflows/ci.yml",F(r)),t("README.md",x(r)),t(".workspai/project.json",te(r,v)),t(".workspai/context.json",z()),t("rapidkit",Z(r)),t("rapidkit.cmd",ee(r))]),await promises.chmod(w,493),await promises.chmod(R,493),n.succeed(o.green(`Project created at ${e}`)),r.skipInstall)n.info(o.gray("Skipped Go dependency warm-up (--skip-install)."));else try{n.start("Fetching Go dependencies\u2026"),await execa("go",["mod","tidy"],{cwd:e,timeout:12e4}),n.succeed(o.gray("\u2713 go mod tidy completed"));}catch{n.warn(o.yellow("\u26A0 go mod tidy failed \u2014 run manually: go mod tidy"));}if(!r.skipGit)try{await b(e)?console.log(o.gray("\u26A0 git init skipped (target is inside an existing git worktree)")):(await execa("git",["init"],{cwd:e,env:a()}),await execa("git",["add","-A"],{cwd:e,env:a()}),await execa("git",["commit","-m","chore: initial scaffold (rapidkit gofiber.standard)"],{cwd:e,env:a()}),console.log(o.gray("\u2713 git repository initialized")));}catch{console.log(o.gray("\u26A0 git init skipped (git not found or error)"));}console.log(""),console.log(o.bold("\u2705 Go/Fiber project ready!")),console.log(""),console.log(o.cyan("Next steps:")),console.log(o.white(` cd ${r.project_name}`)),console.log(o.white(" make run # start dev server")),console.log(o.white(" make test # run tests")),console.log(""),console.log(o.gray("Server will listen on port "+r.port)),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/live")),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/ready")),console.log(""),console.log(o.yellow("\u2139 RapidKit Core modules are not available for Go projects (module system uses Python/pip).")),console.log("");}catch(t){throw n.fail(o.red("Failed to generate Go/Fiber project")),t}}
1397
1397
  export{ce as generateGoFiberKit};
@@ -1,4 +1,4 @@
1
- import {c as c$2,b as b$2,d,e,f,a as a$1}from'./chunk-IBJEQHJR.js';import {c}from'./chunk-Y45WZR5N.js';import {b as b$1,a}from'./chunk-TQEMLBAG.js';import {promises}from'fs';import c$1 from'path';import o from'chalk';import O from'ora';import {execa}from'execa';function N(e){return `package main
1
+ import {c as c$1,b as b$2,d,e,f,a as a$1}from'./chunk-IBJEQHJR.js';import {i}from'./chunk-VRW6KXNK.js';import {b as b$1,a}from'./chunk-TQEMLBAG.js';import {promises}from'fs';import c from'path';import o from'chalk';import O from'ora';import {execa}from'execa';function N(e){return `package main
2
2
 
3
3
  import (
4
4
  "context"
@@ -1454,6 +1454,6 @@ issues:
1454
1454
  linters:
1455
1455
  - errcheck
1456
1456
  - wrapcheck
1457
- `}function Y(){return JSON.stringify({engine:"npm",runtime:"go"},null,2)}function Z(e,n){return JSON.stringify({kit_name:"gogin.standard",runtime:"go",module_support:false,project_name:e.project_name,module_path:e.module_path,app_version:e.app_version,created_by:"workspai",workspai_version:n,rapidkit_version:n,created_at:new Date().toISOString()},null,2)}function ee(e$1){return e({runtimeLabel:"Go/Gin",projectName:e$1.project_name,fallbackDevCommand:'cd "$SCRIPT_DIR" && GIN_MODE=debug exec go run ./cmd/server "$@"'})}function te(e){return f({runtimeLabel:"Go/Gin",projectName:e.project_name})}async function ge(e,n){let r={project_name:n.project_name,module_path:n.module_path||n.project_name,author:n.author||"Workspai User",description:n.description||`Go/Gin REST API \u2014 ${n.project_name}`,go_version:n.go_version||a$1,app_version:n.app_version||"0.1.0",port:n.port||"8080",skipGit:n.skipGit??false,skipInstall:n.skipInstall??false},R=c();if(!r.skipInstall)try{await execa("go",["version"],{timeout:3e3});}catch{console.log(o.yellow("\n\u26A0 Go not found in PATH \u2014 project will be scaffolded, but `go mod tidy` requires Go 1.21+")),console.log(o.gray(` Install: https://go.dev/dl/
1458
- `));}let i=O(`Generating Go/Gin project: ${r.project_name}\u2026`).start();try{let t=(_,T)=>c$2(c$1.join(e,_),T),v=c$1.join(e,"rapidkit"),S=c$1.join(e,"rapidkit.cmd");if(await Promise.all([t("cmd/server/main.go",N(r)),t("go.mod",b(r)),t("internal/config/config.go",G(r)),t("internal/server/server.go",q(r)),t("internal/middleware/requestid.go",P()),t("internal/middleware/requestid_test.go",D(r)),t("internal/apierr/apierr.go",H()),t("internal/apierr/apierr_test.go",F(r)),t("internal/handlers/health.go",E()),t("internal/handlers/health_test.go",C(r)),t("internal/handlers/example.go",j(r)),t("internal/handlers/example_test.go",U(r)),t("internal/config/config_test.go",B(r)),t("internal/middleware/cors.go",V()),t("internal/middleware/cors_test.go",W(r)),t("internal/middleware/ratelimit.go",K(r)),t("internal/middleware/ratelimit_test.go",X(r)),t("internal/server/server_test.go",J(r)),t("docs/doc.go",$(r)),t(".air.toml",Q(r)),t("Dockerfile",L()),t("docker-compose.yml",y(r)),t("Makefile",I(r)),t(".golangci.yml",z(r.module_path)),t(".env.example",k(r)),t(".gitignore",x()),t(".github/workflows/ci.yml",M(r)),t("README.md",A(r)),t(".workspai/project.json",Z(r,R)),t(".workspai/context.json",Y()),t("rapidkit",ee(r)),t("rapidkit.cmd",te(r))]),await promises.chmod(v,493),await promises.chmod(S,493),i.succeed(o.green(`Project created at ${e}`)),r.skipInstall)i.info(o.gray("Skipped Go dependency warm-up (--skip-install)."));else try{i.start("Fetching Go dependencies\u2026"),await execa("go",["mod","tidy"],{cwd:e,timeout:12e4}),i.succeed(o.gray("\u2713 go mod tidy completed"));}catch{i.warn(o.yellow("\u26A0 go mod tidy failed \u2014 run manually: go mod tidy"));}if(!r.skipGit)try{await b$1(e)?console.log(o.gray("\u26A0 git init skipped (target is inside an existing git worktree)")):(await execa("git",["init"],{cwd:e,env:a()}),await execa("git",["add","-A"],{cwd:e,env:a()}),await execa("git",["commit","-m","chore: initial scaffold (rapidkit gogin.standard)"],{cwd:e,env:a()}),console.log(o.gray("\u2713 git repository initialized")));}catch{console.log(o.gray("\u26A0 git init skipped (git not found or error)"));}console.log(""),console.log(o.bold("\u2705 Go/Gin project ready!")),console.log(""),console.log(o.cyan("Next steps:")),console.log(o.white(` cd ${r.project_name}`)),console.log(o.white(" make run # start dev server")),console.log(o.white(" make test # run tests")),console.log(""),console.log(o.gray("Server will listen on port "+r.port)),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/live")),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/ready")),console.log(""),console.log(o.yellow("\u2139 RapidKit Core modules are not available for Go projects (module system uses Python/pip).")),console.log("");}catch(t){throw i.fail(o.red("Failed to generate Go/Gin project")),t}}
1457
+ `}function Y(){return JSON.stringify({engine:"npm",runtime:"go"},null,2)}function Z(e,n){return JSON.stringify({kit_name:"gogin.standard",runtime:"go",module_support:false,project_name:e.project_name,module_path:e.module_path,app_version:e.app_version,created_by:"workspai",workspai_version:n,rapidkit_version:n,created_at:new Date().toISOString()},null,2)}function ee(e$1){return e({runtimeLabel:"Go/Gin",projectName:e$1.project_name,fallbackDevCommand:'cd "$SCRIPT_DIR" && GIN_MODE=debug exec go run ./cmd/server "$@"'})}function te(e){return f({runtimeLabel:"Go/Gin",projectName:e.project_name})}async function ge(e,n){let r={project_name:n.project_name,module_path:n.module_path||n.project_name,author:n.author||"Workspai User",description:n.description||`Go/Gin REST API \u2014 ${n.project_name}`,go_version:n.go_version||a$1,app_version:n.app_version||"0.1.0",port:n.port||"8080",skipGit:n.skipGit??false,skipInstall:n.skipInstall??false},R=i();if(!r.skipInstall)try{await execa("go",["version"],{timeout:3e3});}catch{console.log(o.yellow("\n\u26A0 Go not found in PATH \u2014 project will be scaffolded, but `go mod tidy` requires Go 1.21+")),console.log(o.gray(` Install: https://go.dev/dl/
1458
+ `));}let i$1=O(`Generating Go/Gin project: ${r.project_name}\u2026`).start();try{let t=(_,T)=>c$1(c.join(e,_),T),v=c.join(e,"rapidkit"),S=c.join(e,"rapidkit.cmd");if(await Promise.all([t("cmd/server/main.go",N(r)),t("go.mod",b(r)),t("internal/config/config.go",G(r)),t("internal/server/server.go",q(r)),t("internal/middleware/requestid.go",P()),t("internal/middleware/requestid_test.go",D(r)),t("internal/apierr/apierr.go",H()),t("internal/apierr/apierr_test.go",F(r)),t("internal/handlers/health.go",E()),t("internal/handlers/health_test.go",C(r)),t("internal/handlers/example.go",j(r)),t("internal/handlers/example_test.go",U(r)),t("internal/config/config_test.go",B(r)),t("internal/middleware/cors.go",V()),t("internal/middleware/cors_test.go",W(r)),t("internal/middleware/ratelimit.go",K(r)),t("internal/middleware/ratelimit_test.go",X(r)),t("internal/server/server_test.go",J(r)),t("docs/doc.go",$(r)),t(".air.toml",Q(r)),t("Dockerfile",L()),t("docker-compose.yml",y(r)),t("Makefile",I(r)),t(".golangci.yml",z(r.module_path)),t(".env.example",k(r)),t(".gitignore",x()),t(".github/workflows/ci.yml",M(r)),t("README.md",A(r)),t(".workspai/project.json",Z(r,R)),t(".workspai/context.json",Y()),t("rapidkit",ee(r)),t("rapidkit.cmd",te(r))]),await promises.chmod(v,493),await promises.chmod(S,493),i$1.succeed(o.green(`Project created at ${e}`)),r.skipInstall)i$1.info(o.gray("Skipped Go dependency warm-up (--skip-install)."));else try{i$1.start("Fetching Go dependencies\u2026"),await execa("go",["mod","tidy"],{cwd:e,timeout:12e4}),i$1.succeed(o.gray("\u2713 go mod tidy completed"));}catch{i$1.warn(o.yellow("\u26A0 go mod tidy failed \u2014 run manually: go mod tidy"));}if(!r.skipGit)try{await b$1(e)?console.log(o.gray("\u26A0 git init skipped (target is inside an existing git worktree)")):(await execa("git",["init"],{cwd:e,env:a()}),await execa("git",["add","-A"],{cwd:e,env:a()}),await execa("git",["commit","-m","chore: initial scaffold (rapidkit gogin.standard)"],{cwd:e,env:a()}),console.log(o.gray("\u2713 git repository initialized")));}catch{console.log(o.gray("\u26A0 git init skipped (git not found or error)"));}console.log(""),console.log(o.bold("\u2705 Go/Gin project ready!")),console.log(""),console.log(o.cyan("Next steps:")),console.log(o.white(` cd ${r.project_name}`)),console.log(o.white(" make run # start dev server")),console.log(o.white(" make test # run tests")),console.log(""),console.log(o.gray("Server will listen on port "+r.port)),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/live")),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/ready")),console.log(""),console.log(o.yellow("\u2139 RapidKit Core modules are not available for Go projects (module system uses Python/pip).")),console.log("");}catch(t){throw i$1.fail(o.red("Failed to generate Go/Gin project")),t}}
1459
1459
  export{ge as generateGoGinKit};
package/dist/index.d.ts CHANGED
@@ -8,6 +8,9 @@ declare const VERSION_CONTRACT_SCHEMA_VERSION: "rapidkit-version-v1";
8
8
 
9
9
  declare const NPM_ONLY_MANUAL_HANDLER_COMMANDS: readonly ["bootstrap", "setup", "cache", "mirror"];
10
10
 
11
+ declare const PROJECT_GROUNDING_MODE_VALUES: readonly ["managed", "local", "off"];
12
+ type ProjectGroundingMode = (typeof PROJECT_GROUNDING_MODE_VALUES)[number];
13
+
11
14
  interface AdoptProjectFilePreimage {
12
15
  path: string;
13
16
  contents: Buffer | null;
@@ -43,7 +46,16 @@ declare function getPublishedContractVersions(): {
43
46
  workspaceArchiveCapabilities: "workspai-workspace-archive-capabilities-v1";
44
47
  workspaceArchiveManifest: "workspai-workspace-archive-manifest-v1";
45
48
  workspaceArchiveOperationResult: "workspai-workspace-archive-operation-result-v1";
49
+ ingestionPlan: "workspai.ingestion-plan.v1";
50
+ ingestionResult: "workspai.ingestion-result.v1";
46
51
  projectEntryCapability: string;
52
+ projectWorkspaceLink: string;
53
+ projectWorkspaceResolution: "project-workspace-resolution.v1";
54
+ projectContextAgent: string;
55
+ doctorProjectEvidence: string;
56
+ doctorWorkspaceEvidence: "doctor-workspace-evidence-v1";
57
+ doctorGraphDiagnosis: "doctor-graph-diagnosis.v1";
58
+ projectTestCoverage: string;
47
59
  workspaceIntelligenceArchitecture: string;
48
60
  workspaceIntelligenceChain: "workspai-workspace-intelligence-chain-v1";
49
61
  workspaceIntelligenceArtifacts: {
@@ -78,6 +90,7 @@ declare function getPublishedContractVersions(): {
78
90
  workspaceContext: "workspace-context.v1";
79
91
  workspaceDependencyGraph: "workspace-dependency-graph.v1";
80
92
  workspaceKnowledgeGraph: "workspace-knowledge-graph.v1";
93
+ workspaceGraphStream: "workspace-graph-stream.v1";
81
94
  workspaceKnowledgeGraphChangeOverlay: "workspace-knowledge-graph-change-overlay.v1";
82
95
  workspaceKnowledgeSearch: "workspace-knowledge-search.v1";
83
96
  workspaceGraphTokenEfficiency: "workspace-graph-token-efficiency.v1";
@@ -100,7 +113,7 @@ declare function getPublishedContractCatalog(): {
100
113
  [k: string]: {
101
114
  artifacts?: {
102
115
  [k: string]: {
103
- path: ".workspai/reports/workspace-model.json" | ".workspai/reports/workspace-knowledge-graph.json" | ".workspai/reports/workspace-model-snapshot.json" | ".workspai/reports/workspace-model-diff-last-run.json" | ".workspai/reports/workspace-impact-last-run.json" | ".workspai/reports/analyze-last-run.json" | ".workspai/reports/doctor-last-run.json" | ".workspai/reports/workspace-contract-verify-last-run.json" | ".workspai/reports/release-readiness-last-run.json" | ".workspai/reports/workspace-verify-last-run.json" | ".workspai/reports/workspace-intelligence-history.json" | ".workspai/reports/workspace-context-agent.json" | ".workspai/reports/INDEX.json" | ".workspai/reports/agent-customization-pack.json" | ".workspai/reports/workspace-skills-index.json" | "AGENTS.md" | ".workspai/reports/workspace-explain-last-run.json" | ".workspai/reports/workspace-intelligence-run-last-run.json" | ".workspai/reports/workspace-intelligence-evaluation-live.json" | ".workspai/reports/workspace-intelligence-evaluation-last-run.json";
116
+ path: "AGENTS.md" | ".workspai/reports/workspace-model.json" | ".workspai/reports/workspace-knowledge-graph.json" | ".workspai/reports/workspace-model-snapshot.json" | ".workspai/reports/workspace-model-diff-last-run.json" | ".workspai/reports/workspace-impact-last-run.json" | ".workspai/reports/analyze-last-run.json" | ".workspai/reports/doctor-last-run.json" | ".workspai/reports/workspace-contract-verify-last-run.json" | ".workspai/reports/release-readiness-last-run.json" | ".workspai/reports/workspace-verify-last-run.json" | ".workspai/reports/workspace-intelligence-history.json" | ".workspai/reports/workspace-context-agent.json" | ".workspai/reports/INDEX.json" | ".workspai/reports/agent-customization-pack.json" | ".workspai/reports/workspace-skills-index.json" | ".workspai/reports/workspace-explain-last-run.json" | ".workspai/reports/workspace-intelligence-run-last-run.json" | ".workspai/reports/workspace-intelligence-evaluation-live.json" | ".workspai/reports/workspace-intelligence-evaluation-last-run.json";
104
117
  schemaVersion: "workspace-model.v1" | "workspace-knowledge-graph.v1" | "workspace-model-snapshot.v1" | "workspace-model-diff.v1" | "workspace-impact.v1" | "rapidkit-analyze-v1" | "doctor-workspace-evidence-v1" | "workspace-contract-verify.v1" | "release-readiness-v1" | "workspace-verify.v1" | "workspace-intelligence-history.v1" | "workspace-context.v1" | "rapidkit-agent-reports-index.v1" | "rapidkit-agent-customization-pack.v1" | "workspace-skills-index.v1" | "workspace-explain.v1" | "workspace-intelligence-run.v1" | "workspace-intelligence-evaluation.v1" | null;
105
118
  contractPath: "contracts/workspace-intelligence/workspace-model.v1.json" | "contracts/workspace-intelligence/workspace-knowledge-graph.v1.json" | "contracts/workspace-intelligence/workspace-model-snapshot.v1.json" | "contracts/workspace-intelligence/workspace-model-diff.v1.json" | "contracts/workspace-intelligence/workspace-impact.v1.json" | "contracts/analyze-last-run.v1.json" | "contracts/doctor-workspace-evidence.v1.json" | "contracts/workspace-intelligence/workspace-contract-verify.v1.json" | "contracts/release-readiness.v1.json" | "contracts/workspace-intelligence/workspace-verify.v1.json" | "contracts/workspace-intelligence/workspace-intelligence-history.v1.json" | "contracts/workspace-intelligence/workspace-context.v1.json" | "contracts/workspace-intelligence/agent-reports-index.v1.json" | "contracts/workspace-intelligence/agent-customization-pack-report.v1.json" | "contracts/workspace-intelligence/workspace-skills-index.v1.json" | "contracts/workspace-intelligence/workspace-explain.v1.json" | "contracts/workspace-intelligence/workspace-intelligence-run.v1.json" | "contracts/workspace-intelligence/workspace-intelligence-evaluation.v1.json" | null;
106
119
  };
@@ -144,7 +157,7 @@ declare function parseMaxWorkersOption(raw: string | undefined): number | undefi
144
157
  declare function hostPythonCandidates(): string[];
145
158
  declare function buildDelegationEnvForInit(): NodeJS.ProcessEnv;
146
159
  declare function commandAvailable(command: string, cwd: string): Promise<boolean>;
147
- type InferredRuntime = 'python' | 'node' | 'go' | 'java' | 'dotnet' | null;
160
+ type InferredRuntime = 'python' | 'node' | 'go' | 'java' | 'dotnet' | 'rust' | 'php' | null;
148
161
  declare function inferRuntimeByFiles(targetPath: string): Promise<InferredRuntime>;
149
162
  interface PythonProjectOrchestrationDependencies {
150
163
  runCommand?: typeof runCommandInCwd;
@@ -198,7 +211,16 @@ declare function getVersionContract(): {
198
211
  workspaceArchiveCapabilities: "workspai-workspace-archive-capabilities-v1";
199
212
  workspaceArchiveManifest: "workspai-workspace-archive-manifest-v1";
200
213
  workspaceArchiveOperationResult: "workspai-workspace-archive-operation-result-v1";
214
+ ingestionPlan: "workspai.ingestion-plan.v1";
215
+ ingestionResult: "workspai.ingestion-result.v1";
201
216
  projectEntryCapability: string;
217
+ projectWorkspaceLink: string;
218
+ projectWorkspaceResolution: "project-workspace-resolution.v1";
219
+ projectContextAgent: string;
220
+ doctorProjectEvidence: string;
221
+ doctorWorkspaceEvidence: "doctor-workspace-evidence-v1";
222
+ doctorGraphDiagnosis: "doctor-graph-diagnosis.v1";
223
+ projectTestCoverage: string;
202
224
  workspaceIntelligenceArchitecture: string;
203
225
  workspaceIntelligenceChain: "workspai-workspace-intelligence-chain-v1";
204
226
  workspaceIntelligenceArtifacts: {
@@ -233,6 +255,7 @@ declare function getVersionContract(): {
233
255
  workspaceContext: "workspace-context.v1";
234
256
  workspaceDependencyGraph: "workspace-dependency-graph.v1";
235
257
  workspaceKnowledgeGraph: "workspace-knowledge-graph.v1";
258
+ workspaceGraphStream: "workspace-graph-stream.v1";
236
259
  workspaceKnowledgeGraphChangeOverlay: "workspace-knowledge-graph-change-overlay.v1";
237
260
  workspaceKnowledgeSearch: "workspace-knowledge-search.v1";
238
261
  workspaceGraphTokenEfficiency: "workspace-graph-token-efficiency.v1";
@@ -255,7 +278,7 @@ declare function getVersionContract(): {
255
278
  [k: string]: {
256
279
  artifacts?: {
257
280
  [k: string]: {
258
- path: ".workspai/reports/workspace-model.json" | ".workspai/reports/workspace-knowledge-graph.json" | ".workspai/reports/workspace-model-snapshot.json" | ".workspai/reports/workspace-model-diff-last-run.json" | ".workspai/reports/workspace-impact-last-run.json" | ".workspai/reports/analyze-last-run.json" | ".workspai/reports/doctor-last-run.json" | ".workspai/reports/workspace-contract-verify-last-run.json" | ".workspai/reports/release-readiness-last-run.json" | ".workspai/reports/workspace-verify-last-run.json" | ".workspai/reports/workspace-intelligence-history.json" | ".workspai/reports/workspace-context-agent.json" | ".workspai/reports/INDEX.json" | ".workspai/reports/agent-customization-pack.json" | ".workspai/reports/workspace-skills-index.json" | "AGENTS.md" | ".workspai/reports/workspace-explain-last-run.json" | ".workspai/reports/workspace-intelligence-run-last-run.json" | ".workspai/reports/workspace-intelligence-evaluation-live.json" | ".workspai/reports/workspace-intelligence-evaluation-last-run.json";
281
+ path: "AGENTS.md" | ".workspai/reports/workspace-model.json" | ".workspai/reports/workspace-knowledge-graph.json" | ".workspai/reports/workspace-model-snapshot.json" | ".workspai/reports/workspace-model-diff-last-run.json" | ".workspai/reports/workspace-impact-last-run.json" | ".workspai/reports/analyze-last-run.json" | ".workspai/reports/doctor-last-run.json" | ".workspai/reports/workspace-contract-verify-last-run.json" | ".workspai/reports/release-readiness-last-run.json" | ".workspai/reports/workspace-verify-last-run.json" | ".workspai/reports/workspace-intelligence-history.json" | ".workspai/reports/workspace-context-agent.json" | ".workspai/reports/INDEX.json" | ".workspai/reports/agent-customization-pack.json" | ".workspai/reports/workspace-skills-index.json" | ".workspai/reports/workspace-explain-last-run.json" | ".workspai/reports/workspace-intelligence-run-last-run.json" | ".workspai/reports/workspace-intelligence-evaluation-live.json" | ".workspai/reports/workspace-intelligence-evaluation-last-run.json";
259
282
  schemaVersion: "workspace-model.v1" | "workspace-knowledge-graph.v1" | "workspace-model-snapshot.v1" | "workspace-model-diff.v1" | "workspace-impact.v1" | "rapidkit-analyze-v1" | "doctor-workspace-evidence-v1" | "workspace-contract-verify.v1" | "release-readiness-v1" | "workspace-verify.v1" | "workspace-intelligence-history.v1" | "workspace-context.v1" | "rapidkit-agent-reports-index.v1" | "rapidkit-agent-customization-pack.v1" | "workspace-skills-index.v1" | "workspace-explain.v1" | "workspace-intelligence-run.v1" | "workspace-intelligence-evaluation.v1" | null;
260
283
  contractPath: "contracts/workspace-intelligence/workspace-model.v1.json" | "contracts/workspace-intelligence/workspace-knowledge-graph.v1.json" | "contracts/workspace-intelligence/workspace-model-snapshot.v1.json" | "contracts/workspace-intelligence/workspace-model-diff.v1.json" | "contracts/workspace-intelligence/workspace-impact.v1.json" | "contracts/analyze-last-run.v1.json" | "contracts/doctor-workspace-evidence.v1.json" | "contracts/workspace-intelligence/workspace-contract-verify.v1.json" | "contracts/release-readiness.v1.json" | "contracts/workspace-intelligence/workspace-verify.v1.json" | "contracts/workspace-intelligence/workspace-intelligence-history.v1.json" | "contracts/workspace-intelligence/workspace-context.v1.json" | "contracts/workspace-intelligence/agent-reports-index.v1.json" | "contracts/workspace-intelligence/agent-customization-pack-report.v1.json" | "contracts/workspace-intelligence/workspace-skills-index.v1.json" | "contracts/workspace-intelligence/workspace-explain.v1.json" | "contracts/workspace-intelligence/workspace-intelligence-run.v1.json" | "contracts/workspace-intelligence/workspace-intelligence-evaluation.v1.json" | null;
261
284
  };
@@ -347,7 +370,16 @@ declare function getGlobalCommandCapabilities(): {
347
370
  workspaceArchiveCapabilities: "workspai-workspace-archive-capabilities-v1";
348
371
  workspaceArchiveManifest: "workspai-workspace-archive-manifest-v1";
349
372
  workspaceArchiveOperationResult: "workspai-workspace-archive-operation-result-v1";
373
+ ingestionPlan: "workspai.ingestion-plan.v1";
374
+ ingestionResult: "workspai.ingestion-result.v1";
350
375
  projectEntryCapability: string;
376
+ projectWorkspaceLink: string;
377
+ projectWorkspaceResolution: "project-workspace-resolution.v1";
378
+ projectContextAgent: string;
379
+ doctorProjectEvidence: string;
380
+ doctorWorkspaceEvidence: "doctor-workspace-evidence-v1";
381
+ doctorGraphDiagnosis: "doctor-graph-diagnosis.v1";
382
+ projectTestCoverage: string;
351
383
  workspaceIntelligenceArchitecture: string;
352
384
  workspaceIntelligenceChain: "workspai-workspace-intelligence-chain-v1";
353
385
  workspaceIntelligenceArtifacts: {
@@ -382,6 +414,7 @@ declare function getGlobalCommandCapabilities(): {
382
414
  workspaceContext: "workspace-context.v1";
383
415
  workspaceDependencyGraph: "workspace-dependency-graph.v1";
384
416
  workspaceKnowledgeGraph: "workspace-knowledge-graph.v1";
417
+ workspaceGraphStream: "workspace-graph-stream.v1";
385
418
  workspaceKnowledgeGraphChangeOverlay: "workspace-knowledge-graph-change-overlay.v1";
386
419
  workspaceKnowledgeSearch: "workspace-knowledge-search.v1";
387
420
  workspaceGraphTokenEfficiency: "workspace-graph-token-efficiency.v1";
@@ -404,7 +437,7 @@ declare function getGlobalCommandCapabilities(): {
404
437
  [k: string]: {
405
438
  artifacts?: {
406
439
  [k: string]: {
407
- path: ".workspai/reports/workspace-model.json" | ".workspai/reports/workspace-knowledge-graph.json" | ".workspai/reports/workspace-model-snapshot.json" | ".workspai/reports/workspace-model-diff-last-run.json" | ".workspai/reports/workspace-impact-last-run.json" | ".workspai/reports/analyze-last-run.json" | ".workspai/reports/doctor-last-run.json" | ".workspai/reports/workspace-contract-verify-last-run.json" | ".workspai/reports/release-readiness-last-run.json" | ".workspai/reports/workspace-verify-last-run.json" | ".workspai/reports/workspace-intelligence-history.json" | ".workspai/reports/workspace-context-agent.json" | ".workspai/reports/INDEX.json" | ".workspai/reports/agent-customization-pack.json" | ".workspai/reports/workspace-skills-index.json" | "AGENTS.md" | ".workspai/reports/workspace-explain-last-run.json" | ".workspai/reports/workspace-intelligence-run-last-run.json" | ".workspai/reports/workspace-intelligence-evaluation-live.json" | ".workspai/reports/workspace-intelligence-evaluation-last-run.json";
440
+ path: "AGENTS.md" | ".workspai/reports/workspace-model.json" | ".workspai/reports/workspace-knowledge-graph.json" | ".workspai/reports/workspace-model-snapshot.json" | ".workspai/reports/workspace-model-diff-last-run.json" | ".workspai/reports/workspace-impact-last-run.json" | ".workspai/reports/analyze-last-run.json" | ".workspai/reports/doctor-last-run.json" | ".workspai/reports/workspace-contract-verify-last-run.json" | ".workspai/reports/release-readiness-last-run.json" | ".workspai/reports/workspace-verify-last-run.json" | ".workspai/reports/workspace-intelligence-history.json" | ".workspai/reports/workspace-context-agent.json" | ".workspai/reports/INDEX.json" | ".workspai/reports/agent-customization-pack.json" | ".workspai/reports/workspace-skills-index.json" | ".workspai/reports/workspace-explain-last-run.json" | ".workspai/reports/workspace-intelligence-run-last-run.json" | ".workspai/reports/workspace-intelligence-evaluation-live.json" | ".workspai/reports/workspace-intelligence-evaluation-last-run.json";
408
441
  schemaVersion: "workspace-model.v1" | "workspace-knowledge-graph.v1" | "workspace-model-snapshot.v1" | "workspace-model-diff.v1" | "workspace-impact.v1" | "rapidkit-analyze-v1" | "doctor-workspace-evidence-v1" | "workspace-contract-verify.v1" | "release-readiness-v1" | "workspace-verify.v1" | "workspace-intelligence-history.v1" | "workspace-context.v1" | "rapidkit-agent-reports-index.v1" | "rapidkit-agent-customization-pack.v1" | "workspace-skills-index.v1" | "workspace-explain.v1" | "workspace-intelligence-run.v1" | "workspace-intelligence-evaluation.v1" | null;
409
442
  contractPath: "contracts/workspace-intelligence/workspace-model.v1.json" | "contracts/workspace-intelligence/workspace-knowledge-graph.v1.json" | "contracts/workspace-intelligence/workspace-model-snapshot.v1.json" | "contracts/workspace-intelligence/workspace-model-diff.v1.json" | "contracts/workspace-intelligence/workspace-impact.v1.json" | "contracts/analyze-last-run.v1.json" | "contracts/doctor-workspace-evidence.v1.json" | "contracts/workspace-intelligence/workspace-contract-verify.v1.json" | "contracts/release-readiness.v1.json" | "contracts/workspace-intelligence/workspace-verify.v1.json" | "contracts/workspace-intelligence/workspace-intelligence-history.v1.json" | "contracts/workspace-intelligence/workspace-context.v1.json" | "contracts/workspace-intelligence/agent-reports-index.v1.json" | "contracts/workspace-intelligence/agent-customization-pack-report.v1.json" | "contracts/workspace-intelligence/workspace-skills-index.v1.json" | "contracts/workspace-intelligence/workspace-explain.v1.json" | "contracts/workspace-intelligence/workspace-intelligence-run.v1.json" | "contracts/workspace-intelligence/workspace-intelligence-evaluation.v1.json" | null;
410
443
  };
@@ -442,7 +475,7 @@ declare function getGlobalCommandCapabilities(): {
442
475
  };
443
476
  workspace: {
444
477
  command: string;
445
- subcommands: ("archive" | "snapshot" | "list" | "import" | "init" | "model" | "diff" | "impact" | "verify" | "explain" | "sync" | "registry" | "foundation" | "intelligence" | "graph" | "watch" | "context" | "agent-sync" | "remediation-plan" | "why" | "trace" | "feedback" | "eval" | "mcp" | "policy" | "contract" | "share" | "export" | "hydrate" | "run")[];
478
+ subcommands: ("archive" | "snapshot" | "list" | "import" | "init" | "model" | "diff" | "impact" | "verify" | "explain" | "sync" | "registry" | "foundation" | "intelligence" | "graph" | "watch" | "context" | "agent-sync" | "remediation-plan" | "why" | "trace" | "feedback" | "eval" | "mcp" | "policy" | "contract" | "share" | "export" | "hydrate" | "connect" | "run")[];
446
479
  intelligenceSubcommands: ("snapshot" | "model" | "diff" | "impact" | "verify" | "explain" | "intelligence" | "graph" | "watch" | "context" | "agent-sync" | "remediation-plan" | "why" | "trace" | "feedback" | "eval" | "mcp" | "contract")[];
447
480
  };
448
481
  commandMap: any;
@@ -477,6 +510,7 @@ declare function handleImportCommand(source: string, options: {
477
510
  git?: boolean;
478
511
  json?: boolean;
479
512
  enableModules?: boolean;
513
+ projectGrounding?: ProjectGroundingMode;
480
514
  }, dependencies?: {
481
515
  syncWorkspaceProjects?: (workspacePath: string) => Promise<void>;
482
516
  rollbackImportedProjectImport?: (workspacePath: string, projectPath: string) => Promise<void>;
@@ -487,6 +521,7 @@ declare function handleAdoptCommand(source: string | undefined, options: {
487
521
  dryRun?: boolean;
488
522
  json?: boolean;
489
523
  enableModules?: boolean;
524
+ projectGrounding?: ProjectGroundingMode;
490
525
  }, dependencies?: {
491
526
  syncWorkspaceProjects?: (workspacePath: string) => Promise<void>;
492
527
  registerWorkspace?: (workspacePath: string, workspaceName: string) => Promise<void>;
@@ -498,7 +533,7 @@ declare function handleGoInit(projectPath: string): Promise<number>;
498
533
  declare function handleNodeCommand(action: 'init' | 'dev' | 'test' | 'build' | 'start' | 'lint' | 'format', projectPath: string): Promise<number>;
499
534
  declare function handleJavaCommand(action: 'init' | 'dev' | 'test' | 'build' | 'start' | 'lint' | 'format', projectPath: string): Promise<number>;
500
535
  declare function handleBootstrapCommand(args: string[], initRunner?: (nextArgs: string[]) => Promise<number>): Promise<number>;
501
- declare function handleSetupCommand(args: string[]): Promise<number>;
536
+ declare function handleSetupCommand(args: string[], commandRunner?: typeof runCommandInCwd): Promise<number>;
502
537
  declare function parseCacheConfig(content: string): {
503
538
  strategy: string;
504
539
  prune_on_bootstrap: boolean;