forgeos 0.1.0-alpha.7 → 0.1.0-alpha.71

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 (598) hide show
  1. package/.agents/skills/forge-agent-fabric/SKILL.md +178 -0
  2. package/.agents/skills/forge-agent-fabric/references/managed-workflows.md +95 -0
  3. package/.agents/skills/forge-agent-fabric/references/repository-analysis.md +102 -0
  4. package/.agents/skills/forge-agent-fabric/scripts/fabric.mjs +46 -0
  5. package/.agents/skills/forge-agent-fabric/scripts/repository.mjs +44 -0
  6. package/.npmignore +10 -0
  7. package/AGENTS.md +142 -90
  8. package/CHANGELOG.md +870 -9
  9. package/LICENSE +21 -0
  10. package/README.md +121 -6
  11. package/adapters/go/README.md +23 -0
  12. package/adapters/go/go.mod +3 -0
  13. package/adapters/go/http.go +149 -0
  14. package/adapters/go/registry.go +234 -0
  15. package/adapters/go/types.go +136 -0
  16. package/adapters/java/README.md +68 -0
  17. package/adapters/java/pom.xml +47 -0
  18. package/adapters/java/src/main/java/dev/forgeos/adapter/Auth.java +20 -0
  19. package/adapters/java/src/main/java/dev/forgeos/adapter/Diagnostic.java +16 -0
  20. package/adapters/java/src/main/java/dev/forgeos/adapter/Entry.java +38 -0
  21. package/adapters/java/src/main/java/dev/forgeos/adapter/EntryKind.java +16 -0
  22. package/adapters/java/src/main/java/dev/forgeos/adapter/ErrorInfo.java +4 -0
  23. package/adapters/java/src/main/java/dev/forgeos/adapter/Forge.java +94 -0
  24. package/adapters/java/src/main/java/dev/forgeos/adapter/ForgeCall.java +12 -0
  25. package/adapters/java/src/main/java/dev/forgeos/adapter/ForgeContext.java +11 -0
  26. package/adapters/java/src/main/java/dev/forgeos/adapter/ForgeHandler.java +8 -0
  27. package/adapters/java/src/main/java/dev/forgeos/adapter/ForgeHttpHandler.java +179 -0
  28. package/adapters/java/src/main/java/dev/forgeos/adapter/ForgeRegistry.java +121 -0
  29. package/adapters/java/src/main/java/dev/forgeos/adapter/Json.java +14 -0
  30. package/adapters/java/src/main/java/dev/forgeos/adapter/Manifest.java +14 -0
  31. package/adapters/java/src/main/java/dev/forgeos/adapter/RequestEnvelope.java +6 -0
  32. package/adapters/java/src/main/java/dev/forgeos/adapter/ResponseEnvelope.java +25 -0
  33. package/adapters/java/src/main/java/dev/forgeos/adapter/Risk.java +18 -0
  34. package/adapters/java/src/main/java/dev/forgeos/adapter/Schemas.java +36 -0
  35. package/adapters/java/src/main/java/dev/forgeos/adapter/Service.java +65 -0
  36. package/adapters/java/src/main/java/dev/forgeos/adapter/TransactionMode.java +18 -0
  37. package/adapters/java/src/main/java/dev/forgeos/adapter/TypedForgeHandler.java +6 -0
  38. package/adapters/java-spring-boot-starter/README.md +32 -0
  39. package/adapters/java-spring-boot-starter/pom.xml +49 -0
  40. package/adapters/java-spring-boot-starter/src/main/java/dev/forgeos/adapter/spring/ForgeCommand.java +22 -0
  41. package/adapters/java-spring-boot-starter/src/main/java/dev/forgeos/adapter/spring/ForgeExternalService.java +15 -0
  42. package/adapters/java-spring-boot-starter/src/main/java/dev/forgeos/adapter/spring/ForgeQuery.java +16 -0
  43. package/adapters/java-spring-boot-starter/src/main/java/dev/forgeos/adapter/spring/ForgeServiceBeanCondition.java +18 -0
  44. package/adapters/java-spring-boot-starter/src/main/java/dev/forgeos/adapter/spring/ForgeSpringAutoConfiguration.java +16 -0
  45. package/adapters/java-spring-boot-starter/src/main/java/dev/forgeos/adapter/spring/ForgeSpringRuntime.java +104 -0
  46. package/adapters/java-spring-boot-starter/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +1 -0
  47. package/bin/forge.mjs +18 -0
  48. package/docs/agent-fabric-programs.md +151 -0
  49. package/docs/agent-fabric.md +582 -0
  50. package/docs/architecture/agent-fabric/PORTABLE_PROJECTS_PLAN.md +136 -0
  51. package/docs/architecture/agent-fabric/README.md +180 -0
  52. package/docs/architecture/agent-fabric/REPOSITORY_MANIFEST_PLAN.md +284 -0
  53. package/docs/architecture/agent-fabric/WORKFLOW_PROGRAM_V2_ADR.md +81 -0
  54. package/docs/architecture/agent-fabric/WORKFLOW_PROGRAM_V2_CORRECTIONS.md +39 -0
  55. package/docs/architecture/agent-fabric/WORKFLOW_PROGRAM_V2_CORRECTIONS_EVIDENCE.md +53 -0
  56. package/docs/architecture/agent-fabric/WORKFLOW_PROGRAM_V2_EVIDENCE.md +49 -0
  57. package/docs/architecture/agent-fabric/WORKFLOW_PROGRAM_V2_PLAN.md +590 -0
  58. package/docs/cair-protocol.md +103 -0
  59. package/docs/changelog.md +1070 -0
  60. package/docs/forge-protocol.md +189 -0
  61. package/docs/repository-agent-benchmark.md +179 -0
  62. package/docs/repository-analysis.md +139 -0
  63. package/docs/repository-context-quality.md +179 -0
  64. package/docs/repository-runtime-observation.md +82 -0
  65. package/examples/agent-fabric-v2/README.md +70 -0
  66. package/examples/agent-fabric-v2/item-child.workflow.ts +11 -0
  67. package/examples/agent-fabric-v2/make-request.mjs +4 -0
  68. package/examples/agent-fabric-v2/map-child.workflow.ts +10 -0
  69. package/examples/agent-fabric-v2/migrate.workflow.ts +35 -0
  70. package/examples/agent-fabric-v2/registry.example.json +256 -0
  71. package/examples/agent-fabric-v2/run-ui-fixture.ts +48 -0
  72. package/examples/agent-fabric-v2/ui-audit.workflow.ts +28 -0
  73. package/examples/agent-fabric-v2/ui-fixture-worker.cjs +36 -0
  74. package/examples/agent-fabric-v2/visual-population.json +13 -0
  75. package/examples/agent-fabric-v2/workers/check.mjs +2 -0
  76. package/examples/agent-fabric-v2/workers/common.mjs +7 -0
  77. package/examples/agent-fabric-v2/workers/discover.mjs +2 -0
  78. package/examples/agent-fabric-v2/workers/migrate.mjs +4 -0
  79. package/examples/agent-fabric-v2/workers/review.mjs +3 -0
  80. package/examples/go-billing/go.mod +7 -0
  81. package/examples/go-billing/main.go +120 -0
  82. package/examples/java-billing/pom.xml +60 -0
  83. package/examples/java-billing/src/main/java/dev/forgeos/examples/billing/CreateInvoiceInput.java +4 -0
  84. package/examples/java-billing/src/main/java/dev/forgeos/examples/billing/Invoice.java +11 -0
  85. package/examples/java-billing/src/main/java/dev/forgeos/examples/billing/Main.java +127 -0
  86. package/package.json +60 -5
  87. package/schemas/agent-fabric/v0.1/control-event.schema.json +281 -0
  88. package/schemas/forge-manifest.schema.json +389 -0
  89. package/scripts/field-test-forgeos.mjs +1021 -0
  90. package/scripts/install-agent-fabric-skill.mjs +105 -0
  91. package/src/forge/_generated/releaseManifest.json +1 -2
  92. package/src/forge/_generated/releaseManifest.ts +3 -3
  93. package/src/forge/agent-adapters/index.ts +1592 -125
  94. package/src/forge/agent-adapters/types.ts +225 -1
  95. package/src/forge/agent-fabric/adapter.ts +131 -0
  96. package/src/forge/agent-fabric/attached-snapshot.ts +55 -0
  97. package/src/forge/agent-fabric/attached-task-contract.ts +105 -0
  98. package/src/forge/agent-fabric/attached-task-service.ts +127 -0
  99. package/src/forge/agent-fabric/attached-task-store.ts +109 -0
  100. package/src/forge/agent-fabric/authority.ts +298 -0
  101. package/src/forge/agent-fabric/canonical.ts +135 -0
  102. package/src/forge/agent-fabric/codex-adversarial-review.ts +229 -0
  103. package/src/forge/agent-fabric/codex-sdk-worker.ts +203 -0
  104. package/src/forge/agent-fabric/conductor.ts +754 -0
  105. package/src/forge/agent-fabric/dictionary.ts +12 -0
  106. package/src/forge/agent-fabric/errors.ts +32 -0
  107. package/src/forge/agent-fabric/hardened-conductor.ts +485 -0
  108. package/src/forge/agent-fabric/hardened-reducer.ts +211 -0
  109. package/src/forge/agent-fabric/index.ts +48 -0
  110. package/src/forge/agent-fabric/journal.ts +116 -0
  111. package/src/forge/agent-fabric/local-adaptive-digest-worker.mjs +26 -0
  112. package/src/forge/agent-fabric/local-adaptive-harness.ts +343 -0
  113. package/src/forge/agent-fabric/local-adaptive-service.ts +398 -0
  114. package/src/forge/agent-fabric/local-adaptive-worker.ts +146 -0
  115. package/src/forge/agent-fabric/local-approval-window.ts +211 -0
  116. package/src/forge/agent-fabric/local-change-review-service.ts +374 -0
  117. package/src/forge/agent-fabric/local-coding-worker.ts +285 -0
  118. package/src/forge/agent-fabric/local-control-store.ts +239 -0
  119. package/src/forge/agent-fabric/local-effect-broker.ts +348 -0
  120. package/src/forge/agent-fabric/local-evolution-approval.ts +81 -0
  121. package/src/forge/agent-fabric/local-evolution-profile.ts +87 -0
  122. package/src/forge/agent-fabric/local-evolution-registry.ts +427 -0
  123. package/src/forge/agent-fabric/local-evolution-service.ts +200 -0
  124. package/src/forge/agent-fabric/local-intelligence.ts +281 -0
  125. package/src/forge/agent-fabric/local-paths.ts +18 -0
  126. package/src/forge/agent-fabric/local-task-contract.ts +203 -0
  127. package/src/forge/agent-fabric/local-task-inbox.ts +543 -0
  128. package/src/forge/agent-fabric/local-task-server.ts +374 -0
  129. package/src/forge/agent-fabric/local-task-service.ts +982 -0
  130. package/src/forge/agent-fabric/local-verification.ts +551 -0
  131. package/src/forge/agent-fabric/managed-environment.ts +205 -0
  132. package/src/forge/agent-fabric/managed-run-contract.ts +103 -0
  133. package/src/forge/agent-fabric/managed-run-service.ts +401 -0
  134. package/src/forge/agent-fabric/managed-run-store.ts +165 -0
  135. package/src/forge/agent-fabric/managed-workspace.ts +253 -0
  136. package/src/forge/agent-fabric/p0a.ts +104 -0
  137. package/src/forge/agent-fabric/p0b-model-adapter.ts +434 -0
  138. package/src/forge/agent-fabric/planning.ts +155 -0
  139. package/src/forge/agent-fabric/program-api.ts +37 -0
  140. package/src/forge/agent-fabric/program-contract.ts +283 -0
  141. package/src/forge/agent-fabric/program-dsl.ts +126 -0
  142. package/src/forge/agent-fabric/program-evidence.ts +22 -0
  143. package/src/forge/agent-fabric/program-image.ts +15 -0
  144. package/src/forge/agent-fabric/program-lock.ts +50 -0
  145. package/src/forge/agent-fabric/program-owner.ts +16 -0
  146. package/src/forge/agent-fabric/program-scheduler.ts +38 -0
  147. package/src/forge/agent-fabric/program-service.ts +793 -0
  148. package/src/forge/agent-fabric/program-store.ts +142 -0
  149. package/src/forge/agent-fabric/program-structure.ts +65 -0
  150. package/src/forge/agent-fabric/program-types.ts +110 -0
  151. package/src/forge/agent-fabric/program-view.ts +12 -0
  152. package/src/forge/agent-fabric/program-worker.ts +108 -0
  153. package/src/forge/agent-fabric/project-profile.ts +50 -0
  154. package/src/forge/agent-fabric/project-registry.ts +120 -0
  155. package/src/forge/agent-fabric/project-runtime.ts +85 -0
  156. package/src/forge/agent-fabric/readiness.ts +26 -0
  157. package/src/forge/agent-fabric/reducer.ts +863 -0
  158. package/src/forge/agent-fabric/repository-context.ts +83 -0
  159. package/src/forge/agent-fabric/resource-ledger.ts +266 -0
  160. package/src/forge/agent-fabric/serialized-local-adapter.ts +60 -0
  161. package/src/forge/agent-fabric/types.ts +424 -0
  162. package/src/forge/agent-fabric/validation.ts +500 -0
  163. package/src/forge/agent-fabric/workflow-engine.ts +218 -0
  164. package/src/forge/agent-fabric/workflow-task-actions.ts +104 -0
  165. package/src/forge/agent-fabric/workflow-templates.ts +11 -0
  166. package/src/forge/agent-memory/bridge.ts +1728 -0
  167. package/src/forge/agent-memory/context-pack.ts +284 -0
  168. package/src/forge/agent-memory/hook-runner.ts +331 -0
  169. package/src/forge/agent-memory/mcp.ts +597 -0
  170. package/src/forge/agent-memory/normalize.ts +498 -0
  171. package/src/forge/agent-memory/redaction.ts +103 -0
  172. package/src/forge/agent-memory/sources/claude-code.ts +51 -0
  173. package/src/forge/agent-memory/sources/codex-hook-runner.mjs +343 -0
  174. package/src/forge/agent-memory/sources/codex.ts +161 -0
  175. package/src/forge/agent-memory/sources/cursor.ts +35 -0
  176. package/src/forge/agent-memory/types.ts +215 -0
  177. package/src/forge/bench.ts +248 -0
  178. package/src/forge/brownfield-import/index.ts +896 -0
  179. package/src/forge/brownfield-import/types.ts +127 -0
  180. package/src/forge/cair/action-journal.ts +61 -0
  181. package/src/forge/cair/action-parser.ts +314 -0
  182. package/src/forge/cair/action-validator.ts +40 -0
  183. package/src/forge/cair/actions.ts +1818 -0
  184. package/src/forge/cair/format.ts +77 -0
  185. package/src/forge/cair/index.ts +118 -0
  186. package/src/forge/cair/query.ts +478 -0
  187. package/src/forge/cair/snapshot.ts +315 -0
  188. package/src/forge/cair/types.ts +255 -0
  189. package/src/forge/cli/adaptive.ts +51 -0
  190. package/src/forge/cli/ai.ts +16 -1
  191. package/src/forge/cli/auth.ts +459 -15
  192. package/src/forge/cli/authmd.ts +441 -0
  193. package/src/forge/cli/baseline.ts +112 -0
  194. package/src/forge/cli/build.ts +20 -4
  195. package/src/forge/cli/changed.ts +418 -0
  196. package/src/forge/cli/codex-app-server.ts +877 -0
  197. package/src/forge/cli/commands.ts +1859 -20
  198. package/src/forge/cli/db.ts +209 -2
  199. package/src/forge/cli/deploy.ts +1339 -0
  200. package/src/forge/cli/deps.ts +150 -23
  201. package/src/forge/cli/dev.ts +1137 -53
  202. package/src/forge/cli/docs.ts +265 -0
  203. package/src/forge/cli/doctor.ts +297 -0
  204. package/src/forge/cli/env-placeholders.ts +62 -0
  205. package/src/forge/cli/evolution.ts +40 -0
  206. package/src/forge/cli/fabric.ts +253 -0
  207. package/src/forge/cli/field-test.ts +568 -0
  208. package/src/forge/cli/golden-path.ts +487 -0
  209. package/src/forge/cli/handoff.ts +336 -0
  210. package/src/forge/cli/index.ts +1 -0
  211. package/src/forge/cli/last-run.ts +84 -0
  212. package/src/forge/cli/main.ts +196 -3
  213. package/src/forge/cli/new.ts +169 -17
  214. package/src/forge/cli/next-actions.ts +23 -0
  215. package/src/forge/cli/output.ts +398 -6
  216. package/src/forge/cli/parse.ts +1377 -38
  217. package/src/forge/cli/progress.ts +51 -0
  218. package/src/forge/cli/query.ts +32 -0
  219. package/src/forge/cli/release.ts +35 -11
  220. package/src/forge/cli/repository.ts +151 -0
  221. package/src/forge/cli/run.ts +42 -0
  222. package/src/forge/cli/secrets.ts +137 -1
  223. package/src/forge/cli/seed.ts +581 -0
  224. package/src/forge/cli/self-host.ts +56 -14
  225. package/src/forge/cli/studio.ts +2282 -0
  226. package/src/forge/cli/verify.ts +1458 -32
  227. package/src/forge/cli/windows.ts +23 -0
  228. package/src/forge/cli/workos.ts +3509 -0
  229. package/src/forge/compiler/agent-contract/build.ts +728 -64
  230. package/src/forge/compiler/agent-contract/types.ts +45 -2
  231. package/src/forge/compiler/ai-registry/parse.ts +71 -2
  232. package/src/forge/compiler/api-surface/build.ts +47 -0
  233. package/src/forge/compiler/app-graph/build.ts +112 -9
  234. package/src/forge/compiler/app-graph/extract.ts +107 -0
  235. package/src/forge/compiler/app-graph/module-graph.ts +73 -78
  236. package/src/forge/compiler/app-graph/parser.ts +24 -24
  237. package/src/forge/compiler/app-graph/profile.ts +26 -0
  238. package/src/forge/compiler/app-graph/tsconfig-hash.ts +41 -4
  239. package/src/forge/compiler/app-graph/versions.ts +1 -1
  240. package/src/forge/compiler/classifier/capabilities.ts +3 -2
  241. package/src/forge/compiler/classifier/classify.ts +32 -8
  242. package/src/forge/compiler/classifier/secrets.ts +3 -2
  243. package/src/forge/compiler/classifier/signals.ts +91 -1
  244. package/src/forge/compiler/client-sdk/build-manifest.ts +59 -0
  245. package/src/forge/compiler/client-sdk/render-client.ts +295 -13
  246. package/src/forge/compiler/data-graph/build.ts +29 -1
  247. package/src/forge/compiler/data-graph/parse.ts +20 -4
  248. package/src/forge/compiler/data-graph/sql/ddl.ts +144 -31
  249. package/src/forge/compiler/data-graph/sql/serialize.ts +4 -0
  250. package/src/forge/compiler/data-graph/sql/types.ts +1 -0
  251. package/src/forge/compiler/diagnostics/codes.ts +38 -0
  252. package/src/forge/compiler/diagnostics/create.ts +28 -2
  253. package/src/forge/compiler/diagnostics/index.ts +2 -0
  254. package/src/forge/compiler/emitter/barrel.ts +3 -0
  255. package/src/forge/compiler/emitter/render.ts +9 -0
  256. package/src/forge/compiler/external-manifest/registry.ts +217 -0
  257. package/src/forge/compiler/external-manifest/types.ts +91 -0
  258. package/src/forge/compiler/external-manifest/validate.ts +373 -0
  259. package/src/forge/compiler/frontend-graph/build.ts +142 -14
  260. package/src/forge/compiler/integration/add.ts +991 -33
  261. package/src/forge/compiler/integration/plan.ts +43 -12
  262. package/src/forge/compiler/integration/render.ts +29 -0
  263. package/src/forge/compiler/integration/snapshot.ts +2 -0
  264. package/src/forge/compiler/integration/templates/convex.ts +70 -0
  265. package/src/forge/compiler/integration/templates/index.ts +1 -0
  266. package/src/forge/compiler/integration/templates/render.ts +38 -0
  267. package/src/forge/compiler/integration/templates/types.ts +3 -0
  268. package/src/forge/compiler/integration/templates/workos.ts +1439 -0
  269. package/src/forge/compiler/make-registry/build.ts +8 -9
  270. package/src/forge/compiler/orchestrator/fast-check.ts +4 -0
  271. package/src/forge/compiler/orchestrator/generate-lock.ts +14 -3
  272. package/src/forge/compiler/orchestrator/manifest.ts +1 -1
  273. package/src/forge/compiler/orchestrator/plan-profile.ts +23 -0
  274. package/src/forge/compiler/orchestrator/plan.ts +249 -10
  275. package/src/forge/compiler/orchestrator/profile.ts +65 -0
  276. package/src/forge/compiler/orchestrator/run.ts +101 -33
  277. package/src/forge/compiler/orchestrator/serialize.ts +33 -8
  278. package/src/forge/compiler/orchestrator/types.ts +1 -1
  279. package/src/forge/compiler/package-graph/compiler.ts +3 -1
  280. package/src/forge/compiler/package-graph/constants.ts +1 -1
  281. package/src/forge/compiler/package-graph/dts-extractor.ts +14 -1
  282. package/src/forge/compiler/package-manager/adapter.ts +4 -1
  283. package/src/forge/compiler/package-manager/commands.ts +4 -0
  284. package/src/forge/compiler/package-manager/executor.ts +30 -1
  285. package/src/forge/compiler/package-manager/version.ts +36 -12
  286. package/src/forge/compiler/package-upgrades/planner.ts +155 -18
  287. package/src/forge/compiler/package-upgrades/types.ts +2 -0
  288. package/src/forge/compiler/policy-registry/build.ts +47 -2
  289. package/src/forge/compiler/policy-registry/parse.ts +32 -2
  290. package/src/forge/compiler/recipes/definitions.ts +63 -0
  291. package/src/forge/compiler/recipes/index.ts +2 -0
  292. package/src/forge/compiler/recipes/profiles.ts +81 -0
  293. package/src/forge/compiler/recipes/registry.ts +6 -0
  294. package/src/forge/compiler/test-graph/build.ts +11 -3
  295. package/src/forge/compiler/types/app-graph.ts +8 -2
  296. package/src/forge/compiler/types/cli.ts +76 -1
  297. package/src/forge/compiler/types/dev-manifest.ts +4 -0
  298. package/src/forge/compiler/types/emit.ts +2 -0
  299. package/src/forge/compiler/types/frontend-graph.ts +2 -2
  300. package/src/forge/compiler/types/integration.ts +1 -0
  301. package/src/forge/compiler/types/package-graph.ts +6 -0
  302. package/src/forge/compiler/types/policy-registry.ts +3 -1
  303. package/src/forge/delta/broker-runner.mjs +5 -0
  304. package/src/forge/delta/broker.ts +429 -0
  305. package/src/forge/delta/classifier.ts +52 -0
  306. package/src/forge/delta/explain.ts +238 -0
  307. package/src/forge/delta/git-observer.ts +67 -0
  308. package/src/forge/delta/ids.ts +44 -0
  309. package/src/forge/delta/index.ts +25 -0
  310. package/src/forge/delta/process-identity.ts +37 -0
  311. package/src/forge/delta/queue-status.ts +190 -0
  312. package/src/forge/delta/recorder.ts +540 -0
  313. package/src/forge/delta/redaction.ts +50 -0
  314. package/src/forge/delta/schema.ts +240 -0
  315. package/src/forge/delta/session.ts +142 -0
  316. package/src/forge/delta/status.ts +1139 -0
  317. package/src/forge/delta/store.ts +3329 -0
  318. package/src/forge/delta/timeline.ts +178 -0
  319. package/src/forge/dev/server.ts +1061 -22
  320. package/src/forge/dev/types.ts +15 -1
  321. package/src/forge/dev/watch.ts +17 -7
  322. package/src/forge/dev-console/cycle.ts +285 -33
  323. package/src/forge/dev-console/types.ts +47 -1
  324. package/src/forge/impact/index.ts +222 -30
  325. package/src/forge/impact/types.ts +33 -1
  326. package/src/forge/intent/index.ts +35 -16
  327. package/src/forge/make/fields.ts +26 -0
  328. package/src/forge/make/index.ts +42 -6
  329. package/src/forge/make/templates.ts +211 -4
  330. package/src/forge/make/types.ts +2 -1
  331. package/src/forge/policy.ts +1 -1
  332. package/src/forge/react/index.ts +160 -2
  333. package/src/forge/refactor/index.ts +1 -0
  334. package/src/forge/repair/rules/index.ts +2 -2
  335. package/src/forge/repository-analysis/adapters/common.ts +72 -0
  336. package/src/forge/repository-analysis/adapters/docker.ts +185 -0
  337. package/src/forge/repository-analysis/adapters/java.ts +133 -0
  338. package/src/forge/repository-analysis/adapters/typescript.ts +350 -0
  339. package/src/forge/repository-analysis/adapters/vue.ts +71 -0
  340. package/src/forge/repository-analysis/analyze.ts +434 -0
  341. package/src/forge/repository-analysis/benchmark.ts +336 -0
  342. package/src/forge/repository-analysis/cache-gc.ts +154 -0
  343. package/src/forge/repository-analysis/check-selection.ts +123 -0
  344. package/src/forge/repository-analysis/context-node.ts +17 -0
  345. package/src/forge/repository-analysis/context.ts +456 -0
  346. package/src/forge/repository-analysis/http-resolution.ts +135 -0
  347. package/src/forge/repository-analysis/identity.ts +45 -0
  348. package/src/forge/repository-analysis/index.ts +18 -0
  349. package/src/forge/repository-analysis/nuxt-resolution.ts +188 -0
  350. package/src/forge/repository-analysis/quality.ts +60 -0
  351. package/src/forge/repository-analysis/retrieval.ts +309 -0
  352. package/src/forge/repository-analysis/runtime-artifacts.ts +195 -0
  353. package/src/forge/repository-analysis/runtime-observation.ts +325 -0
  354. package/src/forge/repository-analysis/scanner.ts +174 -0
  355. package/src/forge/repository-analysis/storage.ts +193 -0
  356. package/src/forge/repository-analysis/test-associations.ts +59 -0
  357. package/src/forge/repository-analysis/types.ts +99 -0
  358. package/src/forge/repository-manifest/index.ts +178 -0
  359. package/src/forge/repository-manifest/types.ts +63 -0
  360. package/src/forge/review/index.ts +162 -12
  361. package/src/forge/review/types.ts +15 -0
  362. package/src/forge/runtime/ai/providers.ts +19 -4
  363. package/src/forge/runtime/auth/config.ts +17 -0
  364. package/src/forge/runtime/auth/evaluate.ts +15 -2
  365. package/src/forge/runtime/auth/resolve.ts +61 -6
  366. package/src/forge/runtime/auth/types.ts +1 -0
  367. package/src/forge/runtime/db/factory.ts +1 -3
  368. package/src/forge/runtime/db/generated-client.ts +13 -2
  369. package/src/forge/runtime/db/memory-adapter.ts +139 -32
  370. package/src/forge/runtime/db/pglite-adapter.ts +285 -2
  371. package/src/forge/runtime/executor.ts +129 -16
  372. package/src/forge/runtime/external/bridge.ts +663 -0
  373. package/src/forge/runtime/runner/run-entry.ts +16 -7
  374. package/src/forge/runtime/telemetry/buffer.ts +4 -1
  375. package/src/forge/runtime/telemetry/scrubber.ts +35 -5
  376. package/src/forge/runtime/webhooks/security.ts +12 -7
  377. package/src/forge/server.ts +71 -7
  378. package/src/forge/ui/index.ts +831 -19
  379. package/src/forge/ui/types.ts +3 -1
  380. package/src/forge/version.ts +1 -1
  381. package/src/forge/vue/index.ts +422 -0
  382. package/src/forge/workspace/baseline.ts +112 -0
  383. package/src/forge/workspace/change-summary.ts +292 -0
  384. package/src/forge/workspace/forge-cli.ts +42 -0
  385. package/src/forge/workspace/git-summary.ts +393 -0
  386. package/templates/agent-workroom/AGENTS.md +29 -0
  387. package/templates/agent-workroom/README.md +34 -0
  388. package/templates/agent-workroom/forge.config.ts +3 -0
  389. package/templates/agent-workroom/package.json +34 -0
  390. package/templates/agent-workroom/pnpm-workspace.yaml +2 -0
  391. package/templates/agent-workroom/src/actions/indexAgentSignal.ts +10 -0
  392. package/templates/agent-workroom/src/commands/openWorkroom.ts +61 -0
  393. package/templates/agent-workroom/src/commands/recordAgentSignal.ts +119 -0
  394. package/templates/agent-workroom/src/commands/recordCheckRun.ts +52 -0
  395. package/templates/agent-workroom/src/forge/schema.ts +54 -0
  396. package/templates/agent-workroom/src/policies.ts +6 -0
  397. package/templates/agent-workroom/src/queries/listWorkrooms.ts +11 -0
  398. package/templates/agent-workroom/src/queries/liveWorkroom.ts +63 -0
  399. package/templates/agent-workroom/tsconfig.json +16 -0
  400. package/templates/agent-workroom/web/index.html +13 -0
  401. package/templates/agent-workroom/web/package.json +21 -0
  402. package/templates/agent-workroom/web/src/App.tsx +345 -0
  403. package/templates/agent-workroom/web/src/lib/forge.ts +20 -0
  404. package/templates/agent-workroom/web/src/main.tsx +13 -0
  405. package/templates/agent-workroom/web/src/styles.css +545 -0
  406. package/templates/agent-workroom/web/tsconfig.json +27 -0
  407. package/templates/agent-workroom/web/vite.config.ts +36 -0
  408. package/templates/b2b-support-web/package.json +2 -0
  409. package/templates/b2b-support-web/pnpm-workspace.yaml +2 -0
  410. package/templates/b2b-support-web/web/app/page.tsx +2 -2
  411. package/templates/b2b-support-web/web/lib/forge.ts +9 -2
  412. package/templates/b2b-support-web/web/next.config.ts +24 -0
  413. package/templates/b2b-support-web/web/package.json +1 -1
  414. package/templates/minimal-web/package.json +2 -1
  415. package/templates/minimal-web/pnpm-workspace.yaml +2 -0
  416. package/templates/minimal-web/web/index.html +1 -0
  417. package/templates/minimal-web/web/src/App.tsx +12 -6
  418. package/templates/minimal-web/web/src/lib/forge.ts +9 -2
  419. package/templates/minimal-web/web/src/styles.css +34 -0
  420. package/templates/minimal-web/web/vite.config.ts +36 -0
  421. package/templates/nuxt-web/.vscode/settings.json +14 -0
  422. package/templates/nuxt-web/.yarnrc.yml +1 -0
  423. package/templates/nuxt-web/README.md +30 -0
  424. package/templates/nuxt-web/forge.config.ts +3 -0
  425. package/templates/nuxt-web/package.json +37 -0
  426. package/templates/nuxt-web/pnpm-workspace.yaml +2 -0
  427. package/templates/nuxt-web/src/actions/logNoteCreated.ts +11 -0
  428. package/templates/nuxt-web/src/commands/createNote.ts +26 -0
  429. package/templates/nuxt-web/src/forge/schema.ts +12 -0
  430. package/templates/nuxt-web/src/policies.ts +6 -0
  431. package/templates/nuxt-web/src/queries/listNotes.ts +8 -0
  432. package/templates/nuxt-web/src/queries/liveNotes.ts +8 -0
  433. package/templates/nuxt-web/tsconfig.json +17 -0
  434. package/templates/nuxt-web/web/app.vue +67 -0
  435. package/templates/nuxt-web/web/components/LiveNotes.vue +89 -0
  436. package/templates/nuxt-web/web/components/NoteComposer.vue +100 -0
  437. package/templates/nuxt-web/web/composables/forge.ts +13 -0
  438. package/templates/nuxt-web/web/composables/useNotes.ts +24 -0
  439. package/templates/nuxt-web/web/nuxt.config.ts +11 -0
  440. package/templates/nuxt-web/web/package.json +22 -0
  441. package/templates/nuxt-web/web/plugins/forge.client.ts +10 -0
  442. package/templates/nuxt-web/web/plugins/forge.server.ts +10 -0
  443. package/templates/nuxt-web/web/server/api/forge-health.get.ts +7 -0
  444. package/templates/nuxt-web/web/tsconfig.json +6 -0
  445. package/templates/vendor-access/.vscode/settings.json +14 -0
  446. package/templates/vendor-access/README.md +30 -0
  447. package/templates/vendor-access/forge.config.ts +3 -0
  448. package/templates/vendor-access/package.json +35 -0
  449. package/templates/vendor-access/pnpm-workspace.yaml +2 -0
  450. package/templates/vendor-access/src/commands/addEvidence.ts +42 -0
  451. package/templates/vendor-access/src/commands/approveAccessRequest.ts +43 -0
  452. package/templates/vendor-access/src/commands/createAccessRequest.ts +49 -0
  453. package/templates/vendor-access/src/commands/seedVendorAccessDemo.ts +200 -0
  454. package/templates/vendor-access/src/forge/schema.ts +74 -0
  455. package/templates/vendor-access/src/policies.ts +11 -0
  456. package/templates/vendor-access/src/queries/listVendorAccessDashboard.ts +24 -0
  457. package/templates/vendor-access/src/queries/liveVendorAccessDashboard.ts +24 -0
  458. package/templates/vendor-access/tsconfig.json +17 -0
  459. package/templates/vendor-access/web/index.html +13 -0
  460. package/templates/vendor-access/web/package.json +21 -0
  461. package/templates/vendor-access/web/src/App.tsx +573 -0
  462. package/templates/vendor-access/web/src/lib/forge.ts +20 -0
  463. package/templates/vendor-access/web/src/main.tsx +205 -0
  464. package/templates/vendor-access/web/src/styles.css +682 -0
  465. package/templates/vendor-access/web/tsconfig.json +18 -0
  466. package/templates/vendor-access/web/vite.config.ts +36 -0
  467. package/src/forge/_generated/actionSubscriptions.json +0 -2
  468. package/src/forge/_generated/actionSubscriptions.ts +0 -10
  469. package/src/forge/_generated/agentAdapterManifest.json +0 -2
  470. package/src/forge/_generated/agentAdapterManifest.ts +0 -73
  471. package/src/forge/_generated/agentContract.json +0 -2
  472. package/src/forge/_generated/agentContract.ts +0 -7829
  473. package/src/forge/_generated/agentQuickstart.md +0 -34
  474. package/src/forge/_generated/agentTools.json +0 -2
  475. package/src/forge/_generated/agentTools.md +0 -16
  476. package/src/forge/_generated/agentTools.ts +0 -12
  477. package/src/forge/_generated/aiContext.ts +0 -125
  478. package/src/forge/_generated/aiModels.json +0 -2
  479. package/src/forge/_generated/aiModels.ts +0 -51
  480. package/src/forge/_generated/aiProviders.json +0 -2
  481. package/src/forge/_generated/aiProviders.ts +0 -23
  482. package/src/forge/_generated/aiRegistry.json +0 -2
  483. package/src/forge/_generated/aiRegistry.ts +0 -31
  484. package/src/forge/_generated/api.json +0 -2
  485. package/src/forge/_generated/api.ts +0 -8
  486. package/src/forge/_generated/appGraph.json +0 -2
  487. package/src/forge/_generated/appGraph.ts +0 -14937
  488. package/src/forge/_generated/appMap.md +0 -55
  489. package/src/forge/_generated/artifactManifest.json +0 -2
  490. package/src/forge/_generated/artifactManifest.ts +0 -7
  491. package/src/forge/_generated/authClaims.json +0 -2
  492. package/src/forge/_generated/authClaims.ts +0 -13
  493. package/src/forge/_generated/authConfig.json +0 -2
  494. package/src/forge/_generated/authConfig.ts +0 -17
  495. package/src/forge/_generated/authContext.ts +0 -23
  496. package/src/forge/_generated/authRegistry.json +0 -2
  497. package/src/forge/_generated/authRegistry.ts +0 -25
  498. package/src/forge/_generated/buildInfo.json +0 -2
  499. package/src/forge/_generated/buildInfo.ts +0 -9
  500. package/src/forge/_generated/capabilityMap.json +0 -2
  501. package/src/forge/_generated/capabilityMap.md +0 -15
  502. package/src/forge/_generated/capabilityMap.ts +0 -17
  503. package/src/forge/_generated/client.ts +0 -282
  504. package/src/forge/_generated/clientApi.ts +0 -9
  505. package/src/forge/_generated/clientManifest.json +0 -2
  506. package/src/forge/_generated/clientManifest.ts +0 -39
  507. package/src/forge/_generated/clientTypes.ts +0 -78
  508. package/src/forge/_generated/configRegistry.json +0 -2
  509. package/src/forge/_generated/configRegistry.ts +0 -4
  510. package/src/forge/_generated/dataGraph.json +0 -2
  511. package/src/forge/_generated/dataGraph.ts +0 -8
  512. package/src/forge/_generated/db.json +0 -2
  513. package/src/forge/_generated/db.ts +0 -2
  514. package/src/forge/_generated/dbSecurityManifest.json +0 -2
  515. package/src/forge/_generated/dbSecurityManifest.ts +0 -15
  516. package/src/forge/_generated/dbSessionContext.json +0 -2
  517. package/src/forge/_generated/dbSessionContext.ts +0 -39
  518. package/src/forge/_generated/deployManifest.json +0 -2
  519. package/src/forge/_generated/deployManifest.ts +0 -14
  520. package/src/forge/_generated/devManifest.json +0 -2
  521. package/src/forge/_generated/devManifest.ts +0 -62
  522. package/src/forge/_generated/envSchema.json +0 -2
  523. package/src/forge/_generated/envSchema.ts +0 -59
  524. package/src/forge/_generated/frontendGraph.json +0 -2
  525. package/src/forge/_generated/frontendGraph.ts +0 -27
  526. package/src/forge/_generated/importGuards.json +0 -2
  527. package/src/forge/_generated/importGuards.ts +0 -686
  528. package/src/forge/_generated/index.ts +0 -68
  529. package/src/forge/_generated/liveProductionManifest.json +0 -2
  530. package/src/forge/_generated/liveProductionManifest.ts +0 -23
  531. package/src/forge/_generated/liveProtocol.json +0 -2
  532. package/src/forge/_generated/liveProtocol.ts +0 -21
  533. package/src/forge/_generated/liveQueryRegistry.json +0 -2
  534. package/src/forge/_generated/liveQueryRegistry.ts +0 -9
  535. package/src/forge/_generated/liveTransportConfig.json +0 -2
  536. package/src/forge/_generated/liveTransportConfig.ts +0 -19
  537. package/src/forge/_generated/makeRegistry.json +0 -2
  538. package/src/forge/_generated/makeRegistry.ts +0 -177
  539. package/src/forge/_generated/makeTemplates.json +0 -2
  540. package/src/forge/_generated/makeTemplates.ts +0 -66
  541. package/src/forge/_generated/mockMap.json +0 -2
  542. package/src/forge/_generated/mockMap.ts +0 -7
  543. package/src/forge/_generated/operationPlaybooks.md +0 -167
  544. package/src/forge/_generated/packageGraph.json +0 -2
  545. package/src/forge/_generated/packageGraph.ts +0 -249334
  546. package/src/forge/_generated/packageUpgradeRegistry.json +0 -2
  547. package/src/forge/_generated/packageUpgradeRegistry.ts +0 -15
  548. package/src/forge/_generated/permissionMatrix.json +0 -2
  549. package/src/forge/_generated/permissionMatrix.ts +0 -7
  550. package/src/forge/_generated/policyRegistry.json +0 -2
  551. package/src/forge/_generated/policyRegistry.ts +0 -11
  552. package/src/forge/_generated/queryRegistry.json +0 -2
  553. package/src/forge/_generated/queryRegistry.ts +0 -9
  554. package/src/forge/_generated/react.d.ts +0 -22
  555. package/src/forge/_generated/react.ts +0 -29
  556. package/src/forge/_generated/reactManifest.json +0 -2
  557. package/src/forge/_generated/reactManifest.ts +0 -19
  558. package/src/forge/_generated/rlsPolicies.json +0 -2
  559. package/src/forge/_generated/rlsPolicies.sql +0 -34
  560. package/src/forge/_generated/rlsPolicies.ts +0 -6
  561. package/src/forge/_generated/runtimeGraph.json +0 -2
  562. package/src/forge/_generated/runtimeGraph.ts +0 -8
  563. package/src/forge/_generated/runtimeMatrix.json +0 -2
  564. package/src/forge/_generated/runtimeMatrix.ts +0 -334130
  565. package/src/forge/_generated/runtimeRegistry.ts +0 -2
  566. package/src/forge/_generated/runtimeRules.md +0 -91
  567. package/src/forge/_generated/secretRegistry.json +0 -2
  568. package/src/forge/_generated/secretRegistry.ts +0 -50
  569. package/src/forge/_generated/secretsContext.ts +0 -11
  570. package/src/forge/_generated/serverApi.ts +0 -10
  571. package/src/forge/_generated/sourceMapManifest.json +0 -2
  572. package/src/forge/_generated/sourceMapManifest.ts +0 -7
  573. package/src/forge/_generated/sqlPlan.json +0 -2
  574. package/src/forge/_generated/sqlPlan.ts +0 -88
  575. package/src/forge/_generated/subscriptionManifest.json +0 -2
  576. package/src/forge/_generated/subscriptionManifest.ts +0 -7
  577. package/src/forge/_generated/symbolicationManifest.json +0 -2
  578. package/src/forge/_generated/symbolicationManifest.ts +0 -17
  579. package/src/forge/_generated/telemetryRegistry.json +0 -2
  580. package/src/forge/_generated/telemetryRegistry.ts +0 -9
  581. package/src/forge/_generated/telemetrySinks.json +0 -2
  582. package/src/forge/_generated/telemetrySinks.ts +0 -11
  583. package/src/forge/_generated/tenantScope.json +0 -2
  584. package/src/forge/_generated/tenantScope.ts +0 -8
  585. package/src/forge/_generated/testGraph.json +0 -2
  586. package/src/forge/_generated/testGraph.ts +0 -3452
  587. package/src/forge/_generated/testPlanRegistry.json +0 -2
  588. package/src/forge/_generated/testPlanRegistry.ts +0 -33
  589. package/src/forge/_generated/uiRoutes.json +0 -2
  590. package/src/forge/_generated/uiRoutes.ts +0 -16
  591. package/src/forge/_generated/uiScenarios.json +0 -2
  592. package/src/forge/_generated/uiScenarios.ts +0 -30
  593. package/src/forge/_generated/uiTestManifest.json +0 -2
  594. package/src/forge/_generated/uiTestManifest.ts +0 -27
  595. package/src/forge/_generated/workflowRegistry.json +0 -2
  596. package/src/forge/_generated/workflowRegistry.ts +0 -9
  597. package/src/forge/_generated/workflowSubscriptions.json +0 -2
  598. package/src/forge/_generated/workflowSubscriptions.ts +0 -10
package/CHANGELOG.md CHANGED
@@ -1,5 +1,875 @@
1
1
  # forgeos
2
2
 
3
+ ## 0.1.0-alpha.71
4
+
5
+ ### Patch Changes
6
+
7
+ - Complete Agent Fabric workflow R2.2 with typed authoring, inherited subworkflow quotas and cancellation, shared owner scheduling, crash-recoverable leases, compact durable history, scoped evidence and visual case validation. Ship workflow templates, graph explanations and deterministic coverage. Validate the real Codex adapter with one bounded read-only smoke; retain explicit limits on local durability and model cost.
8
+
9
+ ## 0.1.0-alpha.70
10
+
11
+ ### Patch Changes
12
+
13
+ - Add opt-in typed Agent Fabric program workflows with static TypeScript lowering, durable
14
+ operator state, bounded repair, owner coverage and acceptance, candidate ancestry,
15
+ fenced generation changes and reconciled application. Ship an executable command
16
+ example, SDK pilot and bounded recovery benchmark; preserve existing v1 workflows.
17
+ - Pin the Nuxt template's devtools to 4.0.0-beta.4, which removes its vulnerable simple-git dependency; retain existing audit exceptions without extending them. Validate installation and typechecking against the Nuxt template before release.
18
+ - Observe POSIX exporter process-group termination after sending SIGKILL before reporting completion or deleting its temporary workspace; preserve unknown cleanup outcomes.
19
+
20
+ - Add opt-in repository runtime observation with independent temporary source copies, bounded Nuxt/Spring/Docker/HTTP artifact collectors, input-bound expiring reports and shared CLI/MCP plan/observe/context operations. Fabric consumes only compatible saved observations, without implicit project execution.
21
+ - Recover once from a premature Bun/Windows process-identity timeout while retaining unknown identity on repeated failures; protect existing lock ownership semantics.
22
+
23
+ - Complete large-map query storage with lazy hydration and streaming fingerprints; preserve legacy caches, cap resident partitions and avoid relation-ranking read amplification. Maintain retained orphan chunks automatically and expose cache-gc previews. Add source-bound paired agent benchmark planning/reporting without implicit model execution.
24
+
25
+ - Improve repository task context with deterministic scoped retrieval, case-level test associations, local Nuxt resolution and explicit HTTP client mappings. Expose static quality and informative check requirements without executing project commands.
26
+ - Store large maps and root-neutral parse facts in validated partitions, reuse matching facts in prepared Fabric clones, and add a read-only `repository quality --cases` benchmark for reviewed expectations.
27
+
28
+ ## 0.1.0-alpha.69
29
+
30
+ ### Patch Changes
31
+
32
+ - Add repository manifests and static Vue, Java, and Docker maps for existing projects, with snapshot-bound CAIR queries and clone-specific Agent Fabric context. Preserve service manifests and keep discovery, validation, and context reads free of implicit project execution or local recorder writes.
33
+
34
+ ## 0.1.0-alpha.68
35
+
36
+ ### Patch Changes
37
+
38
+ - [`3d41af7`](https://github.com/Stahldavid/forge/commit/3d41af7b4580cd86618a7c76a3ac33b41e495e43) Thanks [@Stahldavid](https://github.com/Stahldavid)! - Make Agent Fabric reusable across Git repositories from the original Codex chat. Distribute a portable personal skill and installer, discover and reuse per-project owners, route MCP calls by registered project identity, and apply optional project environment and concurrency defaults. Harden Windows lock reads and owner startup failures, and exercise isolated execution outside the Forge checkout.
39
+
40
+ ## 0.1.0-alpha.67
41
+
42
+ ### Patch Changes
43
+
44
+ - [#68](https://github.com/Stahldavid/forge/pull/68) [`444d89a`](https://github.com/Stahldavid/forge/commit/444d89a1041f0005663ffa3f37611a0f2821022a) Thanks [@Stahldavid](https://github.com/Stahldavid)! - Keep Codex hook events available to Agent Memory through a local Delta owner.
45
+ Automatically resume the redacted hook queue, deduplicate events after a crash,
46
+ report queue freshness in CLI and MCP results, and distinguish real database
47
+ errors from an unverified PGlite lock file.
48
+
49
+ - Add durable Codex SDK dynamic workflows driven from the original Codex chat, with isolated workers, dependency preparation, independent review, scoped artifact publication and explicit interruption recovery. Reduce duplicate CI checks and parallelize package validation while preserving release gates. Fix Windows hook subprocess diagnostics and managed execution races.
50
+ Upgrade Changesets to v3 with compatible prerelease checks, update the Next.js template to 16.3.8, and close temporary Delta owners before packed-package smoke cleanup on Windows.
51
+
52
+ - Normalize POSIX process start timestamps to UTC so live Delta owners and queue leases are not mistaken for reused PIDs when the runtime and host use different time zones.
53
+
54
+ ## 0.1.0-alpha.66
55
+
56
+ ### Patch Changes
57
+
58
+ - [#66](https://github.com/Stahldavid/forge/pull/66) [`472cde3`](https://github.com/Stahldavid/forge/commit/472cde3647cf055afd627460bf015ab5467ab8d5) Thanks [@Stahldavid](https://github.com/Stahldavid)! - Add a local Agent Fabric change-review flow for Codex App authored diffs. It
59
+ captures an exact staged, unstaged, and new-file snapshot, runs a bounded
60
+ read-only Codex CLI reviewer on an isolated checkout, and keeps digest-bound
61
+ review rounds and findings. CLI and MCP expose proposal and evidence while
62
+ reviewer dispatch remains an explicit CLI action.
63
+
64
+ ## 0.1.0-alpha.65
65
+
66
+ ### Patch Changes
67
+
68
+ - [#61](https://github.com/Stahldavid/forge/pull/61) [`6fb76d7`](https://github.com/Stahldavid/forge/commit/6fb76d734257d96d1d366528848801cbd3698395) Thanks [@Stahldavid](https://github.com/Stahldavid)! - Harden the single-owner Agent Fabric CLI and MCP pilot with durable patch and
69
+ verification receipts, owner-controlled source-grounded memory, guarded local
70
+ effects, a fixed two-worker harness, and a local Evolution Registry. Improve
71
+ Codex hook ingestion, Studio startup, release propagation checks, and targeted
72
+ CI coverage.
73
+
74
+ ## 0.1.0-alpha.64
75
+
76
+ ### Minor Changes
77
+
78
+ - [#9](https://github.com/Stahldavid/forge/pull/9) [`ea0e5b6`](https://github.com/Stahldavid/forge/commit/ea0e5b6067e520d40cca23b461ca53d057ef0aca) Thanks [@Stahldavid](https://github.com/Stahldavid)! - Add the experimental Forge Agent Fabric P0a protocol kernel with replay-prevalidated authoritative transitions, exact GoalContract/authorization binding, attenuated grants, journal-coupled resource accounting, globally unique attempt identities, fenced attempt-bound permits, non-terminal uncertainty observations, content-bound outcome provenance, deterministic replay, and adversarial conformance tests.
79
+
80
+ - [#54](https://github.com/Stahldavid/forge/pull/54) [`8721bb5`](https://github.com/Stahldavid/forge/commit/8721bb5466b337ccac75d7212c6a6e597bc338ac) Thanks [@Stahldavid](https://github.com/Stahldavid)! - Add the experimental Agent Fabric P0b-A bounded model adapter behind the P0a authorization, permit, and result boundary. Model invocation binds the provider target, context, and materialization to one attempt; enforces finite request, response, token, and time limits; blocks hidden retries and redirects; and treats ambiguous execution as uncertainty. A fixed loopback Ollama path supports keyless local inference. Model output remains non-authoritative; tools, delegation, persistent recovery, and production readiness are outside this release.
81
+
82
+ ### Patch Changes
83
+
84
+ - [#57](https://github.com/Stahldavid/forge/pull/57) [`98c3211`](https://github.com/Stahldavid/forge/commit/98c321103d7771a38dc27a5720b336ff8c817f83) Thanks [@Stahldavid](https://github.com/Stahldavid)! - Add an experimental local `forge fabric` coding task flow with durable proposal and
85
+ control records, visible owner review, a bounded Ollama attempt, isolated Git diff
86
+ materialization, and a separate result decision. Keep MCP task mutation disabled
87
+ and correct Codex hook trust reporting for synthetic smoke events.
88
+
89
+ - [#58](https://github.com/Stahldavid/forge/pull/58) [`a4da2d0`](https://github.com/Stahldavid/forge/commit/a4da2d0eb5b84737bf56ae7ad5924ba16cee6669) Thanks [@Stahldavid](https://github.com/Stahldavid)! - Add a single local Agent Fabric owner process so CLI and MCP clients share the
90
+ same PGlite-backed task service. MCP can submit untrusted proposals and read
91
+ status while owner approval, execution, and diff acceptance remain outside MCP.
92
+
93
+ ## 0.1.0-alpha.63
94
+
95
+ ### Patch Changes
96
+
97
+ - Make generated freshness and Java/Spring brownfield analysis trustworthy.
98
+
99
+ - `forge status` now executes deterministic generation verification, so a
100
+ clean Git worktree can no longer hide committed generated drift that
101
+ `forge handoff` would reject.
102
+ - Report compact generation evidence in status output, including freshness,
103
+ changed artifact counts, samples, and diagnostic codes.
104
+ - Extend `forge import analyze` to inventory Maven dependencies, recognize
105
+ Spring Boot, scan Java source, discover Spring MVC controller mappings, and
106
+ detect `System.getenv(...)` usage.
107
+ - Keep Spring-derived command/query candidates static, review-required, and
108
+ hidden from agents under the existing brownfield safety model.
109
+ - Pin a modern Maven compiler plugin for the Java adapter and Spring starter,
110
+ so their declared Java 17 release compiles on the supported JDK 21 toolchain.
111
+ - Make example fixture seeding replace package directories cleanly, avoiding
112
+ cross-identity timestamp/ownership failures in shared development workspaces.
113
+
114
+ ## 0.1.0-alpha.62
115
+
116
+ ### Patch Changes
117
+
118
+ - Keep commit-ready change views from exposing local secrets or WorkOS state.
119
+
120
+ - Classify real `.env*` files as operational while keeping `.env.example`
121
+ and `.env.*.example` files commit-ready.
122
+ - Exclude `.workos-seed-state.json` and `.workos-fga-state.json` from
123
+ commit-ready summaries.
124
+ - Add regression coverage so deploy examples stay visible while
125
+ `deploy/.env.production` remains excluded.
126
+
127
+ ## 0.1.0-alpha.61
128
+
129
+ ### Patch Changes
130
+
131
+ - Harden the WorkOS golden path and production deploy gate.
132
+
133
+ - Add the ForgeOS golden path status/plan flow for the official
134
+ `create -> auth -> field-test -> deploy` path.
135
+ - Add WorkOS real-auth proof helpers and env synchronization for app and web
136
+ workspaces, including backend-owned AuthKit session bridge guidance.
137
+ - Block production readiness when `deploy/.env.production` still contains
138
+ placeholder or dummy values, preventing local/demo WorkOS and database
139
+ settings from being mistaken for publishable production evidence.
140
+ - Expand field-test, deploy, env doctor, WorkOS, and golden-path regression
141
+ coverage, plus docs for the production-shaped WorkOS vendor-access flow.
142
+
143
+ ## 0.1.0-alpha.60
144
+
145
+ ### Patch Changes
146
+
147
+ - Fix the real WorkOS/AuthKit session bridge for Forge runtime calls.
148
+
149
+ - Generated WorkOS React bridges now pass normalized `/session` claims into
150
+ `ForgeProvider` auth so commands, queries, and liveQueries receive user,
151
+ role, permissions, membership, and tenant headers.
152
+ - WorkOS browser env sync now includes optional tenant mapping variables for
153
+ apps that use internal UUID tenants while WorkOS emits hosted `org_...`
154
+ organization ids.
155
+ - WorkOS dev sessions now derive permissions from active Forge policies when
156
+ AuthKit returns a role without permission claims, and normalize WorkOS
157
+ organization ids before cookie-backed runtime calls touch tenant-scoped data.
158
+ - `forge workos doctor` now validates that generated browser bridges pass
159
+ WorkOS claims into Forge auth instead of only exposing a UI session.
160
+
161
+ ## 0.1.0-alpha.58
162
+
163
+ ### Patch Changes
164
+
165
+ - Fix TypeScript output for generated WorkOS AuthKit route helpers.
166
+
167
+ - The generated callback helper now reads provider-specific organization,
168
+ membership, role, roles, and permissions fields through a narrowed raw
169
+ result record instead of accessing fields that are not declared on the
170
+ WorkOS SDK `AuthenticationResponse` type.
171
+ - This keeps WorkOS/AuthKit app typechecks passing while preserving callback
172
+ claim enrichment for organization selection, role mapping, permissions, and
173
+ Forge-normalized session claims.
174
+
175
+ ## 0.1.0-alpha.57
176
+
177
+ ### Patch Changes
178
+
179
+ - Fix the WorkOS AuthKit local and tunneled development flow.
180
+
181
+ - Add `response_type=code` to Forge-owned WorkOS authorization URLs and avoid sending a default `organization_id` during login so AuthKit can present normal sign-in and organization selection.
182
+ - Resolve WorkOS organization and membership claims during callback when AuthKit returns only the user/token, then expose Forge-normalized session claims through `/session`.
183
+ - Add `forge dev --public-api-url` for browser-facing API URLs behind tunnels and update the WorkOS React bridge to use backend-owned `/login`, `/session`, and `/logout` routes through same-origin/proxy-aware URL resolution.
184
+ - Sync public WorkOS browser env into `web/.env.local` during `forge add auth workos` and `forge workos setup --real`, and update WorkOS doctor/UI audit checks for the backend-owned AuthKit session flow.
185
+
186
+ ## 0.1.0-alpha.56
187
+
188
+ ### Patch Changes
189
+
190
+ - Add the production deploy golden path as an explicit CLI workflow.
191
+
192
+ - `forge deploy init --target docker` now acts as the canonical Docker
193
+ production bootstrap command for runtime files, `deploy/.env.production`
194
+ guidance, and production handoff docs.
195
+ - `forge deploy readiness --production --json` now summarizes whether an app
196
+ can publish, grouped blockers/warnings, readiness score, and the next
197
+ command an agent should run.
198
+ - `forge env doctor --target local|staging|production --json` now reports the
199
+ effective auth mode, database posture, provider detection, missing env
200
+ names, and safe source metadata without printing secret values.
201
+ - `forge deploy check --production --json` now includes blocking/warning
202
+ summaries and the readiness object used by the deploy gate.
203
+ - `forge deploy verify --production --url ... --json` now validates required
204
+ public auth metadata and probes optional runtime endpoints such as
205
+ `/ready`, `/live/status`, `/outbox/status`, and `/webhooks/workos`.
206
+ - Production docs now present the canonical flow:
207
+ `deploy init -> env doctor -> auth/auth.md/WorkOS proof -> field-test ->
208
+ readiness -> check -> package -> verify`, while keeping WorkOS FGA
209
+ explicitly optional unless the app opts into FGA artifacts.
210
+
211
+ ## 0.1.0-alpha.55
212
+
213
+ ### Patch Changes
214
+
215
+ - Make WorkOS FGA opt-in instead of part of the default auth adapter path.
216
+
217
+ - `forge add auth workos` now generates the AuthKit/RBAC/permission-claims
218
+ adapter, seed, policies, tenant claim mapping, webhook helpers, and React
219
+ bridge without WorkOS FGA resource helpers by default.
220
+ - `forge add auth workos --with-fga` keeps generating the optional WorkOS
221
+ Authorization/FGA resource graph helpers, `resource_types` seed metadata,
222
+ cache/telemetry helpers, and cross-tenant resource guard.
223
+ - `forge workos doctor` and `forge workos seed` now treat `resource_types`
224
+ and FGA state as optional unless the app has opted into FGA artifacts.
225
+ - `forge deploy check --production` no longer blocks ordinary WorkOS apps on
226
+ `workos-fga-proof`; it still requires FGA sync/proof when FGA helpers or
227
+ FGA state are present.
228
+
229
+ ## 0.1.0-alpha.54
230
+
231
+ ### Patch Changes
232
+
233
+ - Add a machine-readable WorkOS FGA hosted setup artifact.
234
+
235
+ - `forge workos fga plan --write --json` and real sync failures that write
236
+ `.forge/workos-fga-setup.md` now also write
237
+ `.forge/workos-fga-setup.json`.
238
+ - The JSON artifact includes the derived resource types, hosted setup
239
+ boundary, rerun commands, docs, unsupported automation notes, and paired
240
+ Markdown/JSON paths so agents and CI can consume the FGA handoff without
241
+ parsing Markdown.
242
+ - Human output now prints both the Markdown guide and JSON setup artifact
243
+ paths when they are written.
244
+
245
+ ## 0.1.0-alpha.53
246
+
247
+ ### Patch Changes
248
+
249
+ - Keep WorkOS FGA proof messaging honest across local and real modes.
250
+
251
+ - `forge workos fga doctor --json` now reports local proof timestamps as
252
+ local proof instead of using real-production wording when the state file was
253
+ produced by local FGA proof commands.
254
+ - This prevents local/mock FGA evidence from being mistaken for hosted WorkOS
255
+ Authorization API proof during production-readiness handoff.
256
+
257
+ ## 0.1.0-alpha.52
258
+
259
+ ### Patch Changes
260
+
261
+ - Make WorkOS FGA real-rollout failures produce a concrete operator artifact.
262
+
263
+ - Generated WorkOS FGA setup guides now include an explicit automation
264
+ boundary explaining that ForgeOS derives the graph, syncs resources, and
265
+ proves Authorization API checks, but does not invent unsupported WorkOS
266
+ resource-type creation commands.
267
+ - `forge workos fga sync --real --write --json` now remains useful when the
268
+ WorkOS Authorization API reports missing resource types: the JSON includes
269
+ `setupGuidePath` and the written guide lists the resource types, parents,
270
+ permissions, roles, example external IDs, membership env, and rerun
271
+ commands needed to finish the hosted setup.
272
+
273
+ ## 0.1.0-alpha.51
274
+
275
+ ### Patch Changes
276
+
277
+ - Make the WorkOS FGA production doctor explicit enough for real P2 rollout.
278
+
279
+ - `forge workos fga doctor --real --json` now reports structured readiness
280
+ for the full hosted path: FGA plan, hosted seed evidence, hosted resource
281
+ type/resource sync, `organizationMembershipId` env, real proof state, and
282
+ production readiness.
283
+ - FGA JSON output now includes `membershipEnv`, `seedState`, and `readiness`
284
+ metadata so agents can choose the next command without scraping human text.
285
+ - Hosted FGA setup data now states that WorkOS resource type creation is not
286
+ automated by the WorkOS API/CLI path, while resource sync and authorization
287
+ checks remain ForgeOS-driven after those resource types exist.
288
+ - WorkOS real checks now read `deploy/.env.production` as an explicit deploy
289
+ evidence source, and `forge deploy check --production` runs WorkOS/FGA
290
+ doctors with those values in scope.
291
+ - Human output now distinguishes local FGA planning success from real
292
+ production-gate readiness.
293
+
294
+ ## 0.1.0-alpha.50
295
+
296
+ ### Patch Changes
297
+
298
+ - Tighten the no-dashboard WorkOS real setup/proof handoff.
299
+
300
+ - WorkOS hosted setup now records explicit `WORKOS_MODE=agent npx --yes
301
+ workos@latest auth login --json` shell guidance when CLI login is required.
302
+ - Failed `forge workos setup --real` login attempts now tell the operator to
303
+ rerun the same setup command after completing OAuth/device-code login,
304
+ instead of pointing generically at `prove --real`.
305
+ - Human output now includes the login command, device URL/code when present,
306
+ and the exact Forge rerun command for agent-friendly continuation.
307
+
308
+ ## 0.1.0-alpha.49
309
+
310
+ ### Patch Changes
311
+
312
+ - Improve release doctor visibility for npm dist-tag drift.
313
+
314
+ - `forge release doctor --json` now checks the published npm `alpha` and
315
+ `latest` dist-tags for public packages, reports the currently published
316
+ tag versions, and suggests the exact `npm dist-tag add` remediation when
317
+ `latest` still points at an older alpha.
318
+ - The npm dist-tag check is advisory rather than publish-blocking, so a
319
+ prepared alpha release can still ship while clearly reporting that the
320
+ consumer-facing `latest` tag needs promotion.
321
+ - GitHub Actions latest-promotion notices now include the local remediation
322
+ command and the `NPM_TOKEN` configuration hint when latest promotion is
323
+ skipped.
324
+
325
+ ## 0.1.0-alpha.48
326
+
327
+ ### Patch Changes
328
+
329
+ - Complete the WorkOS FGA bridge path for production-shaped apps.
330
+
331
+ - `forge workos fga plan/sync/prove` now models the derived app resource
332
+ graph, hosted WorkOS resource-type setup, required membership evidence, and
333
+ proof scenarios as a first-class FGA manifest.
334
+ - `forge workos fga sync --real` and `forge workos fga prove --real` can run
335
+ through the authenticated WorkOS CLI/API path when `WORKOS_API_KEY` is not
336
+ present, preserving the no-dashboard agent flow while still using real
337
+ WorkOS Authorization API calls.
338
+ - FGA setup guidance now distinguishes what ForgeOS can automate
339
+ (permissions/roles through seed, resources, checks, deploy evidence) from
340
+ hosted WorkOS resource-type configuration, with precise remediation when
341
+ resource types are missing.
342
+ - `forge deploy check --production` now points WorkOS apps at the full FGA
343
+ sequence: plan, real sync, real proof, and final deploy check.
344
+ - WorkOS seed generation now preserves inferred FGA parent resources such as
345
+ `access_request -> vendor`, and regression coverage guards the generated
346
+ seed, CLI parser, deploy gates, and FGA setup output.
347
+
348
+ ## 0.1.0-alpha.47
349
+
350
+ ### Patch Changes
351
+
352
+ - Tighten the WorkOS real-auth proof and production deploy readiness gates.
353
+
354
+ - `forge workos setup --real` and `forge workos prove --real` now validate
355
+ the real OIDC/JWT and WorkOS environment before attempting hosted setup,
356
+ with specific failed checks such as `setup:real-env-forge_auth_audience`
357
+ instead of a generic setup failure.
358
+ - `forge deploy check --production` now requires WorkOS-backed apps to carry
359
+ hosted seed evidence in `.workos-seed-state.json` that matches the current
360
+ `workos-seed.yml`, pointing operators at `forge workos prove --real` when
361
+ hosted seed state is missing or stale.
362
+ - Update production, self-hosting, and field-test documentation so local mock
363
+ field-test evidence, hosted WorkOS seed evidence, and deploy env evidence
364
+ have clear boundaries.
365
+
366
+ ## 0.1.0-alpha.46
367
+
368
+ ### Patch Changes
369
+
370
+ - Smooth the package upgrade apply path used by real ForgeOS apps.
371
+
372
+ - `forge deps upgrade-apply` and `forge deps upgrade-rollback` now accept the
373
+ `planDir` returned by `forge deps upgrade-plan`, automatically resolving it
374
+ to `plan.json`.
375
+ - Passing a directory without `plan.json` now returns a targeted
376
+ `FORGE_DEPS_TARGET_NOT_FOUND` diagnostic with the exact suggested command
377
+ instead of falling through to a generic JSON parse failure.
378
+ - Add regression coverage for applying upgrade plans through the returned
379
+ directory path and for invalid plan directories.
380
+
381
+ ## 0.1.0-alpha.45
382
+
383
+ ### Patch Changes
384
+
385
+ - Smooth the WorkOS, field-test, and deploy-readiness DX discovered during real
386
+ app field testing.
387
+
388
+ - Accept `--real` through the top-level unknown-option guard so documented
389
+ commands like `forge workos setup --real --file workos-seed.yml --json` and
390
+ `forge workos prove --real --file workos-seed.yml --json` run instead of
391
+ being rejected before parsing.
392
+ - Treat known WorkOS CLI duplicate-resource seed responses as explicit clean
393
+ idempotency: Forge now records `seedAlreadyAppliedReason`, suppresses the
394
+ scary duplicate stderr from the successful JSON result, and writes seed
395
+ state with the already-applied status.
396
+ - Run `forge field-test run` through an async harness process and emit
397
+ periodic stderr heartbeats so long realistic probes no longer look frozen
398
+ while preserving machine-readable JSON output.
399
+ - Add a `deploy-env-sources` check to `forge deploy check --production` that
400
+ reports which env sources were inspected, which keys were present, and which
401
+ production keys are still missing without printing secret values; `.env` and
402
+ `.env.local` are shown as local guidance, not production deploy evidence.
403
+
404
+ ## 0.1.0-alpha.44
405
+
406
+ ### Patch Changes
407
+
408
+ - Remove a false positive from UI ergonomics checks for generated apps that
409
+ auto-seed through a helper inside `useEffect`.
410
+
411
+ - `forge inspect ui --ergonomics` now recognizes `runSeed...` helper calls
412
+ inside bounded `useEffect` blocks as automatic first-run seed recovery.
413
+ - The `vendor-access` template regression now asserts that connected
414
+ auto-seed scenarios do not emit `FORGE_UI_AUTO_SEED_RECOVERY_MISSING`,
415
+ keeping `forge field-test run --realistic` aligned with deploy-readiness
416
+ expectations.
417
+
418
+ ## 0.1.0-alpha.43
419
+
420
+ ### Patch Changes
421
+
422
+ - Fix `forge field-test run` in apps that use the published `forgeos` package.
423
+
424
+ - Include `scripts/field-test-forgeos.mjs` in the npm package so generated
425
+ apps can run the field-test harness without having a local ForgeOS checkout.
426
+ - Resolve the harness from either the app workspace or the installed package,
427
+ which keeps framework checkouts and installed-package app workflows working
428
+ with the same command.
429
+ - Improve the missing-harness diagnostic by reporting the searched paths and
430
+ suggesting an upgrade when the installed package does not include the
431
+ packaged harness.
432
+
433
+ ## 0.1.0-alpha.42
434
+
435
+ ### Patch Changes
436
+
437
+ - Make the ForgeOS production-like golden path explicit and verifiable.
438
+
439
+ - Add `forge field-test run --realistic` as the compact app validation path
440
+ for runtime, auth, and UI probes, defaulting to the WorkOS-backed
441
+ `vendor-access` flow when no template/auth override is provided.
442
+ - Add `forge deploy package --target docker` as the user-facing production
443
+ packaging command while keeping `forge deploy render docker` compatible.
444
+ - Add `forge workos prove --file workos-seed.yml --json` as a no-dashboard
445
+ aggregate proof for WorkOS/AuthKit/FGA/seed readiness, with `--real`
446
+ applying hosted setup through the existing WorkOS CLI integration.
447
+ - Promote `vendor-access` into a production-shaped field-test template with
448
+ deterministic all-tenant seeding, local identity profiles, WorkOS-style
449
+ permissions, auth metadata, UI scenarios, multi-tenant domain probes, and
450
+ deploy-readiness evidence.
451
+ - Tighten `forge field-test report` and `forge deploy check --production` so
452
+ they require concrete runtime, auth setup, auth metadata, UI, UI
453
+ ergonomics, seed readiness, and tenant-isolation evidence before reporting
454
+ deploy readiness.
455
+ - Improve UI ergonomics and browser probe diagnostics for local-vs-production
456
+ auth boundaries, seeded first-run state, policy denials, raw runtime errors,
457
+ and product surfaces that expose framework/demo internals too prominently.
458
+ - Add `forge seed status/dev/reset`, all-tenant seed startup support through
459
+ `forge dev --seed --all-tenants`, and seed readiness evidence in dev and
460
+ field-test summaries.
461
+ - Update templates, docs, and tests around the new `create app -> add auth ->
462
+ field-test -> deploy` path.
463
+
464
+ ## 0.1.0-alpha.41
465
+
466
+ ### Patch Changes
467
+
468
+ - Fix package install detection for npm workspace apps that hoist frontend
469
+ dependencies to an ancestor `node_modules`.
470
+
471
+ - `forge add auth workos` now recognizes `@workos-inc/authkit-react` when npm
472
+ installs it from a `web/` workspace but physically hoists it to the root
473
+ workspace.
474
+ - Package version detection now walks ancestor `node_modules` directories,
475
+ matching Node/workspace resolution more closely.
476
+ - Add regression coverage for scoped hoisted workspace packages and the
477
+ WorkOS AuthKit install path.
478
+
479
+ ## 0.1.0-alpha.40
480
+
481
+ ### Patch Changes
482
+
483
+ - Complete the WorkOS/AuthKit production-like app setup loop.
484
+
485
+ - Add `forge workos setup --real --file workos-seed.yml --json` as the
486
+ explicit no-dashboard apply path for WorkOS hosted redirect URI, CORS,
487
+ homepage, webhook, and seed configuration.
488
+ - Make `forge workos doctor` validate production OIDC/JWT readiness,
489
+ browser AuthKit environment variables, the frontend AuthKit package, and
490
+ actual AuthKit provider mounting in the web app shell.
491
+ - Generate a Vite React WorkOS bridge that wraps `AuthKitProvider`, forwards
492
+ `getAccessToken()` into `ForgeProvider`, preserves `forgeUrl`, and handles
493
+ the `/login` sign-in endpoint flow.
494
+ - Teach `forge add auth workos` to install `@workos-inc/authkit-react` in a
495
+ detected `web/` workspace and automatically rewrite the default Forge Vite
496
+ root from local `devAuth` to `ForgeWorkOSAuthProvider`.
497
+ - Keep custom web roots safe by leaving them unchanged and emitting actionable
498
+ doctor/UI-audit guidance when AuthKit still needs to be mounted manually.
499
+ - Expose production auth readiness in `/health` and make `authmd check` fail
500
+ when OIDC/JWT mode is enabled without issuer/JWKS configuration.
501
+ - Improve `forge dev` lifecycle diagnostics and port-busy recovery hints for
502
+ agent-run app previews.
503
+
504
+ ## 0.1.0-alpha.39
505
+
506
+ ### Patch Changes
507
+
508
+ - Harden real WorkOS seed setup for production-like field tests.
509
+
510
+ - Emit valid YAML for generated `workos-seed.yml` files by skipping the
511
+ JavaScript-style deterministic header on YAML artifacts.
512
+ - Make `forge workos seed --dry-run` the validation-only path and let
513
+ `forge workos seed --file workos-seed.yml --json` delegate to the
514
+ authenticated WorkOS CLI.
515
+ - Treat known WorkOS duplicate-resource seed responses such as permission
516
+ slugs already in use as an already-applied seed instead of a hard failure.
517
+ - Ignore `.workos-seed-state.json` in newly scaffolded apps.
518
+
519
+ ## 0.1.0-alpha.37
520
+
521
+ ### Patch Changes
522
+
523
+ - Fix `forge deps upgrade-plan` for npm alias installs used by ForgeOS apps.
524
+
525
+ - Record the real package name from package metadata in the generated package graph when a dependency is installed through an alias such as `forge: npm:forgeos@...`.
526
+ - Resolve upgrade plans by either the real package name (`forgeos`) or the dependency alias (`forge`) while preserving install specs like `forge@npm:forgeos@0.1.0-alpha.37`.
527
+ - Avoid attempting to resolve the unrelated public `forge@alpha` package when an app asks to upgrade its ForgeOS alias dependency.
528
+ - Add regression coverage for aliased package graph entries where the import name and real npm package name differ.
529
+
530
+ ## 0.1.0-alpha.36
531
+
532
+ ### Patch Changes
533
+
534
+ - Smooth the alpha field-test loop after the Vendor Access app exercise.
535
+
536
+ - Teach `forge deps upgrade-plan` to resolve npm alias dependencies such as `forge: npm:forgeos@alpha`, while preserving alias install specs like `forge@npm:forgeos@0.1.0-alpha.36` in generated upgrade plans.
537
+ - Normalize `auth.md` runtime risk rendering so Commands and Risk/Approval metadata agree that commands default to `write`.
538
+ - Add non-throwing command proof APIs through generated `client.commandResult(...)` and React `useCommandResult(...)`, so expected policy denials can be rendered as structured results instead of noisy unhandled browser failures.
539
+ - Update the basic example schema/docs to use `organizations` as the root tenant table instead of a self-referential `tenants` root.
540
+
541
+ ## 0.1.0-alpha.35
542
+
543
+ ### Patch Changes
544
+
545
+ - Harden field-test regressions found while building WorkOS-style multi-tenant apps.
546
+
547
+ - Resolve camelCase `ref:` targets such as `ref:accessRequests` to canonical SQL table names like `access_requests`, and report unknown refs before invalid SQL reaches PGlite.
548
+ - Allow WorkOS-like local dev auth headers through dev-server CORS, including organization, membership, permissions, roles, and claims headers.
549
+ - Teach the generated agent contract and capability map to recognize camelCase `ctx.db` aliases for snake_case tables.
550
+ - Avoid printing fake `http://127.0.0.1:0` API URLs in `forge dev --port 0` startup diagnostics.
551
+
552
+ ## 0.1.0-alpha.34
553
+
554
+ ### Patch Changes
555
+
556
+ - Harden the ForgeOS app-building DX after the Vendor Access field test.
557
+
558
+ - Make `forge workos doctor` and `forge workos seed --dry-run` app-aware by deriving active permissions and resource types from generated policies, data graph, agent contract, authored WorkOS policies, and `workos-seed.yml` instead of assuming onboarding-specific slugs.
559
+ - Add strong diagnostics for unnamed runtime default exports so `export default command(...)` reports `FORGE_RUNTIME_EXPORT_NAME_REQUIRED` with a named-export fix hint before generated API, frontend bindings, or capability maps drift.
560
+ - Extend local `devAuth` for React, Vue, generated clients, and runtime auth parsing with WorkOS-like `permissions`, `roles`, `claims`, `organizationId`, and `organizationMembershipId`.
561
+ - Add nullable timestamp schema support through `timestamp?` / `nullable("timestamp")` and teach `forge check` to flag empty timestamp literals in commands, queries, and liveQueries.
562
+ - Add `forge dev --detach`, `forge dev status`, `forge dev stop`, and command-specific `forge dev --help` with explicit DB/port examples for agent-run app previews.
563
+ - Add `forge changed --commit-ready` and `forge handoff --commit-ready` so agents can stage exactly authored commit files while excluding generated and operational artifacts.
564
+ - Add `forge test authz` for a cheap generated-contract proof of tenant scope, policy bindings, and capability-map authz coverage.
565
+ - Expose static UI/UX readiness through `forge inspect ui --ergonomics`.
566
+
567
+ ## 0.1.0-alpha.33
568
+
569
+ ### Patch Changes
570
+
571
+ - Fix the Nuxt template smoke by adding the explicit `vue-tsc` dev dependency
572
+ required by `nuxt typecheck`, so newly scaffolded `nuxt-web` apps can run
573
+ `npm run typecheck` after install without manual package repair.
574
+
575
+ ## 0.1.0-alpha.32
576
+
577
+ ### Patch Changes
578
+
579
+ - Harden the alpha field-test loop after real Codex, WorkOS, PGlite, and app-server exercises.
580
+
581
+ - Accept `create-forgeos-app --git` as a supported/no-op compatibility flag when git initialization is already handled by the scaffold path, and keep `npm create forgeos-app@alpha .` working from empty current directories.
582
+ - Reject schema definitions that try to model `id` as a normal text field so generated SQL cannot silently create the wrong primary-key shape.
583
+ - Fix tenant-scoped updates in the in-memory database adapter and bring memory timestamp behavior closer to PGlite by rejecting empty timestamp strings and returning `Date` objects for timestamp columns.
584
+ - Improve smoke/generate drift diagnostics and keep `forge handoff` read-only with respect to generated artifacts.
585
+ - Copy generated WorkOS seed data to a root-level `workos-seed.yml` for app DX, serve `HEAD /auth.md` and `HEAD /.well-known/oauth-protected-resource`, and make local-vs-production auth posture more explicit.
586
+ - Normalize suggested Forge commands in framework checkouts so `agent`, `delta`, `studio`, `status`, `changed`, `handoff`, doctors, and WorkOS/auth helpers recommend `node bin/forge.mjs ...` instead of a possibly stale global `forge`.
587
+ - Return structured JSON diagnostics for Delta/PGlite export/open failures instead of leaking raw PGlite stack output, and improve Windows/PGlite repair guidance.
588
+ - Expand `forge ui audit` with static UX/auth-readiness warnings for missing semantic landmarks, unlabeled form controls, unnamed buttons, missing loading/error/empty states, and tenant/prod-auth apps that still only show local dev auth posture.
589
+
590
+ ## 0.1.0-alpha.31
591
+
592
+ ### Patch Changes
593
+
594
+ - Smooth the ForgeOS field-demo DX after the alpha.30 app-server and WorkOS exercises.
595
+
596
+ - Add `forge baseline create` and `forge baseline status` so non-git template workspaces can establish a local baseline and get useful `forge changed` / `forge handoff` diffs instead of noisy filesystem inventories.
597
+ - Add `forge auth status` and production-focused `forge auth prove --prod` output so `dev-headers` is clearly labeled as local-only while JWT/OIDC proofs show production auth posture.
598
+ - Expand `forge doctor windows` with local PGlite store posture and cleanup guidance, including safer PGlite abort inspection that does not poison the surrounding process exit code.
599
+ - Add `forge ui audit` and run it during `forge verify --smoke` when a web app is present, catching missing UI scenarios, missing stable Forge test IDs, and missing policy-denied coverage for sensitive routes.
600
+ - Expand `forge ui audit` with static UX/auth-readiness warnings for missing semantic landmarks, unlabeled form controls, unnamed buttons, missing loading/error/empty states, and tenant/prod-auth apps that still only show local dev auth posture.
601
+ - Bring the in-memory DB adapter closer to PGlite for timestamp fields by rejecting empty timestamp values and returning `Date` objects for `timestamp`/`timestamptz` columns.
602
+ - Make `forge handoff` use a read-only generated-artifact check so preparing a handoff no longer rewrites `src/forge/_generated/**`, `forge.lock`, or generated `AGENTS.md` noise; `forge dev --once` still self-heals stale artifacts.
603
+ - Allow `forge new .` / `npm create forgeos-app@alpha .` from an empty current directory, while refusing non-empty directories to avoid overwriting existing apps.
604
+
605
+ ## 0.1.0-alpha.30
606
+
607
+ ### Patch Changes
608
+
609
+ - Harden the WorkOS/AuthKit adapter and dev telemetry after the alpha.29 field app test.
610
+
611
+ - Normalize WorkOS AuthKit `User` objects before generated auth routes pass them to Forge session and organization-resolution helpers, so apps typecheck against the WorkOS SDK without unsafe direct `Record<string, unknown>` casts.
612
+ - Keep telemetry best-effort when a database adapter applies `INSERT ... RETURNING` but omits returned rows, preventing telemetry from surfacing as `FORGE_DEV_SERVER_ERROR`.
613
+ - Add regression coverage for generated WorkOS adapter typechecking and telemetry inserts that return no rows.
614
+
615
+ ## 0.1.0-alpha.29
616
+
617
+ ### Patch Changes
618
+
619
+ - Add the first WorkOS/AuthKit adapter and local auth metadata tooling.
620
+
621
+ - Add `forge add auth workos`, generated WorkOS seed/config/docs, AuthKit routes, webhook handling, JWT/OIDC claim mapping, and permission-derived Forge policies.
622
+ - Add `forge authmd generate` and `forge authmd check`, including `/auth.md` and OAuth protected-resource metadata served by `forge dev`.
623
+ - Add a local WorkOS/FGA testkit, resource-graph helpers, cross-tenant guards, FGA cache/fallback telemetry, and mock multi-tenant regression coverage.
624
+ - Teach Forge auth and policies to understand permission claims alongside roles.
625
+ - Add `forge version --json` as a command alias and capture local helper table reads in the generated agent contract/capability map.
626
+
627
+ ## 0.1.0-alpha.28
628
+
629
+ ### Patch Changes
630
+
631
+ - Accept visible Codex hook canaries as sufficient for local editing while reporting native Codex provenance separately through `nativeTrustStatus`.
632
+
633
+ ## 0.1.0-alpha.27
634
+
635
+ ### Patch Changes
636
+
637
+ - Stabilize `forge add convex` and generated integration artifacts.
638
+
639
+ - Re-emit integration adapters, docs, and testkits from the main generator so `forge generate --check` and `forge verify --smoke` stay clean after `forge add`.
640
+ - Keep partial `forge add` plans from deleting unrelated generated files before the full generator can reconcile the workspace.
641
+ - Include changed package-manager files such as `package.json` and lockfiles in `forge add --json` handoffs.
642
+ - Replace stale fast-check manifest hashes instead of merging them, and invalidate old manifest schemas to avoid phantom generated drift.
643
+ - Skip Bun module mock registration when the active Bun runtime does not expose `Bun.mock.module`, while still applying mock secret env vars.
644
+ - Filter generated and operational filesystem noise from `forge changed --authored` in non-git workspaces.
645
+ - Keep Java build outputs such as `target/`, `.class`, and `.jar` files out of the published npm tarball.
646
+
647
+ ## 0.1.0-alpha.26
648
+
649
+ ### Patch Changes
650
+
651
+ - Harden the field-demo loop after the Team Onboarding app exercise.
652
+
653
+ - Let `forge changed` and `forge handoff` summarize non-git workspaces with a filesystem inventory instead of reporting zero useful changes.
654
+ - Keep `forge make resource` global by default unless a tenants table exists or `--tenant-scoped` is explicit.
655
+ - Expand capability-map table detection for aliased `ctx.db` usage.
656
+ - Wait through short-lived DeltaDB writer locks before reporting `FORGE_DELTA_BUSY`.
657
+
658
+ ## 0.1.0-alpha.25
659
+
660
+ ### Patch Changes
661
+
662
+ - Harden DeltaDB and Agent Memory under real `forge dev` concurrency.
663
+
664
+ - Stop long-running dev recorders from holding the DeltaDB writer lock between events.
665
+ - Retry short transient DeltaDB writer conflicts before reporting `FORGE_DELTA_BUSY`.
666
+ - Keep Codex hook queue checkpoints unchanged when Agent Memory ingest is blocked by a busy DeltaDB writer, then retry safely instead of losing queued events.
667
+ - Add watcher backoff metadata for lock recovery and document the safe queue/DeltaDB behavior.
668
+
669
+ - Fix tenant-scope reporting in the generated agent contract and capability map.
670
+
671
+ - Match tenant-scoped tables by both authored/camelCase table names and generated SQL snake_case table names.
672
+ - Report camelCase liveQuery dependencies such as `onboardingTasks` as `tenant` scoped when `tenantScope.json` confirms `tenant_id`.
673
+ - Add regression coverage for the Team Onboarding style liveQuery/capability-map path.
674
+
675
+ ## 0.1.0-alpha.24
676
+
677
+ ### Patch Changes
678
+
679
+ - Consolidate the public alpha adoption surface and agent-contract positioning.
680
+
681
+ - Add an explicit MIT `LICENSE`, package license metadata, and a private GitHub Security Advisory disclosure path.
682
+ - Add stable-alpha, AI-coding, agent demo, Convex, and agent-eval documentation pages, plus a runner-agnostic eval task scaffold.
683
+ - Fix `forge new --json` so scaffold automation receives structured JSON instead of human next-step text.
684
+ - Add the first `forge add convex` app-contract recipe with runtime placement guardrails, optional Convex environment names, generated docs, and a mock testkit.
685
+ - Expand field-report expectations and package/release tests for license, security disclosure, docs, create-app help, Convex recipes, and JSON scaffold output.
686
+
687
+ ## 0.1.0-alpha.23
688
+
689
+ ### Patch Changes
690
+
691
+ - Tighten the post-alpha.22 release surface and package evidence.
692
+
693
+ - Add a dedicated Nuxt template smoke workflow that installs `nuxt-web`, runs Forge generation/checks, runs Nuxt typecheck, and probes `forge dev --once`.
694
+ - Include `nuxt-web` in the default field-test template matrix.
695
+ - Add explicit `scopeTarget` metadata and human-readable target output for `forge agent context --change`, `--proof`, and `--handoff`.
696
+ - Teach `forge explain` to fall back to the current generated agent contract when DeltaDB has no runtime history, while marking the result as contract-defined instead of executed.
697
+ - Downgrade read-only observation commands such as `forge status`, `forge changed`, `forge handoff`, `forge explain`, `forge timeline`, and CAIR queries to low-confidence context-gathering sessions in DeltaDB.
698
+ - Package `docs/cair-protocol.md` in the npm tarball and expand the public security/threat-model docs for DeltaDB, agent memory, CAIR, Studio bridge, brownfield import, and Nuxt surfaces.
699
+
700
+ ## 0.1.0-alpha.22
701
+
702
+ ### Patch Changes
703
+
704
+ - Improve the post-alpha.21 agent workflow without adding new MCP tools.
705
+
706
+ - Add `forge agent context` scopes for entry, change, proof, and handoff context packs.
707
+ - Add DeltaDB verbose health details for queue redaction, operation age, semantic projection state, and overhead posture.
708
+ - Add `forge delta compact`, `forge delta prune`, and redacted `forge delta export` for local Delta maintenance and support bundles.
709
+ - Add `forge doctor delta` for recorder writability, queue drain, redaction, and gitignore checks.
710
+ - Add Semantic Timeline summary data for stale proofs and causal chains.
711
+ - Record CAIR snapshot/query/action activity as Delta timeline events without adding new MCP tools.
712
+ - Add a Studio snapshot handoff block and a dedicated CAIR Protocol documentation page.
713
+ - Add an official `nuxt-web` template with a Forge notes backend, client/server Nuxt plugins, a `useNotes` composable, a Nitro runtime-config route, and generated Vue composables.
714
+
715
+ ## 0.1.0-alpha.21
716
+
717
+ ### Patch Changes
718
+
719
+ - Harden Codex hook queue privacy and brownfield import classification.
720
+
721
+ - Queue new Codex hook events as redacted payloads instead of storing raw prompts, tool inputs, tool responses, or transcripts in `.forge/agent/events.ndjson`.
722
+ - Compact consumed hook queue history into redacted `.history` lines so old raw queue entries are not copied forward during drain retention.
723
+ - Scope brownfield route classification to the detected route handler, so read-only GET handlers are not marked command-like because a sibling route in the same file writes state.
724
+ - Mark read-shaped `POST /search`, `/query`, `/filter`, `/lookup`, and `/graphql` routes as `command-candidate` with `ambiguous-post-query` risk instead of treating them as normal writes.
725
+ - Sync the public docs changelog/CLI reference and clarify the alpha/latest npm dist-tag policy.
726
+
727
+ ## 0.1.0-alpha.20
728
+
729
+ ### Patch Changes
730
+
731
+ - Fix generated-change diagnostics, Codex hook queue handling, and external stdio command parsing.
732
+
733
+ - Classify generated `AGENTS.md` blocks and `.forge/agent/context.json` as derived artifacts in `forge changed`/`forge status`.
734
+ - Skip probe, invalid, and out-of-workspace queued hook events during Agent Memory drain, and bound queue inspection for large hook queues.
735
+ - Preserve empty stdio command arguments, diagnose malformed command strings, and support structured `service.commandArgs` in external manifests.
736
+ - Include the basic example client demo in typecheck coverage.
737
+
738
+ ## 0.1.0-alpha.19
739
+
740
+ Alpha hardening:
741
+
742
+ - Added the `agent-workroom` app template for Forge Studio style demos: external
743
+ agents edit the app, while ForgeOS shows preview URL, agent signals, check
744
+ runs, and handoff evidence through generated commands and liveQuery bindings.
745
+ - Added `forge studio attach` for Studio-style observer apps: writes `.forge/studio/attachment.json`, prepares external-agent adapters/hooks, and returns the target preview URL.
746
+ - Added `summary.preview` and `summary.urls.suggestedPreview` to `forge dev --once --json` so observer UIs can target the app under construction instead of pointing at themselves.
747
+ - Improved `forge dev` port-busy failures with a `port_busy` JSON failure kind and suggested recovery commands, including the common "Is port X in use?" startup error shape.
748
+ - `forge dev` now resolves the web app port before startup and automatically moves to the next available port when the default web port is busy, keeping the printed/JSON web URL truthful.
749
+ - Improved `forge check --json` next actions by surfacing diagnostic-specific repair/inspect commands instead of a generic last-test-run repair hint.
750
+ - Added `forge doctor agent --target <agent>` as the top-level agent readiness check.
751
+ - Added explicit `forge agent ingest <source> --watch --file <events.ndjson>` support for opt-in hook/export file ingestion.
752
+ - Added human-friendly verifier aliases: `forge verify quick`, `forge verify agent`, and `forge verify release`.
753
+ - Made `forge status --human` an explicit accepted spelling and documented `forge add <npm-package> --workspace web` as the normal package-add path.
754
+ - Made bare `forge inspect` default to the compact `summary` target instead of returning a usage error.
755
+ - Added `forge release doctor`, `release check --allow-missing-local-release`, and `self-host check --prepared-only` so release readiness can distinguish hard failures from not-yet-prepared local artifacts.
756
+ - Hardened the public packed-package smoke with dry-run mode, per-step JSON evidence, step timeouts, installed-global CLI coverage, hook smoke readiness, Studio open coverage, and preview-port cleanup checks.
757
+ - Expanded `forge docs check` with YAML shape checks, internal Markdown link validation, optional ReadTheDocs-style venv installation, and strict MkDocs build execution.
758
+ - Added authored-only review paths through `forge changed --authored` and `forge diff authored`, keeping generated artifacts collapsed unless explicitly requested.
759
+ - Added `forge delta status --verbose --json` for schema, lock, path, and aggregate-count diagnostics without expanding the default status payload.
760
+ - Added explicit hook readiness levels (`none`, `canary`, `trusted-native`) and documented `.codex/hooks.json` as versioned adapter configuration while keeping `.forge/agent/**` as local operational state.
761
+
762
+ ## 0.1.0-alpha.18
763
+
764
+ Codex hook memory hardening:
765
+
766
+ - Hardened Codex hook ingestion by deriving useful tool-call metadata from the documented hook wire format while keeping raw prompts, tool inputs, tool responses, transcripts, and secrets out of Agent Memory.
767
+ - Added safe command summaries, tool-call ids, result status, exit codes, response summaries, inferred files, and inferred runtime entries for Codex `PreToolUse`, `PermissionRequest`, and `PostToolUse` events.
768
+ - Updated the Codex hook installer with hook timeouts and status messages, and added a local wrapper so repo hooks can use the checkout implementation.
769
+ - Documented the safe Codex hook metadata surface and added regression coverage for real hook payload shapes.
770
+
771
+ ## 0.1.0-alpha.17
772
+
773
+ External runtime timeline metadata:
774
+
775
+ - Enriched DeltaDB runtime call recording for imported Go/Java/external services by reading generated `externalServices.json` metadata during `forge run` and `forge query`.
776
+ - `forge timeline` and `forge explain` now report external runtime `service`, `language`, `risk`, `policy`, `tenantScoped`, and `needsApproval` state instead of falling back to null/false values after successful external calls.
777
+ - Added a DeltaDB schema migration for `runtime_calls.needs_approval` and bumped the local DeltaDB schema to `0.3.1`.
778
+ - Added regression coverage for the real CLI recorder path so manifest-imported external commands keep semantic metadata in timelines.
779
+ - Promotes this release on npm as both `alpha` and `latest`.
780
+
781
+ ## 0.1.0-alpha.16
782
+
783
+ Stability alignment:
784
+
785
+ - Fixed H47 `forge timeline` and `forge explain` crashes after large `artifact.generated` payloads by replacing unsafe JSON string truncation with a safe summary/hash envelope.
786
+ - Summarized generated artifact batches in the Semantic Timeline with count, hash, sample, and omitted count instead of embedding every artifact in timeline event data.
787
+ - Fixed H49 brownfield import detection for root-level Next.js App Router and Pages API routes such as `app/api/.../route.ts` and `pages/api/...`.
788
+ - Updated public CLI and DeltaDB docs for timeline/session/explain/MCP/agent-memory commands and clarified that `.forge/delta/delta.db` is a PGlite/Postgres data directory.
789
+ - Verified the release against a public GitHub `main` smoke app using `generate`, `check`, `delta status`, `timeline`, `explain`, `import analyze`, and `inspect imported`.
790
+
791
+ ## 0.1.0-alpha.15
792
+
793
+ Brownfield import analysis:
794
+
795
+ - Added H49 `forge import analyze` and `forge import inspect` for static brownfield TypeScript/JavaScript app inventory.
796
+ - Detects Next.js App Router routes, Pages API routes, Express/Nest-style handlers, frontend `fetch`/`axios` calls, env usage, framework/data/external package signals, and conservative candidate command/query entries.
797
+ - Writes `.forge/import` artifacts including inventory, routes, frontend calls, candidate entries, risk report, migration plan, and imported agent contract.
798
+ - Keeps imported entries hidden from agents by default with `origin: imported`, `assurance: static-scan`, `reviewStatus: needs-review`, `visibleToAgent: false`, and approval required for command-like or risky entries.
799
+ - Added `forge inspect imported --json` plus focused H49 CLI and scanner coverage.
800
+
801
+ ## 0.1.0-alpha.14
802
+
803
+ Java and Nuxt/Vue support:
804
+
805
+ - Added the Java external runtime adapter with a lightweight JDK HTTP bridge, manifest export, typed handlers, tenant/auth context, diagnostics, and command/query registration.
806
+ - Added a Spring Boot starter for Java services that want annotation-based Forge command/query exposure.
807
+ - Added the `java-billing` conformance example and packaged it with the public alpha line.
808
+ - Added generated Vue bindings and a `forgeos/vue` export with `provideForge`, `ForgeVuePlugin`, `useForgeQuery`, `useForgeCommand`, and `useForgeLiveQuery`.
809
+ - Added Nuxt UI scaffolding through `forge make ui --framework nuxt`, including plugin wiring, composable bridge files, and frontend graph detection for `.vue` routes/components.
810
+ - Updated docs, agent adapter guidance, generated manifests, and focused Java/Vue/Nuxt tests.
811
+ - Kept H44-H48 memory, sessions, timeline, grouping, and MCP surfaces intact while merging the Java/Nuxt work into `main`.
812
+
813
+ ## 0.1.0-alpha.13
814
+
815
+ Agent Memory Bridge:
816
+
817
+ - Added the H48 Agent Memory Bridge alpha with redacted external agent event ingestion and normalized `forge.agent-event.v1` envelopes.
818
+ - Added Codex and Claude Code hook installers plus Cursor MCP/rules setup, all with raw prompts, completions, tool args, transcripts, and cloud sync off by default.
819
+ - Added `forge mcp serve` with context, memory, timeline, and inspect tools for external agents.
820
+ - Added `forge agent install`, `forge agent ingest`, `forge agent context`, and `forge agent memory` commands.
821
+ - Persisted external agent activity in DeltaDB and linked agent/tool/file events into the semantic timeline.
822
+ - Added focused privacy, ingest, MCP, installer, and CLI parse coverage for the H48 bridge.
823
+
824
+ ## 0.1.0-alpha.12
825
+
826
+ Semantic Timeline:
827
+
828
+ - Added the H47 Semantic Timeline projection for DeltaDB with rebuildable timeline events, entity indexes, causal edges, and projection state.
829
+ - Upgraded `forge timeline` from a raw operation log view into an entity-oriented semantic timeline for runtime entries, policies, diagnostics, proofs, services, files, and sessions.
830
+ - Added proof staleness detection and causal links for denial -> policy repair -> successful execution flows.
831
+ - Updated `forge explain` to include semantic timeline context and current-state summaries when available.
832
+ - Documented the timeline projection/rebuild model and added focused DeltaDB coverage for runtime, policy, diagnostic, proof, and deterministic rebuild scenarios.
833
+
834
+ ## 0.1.0-alpha.11
835
+
836
+ Strict verify performance:
837
+
838
+ - Reduced the validated `forge verify --strict` wall time from roughly 358-454s to about 116s on the current Windows test machine.
839
+ - Added stable repo-local `tsx` CLI caching under `node_modules/.cache/forge-tsx-cli` so spawned CLI tests reuse the warm compiler path.
840
+ - Balanced TestGraph strict execution across shared and isolated lanes, bringing the slowest files down from roughly 50s to under 10s in the updated profile.
841
+ - Moved heavy refactor/impact/external runtime suites onto faster shared paths where safe and kept isolation for process-sensitive tests.
842
+ - Documented and guarded the cache behavior so future test helpers preserve the speedup without checking cache contents into git.
843
+ - Added guarded alpha release workflow support for promoting the public `latest` dist-tag when npm token auth is configured.
844
+
845
+ ## 0.1.0-alpha.10
846
+
847
+ Launch polish:
848
+
849
+ - Fixed `forge run <external-command> --args ...` so CLI arguments reach the external runtime bridge.
850
+ - Added direct external query CLI support through `forge query <service.query> --args ...`.
851
+ - Emit generated `.json` artifacts as pure JSON while keeping deterministic headers on code/text artifacts.
852
+ - Relaxed the `minimal-web` template verify script to `forge verify --smoke` and added the missing `check` script to `b2b-support-web`.
853
+ - Updated public protocol/changelog docs for the external runtime and Go adapter alpha line.
854
+ - Bumped the create-app wrapper package line to `create-forgeos-app@0.1.0-alpha.4`.
855
+
856
+ ## 0.1.0-alpha.9
857
+
858
+ ### Patch Changes
859
+
860
+ - Added the Forge external runtime protocol bridge for manifest-backed commands and queries.
861
+ - Added the Go adapter MVP with a real `go-billing` conformance example.
862
+ - Emitted external service metadata into inspect/API/agent artifacts, including `needsApproval` for agent tools.
863
+ - Reuse compiler classifier package signals across export classification, dropping repeated package signal scans.
864
+ - Reuse serialized graph JSON when rendering the largest generated TypeScript graph artifacts.
865
+ - Keep generated Forge artifacts aligned with the `0.1.0-alpha.9` compiler/runtime version.
866
+
867
+ ## 0.1.0-alpha.8
868
+
869
+ ### Patch Changes
870
+
871
+ - [`7568756`](https://github.com/Stahldavid/forge/commit/756875688873dd60d3d6cf700a7bb7c211968c69) Thanks [@Stahldavid](https://github.com/Stahldavid)! - Publish prerelease packages through the ForgeOS alpha publisher so npm dist-tags stay aligned.
872
+
3
873
  ## 0.1.0-alpha.7
4
874
 
5
875
  ### Patch Changes
@@ -12,15 +882,6 @@
12
882
 
13
883
  - [`c30f906`](https://github.com/Stahldavid/forge/commit/c30f9069c99ac747ce143ab5fbcbf13912ed8760) Thanks [@Stahldavid](https://github.com/Stahldavid)! - Add CLI version output, align create-app help with package metadata, and add release dependency audit evidence.
14
884
 
15
- ## Unreleased
16
-
17
- Release and packaging hardening:
18
-
19
- - Added `forge --version` / `forge --version --json`.
20
- - Updated `create-forgeos-app` help to read the wrapper package version instead of a hardcoded string and bumped the wrapper to `0.1.0-alpha.2`.
21
- - Added dependency vulnerability evidence with an explicit waiver file and CI release gate.
22
- - Updated generated web template dependencies to current Vite/plugin-react and Next majors.
23
-
24
885
  ## 0.1.0-alpha.5
25
886
 
26
887
  Release alignment for the public alpha channel: