@specforge/cli 0.1.0 → 0.2.4

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 (643) 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/types/index.d.ts +12 -32
  71. package/dist/types/index.d.ts.map +1 -1
  72. package/dist/types/index.js.map +1 -1
  73. package/dist/validation/index.d.ts.map +1 -1
  74. package/dist/validation/index.js +0 -15
  75. package/dist/validation/index.js.map +1 -1
  76. package/node_modules/@specforge/api-types/README.md +38 -0
  77. package/node_modules/@specforge/api-types/dist/client/appsync-client.d.ts +21 -0
  78. package/node_modules/@specforge/api-types/dist/client/appsync-client.d.ts.map +1 -0
  79. package/node_modules/@specforge/api-types/dist/client/appsync-client.js +2 -0
  80. package/node_modules/@specforge/api-types/dist/client/appsync-client.js.map +1 -0
  81. package/node_modules/@specforge/api-types/dist/client/index.d.ts +2 -0
  82. package/node_modules/@specforge/api-types/dist/client/index.d.ts.map +1 -0
  83. package/node_modules/@specforge/api-types/dist/client/index.js +2 -0
  84. package/node_modules/@specforge/api-types/dist/client/index.js.map +1 -0
  85. package/node_modules/@specforge/api-types/dist/index.d.ts +5 -0
  86. package/node_modules/@specforge/api-types/dist/index.d.ts.map +1 -0
  87. package/node_modules/@specforge/api-types/dist/index.js +9 -0
  88. package/node_modules/@specforge/api-types/dist/index.js.map +1 -0
  89. package/node_modules/@specforge/api-types/dist/mcp/error-guidance.d.ts +74 -0
  90. package/node_modules/@specforge/api-types/dist/mcp/error-guidance.d.ts.map +1 -0
  91. package/node_modules/@specforge/api-types/dist/mcp/error-guidance.js +21 -0
  92. package/node_modules/@specforge/api-types/dist/mcp/error-guidance.js.map +1 -0
  93. package/node_modules/@specforge/api-types/dist/mcp/index.d.ts +4 -0
  94. package/node_modules/@specforge/api-types/dist/mcp/index.d.ts.map +1 -0
  95. package/node_modules/@specforge/api-types/dist/mcp/index.js +8 -0
  96. package/node_modules/@specforge/api-types/dist/mcp/index.js.map +1 -0
  97. package/node_modules/@specforge/api-types/dist/mcp/lifecycle-envelope.d.ts +18 -0
  98. package/node_modules/@specforge/api-types/dist/mcp/lifecycle-envelope.d.ts.map +1 -0
  99. package/node_modules/@specforge/api-types/dist/mcp/lifecycle-envelope.js +2 -0
  100. package/node_modules/@specforge/api-types/dist/mcp/lifecycle-envelope.js.map +1 -0
  101. package/node_modules/@specforge/api-types/dist/mcp/standard-envelope.d.ts +39 -0
  102. package/node_modules/@specforge/api-types/dist/mcp/standard-envelope.d.ts.map +1 -0
  103. package/node_modules/@specforge/api-types/dist/mcp/standard-envelope.js +2 -0
  104. package/node_modules/@specforge/api-types/dist/mcp/standard-envelope.js.map +1 -0
  105. package/node_modules/@specforge/api-types/dist/runtime/billing-record.d.ts +18 -0
  106. package/node_modules/@specforge/api-types/dist/runtime/billing-record.d.ts.map +1 -0
  107. package/node_modules/@specforge/api-types/dist/runtime/billing-record.js +7 -0
  108. package/node_modules/@specforge/api-types/dist/runtime/billing-record.js.map +1 -0
  109. package/node_modules/@specforge/api-types/dist/runtime/blueprint-record.d.ts +40 -0
  110. package/node_modules/@specforge/api-types/dist/runtime/blueprint-record.d.ts.map +1 -0
  111. package/node_modules/@specforge/api-types/dist/runtime/blueprint-record.js +19 -0
  112. package/node_modules/@specforge/api-types/dist/runtime/blueprint-record.js.map +1 -0
  113. package/node_modules/@specforge/api-types/dist/runtime/dependency-tree.d.ts +96 -0
  114. package/node_modules/@specforge/api-types/dist/runtime/dependency-tree.d.ts.map +1 -0
  115. package/node_modules/@specforge/api-types/dist/runtime/dependency-tree.js +23 -0
  116. package/node_modules/@specforge/api-types/dist/runtime/dependency-tree.js.map +1 -0
  117. package/node_modules/@specforge/api-types/dist/runtime/epic-record.d.ts +117 -0
  118. package/node_modules/@specforge/api-types/dist/runtime/epic-record.d.ts.map +1 -0
  119. package/node_modules/@specforge/api-types/dist/runtime/epic-record.js +13 -0
  120. package/node_modules/@specforge/api-types/dist/runtime/epic-record.js.map +1 -0
  121. package/node_modules/@specforge/api-types/dist/runtime/feedback-record.d.ts +27 -0
  122. package/node_modules/@specforge/api-types/dist/runtime/feedback-record.d.ts.map +1 -0
  123. package/node_modules/@specforge/api-types/dist/runtime/feedback-record.js +7 -0
  124. package/node_modules/@specforge/api-types/dist/runtime/feedback-record.js.map +1 -0
  125. package/node_modules/@specforge/api-types/dist/runtime/fields.d.ts +31 -0
  126. package/node_modules/@specforge/api-types/dist/runtime/fields.d.ts.map +1 -0
  127. package/node_modules/@specforge/api-types/dist/runtime/fields.js +156 -0
  128. package/node_modules/@specforge/api-types/dist/runtime/fields.js.map +1 -0
  129. package/node_modules/@specforge/api-types/dist/runtime/index.d.ts +18 -0
  130. package/node_modules/@specforge/api-types/dist/runtime/index.d.ts.map +1 -0
  131. package/node_modules/@specforge/api-types/dist/runtime/index.js +18 -0
  132. package/node_modules/@specforge/api-types/dist/runtime/index.js.map +1 -0
  133. package/node_modules/@specforge/api-types/dist/runtime/pagination.d.ts +38 -0
  134. package/node_modules/@specforge/api-types/dist/runtime/pagination.d.ts.map +1 -0
  135. package/node_modules/@specforge/api-types/dist/runtime/pagination.js +54 -0
  136. package/node_modules/@specforge/api-types/dist/runtime/pagination.js.map +1 -0
  137. package/node_modules/@specforge/api-types/dist/runtime/project-invitation.d.ts +14 -0
  138. package/node_modules/@specforge/api-types/dist/runtime/project-invitation.d.ts.map +1 -0
  139. package/node_modules/@specforge/api-types/dist/runtime/project-invitation.js +2 -0
  140. package/node_modules/@specforge/api-types/dist/runtime/project-invitation.js.map +1 -0
  141. package/node_modules/@specforge/api-types/dist/runtime/project-member.d.ts +13 -0
  142. package/node_modules/@specforge/api-types/dist/runtime/project-member.d.ts.map +1 -0
  143. package/node_modules/@specforge/api-types/dist/runtime/project-member.js +2 -0
  144. package/node_modules/@specforge/api-types/dist/runtime/project-member.js.map +1 -0
  145. package/node_modules/@specforge/api-types/dist/runtime/project-validation.d.ts +26 -0
  146. package/node_modules/@specforge/api-types/dist/runtime/project-validation.d.ts.map +1 -0
  147. package/node_modules/@specforge/api-types/dist/runtime/project-validation.js +5 -0
  148. package/node_modules/@specforge/api-types/dist/runtime/project-validation.js.map +1 -0
  149. package/node_modules/@specforge/api-types/dist/runtime/project.d.ts +55 -0
  150. package/node_modules/@specforge/api-types/dist/runtime/project.d.ts.map +1 -0
  151. package/node_modules/@specforge/api-types/dist/runtime/project.js +10 -0
  152. package/node_modules/@specforge/api-types/dist/runtime/project.js.map +1 -0
  153. package/node_modules/@specforge/api-types/dist/runtime/response.d.ts +22 -0
  154. package/node_modules/@specforge/api-types/dist/runtime/response.d.ts.map +1 -0
  155. package/node_modules/@specforge/api-types/dist/runtime/response.js +14 -0
  156. package/node_modules/@specforge/api-types/dist/runtime/response.js.map +1 -0
  157. package/node_modules/@specforge/api-types/dist/runtime/specification-record.d.ts +90 -0
  158. package/node_modules/@specforge/api-types/dist/runtime/specification-record.d.ts.map +1 -0
  159. package/node_modules/@specforge/api-types/dist/runtime/specification-record.js +11 -0
  160. package/node_modules/@specforge/api-types/dist/runtime/specification-record.js.map +1 -0
  161. package/node_modules/@specforge/api-types/dist/runtime/status.d.ts +26 -0
  162. package/node_modules/@specforge/api-types/dist/runtime/status.d.ts.map +1 -0
  163. package/node_modules/@specforge/api-types/dist/runtime/status.js +56 -0
  164. package/node_modules/@specforge/api-types/dist/runtime/status.js.map +1 -0
  165. package/node_modules/@specforge/api-types/dist/runtime/summary.d.ts +58 -0
  166. package/node_modules/@specforge/api-types/dist/runtime/summary.d.ts.map +1 -0
  167. package/node_modules/@specforge/api-types/dist/runtime/summary.js +42 -0
  168. package/node_modules/@specforge/api-types/dist/runtime/summary.js.map +1 -0
  169. package/node_modules/@specforge/api-types/dist/runtime/ticket-record.d.ts +212 -0
  170. package/node_modules/@specforge/api-types/dist/runtime/ticket-record.d.ts.map +1 -0
  171. package/node_modules/@specforge/api-types/dist/runtime/ticket-record.js +18 -0
  172. package/node_modules/@specforge/api-types/dist/runtime/ticket-record.js.map +1 -0
  173. package/node_modules/@specforge/api-types/dist/runtime/user.d.ts +13 -0
  174. package/node_modules/@specforge/api-types/dist/runtime/user.d.ts.map +1 -0
  175. package/node_modules/@specforge/api-types/dist/runtime/user.js +9 -0
  176. package/node_modules/@specforge/api-types/dist/runtime/user.js.map +1 -0
  177. package/node_modules/@specforge/api-types/dist/stores/i-billing-store.d.ts +17 -0
  178. package/node_modules/@specforge/api-types/dist/stores/i-billing-store.d.ts.map +1 -0
  179. package/node_modules/@specforge/api-types/dist/stores/i-billing-store.js +2 -0
  180. package/node_modules/@specforge/api-types/dist/stores/i-billing-store.js.map +1 -0
  181. package/node_modules/@specforge/api-types/dist/stores/i-blueprint-store.d.ts +59 -0
  182. package/node_modules/@specforge/api-types/dist/stores/i-blueprint-store.d.ts.map +1 -0
  183. package/node_modules/@specforge/api-types/dist/stores/i-blueprint-store.js +2 -0
  184. package/node_modules/@specforge/api-types/dist/stores/i-blueprint-store.js.map +1 -0
  185. package/node_modules/@specforge/api-types/dist/stores/i-epic-store.d.ts +120 -0
  186. package/node_modules/@specforge/api-types/dist/stores/i-epic-store.d.ts.map +1 -0
  187. package/node_modules/@specforge/api-types/dist/stores/i-epic-store.js +2 -0
  188. package/node_modules/@specforge/api-types/dist/stores/i-epic-store.js.map +1 -0
  189. package/node_modules/@specforge/api-types/dist/stores/i-feedback-store.d.ts +13 -0
  190. package/node_modules/@specforge/api-types/dist/stores/i-feedback-store.d.ts.map +1 -0
  191. package/node_modules/@specforge/api-types/dist/stores/i-feedback-store.js +2 -0
  192. package/node_modules/@specforge/api-types/dist/stores/i-feedback-store.js.map +1 -0
  193. package/node_modules/@specforge/api-types/dist/stores/i-project-store.d.ts +48 -0
  194. package/node_modules/@specforge/api-types/dist/stores/i-project-store.d.ts.map +1 -0
  195. package/node_modules/@specforge/api-types/dist/stores/i-project-store.js +2 -0
  196. package/node_modules/@specforge/api-types/dist/stores/i-project-store.js.map +1 -0
  197. package/node_modules/@specforge/api-types/dist/stores/i-sharing-store.d.ts +37 -0
  198. package/node_modules/@specforge/api-types/dist/stores/i-sharing-store.d.ts.map +1 -0
  199. package/node_modules/@specforge/api-types/dist/stores/i-sharing-store.js +2 -0
  200. package/node_modules/@specforge/api-types/dist/stores/i-sharing-store.js.map +1 -0
  201. package/node_modules/@specforge/api-types/dist/stores/i-spec-store.d.ts +159 -0
  202. package/node_modules/@specforge/api-types/dist/stores/i-spec-store.d.ts.map +1 -0
  203. package/node_modules/@specforge/api-types/dist/stores/i-spec-store.js +2 -0
  204. package/node_modules/@specforge/api-types/dist/stores/i-spec-store.js.map +1 -0
  205. package/node_modules/@specforge/api-types/dist/stores/i-ticket-dependency-store.d.ts +87 -0
  206. package/node_modules/@specforge/api-types/dist/stores/i-ticket-dependency-store.d.ts.map +1 -0
  207. package/node_modules/@specforge/api-types/dist/stores/i-ticket-dependency-store.js +2 -0
  208. package/node_modules/@specforge/api-types/dist/stores/i-ticket-dependency-store.js.map +1 -0
  209. package/node_modules/@specforge/api-types/dist/stores/i-ticket-store.d.ts +347 -0
  210. package/node_modules/@specforge/api-types/dist/stores/i-ticket-store.d.ts.map +1 -0
  211. package/node_modules/@specforge/api-types/dist/stores/i-ticket-store.js +2 -0
  212. package/node_modules/@specforge/api-types/dist/stores/i-ticket-store.js.map +1 -0
  213. package/node_modules/@specforge/api-types/dist/stores/i-user-store.d.ts +5 -0
  214. package/node_modules/@specforge/api-types/dist/stores/i-user-store.d.ts.map +1 -0
  215. package/node_modules/@specforge/api-types/dist/stores/i-user-store.js +2 -0
  216. package/node_modules/@specforge/api-types/dist/stores/i-user-store.js.map +1 -0
  217. package/node_modules/@specforge/api-types/dist/stores/index.d.ts +11 -0
  218. package/node_modules/@specforge/api-types/dist/stores/index.d.ts.map +1 -0
  219. package/node_modules/@specforge/api-types/dist/stores/index.js +11 -0
  220. package/node_modules/@specforge/api-types/dist/stores/index.js.map +1 -0
  221. package/node_modules/@specforge/api-types/package.json +43 -0
  222. package/node_modules/@specforge/report-types/README.md +11 -0
  223. package/node_modules/@specforge/report-types/dist/index.d.ts +2 -0
  224. package/node_modules/@specforge/report-types/dist/index.d.ts.map +1 -0
  225. package/node_modules/@specforge/report-types/dist/index.js +2 -0
  226. package/node_modules/@specforge/report-types/dist/index.js.map +1 -0
  227. package/node_modules/@specforge/report-types/dist/reports.d.ts +90 -0
  228. package/node_modules/@specforge/report-types/dist/reports.d.ts.map +1 -0
  229. package/node_modules/@specforge/report-types/dist/reports.js +15 -0
  230. package/node_modules/@specforge/report-types/dist/reports.js.map +1 -0
  231. package/node_modules/@specforge/report-types/package.json +40 -0
  232. package/node_modules/@specforge/session-types/CHANGELOG.md +56 -0
  233. package/node_modules/@specforge/session-types/README.md +18 -0
  234. package/node_modules/@specforge/session-types/dist/index.d.ts +47 -0
  235. package/node_modules/@specforge/session-types/dist/index.d.ts.map +1 -0
  236. package/node_modules/@specforge/session-types/dist/index.js +47 -0
  237. package/node_modules/@specforge/session-types/dist/index.js.map +1 -0
  238. package/node_modules/@specforge/session-types/dist/runtime/aggregator-input.d.ts +46 -0
  239. package/node_modules/@specforge/session-types/dist/runtime/aggregator-input.d.ts.map +1 -0
  240. package/node_modules/@specforge/session-types/dist/runtime/aggregator-input.js +41 -0
  241. package/node_modules/@specforge/session-types/dist/runtime/aggregator-input.js.map +1 -0
  242. package/node_modules/@specforge/session-types/dist/runtime/discovery.d.ts +9 -0
  243. package/node_modules/@specforge/session-types/dist/runtime/discovery.d.ts.map +1 -0
  244. package/node_modules/@specforge/session-types/dist/runtime/discovery.js +2 -0
  245. package/node_modules/@specforge/session-types/dist/runtime/discovery.js.map +1 -0
  246. package/node_modules/@specforge/session-types/dist/runtime/enums.d.ts +51 -0
  247. package/node_modules/@specforge/session-types/dist/runtime/enums.d.ts.map +1 -0
  248. package/node_modules/@specforge/session-types/dist/runtime/enums.js +161 -0
  249. package/node_modules/@specforge/session-types/dist/runtime/enums.js.map +1 -0
  250. package/node_modules/@specforge/session-types/dist/runtime/implementation-config.d.ts +177 -0
  251. package/node_modules/@specforge/session-types/dist/runtime/implementation-config.d.ts.map +1 -0
  252. package/node_modules/@specforge/session-types/dist/runtime/implementation-config.js +96 -0
  253. package/node_modules/@specforge/session-types/dist/runtime/implementation-config.js.map +1 -0
  254. package/node_modules/@specforge/session-types/dist/runtime/implementation-record-event.d.ts +8 -0
  255. package/node_modules/@specforge/session-types/dist/runtime/implementation-record-event.d.ts.map +1 -0
  256. package/node_modules/@specforge/session-types/dist/runtime/implementation-record-event.js +2 -0
  257. package/node_modules/@specforge/session-types/dist/runtime/implementation-record-event.js.map +1 -0
  258. package/node_modules/@specforge/session-types/dist/runtime/implementation-session-aggregate.d.ts +489 -0
  259. package/node_modules/@specforge/session-types/dist/runtime/implementation-session-aggregate.d.ts.map +1 -0
  260. package/node_modules/@specforge/session-types/dist/runtime/implementation-session-aggregate.js +152 -0
  261. package/node_modules/@specforge/session-types/dist/runtime/implementation-session-aggregate.js.map +1 -0
  262. package/node_modules/@specforge/session-types/dist/runtime/implementation-session.d.ts +8 -0
  263. package/node_modules/@specforge/session-types/dist/runtime/implementation-session.d.ts.map +1 -0
  264. package/node_modules/@specforge/session-types/dist/runtime/implementation-session.js +2 -0
  265. package/node_modules/@specforge/session-types/dist/runtime/implementation-session.js.map +1 -0
  266. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-contract.d.ts +319 -0
  267. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-contract.d.ts.map +1 -0
  268. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-contract.js +2 -0
  269. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-contract.js.map +1 -0
  270. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-planning-guidance.d.ts +128 -0
  271. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-planning-guidance.d.ts.map +1 -0
  272. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-planning-guidance.js +30 -0
  273. package/node_modules/@specforge/session-types/dist/runtime/lifecycle-planning-guidance.js.map +1 -0
  274. package/node_modules/@specforge/session-types/dist/runtime/parsed-git-evidence.d.ts +4 -0
  275. package/node_modules/@specforge/session-types/dist/runtime/parsed-git-evidence.d.ts.map +1 -0
  276. package/node_modules/@specforge/session-types/dist/runtime/parsed-git-evidence.js +2 -0
  277. package/node_modules/@specforge/session-types/dist/runtime/parsed-git-evidence.js.map +1 -0
  278. package/node_modules/@specforge/session-types/dist/runtime/planning-config.d.ts +82 -0
  279. package/node_modules/@specforge/session-types/dist/runtime/planning-config.d.ts.map +1 -0
  280. package/node_modules/@specforge/session-types/dist/runtime/planning-config.js +61 -0
  281. package/node_modules/@specforge/session-types/dist/runtime/planning-config.js.map +1 -0
  282. package/node_modules/@specforge/session-types/dist/runtime/planning-entity-score-datapoint.d.ts +34 -0
  283. package/node_modules/@specforge/session-types/dist/runtime/planning-entity-score-datapoint.d.ts.map +1 -0
  284. package/node_modules/@specforge/session-types/dist/runtime/planning-entity-score-datapoint.js +14 -0
  285. package/node_modules/@specforge/session-types/dist/runtime/planning-entity-score-datapoint.js.map +1 -0
  286. package/node_modules/@specforge/session-types/dist/runtime/planning-operations.d.ts +6 -0
  287. package/node_modules/@specforge/session-types/dist/runtime/planning-operations.d.ts.map +1 -0
  288. package/node_modules/@specforge/session-types/dist/runtime/planning-operations.js +65 -0
  289. package/node_modules/@specforge/session-types/dist/runtime/planning-operations.js.map +1 -0
  290. package/node_modules/@specforge/session-types/dist/runtime/planning-phase-transition.d.ts +34 -0
  291. package/node_modules/@specforge/session-types/dist/runtime/planning-phase-transition.d.ts.map +1 -0
  292. package/node_modules/@specforge/session-types/dist/runtime/planning-phase-transition.js +22 -0
  293. package/node_modules/@specforge/session-types/dist/runtime/planning-phase-transition.js.map +1 -0
  294. package/node_modules/@specforge/session-types/dist/runtime/planning-session-action.d.ts +73 -0
  295. package/node_modules/@specforge/session-types/dist/runtime/planning-session-action.d.ts.map +1 -0
  296. package/node_modules/@specforge/session-types/dist/runtime/planning-session-action.js +61 -0
  297. package/node_modules/@specforge/session-types/dist/runtime/planning-session-action.js.map +1 -0
  298. package/node_modules/@specforge/session-types/dist/runtime/planning-session-aggregate.d.ts +249 -0
  299. package/node_modules/@specforge/session-types/dist/runtime/planning-session-aggregate.d.ts.map +1 -0
  300. package/node_modules/@specforge/session-types/dist/runtime/planning-session-aggregate.js +96 -0
  301. package/node_modules/@specforge/session-types/dist/runtime/planning-session-aggregate.js.map +1 -0
  302. package/node_modules/@specforge/session-types/dist/runtime/planning-session.d.ts +574 -0
  303. package/node_modules/@specforge/session-types/dist/runtime/planning-session.d.ts.map +1 -0
  304. package/node_modules/@specforge/session-types/dist/runtime/planning-session.js +40 -0
  305. package/node_modules/@specforge/session-types/dist/runtime/planning-session.js.map +1 -0
  306. package/node_modules/@specforge/session-types/dist/runtime/process-guidance.d.ts +221 -0
  307. package/node_modules/@specforge/session-types/dist/runtime/process-guidance.d.ts.map +1 -0
  308. package/node_modules/@specforge/session-types/dist/runtime/process-guidance.js +41 -0
  309. package/node_modules/@specforge/session-types/dist/runtime/process-guidance.js.map +1 -0
  310. package/node_modules/@specforge/session-types/dist/runtime/work-session-acceptance-check.d.ts +4 -0
  311. package/node_modules/@specforge/session-types/dist/runtime/work-session-acceptance-check.d.ts.map +1 -0
  312. package/node_modules/@specforge/session-types/dist/runtime/work-session-acceptance-check.js +2 -0
  313. package/node_modules/@specforge/session-types/dist/runtime/work-session-acceptance-check.js.map +1 -0
  314. package/node_modules/@specforge/session-types/dist/runtime/work-session-action.d.ts +9 -0
  315. package/node_modules/@specforge/session-types/dist/runtime/work-session-action.d.ts.map +1 -0
  316. package/node_modules/@specforge/session-types/dist/runtime/work-session-action.js +2 -0
  317. package/node_modules/@specforge/session-types/dist/runtime/work-session-action.js.map +1 -0
  318. package/node_modules/@specforge/session-types/dist/runtime/work-session-file-change.d.ts +4 -0
  319. package/node_modules/@specforge/session-types/dist/runtime/work-session-file-change.d.ts.map +1 -0
  320. package/node_modules/@specforge/session-types/dist/runtime/work-session-file-change.js +2 -0
  321. package/node_modules/@specforge/session-types/dist/runtime/work-session-file-change.js.map +1 -0
  322. package/node_modules/@specforge/session-types/dist/runtime/work-session-impl-step-completion.d.ts +4 -0
  323. package/node_modules/@specforge/session-types/dist/runtime/work-session-impl-step-completion.d.ts.map +1 -0
  324. package/node_modules/@specforge/session-types/dist/runtime/work-session-impl-step-completion.js +2 -0
  325. package/node_modules/@specforge/session-types/dist/runtime/work-session-impl-step-completion.js.map +1 -0
  326. package/node_modules/@specforge/session-types/dist/runtime/work-session-resolution.d.ts +4 -0
  327. package/node_modules/@specforge/session-types/dist/runtime/work-session-resolution.d.ts.map +1 -0
  328. package/node_modules/@specforge/session-types/dist/runtime/work-session-resolution.js +2 -0
  329. package/node_modules/@specforge/session-types/dist/runtime/work-session-resolution.js.map +1 -0
  330. package/node_modules/@specforge/session-types/dist/runtime/work-session-test-result.d.ts +4 -0
  331. package/node_modules/@specforge/session-types/dist/runtime/work-session-test-result.d.ts.map +1 -0
  332. package/node_modules/@specforge/session-types/dist/runtime/work-session-test-result.js +2 -0
  333. package/node_modules/@specforge/session-types/dist/runtime/work-session-test-result.js.map +1 -0
  334. package/node_modules/@specforge/session-types/dist/runtime/work-session.d.ts +4 -0
  335. package/node_modules/@specforge/session-types/dist/runtime/work-session.d.ts.map +1 -0
  336. package/node_modules/@specforge/session-types/dist/runtime/work-session.js +2 -0
  337. package/node_modules/@specforge/session-types/dist/runtime/work-session.js.map +1 -0
  338. package/node_modules/@specforge/session-types/dist/runtime/working-context.d.ts +43 -0
  339. package/node_modules/@specforge/session-types/dist/runtime/working-context.d.ts.map +1 -0
  340. package/node_modules/@specforge/session-types/dist/runtime/working-context.js +2 -0
  341. package/node_modules/@specforge/session-types/dist/runtime/working-context.js.map +1 -0
  342. package/node_modules/@specforge/session-types/dist/runtime/write-plan.d.ts +146 -0
  343. package/node_modules/@specforge/session-types/dist/runtime/write-plan.d.ts.map +1 -0
  344. package/node_modules/@specforge/session-types/dist/runtime/write-plan.js +2 -0
  345. package/node_modules/@specforge/session-types/dist/runtime/write-plan.js.map +1 -0
  346. package/node_modules/@specforge/session-types/dist/schema/discovery.d.ts +76 -0
  347. package/node_modules/@specforge/session-types/dist/schema/discovery.d.ts.map +1 -0
  348. package/node_modules/@specforge/session-types/dist/schema/discovery.js +42 -0
  349. package/node_modules/@specforge/session-types/dist/schema/discovery.js.map +1 -0
  350. package/node_modules/@specforge/session-types/dist/schema/implementation-record-event.d.ts +48 -0
  351. package/node_modules/@specforge/session-types/dist/schema/implementation-record-event.d.ts.map +1 -0
  352. package/node_modules/@specforge/session-types/dist/schema/implementation-record-event.js +28 -0
  353. package/node_modules/@specforge/session-types/dist/schema/implementation-record-event.js.map +1 -0
  354. package/node_modules/@specforge/session-types/dist/schema/implementation-session.d.ts +37 -0
  355. package/node_modules/@specforge/session-types/dist/schema/implementation-session.d.ts.map +1 -0
  356. package/node_modules/@specforge/session-types/dist/schema/implementation-session.js +24 -0
  357. package/node_modules/@specforge/session-types/dist/schema/implementation-session.js.map +1 -0
  358. package/node_modules/@specforge/session-types/dist/schema/index.d.ts +12 -0
  359. package/node_modules/@specforge/session-types/dist/schema/index.d.ts.map +1 -0
  360. package/node_modules/@specforge/session-types/dist/schema/index.js +12 -0
  361. package/node_modules/@specforge/session-types/dist/schema/index.js.map +1 -0
  362. package/node_modules/@specforge/session-types/dist/schema/parsed-git-evidence.d.ts +74 -0
  363. package/node_modules/@specforge/session-types/dist/schema/parsed-git-evidence.d.ts.map +1 -0
  364. package/node_modules/@specforge/session-types/dist/schema/parsed-git-evidence.js +31 -0
  365. package/node_modules/@specforge/session-types/dist/schema/parsed-git-evidence.js.map +1 -0
  366. package/node_modules/@specforge/session-types/dist/schema/work-session-acceptance-check.d.ts +27 -0
  367. package/node_modules/@specforge/session-types/dist/schema/work-session-acceptance-check.d.ts.map +1 -0
  368. package/node_modules/@specforge/session-types/dist/schema/work-session-acceptance-check.js +11 -0
  369. package/node_modules/@specforge/session-types/dist/schema/work-session-acceptance-check.js.map +1 -0
  370. package/node_modules/@specforge/session-types/dist/schema/work-session-action.d.ts +94 -0
  371. package/node_modules/@specforge/session-types/dist/schema/work-session-action.d.ts.map +1 -0
  372. package/node_modules/@specforge/session-types/dist/schema/work-session-action.js +76 -0
  373. package/node_modules/@specforge/session-types/dist/schema/work-session-action.js.map +1 -0
  374. package/node_modules/@specforge/session-types/dist/schema/work-session-file-change.d.ts +42 -0
  375. package/node_modules/@specforge/session-types/dist/schema/work-session-file-change.d.ts.map +1 -0
  376. package/node_modules/@specforge/session-types/dist/schema/work-session-file-change.js +25 -0
  377. package/node_modules/@specforge/session-types/dist/schema/work-session-file-change.js.map +1 -0
  378. package/node_modules/@specforge/session-types/dist/schema/work-session-impl-step-completion.d.ts +27 -0
  379. package/node_modules/@specforge/session-types/dist/schema/work-session-impl-step-completion.d.ts.map +1 -0
  380. package/node_modules/@specforge/session-types/dist/schema/work-session-impl-step-completion.js +11 -0
  381. package/node_modules/@specforge/session-types/dist/schema/work-session-impl-step-completion.js.map +1 -0
  382. package/node_modules/@specforge/session-types/dist/schema/work-session-resolution.d.ts +42 -0
  383. package/node_modules/@specforge/session-types/dist/schema/work-session-resolution.d.ts.map +1 -0
  384. package/node_modules/@specforge/session-types/dist/schema/work-session-resolution.js +28 -0
  385. package/node_modules/@specforge/session-types/dist/schema/work-session-resolution.js.map +1 -0
  386. package/node_modules/@specforge/session-types/dist/schema/work-session-test-result.d.ts +72 -0
  387. package/node_modules/@specforge/session-types/dist/schema/work-session-test-result.d.ts.map +1 -0
  388. package/node_modules/@specforge/session-types/dist/schema/work-session-test-result.js +43 -0
  389. package/node_modules/@specforge/session-types/dist/schema/work-session-test-result.js.map +1 -0
  390. package/node_modules/@specforge/session-types/dist/schema/work-session.d.ts +203 -0
  391. package/node_modules/@specforge/session-types/dist/schema/work-session.d.ts.map +1 -0
  392. package/node_modules/@specforge/session-types/dist/schema/work-session.js +86 -0
  393. package/node_modules/@specforge/session-types/dist/schema/work-session.js.map +1 -0
  394. package/node_modules/@specforge/session-types/dist/stores/config-store-interface.d.ts +17 -0
  395. package/node_modules/@specforge/session-types/dist/stores/config-store-interface.d.ts.map +1 -0
  396. package/node_modules/@specforge/session-types/dist/stores/config-store-interface.js +2 -0
  397. package/node_modules/@specforge/session-types/dist/stores/config-store-interface.js.map +1 -0
  398. package/node_modules/@specforge/session-types/dist/stores/discovery-store.d.ts +31 -0
  399. package/node_modules/@specforge/session-types/dist/stores/discovery-store.d.ts.map +1 -0
  400. package/node_modules/@specforge/session-types/dist/stores/discovery-store.js +2 -0
  401. package/node_modules/@specforge/session-types/dist/stores/discovery-store.js.map +1 -0
  402. package/node_modules/@specforge/session-types/dist/stores/implementation-record-event-store.d.ts +19 -0
  403. package/node_modules/@specforge/session-types/dist/stores/implementation-record-event-store.d.ts.map +1 -0
  404. package/node_modules/@specforge/session-types/dist/stores/implementation-record-event-store.js +2 -0
  405. package/node_modules/@specforge/session-types/dist/stores/implementation-record-event-store.js.map +1 -0
  406. package/node_modules/@specforge/session-types/dist/stores/implementation-session-aggregate-store.d.ts +16 -0
  407. package/node_modules/@specforge/session-types/dist/stores/implementation-session-aggregate-store.d.ts.map +1 -0
  408. package/node_modules/@specforge/session-types/dist/stores/implementation-session-aggregate-store.js +2 -0
  409. package/node_modules/@specforge/session-types/dist/stores/implementation-session-aggregate-store.js.map +1 -0
  410. package/node_modules/@specforge/session-types/dist/stores/implementation-session-store.d.ts +28 -0
  411. package/node_modules/@specforge/session-types/dist/stores/implementation-session-store.d.ts.map +1 -0
  412. package/node_modules/@specforge/session-types/dist/stores/implementation-session-store.js +2 -0
  413. package/node_modules/@specforge/session-types/dist/stores/implementation-session-store.js.map +1 -0
  414. package/node_modules/@specforge/session-types/dist/stores/planning-entity-score-datapoint-store.d.ts +12 -0
  415. package/node_modules/@specforge/session-types/dist/stores/planning-entity-score-datapoint-store.d.ts.map +1 -0
  416. package/node_modules/@specforge/session-types/dist/stores/planning-entity-score-datapoint-store.js +2 -0
  417. package/node_modules/@specforge/session-types/dist/stores/planning-entity-score-datapoint-store.js.map +1 -0
  418. package/node_modules/@specforge/session-types/dist/stores/planning-phase-transition-store.d.ts +10 -0
  419. package/node_modules/@specforge/session-types/dist/stores/planning-phase-transition-store.d.ts.map +1 -0
  420. package/node_modules/@specforge/session-types/dist/stores/planning-phase-transition-store.js +2 -0
  421. package/node_modules/@specforge/session-types/dist/stores/planning-phase-transition-store.js.map +1 -0
  422. package/node_modules/@specforge/session-types/dist/stores/planning-session-action-store.d.ts +13 -0
  423. package/node_modules/@specforge/session-types/dist/stores/planning-session-action-store.d.ts.map +1 -0
  424. package/node_modules/@specforge/session-types/dist/stores/planning-session-action-store.js +2 -0
  425. package/node_modules/@specforge/session-types/dist/stores/planning-session-action-store.js.map +1 -0
  426. package/node_modules/@specforge/session-types/dist/stores/planning-session-aggregate-store.d.ts +10 -0
  427. package/node_modules/@specforge/session-types/dist/stores/planning-session-aggregate-store.d.ts.map +1 -0
  428. package/node_modules/@specforge/session-types/dist/stores/planning-session-aggregate-store.js +2 -0
  429. package/node_modules/@specforge/session-types/dist/stores/planning-session-aggregate-store.js.map +1 -0
  430. package/node_modules/@specforge/session-types/dist/stores/planning-session-store.d.ts +20 -0
  431. package/node_modules/@specforge/session-types/dist/stores/planning-session-store.d.ts.map +1 -0
  432. package/node_modules/@specforge/session-types/dist/stores/planning-session-store.js +2 -0
  433. package/node_modules/@specforge/session-types/dist/stores/planning-session-store.js.map +1 -0
  434. package/node_modules/@specforge/session-types/dist/stores/work-session-acceptance-check-store.d.ts +15 -0
  435. package/node_modules/@specforge/session-types/dist/stores/work-session-acceptance-check-store.d.ts.map +1 -0
  436. package/node_modules/@specforge/session-types/dist/stores/work-session-acceptance-check-store.js +2 -0
  437. package/node_modules/@specforge/session-types/dist/stores/work-session-acceptance-check-store.js.map +1 -0
  438. package/node_modules/@specforge/session-types/dist/stores/work-session-action-store.d.ts +29 -0
  439. package/node_modules/@specforge/session-types/dist/stores/work-session-action-store.d.ts.map +1 -0
  440. package/node_modules/@specforge/session-types/dist/stores/work-session-action-store.js +2 -0
  441. package/node_modules/@specforge/session-types/dist/stores/work-session-action-store.js.map +1 -0
  442. package/node_modules/@specforge/session-types/dist/stores/work-session-file-change-store.d.ts +9 -0
  443. package/node_modules/@specforge/session-types/dist/stores/work-session-file-change-store.d.ts.map +1 -0
  444. package/node_modules/@specforge/session-types/dist/stores/work-session-file-change-store.js +2 -0
  445. package/node_modules/@specforge/session-types/dist/stores/work-session-file-change-store.js.map +1 -0
  446. package/node_modules/@specforge/session-types/dist/stores/work-session-impl-step-completion-store.d.ts +9 -0
  447. package/node_modules/@specforge/session-types/dist/stores/work-session-impl-step-completion-store.d.ts.map +1 -0
  448. package/node_modules/@specforge/session-types/dist/stores/work-session-impl-step-completion-store.js +2 -0
  449. package/node_modules/@specforge/session-types/dist/stores/work-session-impl-step-completion-store.js.map +1 -0
  450. package/node_modules/@specforge/session-types/dist/stores/work-session-resolution-store.d.ts +10 -0
  451. package/node_modules/@specforge/session-types/dist/stores/work-session-resolution-store.d.ts.map +1 -0
  452. package/node_modules/@specforge/session-types/dist/stores/work-session-resolution-store.js +2 -0
  453. package/node_modules/@specforge/session-types/dist/stores/work-session-resolution-store.js.map +1 -0
  454. package/node_modules/@specforge/session-types/dist/stores/work-session-store.d.ts +23 -0
  455. package/node_modules/@specforge/session-types/dist/stores/work-session-store.d.ts.map +1 -0
  456. package/node_modules/@specforge/session-types/dist/stores/work-session-store.js +2 -0
  457. package/node_modules/@specforge/session-types/dist/stores/work-session-store.js.map +1 -0
  458. package/node_modules/@specforge/session-types/dist/stores/work-session-test-result-store.d.ts +8 -0
  459. package/node_modules/@specforge/session-types/dist/stores/work-session-test-result-store.d.ts.map +1 -0
  460. package/node_modules/@specforge/session-types/dist/stores/work-session-test-result-store.js +2 -0
  461. package/node_modules/@specforge/session-types/dist/stores/work-session-test-result-store.js.map +1 -0
  462. package/node_modules/@specforge/session-types/dist/stores/working-context-store.d.ts +27 -0
  463. package/node_modules/@specforge/session-types/dist/stores/working-context-store.d.ts.map +1 -0
  464. package/node_modules/@specforge/session-types/dist/stores/working-context-store.js +2 -0
  465. package/node_modules/@specforge/session-types/dist/stores/working-context-store.js.map +1 -0
  466. package/node_modules/@specforge/session-types/package.json +43 -0
  467. package/node_modules/@specforge/spec-types/README.md +28 -0
  468. package/node_modules/@specforge/spec-types/dist/index.d.ts +4 -0
  469. package/node_modules/@specforge/spec-types/dist/index.d.ts.map +1 -0
  470. package/node_modules/@specforge/spec-types/dist/index.js +6 -0
  471. package/node_modules/@specforge/spec-types/dist/index.js.map +1 -0
  472. package/node_modules/@specforge/spec-types/dist/json-schema/v1.1/openspec.schema.json +1129 -0
  473. package/node_modules/@specforge/spec-types/dist/openspec-schema.d.ts +4 -0
  474. package/node_modules/@specforge/spec-types/dist/openspec-schema.d.ts.map +1 -0
  475. package/node_modules/@specforge/spec-types/dist/openspec-schema.js +77 -0
  476. package/node_modules/@specforge/spec-types/dist/openspec-schema.js.map +1 -0
  477. package/node_modules/@specforge/spec-types/dist/runtime/auxiliary.d.ts +14 -0
  478. package/node_modules/@specforge/spec-types/dist/runtime/auxiliary.d.ts.map +1 -0
  479. package/node_modules/@specforge/spec-types/dist/runtime/auxiliary.js +2 -0
  480. package/node_modules/@specforge/spec-types/dist/runtime/auxiliary.js.map +1 -0
  481. package/node_modules/@specforge/spec-types/dist/runtime/blueprint.d.ts +7 -0
  482. package/node_modules/@specforge/spec-types/dist/runtime/blueprint.d.ts.map +1 -0
  483. package/node_modules/@specforge/spec-types/dist/runtime/blueprint.js +2 -0
  484. package/node_modules/@specforge/spec-types/dist/runtime/blueprint.js.map +1 -0
  485. package/node_modules/@specforge/spec-types/dist/runtime/epic.d.ts +2 -0
  486. package/node_modules/@specforge/spec-types/dist/runtime/epic.d.ts.map +1 -0
  487. package/node_modules/@specforge/spec-types/dist/runtime/epic.js +2 -0
  488. package/node_modules/@specforge/spec-types/dist/runtime/epic.js.map +1 -0
  489. package/node_modules/@specforge/spec-types/dist/runtime/index.d.ts +7 -0
  490. package/node_modules/@specforge/spec-types/dist/runtime/index.d.ts.map +1 -0
  491. package/node_modules/@specforge/spec-types/dist/runtime/index.js +7 -0
  492. package/node_modules/@specforge/spec-types/dist/runtime/index.js.map +1 -0
  493. package/node_modules/@specforge/spec-types/dist/runtime/planning/api-contract.d.ts +2 -0
  494. package/node_modules/@specforge/spec-types/dist/runtime/planning/api-contract.d.ts.map +1 -0
  495. package/node_modules/@specforge/spec-types/dist/runtime/planning/api-contract.js +2 -0
  496. package/node_modules/@specforge/spec-types/dist/runtime/planning/api-contract.js.map +1 -0
  497. package/node_modules/@specforge/spec-types/dist/runtime/planning/goal.d.ts +2 -0
  498. package/node_modules/@specforge/spec-types/dist/runtime/planning/goal.d.ts.map +1 -0
  499. package/node_modules/@specforge/spec-types/dist/runtime/planning/goal.js +2 -0
  500. package/node_modules/@specforge/spec-types/dist/runtime/planning/goal.js.map +1 -0
  501. package/node_modules/@specforge/spec-types/dist/runtime/planning/guardrail.d.ts +2 -0
  502. package/node_modules/@specforge/spec-types/dist/runtime/planning/guardrail.d.ts.map +1 -0
  503. package/node_modules/@specforge/spec-types/dist/runtime/planning/guardrail.js +2 -0
  504. package/node_modules/@specforge/spec-types/dist/runtime/planning/guardrail.js.map +1 -0
  505. package/node_modules/@specforge/spec-types/dist/runtime/planning/index.d.ts +10 -0
  506. package/node_modules/@specforge/spec-types/dist/runtime/planning/index.d.ts.map +1 -0
  507. package/node_modules/@specforge/spec-types/dist/runtime/planning/index.js +10 -0
  508. package/node_modules/@specforge/spec-types/dist/runtime/planning/index.js.map +1 -0
  509. package/node_modules/@specforge/spec-types/dist/runtime/planning/nfr.d.ts +2 -0
  510. package/node_modules/@specforge/spec-types/dist/runtime/planning/nfr.d.ts.map +1 -0
  511. package/node_modules/@specforge/spec-types/dist/runtime/planning/nfr.js +2 -0
  512. package/node_modules/@specforge/spec-types/dist/runtime/planning/nfr.js.map +1 -0
  513. package/node_modules/@specforge/spec-types/dist/runtime/planning/requirement.d.ts +2 -0
  514. package/node_modules/@specforge/spec-types/dist/runtime/planning/requirement.d.ts.map +1 -0
  515. package/node_modules/@specforge/spec-types/dist/runtime/planning/requirement.js +2 -0
  516. package/node_modules/@specforge/spec-types/dist/runtime/planning/requirement.js.map +1 -0
  517. package/node_modules/@specforge/spec-types/dist/runtime/planning/scope.d.ts +2 -0
  518. package/node_modules/@specforge/spec-types/dist/runtime/planning/scope.d.ts.map +1 -0
  519. package/node_modules/@specforge/spec-types/dist/runtime/planning/scope.js +2 -0
  520. package/node_modules/@specforge/spec-types/dist/runtime/planning/scope.js.map +1 -0
  521. package/node_modules/@specforge/spec-types/dist/runtime/planning/shared-pattern.d.ts +2 -0
  522. package/node_modules/@specforge/spec-types/dist/runtime/planning/shared-pattern.d.ts.map +1 -0
  523. package/node_modules/@specforge/spec-types/dist/runtime/planning/shared-pattern.js +2 -0
  524. package/node_modules/@specforge/spec-types/dist/runtime/planning/shared-pattern.js.map +1 -0
  525. package/node_modules/@specforge/spec-types/dist/runtime/planning/structure-item.d.ts +2 -0
  526. package/node_modules/@specforge/spec-types/dist/runtime/planning/structure-item.d.ts.map +1 -0
  527. package/node_modules/@specforge/spec-types/dist/runtime/planning/structure-item.js +2 -0
  528. package/node_modules/@specforge/spec-types/dist/runtime/planning/structure-item.js.map +1 -0
  529. package/node_modules/@specforge/spec-types/dist/runtime/planning/tech-stack.d.ts +2 -0
  530. package/node_modules/@specforge/spec-types/dist/runtime/planning/tech-stack.d.ts.map +1 -0
  531. package/node_modules/@specforge/spec-types/dist/runtime/planning/tech-stack.js +2 -0
  532. package/node_modules/@specforge/spec-types/dist/runtime/planning/tech-stack.js.map +1 -0
  533. package/node_modules/@specforge/spec-types/dist/runtime/specification.d.ts +2 -0
  534. package/node_modules/@specforge/spec-types/dist/runtime/specification.d.ts.map +1 -0
  535. package/node_modules/@specforge/spec-types/dist/runtime/specification.js +2 -0
  536. package/node_modules/@specforge/spec-types/dist/runtime/specification.js.map +1 -0
  537. package/node_modules/@specforge/spec-types/dist/runtime/ticket.d.ts +2 -0
  538. package/node_modules/@specforge/spec-types/dist/runtime/ticket.d.ts.map +1 -0
  539. package/node_modules/@specforge/spec-types/dist/runtime/ticket.js +2 -0
  540. package/node_modules/@specforge/spec-types/dist/runtime/ticket.js.map +1 -0
  541. package/node_modules/@specforge/spec-types/dist/schema/auxiliary.d.ts +266 -0
  542. package/node_modules/@specforge/spec-types/dist/schema/auxiliary.d.ts.map +1 -0
  543. package/node_modules/@specforge/spec-types/dist/schema/auxiliary.js +143 -0
  544. package/node_modules/@specforge/spec-types/dist/schema/auxiliary.js.map +1 -0
  545. package/node_modules/@specforge/spec-types/dist/schema/blueprint.d.ts +47 -0
  546. package/node_modules/@specforge/spec-types/dist/schema/blueprint.d.ts.map +1 -0
  547. package/node_modules/@specforge/spec-types/dist/schema/blueprint.js +33 -0
  548. package/node_modules/@specforge/spec-types/dist/schema/blueprint.js.map +1 -0
  549. package/node_modules/@specforge/spec-types/dist/schema/entity-field-schemas.d.ts +33 -0
  550. package/node_modules/@specforge/spec-types/dist/schema/entity-field-schemas.d.ts.map +1 -0
  551. package/node_modules/@specforge/spec-types/dist/schema/entity-field-schemas.js +181 -0
  552. package/node_modules/@specforge/spec-types/dist/schema/entity-field-schemas.js.map +1 -0
  553. package/node_modules/@specforge/spec-types/dist/schema/epic.d.ts +955 -0
  554. package/node_modules/@specforge/spec-types/dist/schema/epic.d.ts.map +1 -0
  555. package/node_modules/@specforge/spec-types/dist/schema/epic.js +33 -0
  556. package/node_modules/@specforge/spec-types/dist/schema/epic.js.map +1 -0
  557. package/node_modules/@specforge/spec-types/dist/schema/index.d.ts +12 -0
  558. package/node_modules/@specforge/spec-types/dist/schema/index.d.ts.map +1 -0
  559. package/node_modules/@specforge/spec-types/dist/schema/index.js +25 -0
  560. package/node_modules/@specforge/spec-types/dist/schema/index.js.map +1 -0
  561. package/node_modules/@specforge/spec-types/dist/schema/node-verb-steps.d.ts +174 -0
  562. package/node_modules/@specforge/spec-types/dist/schema/node-verb-steps.d.ts.map +1 -0
  563. package/node_modules/@specforge/spec-types/dist/schema/node-verb-steps.js +317 -0
  564. package/node_modules/@specforge/spec-types/dist/schema/node-verb-steps.js.map +1 -0
  565. package/node_modules/@specforge/spec-types/dist/schema/patterns.d.ts +274 -0
  566. package/node_modules/@specforge/spec-types/dist/schema/patterns.d.ts.map +1 -0
  567. package/node_modules/@specforge/spec-types/dist/schema/patterns.js +106 -0
  568. package/node_modules/@specforge/spec-types/dist/schema/patterns.js.map +1 -0
  569. package/node_modules/@specforge/spec-types/dist/schema/planning/api-contract.d.ts +44 -0
  570. package/node_modules/@specforge/spec-types/dist/schema/planning/api-contract.d.ts.map +1 -0
  571. package/node_modules/@specforge/spec-types/dist/schema/planning/api-contract.js +13 -0
  572. package/node_modules/@specforge/spec-types/dist/schema/planning/api-contract.js.map +1 -0
  573. package/node_modules/@specforge/spec-types/dist/schema/planning/epic-category.d.ts +21 -0
  574. package/node_modules/@specforge/spec-types/dist/schema/planning/epic-category.d.ts.map +1 -0
  575. package/node_modules/@specforge/spec-types/dist/schema/planning/epic-category.js +14 -0
  576. package/node_modules/@specforge/spec-types/dist/schema/planning/epic-category.js.map +1 -0
  577. package/node_modules/@specforge/spec-types/dist/schema/planning/goal.d.ts +27 -0
  578. package/node_modules/@specforge/spec-types/dist/schema/planning/goal.d.ts.map +1 -0
  579. package/node_modules/@specforge/spec-types/dist/schema/planning/goal.js +13 -0
  580. package/node_modules/@specforge/spec-types/dist/schema/planning/goal.js.map +1 -0
  581. package/node_modules/@specforge/spec-types/dist/schema/planning/guardrail.d.ts +29 -0
  582. package/node_modules/@specforge/spec-types/dist/schema/planning/guardrail.d.ts.map +1 -0
  583. package/node_modules/@specforge/spec-types/dist/schema/planning/guardrail.js +14 -0
  584. package/node_modules/@specforge/spec-types/dist/schema/planning/guardrail.js.map +1 -0
  585. package/node_modules/@specforge/spec-types/dist/schema/planning/index.d.ts +12 -0
  586. package/node_modules/@specforge/spec-types/dist/schema/planning/index.d.ts.map +1 -0
  587. package/node_modules/@specforge/spec-types/dist/schema/planning/index.js +12 -0
  588. package/node_modules/@specforge/spec-types/dist/schema/planning/index.js.map +1 -0
  589. package/node_modules/@specforge/spec-types/dist/schema/planning/nfr.d.ts +27 -0
  590. package/node_modules/@specforge/spec-types/dist/schema/planning/nfr.d.ts.map +1 -0
  591. package/node_modules/@specforge/spec-types/dist/schema/planning/nfr.js +15 -0
  592. package/node_modules/@specforge/spec-types/dist/schema/planning/nfr.js.map +1 -0
  593. package/node_modules/@specforge/spec-types/dist/schema/planning/planning-type.d.ts +17 -0
  594. package/node_modules/@specforge/spec-types/dist/schema/planning/planning-type.d.ts.map +1 -0
  595. package/node_modules/@specforge/spec-types/dist/schema/planning/planning-type.js +16 -0
  596. package/node_modules/@specforge/spec-types/dist/schema/planning/planning-type.js.map +1 -0
  597. package/node_modules/@specforge/spec-types/dist/schema/planning/requirement.d.ts +63 -0
  598. package/node_modules/@specforge/spec-types/dist/schema/planning/requirement.d.ts.map +1 -0
  599. package/node_modules/@specforge/spec-types/dist/schema/planning/requirement.js +16 -0
  600. package/node_modules/@specforge/spec-types/dist/schema/planning/requirement.js.map +1 -0
  601. package/node_modules/@specforge/spec-types/dist/schema/planning/scope.d.ts +19 -0
  602. package/node_modules/@specforge/spec-types/dist/schema/planning/scope.d.ts.map +1 -0
  603. package/node_modules/@specforge/spec-types/dist/schema/planning/scope.js +8 -0
  604. package/node_modules/@specforge/spec-types/dist/schema/planning/scope.js.map +1 -0
  605. package/node_modules/@specforge/spec-types/dist/schema/planning/shared-pattern.d.ts +51 -0
  606. package/node_modules/@specforge/spec-types/dist/schema/planning/shared-pattern.d.ts.map +1 -0
  607. package/node_modules/@specforge/spec-types/dist/schema/planning/shared-pattern.js +16 -0
  608. package/node_modules/@specforge/spec-types/dist/schema/planning/shared-pattern.js.map +1 -0
  609. package/node_modules/@specforge/spec-types/dist/schema/planning/structure-item.d.ts +19 -0
  610. package/node_modules/@specforge/spec-types/dist/schema/planning/structure-item.d.ts.map +1 -0
  611. package/node_modules/@specforge/spec-types/dist/schema/planning/structure-item.js +8 -0
  612. package/node_modules/@specforge/spec-types/dist/schema/planning/structure-item.js.map +1 -0
  613. package/node_modules/@specforge/spec-types/dist/schema/planning/tech-stack.d.ts +27 -0
  614. package/node_modules/@specforge/spec-types/dist/schema/planning/tech-stack.d.ts.map +1 -0
  615. package/node_modules/@specforge/spec-types/dist/schema/planning/tech-stack.js +14 -0
  616. package/node_modules/@specforge/spec-types/dist/schema/planning/tech-stack.js.map +1 -0
  617. package/node_modules/@specforge/spec-types/dist/schema/specification.d.ts +1839 -0
  618. package/node_modules/@specforge/spec-types/dist/schema/specification.d.ts.map +1 -0
  619. package/node_modules/@specforge/spec-types/dist/schema/specification.js +43 -0
  620. package/node_modules/@specforge/spec-types/dist/schema/specification.js.map +1 -0
  621. package/node_modules/@specforge/spec-types/dist/schema/step-link-coverage.d.ts +58 -0
  622. package/node_modules/@specforge/spec-types/dist/schema/step-link-coverage.d.ts.map +1 -0
  623. package/node_modules/@specforge/spec-types/dist/schema/step-link-coverage.js +73 -0
  624. package/node_modules/@specforge/spec-types/dist/schema/step-link-coverage.js.map +1 -0
  625. package/node_modules/@specforge/spec-types/dist/schema/step-link-ids.d.ts +71 -0
  626. package/node_modules/@specforge/spec-types/dist/schema/step-link-ids.d.ts.map +1 -0
  627. package/node_modules/@specforge/spec-types/dist/schema/step-link-ids.js +96 -0
  628. package/node_modules/@specforge/spec-types/dist/schema/step-link-ids.js.map +1 -0
  629. package/node_modules/@specforge/spec-types/dist/schema/ticket.d.ts +444 -0
  630. package/node_modules/@specforge/spec-types/dist/schema/ticket.d.ts.map +1 -0
  631. package/node_modules/@specforge/spec-types/dist/schema/ticket.js +49 -0
  632. package/node_modules/@specforge/spec-types/dist/schema/ticket.js.map +1 -0
  633. package/node_modules/@specforge/spec-types/package.json +41 -0
  634. package/package.json +40 -25
  635. package/src/cli/templates/agents/content/core/sfag-orchestrator.ts +135 -51
  636. package/src/cli/templates/agents/content/core/sfag-spec-creator.ts +124 -83
  637. package/src/cli/templates/agents/content/core/sfag-ticket-implementer.ts +247 -163
  638. package/src/cli/templates/agents/content/core/sfag-work-resolver.ts +211 -0
  639. package/src/cli/templates/agents/index.ts +2 -0
  640. package/src/cli/templates/content/sf-commit.ts +2 -2
  641. package/src/cli/templates/content/sf-reset.ts +45 -28
  642. package/src/cli/templates/skills/specforge-orchestrator.md +15 -10
  643. package/src/cli/templates/skills/specforge-worker.md +4 -3
@@ -0,0 +1,574 @@
1
+ import { z } from 'zod';
2
+ export declare const PendingHumanFeedbackSchema: z.ZodObject<{
3
+ content: z.ZodString;
4
+ recordedAt: z.ZodString;
5
+ recordedByUserId: z.ZodString;
6
+ }, "strip", z.ZodTypeAny, {
7
+ content: string;
8
+ recordedAt: string;
9
+ recordedByUserId: string;
10
+ }, {
11
+ content: string;
12
+ recordedAt: string;
13
+ recordedByUserId: string;
14
+ }>;
15
+ export type PendingHumanFeedback = z.infer<typeof PendingHumanFeedbackSchema>;
16
+ export declare const PlanningSessionSchema: z.ZodObject<{
17
+ id: z.ZodString;
18
+ specificationId: z.ZodString;
19
+ projectId: z.ZodString;
20
+ status: z.ZodEnum<["active", "awaiting_human_review", "closed"]>;
21
+ currentPhase: z.ZodEnum<["planning_spec", "epic_decomposition", "epic_expansion", "ticket_decomposition", "ticket_expansion", "cross_validation", "planned"]>;
22
+ startedAt: z.ZodString;
23
+ lastActionAt: z.ZodString;
24
+ completedAt: z.ZodOptional<z.ZodString>;
25
+ closedAt: z.ZodOptional<z.ZodString>;
26
+ lastScore: z.ZodOptional<z.ZodNumber>;
27
+ lastGlobalScore: z.ZodOptional<z.ZodNumber>;
28
+ actionsCount: z.ZodDefault<z.ZodNumber>;
29
+ lastProcessGuidance: z.ZodOptional<z.ZodObject<{
30
+ variant: z.ZodEnum<["denied", "gate_failed", "gate_passed", "human_handover", "human_feedback", "phase_advance", "phase_rollback", "phase_complete", "phase_status_report", "awaiting_human_review_handover", "human_feedback_received", "human_rejected_no_feedback", "phase_advanced_after_approve", "session_closed"]>;
31
+ headline: z.ZodString;
32
+ status: z.ZodObject<{
33
+ sessionStatus: z.ZodEnum<["active", "awaiting_human_review", "closed"]>;
34
+ currentPhase: z.ZodEnum<["planning_spec", "epic_decomposition", "epic_expansion", "ticket_decomposition", "ticket_expansion", "cross_validation", "planned"]>;
35
+ score: z.ZodOptional<z.ZodObject<{
36
+ current: z.ZodNumber;
37
+ threshold: z.ZodNumber;
38
+ gateResult: z.ZodEnum<["pass", "fail"]>;
39
+ globalContribution: z.ZodOptional<z.ZodNumber>;
40
+ }, "strip", z.ZodTypeAny, {
41
+ current: number;
42
+ threshold: number;
43
+ gateResult: "pass" | "fail";
44
+ globalContribution?: number | undefined;
45
+ }, {
46
+ current: number;
47
+ threshold: number;
48
+ gateResult: "pass" | "fail";
49
+ globalContribution?: number | undefined;
50
+ }>>;
51
+ actionsCount: z.ZodNumber;
52
+ }, "strip", z.ZodTypeAny, {
53
+ sessionStatus: "active" | "awaiting_human_review" | "closed";
54
+ currentPhase: "planning_spec" | "epic_decomposition" | "epic_expansion" | "ticket_decomposition" | "ticket_expansion" | "cross_validation" | "planned";
55
+ actionsCount: number;
56
+ score?: {
57
+ current: number;
58
+ threshold: number;
59
+ gateResult: "pass" | "fail";
60
+ globalContribution?: number | undefined;
61
+ } | undefined;
62
+ }, {
63
+ sessionStatus: "active" | "awaiting_human_review" | "closed";
64
+ currentPhase: "planning_spec" | "epic_decomposition" | "epic_expansion" | "ticket_decomposition" | "ticket_expansion" | "cross_validation" | "planned";
65
+ actionsCount: number;
66
+ score?: {
67
+ current: number;
68
+ threshold: number;
69
+ gateResult: "pass" | "fail";
70
+ globalContribution?: number | undefined;
71
+ } | undefined;
72
+ }>;
73
+ findings: z.ZodOptional<z.ZodObject<{
74
+ summary: z.ZodString;
75
+ truncated: z.ZodDefault<z.ZodBoolean>;
76
+ grouped: z.ZodArray<z.ZodObject<{
77
+ category: z.ZodEnum<["rubric", "count", "cross-cut", "cascade", "cross-validation", "schema"]>;
78
+ items: z.ZodArray<z.ZodObject<{
79
+ entityId: z.ZodOptional<z.ZodString>;
80
+ entityType: z.ZodOptional<z.ZodString>;
81
+ path: z.ZodOptional<z.ZodString>;
82
+ message: z.ZodString;
83
+ severity: z.ZodEnum<["finding", "denial"]>;
84
+ pointsLost: z.ZodOptional<z.ZodNumber>;
85
+ globalImpactOnFix: z.ZodOptional<z.ZodNumber>;
86
+ }, "strip", z.ZodTypeAny, {
87
+ message: string;
88
+ severity: "finding" | "denial";
89
+ path?: string | undefined;
90
+ entityId?: string | undefined;
91
+ entityType?: string | undefined;
92
+ pointsLost?: number | undefined;
93
+ globalImpactOnFix?: number | undefined;
94
+ }, {
95
+ message: string;
96
+ severity: "finding" | "denial";
97
+ path?: string | undefined;
98
+ entityId?: string | undefined;
99
+ entityType?: string | undefined;
100
+ pointsLost?: number | undefined;
101
+ globalImpactOnFix?: number | undefined;
102
+ }>, "many">;
103
+ }, "strip", z.ZodTypeAny, {
104
+ category: "rubric" | "count" | "cross-cut" | "cascade" | "cross-validation" | "schema";
105
+ items: {
106
+ message: string;
107
+ severity: "finding" | "denial";
108
+ path?: string | undefined;
109
+ entityId?: string | undefined;
110
+ entityType?: string | undefined;
111
+ pointsLost?: number | undefined;
112
+ globalImpactOnFix?: number | undefined;
113
+ }[];
114
+ }, {
115
+ category: "rubric" | "count" | "cross-cut" | "cascade" | "cross-validation" | "schema";
116
+ items: {
117
+ message: string;
118
+ severity: "finding" | "denial";
119
+ path?: string | undefined;
120
+ entityId?: string | undefined;
121
+ entityType?: string | undefined;
122
+ pointsLost?: number | undefined;
123
+ globalImpactOnFix?: number | undefined;
124
+ }[];
125
+ }>, "many">;
126
+ }, "strip", z.ZodTypeAny, {
127
+ summary: string;
128
+ truncated: boolean;
129
+ grouped: {
130
+ category: "rubric" | "count" | "cross-cut" | "cascade" | "cross-validation" | "schema";
131
+ items: {
132
+ message: string;
133
+ severity: "finding" | "denial";
134
+ path?: string | undefined;
135
+ entityId?: string | undefined;
136
+ entityType?: string | undefined;
137
+ pointsLost?: number | undefined;
138
+ globalImpactOnFix?: number | undefined;
139
+ }[];
140
+ }[];
141
+ }, {
142
+ summary: string;
143
+ grouped: {
144
+ category: "rubric" | "count" | "cross-cut" | "cascade" | "cross-validation" | "schema";
145
+ items: {
146
+ message: string;
147
+ severity: "finding" | "denial";
148
+ path?: string | undefined;
149
+ entityId?: string | undefined;
150
+ entityType?: string | undefined;
151
+ pointsLost?: number | undefined;
152
+ globalImpactOnFix?: number | undefined;
153
+ }[];
154
+ }[];
155
+ truncated?: boolean | undefined;
156
+ }>>;
157
+ recommendedMoves: z.ZodOptional<z.ZodArray<z.ZodObject<{
158
+ operation: z.ZodString;
159
+ rationale: z.ZodString;
160
+ examplePayload: z.ZodOptional<z.ZodUnknown>;
161
+ }, "strip", z.ZodTypeAny, {
162
+ operation: string;
163
+ rationale: string;
164
+ examplePayload?: unknown;
165
+ }, {
166
+ operation: string;
167
+ rationale: string;
168
+ examplePayload?: unknown;
169
+ }>, "many">>;
170
+ body: z.ZodString;
171
+ composedAt: z.ZodString;
172
+ }, "strip", z.ZodTypeAny, {
173
+ variant: "denied" | "gate_failed" | "gate_passed" | "human_handover" | "human_feedback" | "phase_advance" | "phase_rollback" | "phase_complete" | "phase_status_report" | "awaiting_human_review_handover" | "human_feedback_received" | "human_rejected_no_feedback" | "phase_advanced_after_approve" | "session_closed";
174
+ status: {
175
+ sessionStatus: "active" | "awaiting_human_review" | "closed";
176
+ currentPhase: "planning_spec" | "epic_decomposition" | "epic_expansion" | "ticket_decomposition" | "ticket_expansion" | "cross_validation" | "planned";
177
+ actionsCount: number;
178
+ score?: {
179
+ current: number;
180
+ threshold: number;
181
+ gateResult: "pass" | "fail";
182
+ globalContribution?: number | undefined;
183
+ } | undefined;
184
+ };
185
+ headline: string;
186
+ body: string;
187
+ composedAt: string;
188
+ findings?: {
189
+ summary: string;
190
+ truncated: boolean;
191
+ grouped: {
192
+ category: "rubric" | "count" | "cross-cut" | "cascade" | "cross-validation" | "schema";
193
+ items: {
194
+ message: string;
195
+ severity: "finding" | "denial";
196
+ path?: string | undefined;
197
+ entityId?: string | undefined;
198
+ entityType?: string | undefined;
199
+ pointsLost?: number | undefined;
200
+ globalImpactOnFix?: number | undefined;
201
+ }[];
202
+ }[];
203
+ } | undefined;
204
+ recommendedMoves?: {
205
+ operation: string;
206
+ rationale: string;
207
+ examplePayload?: unknown;
208
+ }[] | undefined;
209
+ }, {
210
+ variant: "denied" | "gate_failed" | "gate_passed" | "human_handover" | "human_feedback" | "phase_advance" | "phase_rollback" | "phase_complete" | "phase_status_report" | "awaiting_human_review_handover" | "human_feedback_received" | "human_rejected_no_feedback" | "phase_advanced_after_approve" | "session_closed";
211
+ status: {
212
+ sessionStatus: "active" | "awaiting_human_review" | "closed";
213
+ currentPhase: "planning_spec" | "epic_decomposition" | "epic_expansion" | "ticket_decomposition" | "ticket_expansion" | "cross_validation" | "planned";
214
+ actionsCount: number;
215
+ score?: {
216
+ current: number;
217
+ threshold: number;
218
+ gateResult: "pass" | "fail";
219
+ globalContribution?: number | undefined;
220
+ } | undefined;
221
+ };
222
+ headline: string;
223
+ body: string;
224
+ composedAt: string;
225
+ findings?: {
226
+ summary: string;
227
+ grouped: {
228
+ category: "rubric" | "count" | "cross-cut" | "cascade" | "cross-validation" | "schema";
229
+ items: {
230
+ message: string;
231
+ severity: "finding" | "denial";
232
+ path?: string | undefined;
233
+ entityId?: string | undefined;
234
+ entityType?: string | undefined;
235
+ pointsLost?: number | undefined;
236
+ globalImpactOnFix?: number | undefined;
237
+ }[];
238
+ }[];
239
+ truncated?: boolean | undefined;
240
+ } | undefined;
241
+ recommendedMoves?: {
242
+ operation: string;
243
+ rationale: string;
244
+ examplePayload?: unknown;
245
+ }[] | undefined;
246
+ }>>;
247
+ lastLifecyclePlanningGuidance: z.ZodOptional<z.ZodObject<{
248
+ variant: z.ZodEnum<["denied", "gate_failed", "gate_passed", "human_handover", "human_feedback", "phase_advance", "phase_rollback", "phase_complete", "phase_status_report", "awaiting_human_review_handover", "human_feedback_received", "human_rejected_no_feedback", "phase_advanced_after_approve", "session_closed"]>;
249
+ fieldsToFill: z.ZodOptional<z.ZodArray<z.ZodObject<{
250
+ fieldId: z.ZodString;
251
+ name: z.ZodString;
252
+ description: z.ZodString;
253
+ required: z.ZodBoolean;
254
+ currentState: z.ZodEnum<["empty", "partial", "filled", "na"]>;
255
+ minCount: z.ZodOptional<z.ZodNumber>;
256
+ examples: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
257
+ shape: z.ZodOptional<z.ZodString>;
258
+ interview_hooks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
259
+ naEligible: z.ZodOptional<z.ZodBoolean>;
260
+ na_when: z.ZodOptional<z.ZodString>;
261
+ tier: z.ZodOptional<z.ZodEnum<["critical", "recommended", "standard"]>>;
262
+ }, "strip", z.ZodTypeAny, {
263
+ fieldId: string;
264
+ name: string;
265
+ description: string;
266
+ required: boolean;
267
+ currentState: "empty" | "partial" | "filled" | "na";
268
+ minCount?: number | undefined;
269
+ examples?: string[] | undefined;
270
+ shape?: string | undefined;
271
+ interview_hooks?: string[] | undefined;
272
+ naEligible?: boolean | undefined;
273
+ na_when?: string | undefined;
274
+ tier?: "critical" | "recommended" | "standard" | undefined;
275
+ }, {
276
+ fieldId: string;
277
+ name: string;
278
+ description: string;
279
+ required: boolean;
280
+ currentState: "empty" | "partial" | "filled" | "na";
281
+ minCount?: number | undefined;
282
+ examples?: string[] | undefined;
283
+ shape?: string | undefined;
284
+ interview_hooks?: string[] | undefined;
285
+ naEligible?: boolean | undefined;
286
+ na_when?: string | undefined;
287
+ tier?: "critical" | "recommended" | "standard" | undefined;
288
+ }>, "many">>;
289
+ humanHandoff: z.ZodOptional<z.ZodObject<{
290
+ message: z.ZodString;
291
+ observatoryLink: z.ZodOptional<z.ZodString>;
292
+ iterationNeeded: z.ZodOptional<z.ZodObject<{
293
+ focus: z.ZodString;
294
+ suggestion: z.ZodString;
295
+ }, "strip", z.ZodTypeAny, {
296
+ focus: string;
297
+ suggestion: string;
298
+ }, {
299
+ focus: string;
300
+ suggestion: string;
301
+ }>>;
302
+ }, "strip", z.ZodTypeAny, {
303
+ message: string;
304
+ observatoryLink?: string | undefined;
305
+ iterationNeeded?: {
306
+ focus: string;
307
+ suggestion: string;
308
+ } | undefined;
309
+ }, {
310
+ message: string;
311
+ observatoryLink?: string | undefined;
312
+ iterationNeeded?: {
313
+ focus: string;
314
+ suggestion: string;
315
+ } | undefined;
316
+ }>>;
317
+ postApprovalActions: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
318
+ composedAt: z.ZodString;
319
+ }, "strip", z.ZodTypeAny, {
320
+ variant: "denied" | "gate_failed" | "gate_passed" | "human_handover" | "human_feedback" | "phase_advance" | "phase_rollback" | "phase_complete" | "phase_status_report" | "awaiting_human_review_handover" | "human_feedback_received" | "human_rejected_no_feedback" | "phase_advanced_after_approve" | "session_closed";
321
+ composedAt: string;
322
+ fieldsToFill?: {
323
+ fieldId: string;
324
+ name: string;
325
+ description: string;
326
+ required: boolean;
327
+ currentState: "empty" | "partial" | "filled" | "na";
328
+ minCount?: number | undefined;
329
+ examples?: string[] | undefined;
330
+ shape?: string | undefined;
331
+ interview_hooks?: string[] | undefined;
332
+ naEligible?: boolean | undefined;
333
+ na_when?: string | undefined;
334
+ tier?: "critical" | "recommended" | "standard" | undefined;
335
+ }[] | undefined;
336
+ humanHandoff?: {
337
+ message: string;
338
+ observatoryLink?: string | undefined;
339
+ iterationNeeded?: {
340
+ focus: string;
341
+ suggestion: string;
342
+ } | undefined;
343
+ } | undefined;
344
+ postApprovalActions?: string[] | undefined;
345
+ }, {
346
+ variant: "denied" | "gate_failed" | "gate_passed" | "human_handover" | "human_feedback" | "phase_advance" | "phase_rollback" | "phase_complete" | "phase_status_report" | "awaiting_human_review_handover" | "human_feedback_received" | "human_rejected_no_feedback" | "phase_advanced_after_approve" | "session_closed";
347
+ composedAt: string;
348
+ fieldsToFill?: {
349
+ fieldId: string;
350
+ name: string;
351
+ description: string;
352
+ required: boolean;
353
+ currentState: "empty" | "partial" | "filled" | "na";
354
+ minCount?: number | undefined;
355
+ examples?: string[] | undefined;
356
+ shape?: string | undefined;
357
+ interview_hooks?: string[] | undefined;
358
+ naEligible?: boolean | undefined;
359
+ na_when?: string | undefined;
360
+ tier?: "critical" | "recommended" | "standard" | undefined;
361
+ }[] | undefined;
362
+ humanHandoff?: {
363
+ message: string;
364
+ observatoryLink?: string | undefined;
365
+ iterationNeeded?: {
366
+ focus: string;
367
+ suggestion: string;
368
+ } | undefined;
369
+ } | undefined;
370
+ postApprovalActions?: string[] | undefined;
371
+ }>>;
372
+ pendingHumanFeedback: z.ZodOptional<z.ZodNullable<z.ZodObject<{
373
+ content: z.ZodString;
374
+ recordedAt: z.ZodString;
375
+ recordedByUserId: z.ZodString;
376
+ }, "strip", z.ZodTypeAny, {
377
+ content: string;
378
+ recordedAt: string;
379
+ recordedByUserId: string;
380
+ }, {
381
+ content: string;
382
+ recordedAt: string;
383
+ recordedByUserId: string;
384
+ }>>>;
385
+ lastTransitionTrigger: z.ZodEnum<["auto_initial", "ai_agent", "human_approve", "human_reject_with_feedback", "human_reject_no_feedback"]>;
386
+ lastTransitionAt: z.ZodString;
387
+ lastReadAt: z.ZodString;
388
+ lastValidatorOutput: z.ZodOptional<z.ZodUnknown>;
389
+ lastGateResult: z.ZodOptional<z.ZodEnum<["pass", "fail"]>>;
390
+ lastValidatedAt: z.ZodOptional<z.ZodString>;
391
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
392
+ }, "strip", z.ZodTypeAny, {
393
+ status: "active" | "awaiting_human_review" | "closed";
394
+ currentPhase: "planning_spec" | "epic_decomposition" | "epic_expansion" | "ticket_decomposition" | "ticket_expansion" | "cross_validation" | "planned";
395
+ actionsCount: number;
396
+ id: string;
397
+ specificationId: string;
398
+ projectId: string;
399
+ startedAt: string;
400
+ lastActionAt: string;
401
+ lastTransitionTrigger: "auto_initial" | "ai_agent" | "human_approve" | "human_reject_with_feedback" | "human_reject_no_feedback";
402
+ lastTransitionAt: string;
403
+ lastReadAt: string;
404
+ completedAt?: string | undefined;
405
+ closedAt?: string | undefined;
406
+ lastScore?: number | undefined;
407
+ lastGlobalScore?: number | undefined;
408
+ lastProcessGuidance?: {
409
+ variant: "denied" | "gate_failed" | "gate_passed" | "human_handover" | "human_feedback" | "phase_advance" | "phase_rollback" | "phase_complete" | "phase_status_report" | "awaiting_human_review_handover" | "human_feedback_received" | "human_rejected_no_feedback" | "phase_advanced_after_approve" | "session_closed";
410
+ status: {
411
+ sessionStatus: "active" | "awaiting_human_review" | "closed";
412
+ currentPhase: "planning_spec" | "epic_decomposition" | "epic_expansion" | "ticket_decomposition" | "ticket_expansion" | "cross_validation" | "planned";
413
+ actionsCount: number;
414
+ score?: {
415
+ current: number;
416
+ threshold: number;
417
+ gateResult: "pass" | "fail";
418
+ globalContribution?: number | undefined;
419
+ } | undefined;
420
+ };
421
+ headline: string;
422
+ body: string;
423
+ composedAt: string;
424
+ findings?: {
425
+ summary: string;
426
+ truncated: boolean;
427
+ grouped: {
428
+ category: "rubric" | "count" | "cross-cut" | "cascade" | "cross-validation" | "schema";
429
+ items: {
430
+ message: string;
431
+ severity: "finding" | "denial";
432
+ path?: string | undefined;
433
+ entityId?: string | undefined;
434
+ entityType?: string | undefined;
435
+ pointsLost?: number | undefined;
436
+ globalImpactOnFix?: number | undefined;
437
+ }[];
438
+ }[];
439
+ } | undefined;
440
+ recommendedMoves?: {
441
+ operation: string;
442
+ rationale: string;
443
+ examplePayload?: unknown;
444
+ }[] | undefined;
445
+ } | undefined;
446
+ lastLifecyclePlanningGuidance?: {
447
+ variant: "denied" | "gate_failed" | "gate_passed" | "human_handover" | "human_feedback" | "phase_advance" | "phase_rollback" | "phase_complete" | "phase_status_report" | "awaiting_human_review_handover" | "human_feedback_received" | "human_rejected_no_feedback" | "phase_advanced_after_approve" | "session_closed";
448
+ composedAt: string;
449
+ fieldsToFill?: {
450
+ fieldId: string;
451
+ name: string;
452
+ description: string;
453
+ required: boolean;
454
+ currentState: "empty" | "partial" | "filled" | "na";
455
+ minCount?: number | undefined;
456
+ examples?: string[] | undefined;
457
+ shape?: string | undefined;
458
+ interview_hooks?: string[] | undefined;
459
+ naEligible?: boolean | undefined;
460
+ na_when?: string | undefined;
461
+ tier?: "critical" | "recommended" | "standard" | undefined;
462
+ }[] | undefined;
463
+ humanHandoff?: {
464
+ message: string;
465
+ observatoryLink?: string | undefined;
466
+ iterationNeeded?: {
467
+ focus: string;
468
+ suggestion: string;
469
+ } | undefined;
470
+ } | undefined;
471
+ postApprovalActions?: string[] | undefined;
472
+ } | undefined;
473
+ pendingHumanFeedback?: {
474
+ content: string;
475
+ recordedAt: string;
476
+ recordedByUserId: string;
477
+ } | null | undefined;
478
+ lastValidatorOutput?: unknown;
479
+ lastGateResult?: "pass" | "fail" | undefined;
480
+ lastValidatedAt?: string | undefined;
481
+ metadata?: Record<string, unknown> | undefined;
482
+ }, {
483
+ status: "active" | "awaiting_human_review" | "closed";
484
+ currentPhase: "planning_spec" | "epic_decomposition" | "epic_expansion" | "ticket_decomposition" | "ticket_expansion" | "cross_validation" | "planned";
485
+ id: string;
486
+ specificationId: string;
487
+ projectId: string;
488
+ startedAt: string;
489
+ lastActionAt: string;
490
+ lastTransitionTrigger: "auto_initial" | "ai_agent" | "human_approve" | "human_reject_with_feedback" | "human_reject_no_feedback";
491
+ lastTransitionAt: string;
492
+ lastReadAt: string;
493
+ actionsCount?: number | undefined;
494
+ completedAt?: string | undefined;
495
+ closedAt?: string | undefined;
496
+ lastScore?: number | undefined;
497
+ lastGlobalScore?: number | undefined;
498
+ lastProcessGuidance?: {
499
+ variant: "denied" | "gate_failed" | "gate_passed" | "human_handover" | "human_feedback" | "phase_advance" | "phase_rollback" | "phase_complete" | "phase_status_report" | "awaiting_human_review_handover" | "human_feedback_received" | "human_rejected_no_feedback" | "phase_advanced_after_approve" | "session_closed";
500
+ status: {
501
+ sessionStatus: "active" | "awaiting_human_review" | "closed";
502
+ currentPhase: "planning_spec" | "epic_decomposition" | "epic_expansion" | "ticket_decomposition" | "ticket_expansion" | "cross_validation" | "planned";
503
+ actionsCount: number;
504
+ score?: {
505
+ current: number;
506
+ threshold: number;
507
+ gateResult: "pass" | "fail";
508
+ globalContribution?: number | undefined;
509
+ } | undefined;
510
+ };
511
+ headline: string;
512
+ body: string;
513
+ composedAt: string;
514
+ findings?: {
515
+ summary: string;
516
+ grouped: {
517
+ category: "rubric" | "count" | "cross-cut" | "cascade" | "cross-validation" | "schema";
518
+ items: {
519
+ message: string;
520
+ severity: "finding" | "denial";
521
+ path?: string | undefined;
522
+ entityId?: string | undefined;
523
+ entityType?: string | undefined;
524
+ pointsLost?: number | undefined;
525
+ globalImpactOnFix?: number | undefined;
526
+ }[];
527
+ }[];
528
+ truncated?: boolean | undefined;
529
+ } | undefined;
530
+ recommendedMoves?: {
531
+ operation: string;
532
+ rationale: string;
533
+ examplePayload?: unknown;
534
+ }[] | undefined;
535
+ } | undefined;
536
+ lastLifecyclePlanningGuidance?: {
537
+ variant: "denied" | "gate_failed" | "gate_passed" | "human_handover" | "human_feedback" | "phase_advance" | "phase_rollback" | "phase_complete" | "phase_status_report" | "awaiting_human_review_handover" | "human_feedback_received" | "human_rejected_no_feedback" | "phase_advanced_after_approve" | "session_closed";
538
+ composedAt: string;
539
+ fieldsToFill?: {
540
+ fieldId: string;
541
+ name: string;
542
+ description: string;
543
+ required: boolean;
544
+ currentState: "empty" | "partial" | "filled" | "na";
545
+ minCount?: number | undefined;
546
+ examples?: string[] | undefined;
547
+ shape?: string | undefined;
548
+ interview_hooks?: string[] | undefined;
549
+ naEligible?: boolean | undefined;
550
+ na_when?: string | undefined;
551
+ tier?: "critical" | "recommended" | "standard" | undefined;
552
+ }[] | undefined;
553
+ humanHandoff?: {
554
+ message: string;
555
+ observatoryLink?: string | undefined;
556
+ iterationNeeded?: {
557
+ focus: string;
558
+ suggestion: string;
559
+ } | undefined;
560
+ } | undefined;
561
+ postApprovalActions?: string[] | undefined;
562
+ } | undefined;
563
+ pendingHumanFeedback?: {
564
+ content: string;
565
+ recordedAt: string;
566
+ recordedByUserId: string;
567
+ } | null | undefined;
568
+ lastValidatorOutput?: unknown;
569
+ lastGateResult?: "pass" | "fail" | undefined;
570
+ lastValidatedAt?: string | undefined;
571
+ metadata?: Record<string, unknown> | undefined;
572
+ }>;
573
+ export type PlanningSession = z.infer<typeof PlanningSessionSchema>;
574
+ //# sourceMappingURL=planning-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planning-session.d.ts","sourceRoot":"","sources":["../../src/runtime/planning-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,eAAO,MAAM,0BAA0B;;;;;;;;;;;;EAIrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { z } from 'zod';
2
+ import { PLANNING_SESSION_STATUSES, PLANNING_PHASES, TRANSITION_TRIGGERS, } from './enums.js';
3
+ import { ProcessGuidanceSchema } from './process-guidance.js';
4
+ import { LifecyclePlanningGuidanceSchema } from './lifecycle-planning-guidance.js';
5
+ // M6.6: single optional feedback record (replaces the deleted PendingHumanIntent
6
+ // discriminated union). Carries human-written feedback from the webapp to the agent.
7
+ export const PendingHumanFeedbackSchema = z.object({
8
+ content: z.string().min(1),
9
+ recordedAt: z.string().datetime(),
10
+ recordedByUserId: z.string(),
11
+ });
12
+ export const PlanningSessionSchema = z.object({
13
+ id: z.string(),
14
+ specificationId: z.string(),
15
+ projectId: z.string(),
16
+ status: z.enum(PLANNING_SESSION_STATUSES),
17
+ currentPhase: z.enum(PLANNING_PHASES),
18
+ startedAt: z.string().datetime(),
19
+ lastActionAt: z.string().datetime(),
20
+ completedAt: z.string().datetime().optional(),
21
+ closedAt: z.string().datetime().optional(),
22
+ lastScore: z.number().optional(),
23
+ // ME.13.0 — the weighted GLOBAL score carrier, parallel to `lastScore` (local).
24
+ // Persisted via the model `endGlobalScore` attribute (ME.13.3 threads the write);
25
+ // read back through `parsePlanningSession`'s `endGlobalScore → lastGlobalScore`.
26
+ lastGlobalScore: z.number().optional(),
27
+ actionsCount: z.number().int().nonnegative().default(0),
28
+ lastProcessGuidance: ProcessGuidanceSchema.optional(),
29
+ lastLifecyclePlanningGuidance: LifecyclePlanningGuidanceSchema.optional(),
30
+ // M6.6 resume-model fields
31
+ pendingHumanFeedback: PendingHumanFeedbackSchema.nullable().optional(),
32
+ lastTransitionTrigger: z.enum(TRANSITION_TRIGGERS),
33
+ lastTransitionAt: z.string().datetime(),
34
+ lastReadAt: z.string().datetime(),
35
+ lastValidatorOutput: z.unknown().optional(),
36
+ lastGateResult: z.enum(['pass', 'fail']).optional(),
37
+ lastValidatedAt: z.string().datetime().optional(),
38
+ metadata: z.record(z.string(), z.unknown()).optional(),
39
+ });
40
+ //# sourceMappingURL=planning-session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planning-session.js","sourceRoot":"","sources":["../../src/runtime/planning-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,yBAAyB,EACzB,eAAe,EACf,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AAEnF,iFAAiF;AACjF,qFAAqF;AACrF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;CAC7B,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;IAC3B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC;IACzC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,gFAAgF;IAChF,kFAAkF;IAClF,iFAAiF;IACjF,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACvD,mBAAmB,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IACrD,6BAA6B,EAAE,+BAA+B,CAAC,QAAQ,EAAE;IACzE,2BAA2B;IAC3B,oBAAoB,EAAE,0BAA0B,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACtE,qBAAqB,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;IAClD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACvC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC3C,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACjD,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CACvD,CAAC,CAAC"}