@specforge/cli 0.1.0 → 0.2.5

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 (648) hide show
  1. package/dist/cli/commands/debug/register.js +1 -1
  2. package/dist/cli/commands/debug/register.js.map +1 -1
  3. package/dist/cli/commands/debug/types.d.ts.map +1 -1
  4. package/dist/cli/commands/debug/types.js +4 -2
  5. package/dist/cli/commands/debug/types.js.map +1 -1
  6. package/dist/cli/commands/init.types.d.ts +4 -4
  7. package/dist/cli/commands/init.types.d.ts.map +1 -1
  8. package/dist/cli/commands/init.types.js.map +1 -1
  9. package/dist/cli/commands/scaffold/agent-types.js +1 -1
  10. package/dist/cli/commands/scaffold/agent-types.js.map +1 -1
  11. package/dist/cli/config/agent-teams.types.d.ts +35 -12
  12. package/dist/cli/config/agent-teams.types.d.ts.map +1 -1
  13. package/dist/cli/config/agent-teams.types.js.map +1 -1
  14. package/dist/cli/templates/agents/content/core/sfag-orchestrator.d.ts +21 -3
  15. package/dist/cli/templates/agents/content/core/sfag-orchestrator.d.ts.map +1 -1
  16. package/dist/cli/templates/agents/content/core/sfag-orchestrator.js +114 -48
  17. package/dist/cli/templates/agents/content/core/sfag-orchestrator.js.map +1 -1
  18. package/dist/cli/templates/agents/content/core/sfag-spec-creator.d.ts.map +1 -1
  19. package/dist/cli/templates/agents/content/core/sfag-spec-creator.js +124 -83
  20. package/dist/cli/templates/agents/content/core/sfag-spec-creator.js.map +1 -1
  21. package/dist/cli/templates/agents/content/core/sfag-ticket-implementer.d.ts +22 -3
  22. package/dist/cli/templates/agents/content/core/sfag-ticket-implementer.d.ts.map +1 -1
  23. package/dist/cli/templates/agents/content/core/sfag-ticket-implementer.js +225 -160
  24. package/dist/cli/templates/agents/content/core/sfag-ticket-implementer.js.map +1 -1
  25. package/dist/cli/templates/agents/content/core/sfag-work-resolver.d.ts +16 -0
  26. package/dist/cli/templates/agents/content/core/sfag-work-resolver.d.ts.map +1 -0
  27. package/dist/cli/templates/agents/content/core/sfag-work-resolver.js +199 -0
  28. package/dist/cli/templates/agents/content/core/sfag-work-resolver.js.map +1 -0
  29. package/dist/cli/templates/agents/index.d.ts.map +1 -1
  30. package/dist/cli/templates/agents/index.js +2 -0
  31. package/dist/cli/templates/agents/index.js.map +1 -1
  32. package/dist/cli/templates/content/sf-commit.d.ts +1 -1
  33. package/dist/cli/templates/content/sf-commit.d.ts.map +1 -1
  34. package/dist/cli/templates/content/sf-commit.js +2 -2
  35. package/dist/cli/templates/content/sf-commit.js.map +1 -1
  36. package/dist/cli/templates/content/sf-reset.d.ts +5 -2
  37. package/dist/cli/templates/content/sf-reset.d.ts.map +1 -1
  38. package/dist/cli/templates/content/sf-reset.js +41 -27
  39. package/dist/cli/templates/content/sf-reset.js.map +1 -1
  40. package/dist/lib/prompt-generator.d.ts +15 -3
  41. package/dist/lib/prompt-generator.d.ts.map +1 -1
  42. package/dist/lib/prompt-generator.js +14 -6
  43. package/dist/lib/prompt-generator.js.map +1 -1
  44. package/dist/lib/workflow-definitions.js +2 -2
  45. package/dist/lib/workflow-definitions.js.map +1 -1
  46. package/dist/server.d.ts.map +1 -1
  47. package/dist/server.js +2 -1
  48. package/dist/server.js.map +1 -1
  49. package/dist/tools/__tests__/complete-planning-double-call.test.d.ts +2 -0
  50. package/dist/tools/__tests__/complete-planning-double-call.test.d.ts.map +1 -0
  51. package/dist/tools/core/__tests__/file-existence-injection.test.d.ts +2 -0
  52. package/dist/tools/core/__tests__/file-existence-injection.test.d.ts.map +1 -0
  53. package/dist/tools/core/__tests__/git-injection.test.d.ts +2 -0
  54. package/dist/tools/core/__tests__/git-injection.test.d.ts.map +1 -0
  55. package/dist/tools/core/file-existence-injection.d.ts +22 -0
  56. package/dist/tools/core/file-existence-injection.d.ts.map +1 -0
  57. package/dist/tools/core/file-existence-injection.js +49 -0
  58. package/dist/tools/core/file-existence-injection.js.map +1 -0
  59. package/dist/tools/core/git-injection.d.ts +58 -0
  60. package/dist/tools/core/git-injection.d.ts.map +1 -0
  61. package/dist/tools/core/git-injection.js +79 -0
  62. package/dist/tools/core/git-injection.js.map +1 -0
  63. package/dist/tools/core/index.d.ts +1 -0
  64. package/dist/tools/core/index.d.ts.map +1 -1
  65. package/dist/tools/core/index.js +1 -0
  66. package/dist/tools/core/index.js.map +1 -1
  67. package/dist/tools/index.d.ts.map +1 -1
  68. package/dist/tools/index.js +358 -440
  69. package/dist/tools/index.js.map +1 -1
  70. package/dist/transport/__tests__/remote.test.d.ts +2 -0
  71. package/dist/transport/__tests__/remote.test.d.ts.map +1 -0
  72. package/dist/transport/remote.d.ts.map +1 -1
  73. package/dist/transport/remote.js +23 -4
  74. package/dist/transport/remote.js.map +1 -1
  75. package/dist/types/index.d.ts +12 -32
  76. package/dist/types/index.d.ts.map +1 -1
  77. package/dist/types/index.js.map +1 -1
  78. package/dist/validation/index.d.ts.map +1 -1
  79. package/dist/validation/index.js +0 -15
  80. package/dist/validation/index.js.map +1 -1
  81. package/node_modules/@specforge/api-types/README.md +38 -0
  82. package/node_modules/@specforge/api-types/dist/client/appsync-client.d.ts +21 -0
  83. package/node_modules/@specforge/api-types/dist/client/appsync-client.d.ts.map +1 -0
  84. package/node_modules/@specforge/api-types/dist/client/appsync-client.js +2 -0
  85. package/node_modules/@specforge/api-types/dist/client/appsync-client.js.map +1 -0
  86. package/node_modules/@specforge/api-types/dist/client/index.d.ts +2 -0
  87. package/node_modules/@specforge/api-types/dist/client/index.d.ts.map +1 -0
  88. package/node_modules/@specforge/api-types/dist/client/index.js +2 -0
  89. package/node_modules/@specforge/api-types/dist/client/index.js.map +1 -0
  90. package/node_modules/@specforge/api-types/dist/index.d.ts +5 -0
  91. package/node_modules/@specforge/api-types/dist/index.d.ts.map +1 -0
  92. package/node_modules/@specforge/api-types/dist/index.js +9 -0
  93. package/node_modules/@specforge/api-types/dist/index.js.map +1 -0
  94. package/node_modules/@specforge/api-types/dist/mcp/error-guidance.d.ts +74 -0
  95. package/node_modules/@specforge/api-types/dist/mcp/error-guidance.d.ts.map +1 -0
  96. package/node_modules/@specforge/api-types/dist/mcp/error-guidance.js +21 -0
  97. package/node_modules/@specforge/api-types/dist/mcp/error-guidance.js.map +1 -0
  98. package/node_modules/@specforge/api-types/dist/mcp/index.d.ts +4 -0
  99. package/node_modules/@specforge/api-types/dist/mcp/index.d.ts.map +1 -0
  100. package/node_modules/@specforge/api-types/dist/mcp/index.js +8 -0
  101. package/node_modules/@specforge/api-types/dist/mcp/index.js.map +1 -0
  102. package/node_modules/@specforge/api-types/dist/mcp/lifecycle-envelope.d.ts +18 -0
  103. package/node_modules/@specforge/api-types/dist/mcp/lifecycle-envelope.d.ts.map +1 -0
  104. package/node_modules/@specforge/api-types/dist/mcp/lifecycle-envelope.js +2 -0
  105. package/node_modules/@specforge/api-types/dist/mcp/lifecycle-envelope.js.map +1 -0
  106. package/node_modules/@specforge/api-types/dist/mcp/standard-envelope.d.ts +39 -0
  107. package/node_modules/@specforge/api-types/dist/mcp/standard-envelope.d.ts.map +1 -0
  108. package/node_modules/@specforge/api-types/dist/mcp/standard-envelope.js +2 -0
  109. package/node_modules/@specforge/api-types/dist/mcp/standard-envelope.js.map +1 -0
  110. package/node_modules/@specforge/api-types/dist/runtime/billing-record.d.ts +18 -0
  111. package/node_modules/@specforge/api-types/dist/runtime/billing-record.d.ts.map +1 -0
  112. package/node_modules/@specforge/api-types/dist/runtime/billing-record.js +7 -0
  113. package/node_modules/@specforge/api-types/dist/runtime/billing-record.js.map +1 -0
  114. package/node_modules/@specforge/api-types/dist/runtime/blueprint-record.d.ts +40 -0
  115. package/node_modules/@specforge/api-types/dist/runtime/blueprint-record.d.ts.map +1 -0
  116. package/node_modules/@specforge/api-types/dist/runtime/blueprint-record.js +19 -0
  117. package/node_modules/@specforge/api-types/dist/runtime/blueprint-record.js.map +1 -0
  118. package/node_modules/@specforge/api-types/dist/runtime/dependency-tree.d.ts +96 -0
  119. package/node_modules/@specforge/api-types/dist/runtime/dependency-tree.d.ts.map +1 -0
  120. package/node_modules/@specforge/api-types/dist/runtime/dependency-tree.js +23 -0
  121. package/node_modules/@specforge/api-types/dist/runtime/dependency-tree.js.map +1 -0
  122. package/node_modules/@specforge/api-types/dist/runtime/epic-record.d.ts +117 -0
  123. package/node_modules/@specforge/api-types/dist/runtime/epic-record.d.ts.map +1 -0
  124. package/node_modules/@specforge/api-types/dist/runtime/epic-record.js +13 -0
  125. package/node_modules/@specforge/api-types/dist/runtime/epic-record.js.map +1 -0
  126. package/node_modules/@specforge/api-types/dist/runtime/feedback-record.d.ts +27 -0
  127. package/node_modules/@specforge/api-types/dist/runtime/feedback-record.d.ts.map +1 -0
  128. package/node_modules/@specforge/api-types/dist/runtime/feedback-record.js +7 -0
  129. package/node_modules/@specforge/api-types/dist/runtime/feedback-record.js.map +1 -0
  130. package/node_modules/@specforge/api-types/dist/runtime/fields.d.ts +31 -0
  131. package/node_modules/@specforge/api-types/dist/runtime/fields.d.ts.map +1 -0
  132. package/node_modules/@specforge/api-types/dist/runtime/fields.js +156 -0
  133. package/node_modules/@specforge/api-types/dist/runtime/fields.js.map +1 -0
  134. package/node_modules/@specforge/api-types/dist/runtime/index.d.ts +18 -0
  135. package/node_modules/@specforge/api-types/dist/runtime/index.d.ts.map +1 -0
  136. package/node_modules/@specforge/api-types/dist/runtime/index.js +18 -0
  137. package/node_modules/@specforge/api-types/dist/runtime/index.js.map +1 -0
  138. package/node_modules/@specforge/api-types/dist/runtime/pagination.d.ts +38 -0
  139. package/node_modules/@specforge/api-types/dist/runtime/pagination.d.ts.map +1 -0
  140. package/node_modules/@specforge/api-types/dist/runtime/pagination.js +54 -0
  141. package/node_modules/@specforge/api-types/dist/runtime/pagination.js.map +1 -0
  142. package/node_modules/@specforge/api-types/dist/runtime/project-invitation.d.ts +14 -0
  143. package/node_modules/@specforge/api-types/dist/runtime/project-invitation.d.ts.map +1 -0
  144. package/node_modules/@specforge/api-types/dist/runtime/project-invitation.js +2 -0
  145. package/node_modules/@specforge/api-types/dist/runtime/project-invitation.js.map +1 -0
  146. package/node_modules/@specforge/api-types/dist/runtime/project-member.d.ts +13 -0
  147. package/node_modules/@specforge/api-types/dist/runtime/project-member.d.ts.map +1 -0
  148. package/node_modules/@specforge/api-types/dist/runtime/project-member.js +2 -0
  149. package/node_modules/@specforge/api-types/dist/runtime/project-member.js.map +1 -0
  150. package/node_modules/@specforge/api-types/dist/runtime/project-validation.d.ts +26 -0
  151. package/node_modules/@specforge/api-types/dist/runtime/project-validation.d.ts.map +1 -0
  152. package/node_modules/@specforge/api-types/dist/runtime/project-validation.js +5 -0
  153. package/node_modules/@specforge/api-types/dist/runtime/project-validation.js.map +1 -0
  154. package/node_modules/@specforge/api-types/dist/runtime/project.d.ts +55 -0
  155. package/node_modules/@specforge/api-types/dist/runtime/project.d.ts.map +1 -0
  156. package/node_modules/@specforge/api-types/dist/runtime/project.js +10 -0
  157. package/node_modules/@specforge/api-types/dist/runtime/project.js.map +1 -0
  158. package/node_modules/@specforge/api-types/dist/runtime/response.d.ts +22 -0
  159. package/node_modules/@specforge/api-types/dist/runtime/response.d.ts.map +1 -0
  160. package/node_modules/@specforge/api-types/dist/runtime/response.js +14 -0
  161. package/node_modules/@specforge/api-types/dist/runtime/response.js.map +1 -0
  162. package/node_modules/@specforge/api-types/dist/runtime/specification-record.d.ts +90 -0
  163. package/node_modules/@specforge/api-types/dist/runtime/specification-record.d.ts.map +1 -0
  164. package/node_modules/@specforge/api-types/dist/runtime/specification-record.js +11 -0
  165. package/node_modules/@specforge/api-types/dist/runtime/specification-record.js.map +1 -0
  166. package/node_modules/@specforge/api-types/dist/runtime/status.d.ts +26 -0
  167. package/node_modules/@specforge/api-types/dist/runtime/status.d.ts.map +1 -0
  168. package/node_modules/@specforge/api-types/dist/runtime/status.js +56 -0
  169. package/node_modules/@specforge/api-types/dist/runtime/status.js.map +1 -0
  170. package/node_modules/@specforge/api-types/dist/runtime/summary.d.ts +58 -0
  171. package/node_modules/@specforge/api-types/dist/runtime/summary.d.ts.map +1 -0
  172. package/node_modules/@specforge/api-types/dist/runtime/summary.js +42 -0
  173. package/node_modules/@specforge/api-types/dist/runtime/summary.js.map +1 -0
  174. package/node_modules/@specforge/api-types/dist/runtime/ticket-record.d.ts +212 -0
  175. package/node_modules/@specforge/api-types/dist/runtime/ticket-record.d.ts.map +1 -0
  176. package/node_modules/@specforge/api-types/dist/runtime/ticket-record.js +18 -0
  177. package/node_modules/@specforge/api-types/dist/runtime/ticket-record.js.map +1 -0
  178. package/node_modules/@specforge/api-types/dist/runtime/user.d.ts +13 -0
  179. package/node_modules/@specforge/api-types/dist/runtime/user.d.ts.map +1 -0
  180. package/node_modules/@specforge/api-types/dist/runtime/user.js +9 -0
  181. package/node_modules/@specforge/api-types/dist/runtime/user.js.map +1 -0
  182. package/node_modules/@specforge/api-types/dist/stores/i-billing-store.d.ts +17 -0
  183. package/node_modules/@specforge/api-types/dist/stores/i-billing-store.d.ts.map +1 -0
  184. package/node_modules/@specforge/api-types/dist/stores/i-billing-store.js +2 -0
  185. package/node_modules/@specforge/api-types/dist/stores/i-billing-store.js.map +1 -0
  186. package/node_modules/@specforge/api-types/dist/stores/i-blueprint-store.d.ts +59 -0
  187. package/node_modules/@specforge/api-types/dist/stores/i-blueprint-store.d.ts.map +1 -0
  188. package/node_modules/@specforge/api-types/dist/stores/i-blueprint-store.js +2 -0
  189. package/node_modules/@specforge/api-types/dist/stores/i-blueprint-store.js.map +1 -0
  190. package/node_modules/@specforge/api-types/dist/stores/i-epic-store.d.ts +120 -0
  191. package/node_modules/@specforge/api-types/dist/stores/i-epic-store.d.ts.map +1 -0
  192. package/node_modules/@specforge/api-types/dist/stores/i-epic-store.js +2 -0
  193. package/node_modules/@specforge/api-types/dist/stores/i-epic-store.js.map +1 -0
  194. package/node_modules/@specforge/api-types/dist/stores/i-feedback-store.d.ts +13 -0
  195. package/node_modules/@specforge/api-types/dist/stores/i-feedback-store.d.ts.map +1 -0
  196. package/node_modules/@specforge/api-types/dist/stores/i-feedback-store.js +2 -0
  197. package/node_modules/@specforge/api-types/dist/stores/i-feedback-store.js.map +1 -0
  198. package/node_modules/@specforge/api-types/dist/stores/i-project-store.d.ts +48 -0
  199. package/node_modules/@specforge/api-types/dist/stores/i-project-store.d.ts.map +1 -0
  200. package/node_modules/@specforge/api-types/dist/stores/i-project-store.js +2 -0
  201. package/node_modules/@specforge/api-types/dist/stores/i-project-store.js.map +1 -0
  202. package/node_modules/@specforge/api-types/dist/stores/i-sharing-store.d.ts +37 -0
  203. package/node_modules/@specforge/api-types/dist/stores/i-sharing-store.d.ts.map +1 -0
  204. package/node_modules/@specforge/api-types/dist/stores/i-sharing-store.js +2 -0
  205. package/node_modules/@specforge/api-types/dist/stores/i-sharing-store.js.map +1 -0
  206. package/node_modules/@specforge/api-types/dist/stores/i-spec-store.d.ts +159 -0
  207. package/node_modules/@specforge/api-types/dist/stores/i-spec-store.d.ts.map +1 -0
  208. package/node_modules/@specforge/api-types/dist/stores/i-spec-store.js +2 -0
  209. package/node_modules/@specforge/api-types/dist/stores/i-spec-store.js.map +1 -0
  210. package/node_modules/@specforge/api-types/dist/stores/i-ticket-dependency-store.d.ts +87 -0
  211. package/node_modules/@specforge/api-types/dist/stores/i-ticket-dependency-store.d.ts.map +1 -0
  212. package/node_modules/@specforge/api-types/dist/stores/i-ticket-dependency-store.js +2 -0
  213. package/node_modules/@specforge/api-types/dist/stores/i-ticket-dependency-store.js.map +1 -0
  214. package/node_modules/@specforge/api-types/dist/stores/i-ticket-store.d.ts +347 -0
  215. package/node_modules/@specforge/api-types/dist/stores/i-ticket-store.d.ts.map +1 -0
  216. package/node_modules/@specforge/api-types/dist/stores/i-ticket-store.js +2 -0
  217. package/node_modules/@specforge/api-types/dist/stores/i-ticket-store.js.map +1 -0
  218. package/node_modules/@specforge/api-types/dist/stores/i-user-store.d.ts +5 -0
  219. package/node_modules/@specforge/api-types/dist/stores/i-user-store.d.ts.map +1 -0
  220. package/node_modules/@specforge/api-types/dist/stores/i-user-store.js +2 -0
  221. package/node_modules/@specforge/api-types/dist/stores/i-user-store.js.map +1 -0
  222. package/node_modules/@specforge/api-types/dist/stores/index.d.ts +11 -0
  223. package/node_modules/@specforge/api-types/dist/stores/index.d.ts.map +1 -0
  224. package/node_modules/@specforge/api-types/dist/stores/index.js +11 -0
  225. package/node_modules/@specforge/api-types/dist/stores/index.js.map +1 -0
  226. package/node_modules/@specforge/api-types/package.json +43 -0
  227. package/node_modules/@specforge/report-types/README.md +11 -0
  228. package/node_modules/@specforge/report-types/dist/index.d.ts +2 -0
  229. package/node_modules/@specforge/report-types/dist/index.d.ts.map +1 -0
  230. package/node_modules/@specforge/report-types/dist/index.js +2 -0
  231. package/node_modules/@specforge/report-types/dist/index.js.map +1 -0
  232. package/node_modules/@specforge/report-types/dist/reports.d.ts +90 -0
  233. package/node_modules/@specforge/report-types/dist/reports.d.ts.map +1 -0
  234. package/node_modules/@specforge/report-types/dist/reports.js +15 -0
  235. package/node_modules/@specforge/report-types/dist/reports.js.map +1 -0
  236. package/node_modules/@specforge/report-types/package.json +40 -0
  237. package/node_modules/@specforge/session-types/CHANGELOG.md +56 -0
  238. package/node_modules/@specforge/session-types/README.md +18 -0
  239. package/node_modules/@specforge/session-types/dist/index.d.ts +47 -0
  240. package/node_modules/@specforge/session-types/dist/index.d.ts.map +1 -0
  241. package/node_modules/@specforge/session-types/dist/index.js +47 -0
  242. package/node_modules/@specforge/session-types/dist/index.js.map +1 -0
  243. package/node_modules/@specforge/session-types/dist/runtime/aggregator-input.d.ts +46 -0
  244. package/node_modules/@specforge/session-types/dist/runtime/aggregator-input.d.ts.map +1 -0
  245. package/node_modules/@specforge/session-types/dist/runtime/aggregator-input.js +41 -0
  246. package/node_modules/@specforge/session-types/dist/runtime/aggregator-input.js.map +1 -0
  247. package/node_modules/@specforge/session-types/dist/runtime/discovery.d.ts +9 -0
  248. package/node_modules/@specforge/session-types/dist/runtime/discovery.d.ts.map +1 -0
  249. package/node_modules/@specforge/session-types/dist/runtime/discovery.js +2 -0
  250. package/node_modules/@specforge/session-types/dist/runtime/discovery.js.map +1 -0
  251. package/node_modules/@specforge/session-types/dist/runtime/enums.d.ts +51 -0
  252. package/node_modules/@specforge/session-types/dist/runtime/enums.d.ts.map +1 -0
  253. package/node_modules/@specforge/session-types/dist/runtime/enums.js +161 -0
  254. package/node_modules/@specforge/session-types/dist/runtime/enums.js.map +1 -0
  255. package/node_modules/@specforge/session-types/dist/runtime/implementation-config.d.ts +177 -0
  256. package/node_modules/@specforge/session-types/dist/runtime/implementation-config.d.ts.map +1 -0
  257. package/node_modules/@specforge/session-types/dist/runtime/implementation-config.js +96 -0
  258. package/node_modules/@specforge/session-types/dist/runtime/implementation-config.js.map +1 -0
  259. package/node_modules/@specforge/session-types/dist/runtime/implementation-record-event.d.ts +8 -0
  260. package/node_modules/@specforge/session-types/dist/runtime/implementation-record-event.d.ts.map +1 -0
  261. package/node_modules/@specforge/session-types/dist/runtime/implementation-record-event.js +2 -0
  262. package/node_modules/@specforge/session-types/dist/runtime/implementation-record-event.js.map +1 -0
  263. package/node_modules/@specforge/session-types/dist/runtime/implementation-session-aggregate.d.ts +489 -0
  264. package/node_modules/@specforge/session-types/dist/runtime/implementation-session-aggregate.d.ts.map +1 -0
  265. package/node_modules/@specforge/session-types/dist/runtime/implementation-session-aggregate.js +152 -0
  266. package/node_modules/@specforge/session-types/dist/runtime/implementation-session-aggregate.js.map +1 -0
  267. package/node_modules/@specforge/session-types/dist/runtime/implementation-session.d.ts +8 -0
  268. package/node_modules/@specforge/session-types/dist/runtime/implementation-session.d.ts.map +1 -0
  269. package/node_modules/@specforge/session-types/dist/runtime/implementation-session.js +2 -0
  270. package/node_modules/@specforge/session-types/dist/runtime/implementation-session.js.map +1 -0
  271. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-contract.d.ts +319 -0
  272. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-contract.d.ts.map +1 -0
  273. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-contract.js +2 -0
  274. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-contract.js.map +1 -0
  275. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-planning-guidance.d.ts +128 -0
  276. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-planning-guidance.d.ts.map +1 -0
  277. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-planning-guidance.js +30 -0
  278. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-planning-guidance.js.map +1 -0
  279. package/node_modules/@specforge/session-types/dist/runtime/parsed-git-evidence.d.ts +4 -0
  280. package/node_modules/@specforge/session-types/dist/runtime/parsed-git-evidence.d.ts.map +1 -0
  281. package/node_modules/@specforge/session-types/dist/runtime/parsed-git-evidence.js +2 -0
  282. package/node_modules/@specforge/session-types/dist/runtime/parsed-git-evidence.js.map +1 -0
  283. package/node_modules/@specforge/session-types/dist/runtime/planning-config.d.ts +82 -0
  284. package/node_modules/@specforge/session-types/dist/runtime/planning-config.d.ts.map +1 -0
  285. package/node_modules/@specforge/session-types/dist/runtime/planning-config.js +61 -0
  286. package/node_modules/@specforge/session-types/dist/runtime/planning-config.js.map +1 -0
  287. package/node_modules/@specforge/session-types/dist/runtime/planning-entity-score-datapoint.d.ts +34 -0
  288. package/node_modules/@specforge/session-types/dist/runtime/planning-entity-score-datapoint.d.ts.map +1 -0
  289. package/node_modules/@specforge/session-types/dist/runtime/planning-entity-score-datapoint.js +14 -0
  290. package/node_modules/@specforge/session-types/dist/runtime/planning-entity-score-datapoint.js.map +1 -0
  291. package/node_modules/@specforge/session-types/dist/runtime/planning-operations.d.ts +6 -0
  292. package/node_modules/@specforge/session-types/dist/runtime/planning-operations.d.ts.map +1 -0
  293. package/node_modules/@specforge/session-types/dist/runtime/planning-operations.js +65 -0
  294. package/node_modules/@specforge/session-types/dist/runtime/planning-operations.js.map +1 -0
  295. package/node_modules/@specforge/session-types/dist/runtime/planning-phase-transition.d.ts +34 -0
  296. package/node_modules/@specforge/session-types/dist/runtime/planning-phase-transition.d.ts.map +1 -0
  297. package/node_modules/@specforge/session-types/dist/runtime/planning-phase-transition.js +22 -0
  298. package/node_modules/@specforge/session-types/dist/runtime/planning-phase-transition.js.map +1 -0
  299. package/node_modules/@specforge/session-types/dist/runtime/planning-session-action.d.ts +73 -0
  300. package/node_modules/@specforge/session-types/dist/runtime/planning-session-action.d.ts.map +1 -0
  301. package/node_modules/@specforge/session-types/dist/runtime/planning-session-action.js +61 -0
  302. package/node_modules/@specforge/session-types/dist/runtime/planning-session-action.js.map +1 -0
  303. package/node_modules/@specforge/session-types/dist/runtime/planning-session-aggregate.d.ts +249 -0
  304. package/node_modules/@specforge/session-types/dist/runtime/planning-session-aggregate.d.ts.map +1 -0
  305. package/node_modules/@specforge/session-types/dist/runtime/planning-session-aggregate.js +96 -0
  306. package/node_modules/@specforge/session-types/dist/runtime/planning-session-aggregate.js.map +1 -0
  307. package/node_modules/@specforge/session-types/dist/runtime/planning-session.d.ts +574 -0
  308. package/node_modules/@specforge/session-types/dist/runtime/planning-session.d.ts.map +1 -0
  309. package/node_modules/@specforge/session-types/dist/runtime/planning-session.js +40 -0
  310. package/node_modules/@specforge/session-types/dist/runtime/planning-session.js.map +1 -0
  311. package/node_modules/@specforge/session-types/dist/runtime/process-guidance.d.ts +221 -0
  312. package/node_modules/@specforge/session-types/dist/runtime/process-guidance.d.ts.map +1 -0
  313. package/node_modules/@specforge/session-types/dist/runtime/process-guidance.js +41 -0
  314. package/node_modules/@specforge/session-types/dist/runtime/process-guidance.js.map +1 -0
  315. package/node_modules/@specforge/session-types/dist/runtime/work-session-acceptance-check.d.ts +4 -0
  316. package/node_modules/@specforge/session-types/dist/runtime/work-session-acceptance-check.d.ts.map +1 -0
  317. package/node_modules/@specforge/session-types/dist/runtime/work-session-acceptance-check.js +2 -0
  318. package/node_modules/@specforge/session-types/dist/runtime/work-session-acceptance-check.js.map +1 -0
  319. package/node_modules/@specforge/session-types/dist/runtime/work-session-action.d.ts +9 -0
  320. package/node_modules/@specforge/session-types/dist/runtime/work-session-action.d.ts.map +1 -0
  321. package/node_modules/@specforge/session-types/dist/runtime/work-session-action.js +2 -0
  322. package/node_modules/@specforge/session-types/dist/runtime/work-session-action.js.map +1 -0
  323. package/node_modules/@specforge/session-types/dist/runtime/work-session-file-change.d.ts +4 -0
  324. package/node_modules/@specforge/session-types/dist/runtime/work-session-file-change.d.ts.map +1 -0
  325. package/node_modules/@specforge/session-types/dist/runtime/work-session-file-change.js +2 -0
  326. package/node_modules/@specforge/session-types/dist/runtime/work-session-file-change.js.map +1 -0
  327. package/node_modules/@specforge/session-types/dist/runtime/work-session-impl-step-completion.d.ts +4 -0
  328. package/node_modules/@specforge/session-types/dist/runtime/work-session-impl-step-completion.d.ts.map +1 -0
  329. package/node_modules/@specforge/session-types/dist/runtime/work-session-impl-step-completion.js +2 -0
  330. package/node_modules/@specforge/session-types/dist/runtime/work-session-impl-step-completion.js.map +1 -0
  331. package/node_modules/@specforge/session-types/dist/runtime/work-session-resolution.d.ts +4 -0
  332. package/node_modules/@specforge/session-types/dist/runtime/work-session-resolution.d.ts.map +1 -0
  333. package/node_modules/@specforge/session-types/dist/runtime/work-session-resolution.js +2 -0
  334. package/node_modules/@specforge/session-types/dist/runtime/work-session-resolution.js.map +1 -0
  335. package/node_modules/@specforge/session-types/dist/runtime/work-session-test-result.d.ts +4 -0
  336. package/node_modules/@specforge/session-types/dist/runtime/work-session-test-result.d.ts.map +1 -0
  337. package/node_modules/@specforge/session-types/dist/runtime/work-session-test-result.js +2 -0
  338. package/node_modules/@specforge/session-types/dist/runtime/work-session-test-result.js.map +1 -0
  339. package/node_modules/@specforge/session-types/dist/runtime/work-session.d.ts +4 -0
  340. package/node_modules/@specforge/session-types/dist/runtime/work-session.d.ts.map +1 -0
  341. package/node_modules/@specforge/session-types/dist/runtime/work-session.js +2 -0
  342. package/node_modules/@specforge/session-types/dist/runtime/work-session.js.map +1 -0
  343. package/node_modules/@specforge/session-types/dist/runtime/working-context.d.ts +43 -0
  344. package/node_modules/@specforge/session-types/dist/runtime/working-context.d.ts.map +1 -0
  345. package/node_modules/@specforge/session-types/dist/runtime/working-context.js +2 -0
  346. package/node_modules/@specforge/session-types/dist/runtime/working-context.js.map +1 -0
  347. package/node_modules/@specforge/session-types/dist/runtime/write-plan.d.ts +146 -0
  348. package/node_modules/@specforge/session-types/dist/runtime/write-plan.d.ts.map +1 -0
  349. package/node_modules/@specforge/session-types/dist/runtime/write-plan.js +2 -0
  350. package/node_modules/@specforge/session-types/dist/runtime/write-plan.js.map +1 -0
  351. package/node_modules/@specforge/session-types/dist/schema/discovery.d.ts +76 -0
  352. package/node_modules/@specforge/session-types/dist/schema/discovery.d.ts.map +1 -0
  353. package/node_modules/@specforge/session-types/dist/schema/discovery.js +42 -0
  354. package/node_modules/@specforge/session-types/dist/schema/discovery.js.map +1 -0
  355. package/node_modules/@specforge/session-types/dist/schema/implementation-record-event.d.ts +48 -0
  356. package/node_modules/@specforge/session-types/dist/schema/implementation-record-event.d.ts.map +1 -0
  357. package/node_modules/@specforge/session-types/dist/schema/implementation-record-event.js +28 -0
  358. package/node_modules/@specforge/session-types/dist/schema/implementation-record-event.js.map +1 -0
  359. package/node_modules/@specforge/session-types/dist/schema/implementation-session.d.ts +37 -0
  360. package/node_modules/@specforge/session-types/dist/schema/implementation-session.d.ts.map +1 -0
  361. package/node_modules/@specforge/session-types/dist/schema/implementation-session.js +24 -0
  362. package/node_modules/@specforge/session-types/dist/schema/implementation-session.js.map +1 -0
  363. package/node_modules/@specforge/session-types/dist/schema/index.d.ts +12 -0
  364. package/node_modules/@specforge/session-types/dist/schema/index.d.ts.map +1 -0
  365. package/node_modules/@specforge/session-types/dist/schema/index.js +12 -0
  366. package/node_modules/@specforge/session-types/dist/schema/index.js.map +1 -0
  367. package/node_modules/@specforge/session-types/dist/schema/parsed-git-evidence.d.ts +74 -0
  368. package/node_modules/@specforge/session-types/dist/schema/parsed-git-evidence.d.ts.map +1 -0
  369. package/node_modules/@specforge/session-types/dist/schema/parsed-git-evidence.js +31 -0
  370. package/node_modules/@specforge/session-types/dist/schema/parsed-git-evidence.js.map +1 -0
  371. package/node_modules/@specforge/session-types/dist/schema/work-session-acceptance-check.d.ts +27 -0
  372. package/node_modules/@specforge/session-types/dist/schema/work-session-acceptance-check.d.ts.map +1 -0
  373. package/node_modules/@specforge/session-types/dist/schema/work-session-acceptance-check.js +11 -0
  374. package/node_modules/@specforge/session-types/dist/schema/work-session-acceptance-check.js.map +1 -0
  375. package/node_modules/@specforge/session-types/dist/schema/work-session-action.d.ts +94 -0
  376. package/node_modules/@specforge/session-types/dist/schema/work-session-action.d.ts.map +1 -0
  377. package/node_modules/@specforge/session-types/dist/schema/work-session-action.js +76 -0
  378. package/node_modules/@specforge/session-types/dist/schema/work-session-action.js.map +1 -0
  379. package/node_modules/@specforge/session-types/dist/schema/work-session-file-change.d.ts +42 -0
  380. package/node_modules/@specforge/session-types/dist/schema/work-session-file-change.d.ts.map +1 -0
  381. package/node_modules/@specforge/session-types/dist/schema/work-session-file-change.js +25 -0
  382. package/node_modules/@specforge/session-types/dist/schema/work-session-file-change.js.map +1 -0
  383. package/node_modules/@specforge/session-types/dist/schema/work-session-impl-step-completion.d.ts +27 -0
  384. package/node_modules/@specforge/session-types/dist/schema/work-session-impl-step-completion.d.ts.map +1 -0
  385. package/node_modules/@specforge/session-types/dist/schema/work-session-impl-step-completion.js +11 -0
  386. package/node_modules/@specforge/session-types/dist/schema/work-session-impl-step-completion.js.map +1 -0
  387. package/node_modules/@specforge/session-types/dist/schema/work-session-resolution.d.ts +42 -0
  388. package/node_modules/@specforge/session-types/dist/schema/work-session-resolution.d.ts.map +1 -0
  389. package/node_modules/@specforge/session-types/dist/schema/work-session-resolution.js +28 -0
  390. package/node_modules/@specforge/session-types/dist/schema/work-session-resolution.js.map +1 -0
  391. package/node_modules/@specforge/session-types/dist/schema/work-session-test-result.d.ts +72 -0
  392. package/node_modules/@specforge/session-types/dist/schema/work-session-test-result.d.ts.map +1 -0
  393. package/node_modules/@specforge/session-types/dist/schema/work-session-test-result.js +43 -0
  394. package/node_modules/@specforge/session-types/dist/schema/work-session-test-result.js.map +1 -0
  395. package/node_modules/@specforge/session-types/dist/schema/work-session.d.ts +203 -0
  396. package/node_modules/@specforge/session-types/dist/schema/work-session.d.ts.map +1 -0
  397. package/node_modules/@specforge/session-types/dist/schema/work-session.js +86 -0
  398. package/node_modules/@specforge/session-types/dist/schema/work-session.js.map +1 -0
  399. package/node_modules/@specforge/session-types/dist/stores/config-store-interface.d.ts +17 -0
  400. package/node_modules/@specforge/session-types/dist/stores/config-store-interface.d.ts.map +1 -0
  401. package/node_modules/@specforge/session-types/dist/stores/config-store-interface.js +2 -0
  402. package/node_modules/@specforge/session-types/dist/stores/config-store-interface.js.map +1 -0
  403. package/node_modules/@specforge/session-types/dist/stores/discovery-store.d.ts +31 -0
  404. package/node_modules/@specforge/session-types/dist/stores/discovery-store.d.ts.map +1 -0
  405. package/node_modules/@specforge/session-types/dist/stores/discovery-store.js +2 -0
  406. package/node_modules/@specforge/session-types/dist/stores/discovery-store.js.map +1 -0
  407. package/node_modules/@specforge/session-types/dist/stores/implementation-record-event-store.d.ts +19 -0
  408. package/node_modules/@specforge/session-types/dist/stores/implementation-record-event-store.d.ts.map +1 -0
  409. package/node_modules/@specforge/session-types/dist/stores/implementation-record-event-store.js +2 -0
  410. package/node_modules/@specforge/session-types/dist/stores/implementation-record-event-store.js.map +1 -0
  411. package/node_modules/@specforge/session-types/dist/stores/implementation-session-aggregate-store.d.ts +16 -0
  412. package/node_modules/@specforge/session-types/dist/stores/implementation-session-aggregate-store.d.ts.map +1 -0
  413. package/node_modules/@specforge/session-types/dist/stores/implementation-session-aggregate-store.js +2 -0
  414. package/node_modules/@specforge/session-types/dist/stores/implementation-session-aggregate-store.js.map +1 -0
  415. package/node_modules/@specforge/session-types/dist/stores/implementation-session-store.d.ts +28 -0
  416. package/node_modules/@specforge/session-types/dist/stores/implementation-session-store.d.ts.map +1 -0
  417. package/node_modules/@specforge/session-types/dist/stores/implementation-session-store.js +2 -0
  418. package/node_modules/@specforge/session-types/dist/stores/implementation-session-store.js.map +1 -0
  419. package/node_modules/@specforge/session-types/dist/stores/planning-entity-score-datapoint-store.d.ts +12 -0
  420. package/node_modules/@specforge/session-types/dist/stores/planning-entity-score-datapoint-store.d.ts.map +1 -0
  421. package/node_modules/@specforge/session-types/dist/stores/planning-entity-score-datapoint-store.js +2 -0
  422. package/node_modules/@specforge/session-types/dist/stores/planning-entity-score-datapoint-store.js.map +1 -0
  423. package/node_modules/@specforge/session-types/dist/stores/planning-phase-transition-store.d.ts +10 -0
  424. package/node_modules/@specforge/session-types/dist/stores/planning-phase-transition-store.d.ts.map +1 -0
  425. package/node_modules/@specforge/session-types/dist/stores/planning-phase-transition-store.js +2 -0
  426. package/node_modules/@specforge/session-types/dist/stores/planning-phase-transition-store.js.map +1 -0
  427. package/node_modules/@specforge/session-types/dist/stores/planning-session-action-store.d.ts +13 -0
  428. package/node_modules/@specforge/session-types/dist/stores/planning-session-action-store.d.ts.map +1 -0
  429. package/node_modules/@specforge/session-types/dist/stores/planning-session-action-store.js +2 -0
  430. package/node_modules/@specforge/session-types/dist/stores/planning-session-action-store.js.map +1 -0
  431. package/node_modules/@specforge/session-types/dist/stores/planning-session-aggregate-store.d.ts +10 -0
  432. package/node_modules/@specforge/session-types/dist/stores/planning-session-aggregate-store.d.ts.map +1 -0
  433. package/node_modules/@specforge/session-types/dist/stores/planning-session-aggregate-store.js +2 -0
  434. package/node_modules/@specforge/session-types/dist/stores/planning-session-aggregate-store.js.map +1 -0
  435. package/node_modules/@specforge/session-types/dist/stores/planning-session-store.d.ts +20 -0
  436. package/node_modules/@specforge/session-types/dist/stores/planning-session-store.d.ts.map +1 -0
  437. package/node_modules/@specforge/session-types/dist/stores/planning-session-store.js +2 -0
  438. package/node_modules/@specforge/session-types/dist/stores/planning-session-store.js.map +1 -0
  439. package/node_modules/@specforge/session-types/dist/stores/work-session-acceptance-check-store.d.ts +15 -0
  440. package/node_modules/@specforge/session-types/dist/stores/work-session-acceptance-check-store.d.ts.map +1 -0
  441. package/node_modules/@specforge/session-types/dist/stores/work-session-acceptance-check-store.js +2 -0
  442. package/node_modules/@specforge/session-types/dist/stores/work-session-acceptance-check-store.js.map +1 -0
  443. package/node_modules/@specforge/session-types/dist/stores/work-session-action-store.d.ts +29 -0
  444. package/node_modules/@specforge/session-types/dist/stores/work-session-action-store.d.ts.map +1 -0
  445. package/node_modules/@specforge/session-types/dist/stores/work-session-action-store.js +2 -0
  446. package/node_modules/@specforge/session-types/dist/stores/work-session-action-store.js.map +1 -0
  447. package/node_modules/@specforge/session-types/dist/stores/work-session-file-change-store.d.ts +9 -0
  448. package/node_modules/@specforge/session-types/dist/stores/work-session-file-change-store.d.ts.map +1 -0
  449. package/node_modules/@specforge/session-types/dist/stores/work-session-file-change-store.js +2 -0
  450. package/node_modules/@specforge/session-types/dist/stores/work-session-file-change-store.js.map +1 -0
  451. package/node_modules/@specforge/session-types/dist/stores/work-session-impl-step-completion-store.d.ts +9 -0
  452. package/node_modules/@specforge/session-types/dist/stores/work-session-impl-step-completion-store.d.ts.map +1 -0
  453. package/node_modules/@specforge/session-types/dist/stores/work-session-impl-step-completion-store.js +2 -0
  454. package/node_modules/@specforge/session-types/dist/stores/work-session-impl-step-completion-store.js.map +1 -0
  455. package/node_modules/@specforge/session-types/dist/stores/work-session-resolution-store.d.ts +10 -0
  456. package/node_modules/@specforge/session-types/dist/stores/work-session-resolution-store.d.ts.map +1 -0
  457. package/node_modules/@specforge/session-types/dist/stores/work-session-resolution-store.js +2 -0
  458. package/node_modules/@specforge/session-types/dist/stores/work-session-resolution-store.js.map +1 -0
  459. package/node_modules/@specforge/session-types/dist/stores/work-session-store.d.ts +23 -0
  460. package/node_modules/@specforge/session-types/dist/stores/work-session-store.d.ts.map +1 -0
  461. package/node_modules/@specforge/session-types/dist/stores/work-session-store.js +2 -0
  462. package/node_modules/@specforge/session-types/dist/stores/work-session-store.js.map +1 -0
  463. package/node_modules/@specforge/session-types/dist/stores/work-session-test-result-store.d.ts +8 -0
  464. package/node_modules/@specforge/session-types/dist/stores/work-session-test-result-store.d.ts.map +1 -0
  465. package/node_modules/@specforge/session-types/dist/stores/work-session-test-result-store.js +2 -0
  466. package/node_modules/@specforge/session-types/dist/stores/work-session-test-result-store.js.map +1 -0
  467. package/node_modules/@specforge/session-types/dist/stores/working-context-store.d.ts +27 -0
  468. package/node_modules/@specforge/session-types/dist/stores/working-context-store.d.ts.map +1 -0
  469. package/node_modules/@specforge/session-types/dist/stores/working-context-store.js +2 -0
  470. package/node_modules/@specforge/session-types/dist/stores/working-context-store.js.map +1 -0
  471. package/node_modules/@specforge/session-types/package.json +43 -0
  472. package/node_modules/@specforge/spec-types/README.md +28 -0
  473. package/node_modules/@specforge/spec-types/dist/index.d.ts +4 -0
  474. package/node_modules/@specforge/spec-types/dist/index.d.ts.map +1 -0
  475. package/node_modules/@specforge/spec-types/dist/index.js +6 -0
  476. package/node_modules/@specforge/spec-types/dist/index.js.map +1 -0
  477. package/node_modules/@specforge/spec-types/dist/json-schema/v1.1/openspec.schema.json +1129 -0
  478. package/node_modules/@specforge/spec-types/dist/openspec-schema.d.ts +4 -0
  479. package/node_modules/@specforge/spec-types/dist/openspec-schema.d.ts.map +1 -0
  480. package/node_modules/@specforge/spec-types/dist/openspec-schema.js +77 -0
  481. package/node_modules/@specforge/spec-types/dist/openspec-schema.js.map +1 -0
  482. package/node_modules/@specforge/spec-types/dist/runtime/auxiliary.d.ts +14 -0
  483. package/node_modules/@specforge/spec-types/dist/runtime/auxiliary.d.ts.map +1 -0
  484. package/node_modules/@specforge/spec-types/dist/runtime/auxiliary.js +2 -0
  485. package/node_modules/@specforge/spec-types/dist/runtime/auxiliary.js.map +1 -0
  486. package/node_modules/@specforge/spec-types/dist/runtime/blueprint.d.ts +7 -0
  487. package/node_modules/@specforge/spec-types/dist/runtime/blueprint.d.ts.map +1 -0
  488. package/node_modules/@specforge/spec-types/dist/runtime/blueprint.js +2 -0
  489. package/node_modules/@specforge/spec-types/dist/runtime/blueprint.js.map +1 -0
  490. package/node_modules/@specforge/spec-types/dist/runtime/epic.d.ts +2 -0
  491. package/node_modules/@specforge/spec-types/dist/runtime/epic.d.ts.map +1 -0
  492. package/node_modules/@specforge/spec-types/dist/runtime/epic.js +2 -0
  493. package/node_modules/@specforge/spec-types/dist/runtime/epic.js.map +1 -0
  494. package/node_modules/@specforge/spec-types/dist/runtime/index.d.ts +7 -0
  495. package/node_modules/@specforge/spec-types/dist/runtime/index.d.ts.map +1 -0
  496. package/node_modules/@specforge/spec-types/dist/runtime/index.js +7 -0
  497. package/node_modules/@specforge/spec-types/dist/runtime/index.js.map +1 -0
  498. package/node_modules/@specforge/spec-types/dist/runtime/planning/api-contract.d.ts +2 -0
  499. package/node_modules/@specforge/spec-types/dist/runtime/planning/api-contract.d.ts.map +1 -0
  500. package/node_modules/@specforge/spec-types/dist/runtime/planning/api-contract.js +2 -0
  501. package/node_modules/@specforge/spec-types/dist/runtime/planning/api-contract.js.map +1 -0
  502. package/node_modules/@specforge/spec-types/dist/runtime/planning/goal.d.ts +2 -0
  503. package/node_modules/@specforge/spec-types/dist/runtime/planning/goal.d.ts.map +1 -0
  504. package/node_modules/@specforge/spec-types/dist/runtime/planning/goal.js +2 -0
  505. package/node_modules/@specforge/spec-types/dist/runtime/planning/goal.js.map +1 -0
  506. package/node_modules/@specforge/spec-types/dist/runtime/planning/guardrail.d.ts +2 -0
  507. package/node_modules/@specforge/spec-types/dist/runtime/planning/guardrail.d.ts.map +1 -0
  508. package/node_modules/@specforge/spec-types/dist/runtime/planning/guardrail.js +2 -0
  509. package/node_modules/@specforge/spec-types/dist/runtime/planning/guardrail.js.map +1 -0
  510. package/node_modules/@specforge/spec-types/dist/runtime/planning/index.d.ts +10 -0
  511. package/node_modules/@specforge/spec-types/dist/runtime/planning/index.d.ts.map +1 -0
  512. package/node_modules/@specforge/spec-types/dist/runtime/planning/index.js +10 -0
  513. package/node_modules/@specforge/spec-types/dist/runtime/planning/index.js.map +1 -0
  514. package/node_modules/@specforge/spec-types/dist/runtime/planning/nfr.d.ts +2 -0
  515. package/node_modules/@specforge/spec-types/dist/runtime/planning/nfr.d.ts.map +1 -0
  516. package/node_modules/@specforge/spec-types/dist/runtime/planning/nfr.js +2 -0
  517. package/node_modules/@specforge/spec-types/dist/runtime/planning/nfr.js.map +1 -0
  518. package/node_modules/@specforge/spec-types/dist/runtime/planning/requirement.d.ts +2 -0
  519. package/node_modules/@specforge/spec-types/dist/runtime/planning/requirement.d.ts.map +1 -0
  520. package/node_modules/@specforge/spec-types/dist/runtime/planning/requirement.js +2 -0
  521. package/node_modules/@specforge/spec-types/dist/runtime/planning/requirement.js.map +1 -0
  522. package/node_modules/@specforge/spec-types/dist/runtime/planning/scope.d.ts +2 -0
  523. package/node_modules/@specforge/spec-types/dist/runtime/planning/scope.d.ts.map +1 -0
  524. package/node_modules/@specforge/spec-types/dist/runtime/planning/scope.js +2 -0
  525. package/node_modules/@specforge/spec-types/dist/runtime/planning/scope.js.map +1 -0
  526. package/node_modules/@specforge/spec-types/dist/runtime/planning/shared-pattern.d.ts +2 -0
  527. package/node_modules/@specforge/spec-types/dist/runtime/planning/shared-pattern.d.ts.map +1 -0
  528. package/node_modules/@specforge/spec-types/dist/runtime/planning/shared-pattern.js +2 -0
  529. package/node_modules/@specforge/spec-types/dist/runtime/planning/shared-pattern.js.map +1 -0
  530. package/node_modules/@specforge/spec-types/dist/runtime/planning/structure-item.d.ts +2 -0
  531. package/node_modules/@specforge/spec-types/dist/runtime/planning/structure-item.d.ts.map +1 -0
  532. package/node_modules/@specforge/spec-types/dist/runtime/planning/structure-item.js +2 -0
  533. package/node_modules/@specforge/spec-types/dist/runtime/planning/structure-item.js.map +1 -0
  534. package/node_modules/@specforge/spec-types/dist/runtime/planning/tech-stack.d.ts +2 -0
  535. package/node_modules/@specforge/spec-types/dist/runtime/planning/tech-stack.d.ts.map +1 -0
  536. package/node_modules/@specforge/spec-types/dist/runtime/planning/tech-stack.js +2 -0
  537. package/node_modules/@specforge/spec-types/dist/runtime/planning/tech-stack.js.map +1 -0
  538. package/node_modules/@specforge/spec-types/dist/runtime/specification.d.ts +2 -0
  539. package/node_modules/@specforge/spec-types/dist/runtime/specification.d.ts.map +1 -0
  540. package/node_modules/@specforge/spec-types/dist/runtime/specification.js +2 -0
  541. package/node_modules/@specforge/spec-types/dist/runtime/specification.js.map +1 -0
  542. package/node_modules/@specforge/spec-types/dist/runtime/ticket.d.ts +2 -0
  543. package/node_modules/@specforge/spec-types/dist/runtime/ticket.d.ts.map +1 -0
  544. package/node_modules/@specforge/spec-types/dist/runtime/ticket.js +2 -0
  545. package/node_modules/@specforge/spec-types/dist/runtime/ticket.js.map +1 -0
  546. package/node_modules/@specforge/spec-types/dist/schema/auxiliary.d.ts +266 -0
  547. package/node_modules/@specforge/spec-types/dist/schema/auxiliary.d.ts.map +1 -0
  548. package/node_modules/@specforge/spec-types/dist/schema/auxiliary.js +143 -0
  549. package/node_modules/@specforge/spec-types/dist/schema/auxiliary.js.map +1 -0
  550. package/node_modules/@specforge/spec-types/dist/schema/blueprint.d.ts +47 -0
  551. package/node_modules/@specforge/spec-types/dist/schema/blueprint.d.ts.map +1 -0
  552. package/node_modules/@specforge/spec-types/dist/schema/blueprint.js +33 -0
  553. package/node_modules/@specforge/spec-types/dist/schema/blueprint.js.map +1 -0
  554. package/node_modules/@specforge/spec-types/dist/schema/entity-field-schemas.d.ts +33 -0
  555. package/node_modules/@specforge/spec-types/dist/schema/entity-field-schemas.d.ts.map +1 -0
  556. package/node_modules/@specforge/spec-types/dist/schema/entity-field-schemas.js +181 -0
  557. package/node_modules/@specforge/spec-types/dist/schema/entity-field-schemas.js.map +1 -0
  558. package/node_modules/@specforge/spec-types/dist/schema/epic.d.ts +955 -0
  559. package/node_modules/@specforge/spec-types/dist/schema/epic.d.ts.map +1 -0
  560. package/node_modules/@specforge/spec-types/dist/schema/epic.js +33 -0
  561. package/node_modules/@specforge/spec-types/dist/schema/epic.js.map +1 -0
  562. package/node_modules/@specforge/spec-types/dist/schema/index.d.ts +12 -0
  563. package/node_modules/@specforge/spec-types/dist/schema/index.d.ts.map +1 -0
  564. package/node_modules/@specforge/spec-types/dist/schema/index.js +25 -0
  565. package/node_modules/@specforge/spec-types/dist/schema/index.js.map +1 -0
  566. package/node_modules/@specforge/spec-types/dist/schema/node-verb-steps.d.ts +174 -0
  567. package/node_modules/@specforge/spec-types/dist/schema/node-verb-steps.d.ts.map +1 -0
  568. package/node_modules/@specforge/spec-types/dist/schema/node-verb-steps.js +317 -0
  569. package/node_modules/@specforge/spec-types/dist/schema/node-verb-steps.js.map +1 -0
  570. package/node_modules/@specforge/spec-types/dist/schema/patterns.d.ts +274 -0
  571. package/node_modules/@specforge/spec-types/dist/schema/patterns.d.ts.map +1 -0
  572. package/node_modules/@specforge/spec-types/dist/schema/patterns.js +106 -0
  573. package/node_modules/@specforge/spec-types/dist/schema/patterns.js.map +1 -0
  574. package/node_modules/@specforge/spec-types/dist/schema/planning/api-contract.d.ts +44 -0
  575. package/node_modules/@specforge/spec-types/dist/schema/planning/api-contract.d.ts.map +1 -0
  576. package/node_modules/@specforge/spec-types/dist/schema/planning/api-contract.js +13 -0
  577. package/node_modules/@specforge/spec-types/dist/schema/planning/api-contract.js.map +1 -0
  578. package/node_modules/@specforge/spec-types/dist/schema/planning/epic-category.d.ts +21 -0
  579. package/node_modules/@specforge/spec-types/dist/schema/planning/epic-category.d.ts.map +1 -0
  580. package/node_modules/@specforge/spec-types/dist/schema/planning/epic-category.js +14 -0
  581. package/node_modules/@specforge/spec-types/dist/schema/planning/epic-category.js.map +1 -0
  582. package/node_modules/@specforge/spec-types/dist/schema/planning/goal.d.ts +27 -0
  583. package/node_modules/@specforge/spec-types/dist/schema/planning/goal.d.ts.map +1 -0
  584. package/node_modules/@specforge/spec-types/dist/schema/planning/goal.js +13 -0
  585. package/node_modules/@specforge/spec-types/dist/schema/planning/goal.js.map +1 -0
  586. package/node_modules/@specforge/spec-types/dist/schema/planning/guardrail.d.ts +29 -0
  587. package/node_modules/@specforge/spec-types/dist/schema/planning/guardrail.d.ts.map +1 -0
  588. package/node_modules/@specforge/spec-types/dist/schema/planning/guardrail.js +14 -0
  589. package/node_modules/@specforge/spec-types/dist/schema/planning/guardrail.js.map +1 -0
  590. package/node_modules/@specforge/spec-types/dist/schema/planning/index.d.ts +12 -0
  591. package/node_modules/@specforge/spec-types/dist/schema/planning/index.d.ts.map +1 -0
  592. package/node_modules/@specforge/spec-types/dist/schema/planning/index.js +12 -0
  593. package/node_modules/@specforge/spec-types/dist/schema/planning/index.js.map +1 -0
  594. package/node_modules/@specforge/spec-types/dist/schema/planning/nfr.d.ts +27 -0
  595. package/node_modules/@specforge/spec-types/dist/schema/planning/nfr.d.ts.map +1 -0
  596. package/node_modules/@specforge/spec-types/dist/schema/planning/nfr.js +15 -0
  597. package/node_modules/@specforge/spec-types/dist/schema/planning/nfr.js.map +1 -0
  598. package/node_modules/@specforge/spec-types/dist/schema/planning/planning-type.d.ts +17 -0
  599. package/node_modules/@specforge/spec-types/dist/schema/planning/planning-type.d.ts.map +1 -0
  600. package/node_modules/@specforge/spec-types/dist/schema/planning/planning-type.js +16 -0
  601. package/node_modules/@specforge/spec-types/dist/schema/planning/planning-type.js.map +1 -0
  602. package/node_modules/@specforge/spec-types/dist/schema/planning/requirement.d.ts +63 -0
  603. package/node_modules/@specforge/spec-types/dist/schema/planning/requirement.d.ts.map +1 -0
  604. package/node_modules/@specforge/spec-types/dist/schema/planning/requirement.js +16 -0
  605. package/node_modules/@specforge/spec-types/dist/schema/planning/requirement.js.map +1 -0
  606. package/node_modules/@specforge/spec-types/dist/schema/planning/scope.d.ts +19 -0
  607. package/node_modules/@specforge/spec-types/dist/schema/planning/scope.d.ts.map +1 -0
  608. package/node_modules/@specforge/spec-types/dist/schema/planning/scope.js +8 -0
  609. package/node_modules/@specforge/spec-types/dist/schema/planning/scope.js.map +1 -0
  610. package/node_modules/@specforge/spec-types/dist/schema/planning/shared-pattern.d.ts +51 -0
  611. package/node_modules/@specforge/spec-types/dist/schema/planning/shared-pattern.d.ts.map +1 -0
  612. package/node_modules/@specforge/spec-types/dist/schema/planning/shared-pattern.js +16 -0
  613. package/node_modules/@specforge/spec-types/dist/schema/planning/shared-pattern.js.map +1 -0
  614. package/node_modules/@specforge/spec-types/dist/schema/planning/structure-item.d.ts +19 -0
  615. package/node_modules/@specforge/spec-types/dist/schema/planning/structure-item.d.ts.map +1 -0
  616. package/node_modules/@specforge/spec-types/dist/schema/planning/structure-item.js +8 -0
  617. package/node_modules/@specforge/spec-types/dist/schema/planning/structure-item.js.map +1 -0
  618. package/node_modules/@specforge/spec-types/dist/schema/planning/tech-stack.d.ts +27 -0
  619. package/node_modules/@specforge/spec-types/dist/schema/planning/tech-stack.d.ts.map +1 -0
  620. package/node_modules/@specforge/spec-types/dist/schema/planning/tech-stack.js +14 -0
  621. package/node_modules/@specforge/spec-types/dist/schema/planning/tech-stack.js.map +1 -0
  622. package/node_modules/@specforge/spec-types/dist/schema/specification.d.ts +1839 -0
  623. package/node_modules/@specforge/spec-types/dist/schema/specification.d.ts.map +1 -0
  624. package/node_modules/@specforge/spec-types/dist/schema/specification.js +43 -0
  625. package/node_modules/@specforge/spec-types/dist/schema/specification.js.map +1 -0
  626. package/node_modules/@specforge/spec-types/dist/schema/step-link-coverage.d.ts +58 -0
  627. package/node_modules/@specforge/spec-types/dist/schema/step-link-coverage.d.ts.map +1 -0
  628. package/node_modules/@specforge/spec-types/dist/schema/step-link-coverage.js +73 -0
  629. package/node_modules/@specforge/spec-types/dist/schema/step-link-coverage.js.map +1 -0
  630. package/node_modules/@specforge/spec-types/dist/schema/step-link-ids.d.ts +71 -0
  631. package/node_modules/@specforge/spec-types/dist/schema/step-link-ids.d.ts.map +1 -0
  632. package/node_modules/@specforge/spec-types/dist/schema/step-link-ids.js +96 -0
  633. package/node_modules/@specforge/spec-types/dist/schema/step-link-ids.js.map +1 -0
  634. package/node_modules/@specforge/spec-types/dist/schema/ticket.d.ts +444 -0
  635. package/node_modules/@specforge/spec-types/dist/schema/ticket.d.ts.map +1 -0
  636. package/node_modules/@specforge/spec-types/dist/schema/ticket.js +49 -0
  637. package/node_modules/@specforge/spec-types/dist/schema/ticket.js.map +1 -0
  638. package/node_modules/@specforge/spec-types/package.json +41 -0
  639. package/package.json +40 -25
  640. package/src/cli/templates/agents/content/core/sfag-orchestrator.ts +135 -51
  641. package/src/cli/templates/agents/content/core/sfag-spec-creator.ts +124 -83
  642. package/src/cli/templates/agents/content/core/sfag-ticket-implementer.ts +247 -163
  643. package/src/cli/templates/agents/content/core/sfag-work-resolver.ts +211 -0
  644. package/src/cli/templates/agents/index.ts +2 -0
  645. package/src/cli/templates/content/sf-commit.ts +2 -2
  646. package/src/cli/templates/content/sf-reset.ts +45 -28
  647. package/src/cli/templates/skills/specforge-orchestrator.md +15 -10
  648. package/src/cli/templates/skills/specforge-worker.md +4 -3
@@ -0,0 +1,489 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * ImplementationSessionAggregate — the projector output (1 row / ImplementationSession),
4
+ * the WORK analogue of `PlanningSessionAggregate` (M20.1). Holds the full §2.6 projection
5
+ * set the M24 observatory reads PRE-COMPUTED so it NEVER scans the `WorkSession` /
6
+ * `WorkSessionAction` tables.
7
+ *
8
+ * Keyed by `implementationSessionId` (custom PK, like `PlanningSessionAggregate`'s
9
+ * `planningSessionId`). Read spec-scoped via the `bySpecificationId` GSI (sort
10
+ * `lastUpdatedAt`).
11
+ *
12
+ * Fed by the `WorkSessionAction` + `ImplementationRecordEvent` streams (M15). Pure
13
+ * compute fns live in `@specforge/operations/aggregators/implementation`; the atomic
14
+ * apply lives in `@specforge/resolvers` (projector Lambda only).
15
+ *
16
+ * `aborted` handling (M24.5b kill-switch): `aborted` is TERMINAL for both entities. An
17
+ * `aborted` WorkSession drops out of the active/concurrency set (the active set keys off
18
+ * `status==='active'`); an `aborted` (or `completed`) ImplementationSession FREEZES this
19
+ * aggregate (terminal `status` → no further roll-up).
20
+ *
21
+ * All projection fields carry `.default(...)` so a legacy/seed row still parses — folded
22
+ * incrementally by the projector. The cursors (`lastProcessedActionId` /
23
+ * `lastProcessedEventId`) are the ULID idempotency guards (replay-safe).
24
+ */
25
+ /** §2.6 #1 — denormalized work-session-derived counts (no-scan totals). */
26
+ declare const DenormalizedCountsSchema: z.ZodObject<{
27
+ workSessionsStarted: z.ZodNumber;
28
+ workSessionsCompleted: z.ZodNumber;
29
+ ticketsTouched: z.ZodNumber;
30
+ ticketsBlocked: z.ZodNumber;
31
+ discoveriesReported: z.ZodNumber;
32
+ actionsTotal: z.ZodNumber;
33
+ }, "strip", z.ZodTypeAny, {
34
+ actionsTotal: number;
35
+ workSessionsStarted: number;
36
+ workSessionsCompleted: number;
37
+ ticketsTouched: number;
38
+ ticketsBlocked: number;
39
+ discoveriesReported: number;
40
+ }, {
41
+ actionsTotal: number;
42
+ workSessionsStarted: number;
43
+ workSessionsCompleted: number;
44
+ ticketsTouched: number;
45
+ ticketsBlocked: number;
46
+ discoveriesReported: number;
47
+ }>;
48
+ /** §2.6 #2 — concurrency datapoint: the active-WorkSession count after a start/complete. */
49
+ declare const ConcurrencyPointSchema: z.ZodObject<{
50
+ at: z.ZodString;
51
+ activeCount: z.ZodNumber;
52
+ triggerActionId: z.ZodString;
53
+ }, "strip", z.ZodTypeAny, {
54
+ at: string;
55
+ triggerActionId: string;
56
+ activeCount: number;
57
+ }, {
58
+ at: string;
59
+ triggerActionId: string;
60
+ activeCount: number;
61
+ }>;
62
+ /** §2.6 #3 — coherence datapoint (trajectory). */
63
+ declare const CoherencePointSchema: z.ZodObject<{
64
+ at: z.ZodString;
65
+ score: z.ZodNumber;
66
+ workSessionId: z.ZodString;
67
+ triggerActionId: z.ZodString;
68
+ /**
69
+ * ML.1.5 — TRUE when this point's score is a VACUOUS 100 (nothing touched). The
70
+ * quality composite counts coherence toward `overall` ONLY over non-vacuous points, so
71
+ * a nothing-touched 100 no longer fabricates an earned score. Absent on legacy points →
72
+ * read as non-vacuous.
73
+ */
74
+ vacuous: z.ZodOptional<z.ZodBoolean>;
75
+ }, "strip", z.ZodTypeAny, {
76
+ at: string;
77
+ score: number;
78
+ triggerActionId: string;
79
+ workSessionId: string;
80
+ vacuous?: boolean | undefined;
81
+ }, {
82
+ at: string;
83
+ score: number;
84
+ triggerActionId: string;
85
+ workSessionId: string;
86
+ vacuous?: boolean | undefined;
87
+ }>;
88
+ /** §2.6 #4 — test pass-rate tally (per ImplementationSession). */
89
+ declare const TestPassRateSchema: z.ZodObject<{
90
+ passed: z.ZodNumber;
91
+ failed: z.ZodNumber;
92
+ skipped: z.ZodNumber;
93
+ total: z.ZodNumber;
94
+ }, "strip", z.ZodTypeAny, {
95
+ failed: number;
96
+ passed: number;
97
+ skipped: number;
98
+ total: number;
99
+ }, {
100
+ failed: number;
101
+ passed: number;
102
+ skipped: number;
103
+ total: number;
104
+ }>;
105
+ /** §2.6 #5 — first-pass yield rollup. `byTicket` is the per-ticket "passed on attempt 1?"
106
+ * memo that keeps the rollup incremental (first successful completion per ticket wins). */
107
+ declare const FirstPassYieldSchema: z.ZodObject<{
108
+ passedFirstAttempt: z.ZodNumber;
109
+ ticketsCompleted: z.ZodNumber;
110
+ byTicket: z.ZodRecord<z.ZodString, z.ZodBoolean>;
111
+ }, "strip", z.ZodTypeAny, {
112
+ passedFirstAttempt: number;
113
+ ticketsCompleted: number;
114
+ byTicket: Record<string, boolean>;
115
+ }, {
116
+ passedFirstAttempt: number;
117
+ ticketsCompleted: number;
118
+ byTicket: Record<string, boolean>;
119
+ }>;
120
+ /** §2.6 #7 — per-ticket quality-profile row. */
121
+ declare const TicketQualityProfileSchema: z.ZodObject<{
122
+ ticketId: z.ZodString;
123
+ steps: z.ZodNumber;
124
+ acChecks: z.ZodNumber;
125
+ files: z.ZodNumber;
126
+ tests: z.ZodNumber;
127
+ retries: z.ZodNumber;
128
+ coherence: z.ZodOptional<z.ZodNumber>;
129
+ progress: z.ZodOptional<z.ZodNumber>;
130
+ }, "strip", z.ZodTypeAny, {
131
+ tests: number;
132
+ files: number;
133
+ ticketId: string;
134
+ steps: number;
135
+ acChecks: number;
136
+ retries: number;
137
+ coherence?: number | undefined;
138
+ progress?: number | undefined;
139
+ }, {
140
+ tests: number;
141
+ files: number;
142
+ ticketId: string;
143
+ steps: number;
144
+ acChecks: number;
145
+ retries: number;
146
+ coherence?: number | undefined;
147
+ progress?: number | undefined;
148
+ }>;
149
+ /**
150
+ * §2.6 #8 — quality composite (sub-scores derived from the other projections).
151
+ *
152
+ * ML.1.5 — `overall` is now gated on an EVIDENCE BASIS: it counts ONLY `testPass` (real
153
+ * `testPassRate.total>0`) and NON-VACUOUS `coherence`; `discovery` is dropped from
154
+ * `overall` (a filed discovery is desirable, not a defect — the raw count survives as the
155
+ * `discovery` sub-score). With no evidence, `overall` is `undefined` (withheld — never a
156
+ * fabricated 100). `confidence`/`evidenceBasis` describe what backs `overall`. Stored
157
+ * opaque via `a.json()` (`resource.ts` `qualityComposite`) → the new fields need no
158
+ * schema migration.
159
+ */
160
+ declare const QualityCompositeSchema: z.ZodObject<{
161
+ coherence: z.ZodOptional<z.ZodNumber>;
162
+ testPass: z.ZodOptional<z.ZodNumber>;
163
+ discovery: z.ZodOptional<z.ZodNumber>;
164
+ estimation: z.ZodOptional<z.ZodNumber>;
165
+ overall: z.ZodOptional<z.ZodNumber>;
166
+ /**
167
+ * Which sub-scores carry real evidence for `overall` — a subset of
168
+ * `['tests','coherence']`. Empty ⇒ `overall` withheld.
169
+ */
170
+ evidenceBasis: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
171
+ /** `none` (no evidence) · `partial` (one basis) · `full` (both bases). */
172
+ confidence: z.ZodOptional<z.ZodEnum<["none", "partial", "full"]>>;
173
+ }, "strip", z.ZodTypeAny, {
174
+ discovery?: number | undefined;
175
+ coherence?: number | undefined;
176
+ testPass?: number | undefined;
177
+ estimation?: number | undefined;
178
+ overall?: number | undefined;
179
+ evidenceBasis?: string[] | undefined;
180
+ confidence?: "partial" | "none" | "full" | undefined;
181
+ }, {
182
+ discovery?: number | undefined;
183
+ coherence?: number | undefined;
184
+ testPass?: number | undefined;
185
+ estimation?: number | undefined;
186
+ overall?: number | undefined;
187
+ evidenceBasis?: string[] | undefined;
188
+ confidence?: "partial" | "none" | "full" | undefined;
189
+ }>;
190
+ export declare const ImplementationSessionAggregateSchema: z.ZodObject<{
191
+ implementationSessionId: z.ZodString;
192
+ specificationId: z.ZodString;
193
+ projectId: z.ZodString;
194
+ status: z.ZodDefault<z.ZodEnum<["active", "completed", "aborted"]>>;
195
+ denormalizedCounts: z.ZodDefault<z.ZodObject<{
196
+ workSessionsStarted: z.ZodNumber;
197
+ workSessionsCompleted: z.ZodNumber;
198
+ ticketsTouched: z.ZodNumber;
199
+ ticketsBlocked: z.ZodNumber;
200
+ discoveriesReported: z.ZodNumber;
201
+ actionsTotal: z.ZodNumber;
202
+ }, "strip", z.ZodTypeAny, {
203
+ actionsTotal: number;
204
+ workSessionsStarted: number;
205
+ workSessionsCompleted: number;
206
+ ticketsTouched: number;
207
+ ticketsBlocked: number;
208
+ discoveriesReported: number;
209
+ }, {
210
+ actionsTotal: number;
211
+ workSessionsStarted: number;
212
+ workSessionsCompleted: number;
213
+ ticketsTouched: number;
214
+ ticketsBlocked: number;
215
+ discoveriesReported: number;
216
+ }>>;
217
+ concurrencySeries: z.ZodDefault<z.ZodArray<z.ZodObject<{
218
+ at: z.ZodString;
219
+ activeCount: z.ZodNumber;
220
+ triggerActionId: z.ZodString;
221
+ }, "strip", z.ZodTypeAny, {
222
+ at: string;
223
+ triggerActionId: string;
224
+ activeCount: number;
225
+ }, {
226
+ at: string;
227
+ triggerActionId: string;
228
+ activeCount: number;
229
+ }>, "many">>;
230
+ concurrencyPeak: z.ZodDefault<z.ZodNumber>;
231
+ activeWorkSessionIds: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
232
+ coherenceSeries: z.ZodDefault<z.ZodArray<z.ZodObject<{
233
+ at: z.ZodString;
234
+ score: z.ZodNumber;
235
+ workSessionId: z.ZodString;
236
+ triggerActionId: z.ZodString;
237
+ /**
238
+ * ML.1.5 — TRUE when this point's score is a VACUOUS 100 (nothing touched). The
239
+ * quality composite counts coherence toward `overall` ONLY over non-vacuous points, so
240
+ * a nothing-touched 100 no longer fabricates an earned score. Absent on legacy points →
241
+ * read as non-vacuous.
242
+ */
243
+ vacuous: z.ZodOptional<z.ZodBoolean>;
244
+ }, "strip", z.ZodTypeAny, {
245
+ at: string;
246
+ score: number;
247
+ triggerActionId: string;
248
+ workSessionId: string;
249
+ vacuous?: boolean | undefined;
250
+ }, {
251
+ at: string;
252
+ score: number;
253
+ triggerActionId: string;
254
+ workSessionId: string;
255
+ vacuous?: boolean | undefined;
256
+ }>, "many">>;
257
+ coherenceHistogram: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodNumber>>;
258
+ testPassRate: z.ZodDefault<z.ZodObject<{
259
+ passed: z.ZodNumber;
260
+ failed: z.ZodNumber;
261
+ skipped: z.ZodNumber;
262
+ total: z.ZodNumber;
263
+ }, "strip", z.ZodTypeAny, {
264
+ failed: number;
265
+ passed: number;
266
+ skipped: number;
267
+ total: number;
268
+ }, {
269
+ failed: number;
270
+ passed: number;
271
+ skipped: number;
272
+ total: number;
273
+ }>>;
274
+ firstPassYield: z.ZodDefault<z.ZodObject<{
275
+ passedFirstAttempt: z.ZodNumber;
276
+ ticketsCompleted: z.ZodNumber;
277
+ byTicket: z.ZodRecord<z.ZodString, z.ZodBoolean>;
278
+ }, "strip", z.ZodTypeAny, {
279
+ passedFirstAttempt: number;
280
+ ticketsCompleted: number;
281
+ byTicket: Record<string, boolean>;
282
+ }, {
283
+ passedFirstAttempt: number;
284
+ ticketsCompleted: number;
285
+ byTicket: Record<string, boolean>;
286
+ }>>;
287
+ gateAttemptMatrix: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodNumber>>>;
288
+ opsMix: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodNumber>>;
289
+ dimensionMix: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodNumber>>;
290
+ ticketQualityProfiles: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
291
+ ticketId: z.ZodString;
292
+ steps: z.ZodNumber;
293
+ acChecks: z.ZodNumber;
294
+ files: z.ZodNumber;
295
+ tests: z.ZodNumber;
296
+ retries: z.ZodNumber;
297
+ coherence: z.ZodOptional<z.ZodNumber>;
298
+ progress: z.ZodOptional<z.ZodNumber>;
299
+ }, "strip", z.ZodTypeAny, {
300
+ tests: number;
301
+ files: number;
302
+ ticketId: string;
303
+ steps: number;
304
+ acChecks: number;
305
+ retries: number;
306
+ coherence?: number | undefined;
307
+ progress?: number | undefined;
308
+ }, {
309
+ tests: number;
310
+ files: number;
311
+ ticketId: string;
312
+ steps: number;
313
+ acChecks: number;
314
+ retries: number;
315
+ coherence?: number | undefined;
316
+ progress?: number | undefined;
317
+ }>>>;
318
+ qualityComposite: z.ZodDefault<z.ZodObject<{
319
+ coherence: z.ZodOptional<z.ZodNumber>;
320
+ testPass: z.ZodOptional<z.ZodNumber>;
321
+ discovery: z.ZodOptional<z.ZodNumber>;
322
+ estimation: z.ZodOptional<z.ZodNumber>;
323
+ overall: z.ZodOptional<z.ZodNumber>;
324
+ /**
325
+ * Which sub-scores carry real evidence for `overall` — a subset of
326
+ * `['tests','coherence']`. Empty ⇒ `overall` withheld.
327
+ */
328
+ evidenceBasis: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
329
+ /** `none` (no evidence) · `partial` (one basis) · `full` (both bases). */
330
+ confidence: z.ZodOptional<z.ZodEnum<["none", "partial", "full"]>>;
331
+ }, "strip", z.ZodTypeAny, {
332
+ discovery?: number | undefined;
333
+ coherence?: number | undefined;
334
+ testPass?: number | undefined;
335
+ estimation?: number | undefined;
336
+ overall?: number | undefined;
337
+ evidenceBasis?: string[] | undefined;
338
+ confidence?: "partial" | "none" | "full" | undefined;
339
+ }, {
340
+ discovery?: number | undefined;
341
+ coherence?: number | undefined;
342
+ testPass?: number | undefined;
343
+ estimation?: number | undefined;
344
+ overall?: number | undefined;
345
+ evidenceBasis?: string[] | undefined;
346
+ confidence?: "partial" | "none" | "full" | undefined;
347
+ }>>;
348
+ lastProcessedActionId: z.ZodOptional<z.ZodString>;
349
+ lastProcessedEventId: z.ZodOptional<z.ZodString>;
350
+ lastUpdatedAt: z.ZodString;
351
+ }, "strip", z.ZodTypeAny, {
352
+ status: "active" | "completed" | "aborted";
353
+ specificationId: string;
354
+ projectId: string;
355
+ opsMix: Record<string, number>;
356
+ lastUpdatedAt: string;
357
+ implementationSessionId: string;
358
+ denormalizedCounts: {
359
+ actionsTotal: number;
360
+ workSessionsStarted: number;
361
+ workSessionsCompleted: number;
362
+ ticketsTouched: number;
363
+ ticketsBlocked: number;
364
+ discoveriesReported: number;
365
+ };
366
+ concurrencySeries: {
367
+ at: string;
368
+ triggerActionId: string;
369
+ activeCount: number;
370
+ }[];
371
+ concurrencyPeak: number;
372
+ activeWorkSessionIds: string[];
373
+ coherenceSeries: {
374
+ at: string;
375
+ score: number;
376
+ triggerActionId: string;
377
+ workSessionId: string;
378
+ vacuous?: boolean | undefined;
379
+ }[];
380
+ coherenceHistogram: Record<string, number>;
381
+ testPassRate: {
382
+ failed: number;
383
+ passed: number;
384
+ skipped: number;
385
+ total: number;
386
+ };
387
+ firstPassYield: {
388
+ passedFirstAttempt: number;
389
+ ticketsCompleted: number;
390
+ byTicket: Record<string, boolean>;
391
+ };
392
+ gateAttemptMatrix: Record<string, Record<string, number>>;
393
+ dimensionMix: Record<string, number>;
394
+ ticketQualityProfiles: Record<string, {
395
+ tests: number;
396
+ files: number;
397
+ ticketId: string;
398
+ steps: number;
399
+ acChecks: number;
400
+ retries: number;
401
+ coherence?: number | undefined;
402
+ progress?: number | undefined;
403
+ }>;
404
+ qualityComposite: {
405
+ discovery?: number | undefined;
406
+ coherence?: number | undefined;
407
+ testPass?: number | undefined;
408
+ estimation?: number | undefined;
409
+ overall?: number | undefined;
410
+ evidenceBasis?: string[] | undefined;
411
+ confidence?: "partial" | "none" | "full" | undefined;
412
+ };
413
+ lastProcessedActionId?: string | undefined;
414
+ lastProcessedEventId?: string | undefined;
415
+ }, {
416
+ specificationId: string;
417
+ projectId: string;
418
+ lastUpdatedAt: string;
419
+ implementationSessionId: string;
420
+ status?: "active" | "completed" | "aborted" | undefined;
421
+ opsMix?: Record<string, number> | undefined;
422
+ lastProcessedActionId?: string | undefined;
423
+ denormalizedCounts?: {
424
+ actionsTotal: number;
425
+ workSessionsStarted: number;
426
+ workSessionsCompleted: number;
427
+ ticketsTouched: number;
428
+ ticketsBlocked: number;
429
+ discoveriesReported: number;
430
+ } | undefined;
431
+ concurrencySeries?: {
432
+ at: string;
433
+ triggerActionId: string;
434
+ activeCount: number;
435
+ }[] | undefined;
436
+ concurrencyPeak?: number | undefined;
437
+ activeWorkSessionIds?: string[] | undefined;
438
+ coherenceSeries?: {
439
+ at: string;
440
+ score: number;
441
+ triggerActionId: string;
442
+ workSessionId: string;
443
+ vacuous?: boolean | undefined;
444
+ }[] | undefined;
445
+ coherenceHistogram?: Record<string, number> | undefined;
446
+ testPassRate?: {
447
+ failed: number;
448
+ passed: number;
449
+ skipped: number;
450
+ total: number;
451
+ } | undefined;
452
+ firstPassYield?: {
453
+ passedFirstAttempt: number;
454
+ ticketsCompleted: number;
455
+ byTicket: Record<string, boolean>;
456
+ } | undefined;
457
+ gateAttemptMatrix?: Record<string, Record<string, number>> | undefined;
458
+ dimensionMix?: Record<string, number> | undefined;
459
+ ticketQualityProfiles?: Record<string, {
460
+ tests: number;
461
+ files: number;
462
+ ticketId: string;
463
+ steps: number;
464
+ acChecks: number;
465
+ retries: number;
466
+ coherence?: number | undefined;
467
+ progress?: number | undefined;
468
+ }> | undefined;
469
+ qualityComposite?: {
470
+ discovery?: number | undefined;
471
+ coherence?: number | undefined;
472
+ testPass?: number | undefined;
473
+ estimation?: number | undefined;
474
+ overall?: number | undefined;
475
+ evidenceBasis?: string[] | undefined;
476
+ confidence?: "partial" | "none" | "full" | undefined;
477
+ } | undefined;
478
+ lastProcessedEventId?: string | undefined;
479
+ }>;
480
+ export type ImplementationSessionAggregate = z.infer<typeof ImplementationSessionAggregateSchema>;
481
+ export type ImplementationDenormalizedCounts = z.infer<typeof DenormalizedCountsSchema>;
482
+ export type ImplementationConcurrencyPoint = z.infer<typeof ConcurrencyPointSchema>;
483
+ export type ImplementationCoherencePoint = z.infer<typeof CoherencePointSchema>;
484
+ export type ImplementationTestPassRate = z.infer<typeof TestPassRateSchema>;
485
+ export type ImplementationFirstPassYield = z.infer<typeof FirstPassYieldSchema>;
486
+ export type ImplementationTicketQualityProfile = z.infer<typeof TicketQualityProfileSchema>;
487
+ export type ImplementationQualityComposite = z.infer<typeof QualityCompositeSchema>;
488
+ export {};
489
+ //# sourceMappingURL=implementation-session-aggregate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"implementation-session-aggregate.d.ts","sourceRoot":"","sources":["../../src/runtime/implementation-session-aggregate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,2EAA2E;AAC3E,QAAA,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;EAO5B,CAAC;AAEH,4FAA4F;AAC5F,QAAA,MAAM,sBAAsB;;;;;;;;;;;;EAI1B,CAAC;AAEH,kDAAkD;AAClD,QAAA,MAAM,oBAAoB;;;;;IAKxB;;;;;OAKG;;;;;;;;;;;;;;EAEH,CAAC;AAEH,kEAAkE;AAClE,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;EAKtB,CAAC;AAEH;2FAC2F;AAC3F,QAAA,MAAM,oBAAoB;;;;;;;;;;;;EAIxB,CAAC;AAEH,gDAAgD;AAChD,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS9B,CAAC;AAEH;;;;;;;;;;GAUG;AACH,QAAA,MAAM,sBAAsB;;;;;;IAM1B;;;OAGG;;IAEH,0EAA0E;;;;;;;;;;;;;;;;;;EAE1E,CAAC;AAEH,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA/D/C;;;;;WAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAiDH;;;WAGG;;QAEH,0EAA0E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6D1E,CAAC;AAEH,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;AAClG,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AACxF,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACpF,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAChF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC5E,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAChF,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC5F,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
@@ -0,0 +1,152 @@
1
+ import { z } from 'zod';
2
+ import { IMPLEMENTATION_SESSION_STATUSES } from './enums.js';
3
+ /**
4
+ * ImplementationSessionAggregate — the projector output (1 row / ImplementationSession),
5
+ * the WORK analogue of `PlanningSessionAggregate` (M20.1). Holds the full §2.6 projection
6
+ * set the M24 observatory reads PRE-COMPUTED so it NEVER scans the `WorkSession` /
7
+ * `WorkSessionAction` tables.
8
+ *
9
+ * Keyed by `implementationSessionId` (custom PK, like `PlanningSessionAggregate`'s
10
+ * `planningSessionId`). Read spec-scoped via the `bySpecificationId` GSI (sort
11
+ * `lastUpdatedAt`).
12
+ *
13
+ * Fed by the `WorkSessionAction` + `ImplementationRecordEvent` streams (M15). Pure
14
+ * compute fns live in `@specforge/operations/aggregators/implementation`; the atomic
15
+ * apply lives in `@specforge/resolvers` (projector Lambda only).
16
+ *
17
+ * `aborted` handling (M24.5b kill-switch): `aborted` is TERMINAL for both entities. An
18
+ * `aborted` WorkSession drops out of the active/concurrency set (the active set keys off
19
+ * `status==='active'`); an `aborted` (or `completed`) ImplementationSession FREEZES this
20
+ * aggregate (terminal `status` → no further roll-up).
21
+ *
22
+ * All projection fields carry `.default(...)` so a legacy/seed row still parses — folded
23
+ * incrementally by the projector. The cursors (`lastProcessedActionId` /
24
+ * `lastProcessedEventId`) are the ULID idempotency guards (replay-safe).
25
+ */
26
+ /** §2.6 #1 — denormalized work-session-derived counts (no-scan totals). */
27
+ const DenormalizedCountsSchema = z.object({
28
+ workSessionsStarted: z.number().int().nonnegative(),
29
+ workSessionsCompleted: z.number().int().nonnegative(),
30
+ ticketsTouched: z.number().int().nonnegative(),
31
+ ticketsBlocked: z.number().int().nonnegative(),
32
+ discoveriesReported: z.number().int().nonnegative(),
33
+ actionsTotal: z.number().int().nonnegative(),
34
+ });
35
+ /** §2.6 #2 — concurrency datapoint: the active-WorkSession count after a start/complete. */
36
+ const ConcurrencyPointSchema = z.object({
37
+ at: z.string().datetime(),
38
+ activeCount: z.number().int().nonnegative(),
39
+ triggerActionId: z.string(),
40
+ });
41
+ /** §2.6 #3 — coherence datapoint (trajectory). */
42
+ const CoherencePointSchema = z.object({
43
+ at: z.string().datetime(),
44
+ score: z.number(),
45
+ workSessionId: z.string(),
46
+ triggerActionId: z.string(),
47
+ /**
48
+ * ML.1.5 — TRUE when this point's score is a VACUOUS 100 (nothing touched). The
49
+ * quality composite counts coherence toward `overall` ONLY over non-vacuous points, so
50
+ * a nothing-touched 100 no longer fabricates an earned score. Absent on legacy points →
51
+ * read as non-vacuous.
52
+ */
53
+ vacuous: z.boolean().optional(),
54
+ });
55
+ /** §2.6 #4 — test pass-rate tally (per ImplementationSession). */
56
+ const TestPassRateSchema = z.object({
57
+ passed: z.number().int().nonnegative(),
58
+ failed: z.number().int().nonnegative(),
59
+ skipped: z.number().int().nonnegative(),
60
+ total: z.number().int().nonnegative(),
61
+ });
62
+ /** §2.6 #5 — first-pass yield rollup. `byTicket` is the per-ticket "passed on attempt 1?"
63
+ * memo that keeps the rollup incremental (first successful completion per ticket wins). */
64
+ const FirstPassYieldSchema = z.object({
65
+ passedFirstAttempt: z.number().int().nonnegative(),
66
+ ticketsCompleted: z.number().int().nonnegative(),
67
+ byTicket: z.record(z.string(), z.boolean()),
68
+ });
69
+ /** §2.6 #7 — per-ticket quality-profile row. */
70
+ const TicketQualityProfileSchema = z.object({
71
+ ticketId: z.string(),
72
+ steps: z.number().int().nonnegative(),
73
+ acChecks: z.number().int().nonnegative(),
74
+ files: z.number().int().nonnegative(),
75
+ tests: z.number().int().nonnegative(),
76
+ retries: z.number().int().nonnegative(),
77
+ coherence: z.number().optional(),
78
+ progress: z.number().optional(),
79
+ });
80
+ /**
81
+ * §2.6 #8 — quality composite (sub-scores derived from the other projections).
82
+ *
83
+ * ML.1.5 — `overall` is now gated on an EVIDENCE BASIS: it counts ONLY `testPass` (real
84
+ * `testPassRate.total>0`) and NON-VACUOUS `coherence`; `discovery` is dropped from
85
+ * `overall` (a filed discovery is desirable, not a defect — the raw count survives as the
86
+ * `discovery` sub-score). With no evidence, `overall` is `undefined` (withheld — never a
87
+ * fabricated 100). `confidence`/`evidenceBasis` describe what backs `overall`. Stored
88
+ * opaque via `a.json()` (`resource.ts` `qualityComposite`) → the new fields need no
89
+ * schema migration.
90
+ */
91
+ const QualityCompositeSchema = z.object({
92
+ coherence: z.number().optional(),
93
+ testPass: z.number().optional(),
94
+ discovery: z.number().optional(),
95
+ estimation: z.number().optional(),
96
+ overall: z.number().optional(),
97
+ /**
98
+ * Which sub-scores carry real evidence for `overall` — a subset of
99
+ * `['tests','coherence']`. Empty ⇒ `overall` withheld.
100
+ */
101
+ evidenceBasis: z.array(z.string()).optional(),
102
+ /** `none` (no evidence) · `partial` (one basis) · `full` (both bases). */
103
+ confidence: z.enum(['none', 'partial', 'full']).optional(),
104
+ });
105
+ export const ImplementationSessionAggregateSchema = z.object({
106
+ implementationSessionId: z.string(), // custom PK
107
+ specificationId: z.string(),
108
+ projectId: z.string(),
109
+ // Terminal-freeze flag (M24.5b). `aborted`/`completed` → the aggregate is frozen.
110
+ status: z.enum(IMPLEMENTATION_SESSION_STATUSES).default('active'),
111
+ // §2.6 #1 — denormalized counts.
112
+ denormalizedCounts: DenormalizedCountsSchema.default({
113
+ workSessionsStarted: 0,
114
+ workSessionsCompleted: 0,
115
+ ticketsTouched: 0,
116
+ ticketsBlocked: 0,
117
+ discoveriesReported: 0,
118
+ actionsTotal: 0,
119
+ }),
120
+ // §2.6 #2 — concurrency time series (active WorkSessions per start/complete event).
121
+ // `activeWorkSessionIds` is the live active set (keyed off status==='active'); an
122
+ // aborted/completed WS leaves it, so it drops from the series — sorted for determinism.
123
+ concurrencySeries: z.array(ConcurrencyPointSchema).default([]),
124
+ concurrencyPeak: z.number().int().nonnegative().default(0),
125
+ activeWorkSessionIds: z.array(z.string()).default([]),
126
+ // §2.6 #3 — coherence series + histogram (20-wide buckets: '0-20'…'80-100').
127
+ coherenceSeries: z.array(CoherencePointSchema).default([]),
128
+ coherenceHistogram: z.record(z.string(), z.number().int().nonnegative()).default({}),
129
+ // §2.6 #4 — test pass-rate.
130
+ testPassRate: TestPassRateSchema.default({ passed: 0, failed: 0, skipped: 0, total: 0 }),
131
+ // §2.6 #5 — first-pass yield + gate-attempt matrix (gate → attempt# → fail count).
132
+ firstPassYield: FirstPassYieldSchema.default({
133
+ passedFirstAttempt: 0,
134
+ ticketsCompleted: 0,
135
+ byTicket: {},
136
+ }),
137
+ gateAttemptMatrix: z
138
+ .record(z.string(), z.record(z.string(), z.number().int().nonnegative()))
139
+ .default({}),
140
+ // §2.6 #6 — ops mix (operation + dimension histograms).
141
+ opsMix: z.record(z.string(), z.number().int().nonnegative()).default({}),
142
+ dimensionMix: z.record(z.string(), z.number().int().nonnegative()).default({}),
143
+ // §2.6 #7 — per-ticket quality profiles.
144
+ ticketQualityProfiles: z.record(z.string(), TicketQualityProfileSchema).default({}),
145
+ // §2.6 #8 — quality composite.
146
+ qualityComposite: QualityCompositeSchema.default({}),
147
+ // ULID idempotency cursors (the no-double-count guards).
148
+ lastProcessedActionId: z.string().optional(),
149
+ lastProcessedEventId: z.string().optional(),
150
+ lastUpdatedAt: z.string().datetime(),
151
+ });
152
+ //# sourceMappingURL=implementation-session-aggregate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"implementation-session-aggregate.js","sourceRoot":"","sources":["../../src/runtime/implementation-session-aggregate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { z } from 'zod';
2
+ import type { ImplementationSessionSchema } from '../schema/implementation-session.js';
3
+ /**
4
+ * Runtime type for the parent ImplementationSession. See ImplementationSessionSchema.
5
+ * 1 ImplementationSession ⇄ N WorkSessions (FK `WorkSession.implementationSessionId`).
6
+ */
7
+ export type ImplementationSession = z.infer<typeof ImplementationSessionSchema>;
8
+ //# sourceMappingURL=implementation-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"implementation-session.d.ts","sourceRoot":"","sources":["../../src/runtime/implementation-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAEvF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=implementation-session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"implementation-session.js","sourceRoot":"","sources":["../../src/runtime/implementation-session.ts"],"names":[],"mappings":""}