@leanspec/ui 0.2.25 → 0.2.26

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 (222) hide show
  1. package/dist/{_baseUniq-BTv7M834.js → _baseUniq-ijHblO0i.js} +1 -1
  2. package/dist/{arc-GsL4cqyW.js → arc-DSoiQqhG.js} +1 -1
  3. package/dist/{architecture-U656AL7Q-DL2Qaesc.js → architecture-U656AL7Q-0EY1UA93.js} +1 -1
  4. package/dist/{architectureDiagram-VXUJARFQ-DhRxYxVL.js → architectureDiagram-VXUJARFQ-CpZ7MNJ1.js} +3 -3
  5. package/dist/assets/{_baseUniq-Deb5Ms7c.js → _baseUniq-CwL8whuW.js} +1 -1
  6. package/dist/assets/{arc-Buu9h4aM.js → arc-DQK79yWt.js} +1 -1
  7. package/dist/assets/{architectureDiagram-VXUJARFQ-C3TCHsQ1.js → architectureDiagram-VXUJARFQ-0lyQJAFV.js} +1 -1
  8. package/dist/assets/{blockDiagram-VD42YOAC-DSFIE2zv.js → blockDiagram-VD42YOAC-De6LVB6b.js} +1 -1
  9. package/dist/assets/{c4Diagram-YG6GDRKO-BGmtJFyE.js → c4Diagram-YG6GDRKO-DmO_YZpf.js} +1 -1
  10. package/dist/assets/channel-CPL3ZhB2.js +1 -0
  11. package/dist/assets/{chunk-4BX2VUAB-DMwZgyny.js → chunk-4BX2VUAB-D_i5DxBx.js} +1 -1
  12. package/dist/assets/{chunk-55IACEB6-BS2IX41E.js → chunk-55IACEB6-CYBqqEaM.js} +1 -1
  13. package/dist/assets/{chunk-B4BG7PRW-B8eM1odI.js → chunk-B4BG7PRW-B_kJst0L.js} +1 -1
  14. package/dist/assets/{chunk-DI55MBZ5-o67_VCyE.js → chunk-DI55MBZ5-DmQQvuy9.js} +1 -1
  15. package/dist/assets/{chunk-FMBD7UC4-BcEYG9iw.js → chunk-FMBD7UC4-DIj1fMOC.js} +1 -1
  16. package/dist/assets/{chunk-QN33PNHL-DTvKnDBL.js → chunk-QN33PNHL-Dob4GXZN.js} +1 -1
  17. package/dist/assets/{chunk-QZHKN3VN-Bi5HqsVm.js → chunk-QZHKN3VN-B9l1Ct5_.js} +1 -1
  18. package/dist/assets/{chunk-TZMSLE5B-BthbcwRa.js → chunk-TZMSLE5B-D5kj2wzj.js} +1 -1
  19. package/dist/assets/classDiagram-2ON5EDUG-BGtOMy27.js +1 -0
  20. package/dist/assets/classDiagram-v2-WZHVMYZB-BGtOMy27.js +1 -0
  21. package/dist/assets/clone-TRq3RsgR.js +1 -0
  22. package/dist/assets/{code-block-37QAKDTI-SzwmDSkS.js → code-block-37QAKDTI-DPta_cDe.js} +1 -1
  23. package/dist/assets/{cose-bilkent-S5V4N54A-DbRhVW8y.js → cose-bilkent-S5V4N54A-CIbyIxy7.js} +1 -1
  24. package/dist/assets/{dagre-6UL2VRFP-D_VH5kFn.js → dagre-6UL2VRFP-DiNoo8UH.js} +1 -1
  25. package/dist/assets/{diagram-PSM6KHXK-BbXozfvF.js → diagram-PSM6KHXK-oPUYMkQi.js} +1 -1
  26. package/dist/assets/{diagram-QEK2KX5R-CI0xoYPG.js → diagram-QEK2KX5R-ekYHp-_K.js} +1 -1
  27. package/dist/assets/{diagram-S2PKOQOG-De1ir5Gb.js → diagram-S2PKOQOG-BjESZsAo.js} +1 -1
  28. package/dist/assets/{erDiagram-Q2GNP2WA-BFw_wW_L.js → erDiagram-Q2GNP2WA-C18-XmOn.js} +1 -1
  29. package/dist/assets/{flowDiagram-NV44I4VS-DyVvOAX3.js → flowDiagram-NV44I4VS-C_-yn3lU.js} +1 -1
  30. package/dist/assets/{ganttDiagram-JELNMOA3-DTFARGAn.js → ganttDiagram-JELNMOA3-Da95ISpS.js} +1 -1
  31. package/dist/assets/{gitGraphDiagram-NY62KEGX-DnO4UpgE.js → gitGraphDiagram-NY62KEGX-CKst-DTk.js} +1 -1
  32. package/dist/assets/{graph-DUzLz0PA.js → graph-ByVyFk5n.js} +1 -1
  33. package/dist/assets/index-B-FvbnKr.js +2236 -0
  34. package/dist/assets/index-BUH5BNQv.css +1 -0
  35. package/dist/assets/{infoDiagram-WHAUD3N6-BEUgS7mj.js → infoDiagram-WHAUD3N6-B-KLbNx8.js} +1 -1
  36. package/dist/assets/{journeyDiagram-XKPGCS4Q-BlNh1zHL.js → journeyDiagram-XKPGCS4Q-Dc0gGxNW.js} +1 -1
  37. package/dist/assets/{kanban-definition-3W4ZIXB7-D4KqvMxd.js → kanban-definition-3W4ZIXB7-BBl3Os5b.js} +1 -1
  38. package/dist/assets/{layout-C69Vzf47.js → layout-DUjHnQ3q.js} +1 -1
  39. package/dist/assets/{min-BgYUCOZC.js → min-B84CwCRn.js} +1 -1
  40. package/dist/assets/{mindmap-definition-VGOIOE7T-CBfzzNul.js → mindmap-definition-VGOIOE7T-DwXr0an_.js} +1 -1
  41. package/dist/assets/{pieDiagram-ADFJNKIX-BH4Rg8wz.js → pieDiagram-ADFJNKIX-kg25OEdx.js} +1 -1
  42. package/dist/assets/{quadrantDiagram-AYHSOK5B-BFz2Bllq.js → quadrantDiagram-AYHSOK5B-jzIPJrQC.js} +1 -1
  43. package/dist/assets/{requirementDiagram-UZGBJVZJ-DxdMfd_i.js → requirementDiagram-UZGBJVZJ-D7lvVmve.js} +1 -1
  44. package/dist/assets/{sankeyDiagram-TZEHDZUN-CQZM-FY2.js → sankeyDiagram-TZEHDZUN-CkKJUu-X.js} +1 -1
  45. package/dist/assets/{sequenceDiagram-WL72ISMW-DM3FHm-E.js → sequenceDiagram-WL72ISMW-DWXoU2Xu.js} +1 -1
  46. package/dist/assets/{stateDiagram-FKZM4ZOC-CquvRUcS.js → stateDiagram-FKZM4ZOC-DKMSa2-u.js} +1 -1
  47. package/dist/assets/stateDiagram-v2-4FDKWEC3-fGhjroU9.js +1 -0
  48. package/dist/assets/{timeline-definition-IT6M3QCI-peYNY-nB.js → timeline-definition-IT6M3QCI-i8tdCjji.js} +1 -1
  49. package/dist/assets/{treemap-KMMF4GRG-Cr2QSg6a.js → treemap-KMMF4GRG-Bo2ueTP9.js} +1 -1
  50. package/dist/assets/{xychartDiagram-PRI3JC2R-H327siGT.js → xychartDiagram-PRI3JC2R-C54lHEBd.js} +1 -1
  51. package/dist/{blockDiagram-VD42YOAC-CAgANapr.js → blockDiagram-VD42YOAC-ByO9mclR.js} +5 -5
  52. package/dist/{c4Diagram-YG6GDRKO-BUw8hNx5.js → c4Diagram-YG6GDRKO-G9IBNezV.js} +2 -2
  53. package/dist/{channel-CRd-JKjv.js → channel-TVLaQyE6.js} +1 -1
  54. package/dist/{chunk-4BX2VUAB-6tNpYwPa.js → chunk-4BX2VUAB-DvQETnkD.js} +1 -1
  55. package/dist/{chunk-55IACEB6-2hXhhF7j.js → chunk-55IACEB6-Fx760vrL.js} +1 -1
  56. package/dist/{chunk-B4BG7PRW-C-2biLpP.js → chunk-B4BG7PRW-BdBF-s3l.js} +4 -4
  57. package/dist/{chunk-DI55MBZ5-Cp5Rk4Z4.js → chunk-DI55MBZ5-Bq1Xpipe.js} +3 -3
  58. package/dist/{chunk-FMBD7UC4-MdCVmzo1.js → chunk-FMBD7UC4-CHwx9e7Z.js} +1 -1
  59. package/dist/{chunk-QN33PNHL-B4huGwhH.js → chunk-QN33PNHL-29-xlpoh.js} +1 -1
  60. package/dist/{chunk-QZHKN3VN-DBNnz3QF.js → chunk-QZHKN3VN-B4R9UyOO.js} +1 -1
  61. package/dist/{chunk-TZMSLE5B-C0UUeY_R.js → chunk-TZMSLE5B-D7ZMH86x.js} +1 -1
  62. package/dist/{classDiagram-v2-WZHVMYZB-CNDoWJPi.js → classDiagram-2ON5EDUG-BZJNp72Q.js} +2 -2
  63. package/dist/{classDiagram-2ON5EDUG-CNDoWJPi.js → classDiagram-v2-WZHVMYZB-BZJNp72Q.js} +2 -2
  64. package/dist/{clone-NOdph9FW.js → clone-BuM257qi.js} +1 -1
  65. package/dist/{cose-bilkent-S5V4N54A-CGzTFBg6.js → cose-bilkent-S5V4N54A-BDx7dcIS.js} +1 -1
  66. package/dist/{dagre-6UL2VRFP-Dbb2Qtkd.js → dagre-6UL2VRFP-fvMEdLZ9.js} +5 -5
  67. package/dist/{diagram-PSM6KHXK-BkHIn4Na.js → diagram-PSM6KHXK-B5DR0Fbv.js} +4 -4
  68. package/dist/{diagram-QEK2KX5R-C2SOXIsZ.js → diagram-QEK2KX5R-DVAmb4ns.js} +3 -3
  69. package/dist/{diagram-S2PKOQOG-Dhg7S4sS.js → diagram-S2PKOQOG-oXO-KMCB.js} +3 -3
  70. package/dist/{erDiagram-Q2GNP2WA-DNtKi97U.js → erDiagram-Q2GNP2WA-Cw3S1xrg.js} +4 -4
  71. package/dist/{flowDiagram-NV44I4VS-BUqt43hW.js → flowDiagram-NV44I4VS-B41EhOsx.js} +5 -5
  72. package/dist/{ganttDiagram-JELNMOA3-B2Lg_NoT.js → ganttDiagram-JELNMOA3-CktjaPtm.js} +2 -2
  73. package/dist/{gitGraph-F6HP7TQM-CHYr4iss.js → gitGraph-F6HP7TQM-BtaG3hDI.js} +1 -1
  74. package/dist/{gitGraphDiagram-NY62KEGX-opS5iBAi.js → gitGraphDiagram-NY62KEGX-DoYr9lJ6.js} +4 -4
  75. package/dist/{graph-C4lFiFlc.js → graph-aZrSt0UC.js} +2 -2
  76. package/dist/{index-Y0he5qiC.js → index-2ILPnvAG.js} +8342 -8536
  77. package/dist/index.html +2 -2
  78. package/dist/info-NVLQJR56-5Whifced.js +5 -0
  79. package/dist/{infoDiagram-WHAUD3N6-jD1UokkI.js → infoDiagram-WHAUD3N6-C-9mSXCL.js} +2 -2
  80. package/dist/{journeyDiagram-XKPGCS4Q-DiH_3HWQ.js → journeyDiagram-XKPGCS4Q-BZaGhFGN.js} +4 -4
  81. package/dist/{kanban-definition-3W4ZIXB7-Ct8nHz6y.js → kanban-definition-3W4ZIXB7-DcgJ4LvA.js} +2 -2
  82. package/dist/{layout-BB0ezvOF.js → layout-CZbv8l1x.js} +4 -4
  83. package/dist/lib/components/dependencies/dependency-filter-bar.d.ts +18 -0
  84. package/dist/lib/components/dependencies/dependency-graph-view.d.ts +14 -0
  85. package/dist/lib/components/dependencies/spec-selector.d.ts +10 -0
  86. package/dist/lib/components/library/ai-elements/prompt-input/AttachmentBar.d.ts +2 -0
  87. package/dist/lib/components/library/ai-elements/prompt-input/ContextSelector.d.ts +2 -0
  88. package/dist/lib/components/library/ai-elements/prompt-input/PromptTextArea.d.ts +2 -0
  89. package/dist/lib/components/library/ai-elements/prompt-input/VoiceInput.d.ts +2 -0
  90. package/dist/lib/components/library/ai-elements/prompt-input/compounds.d.ts +72 -0
  91. package/dist/lib/components/library/ai-elements/prompt-input/context.d.ts +14 -0
  92. package/dist/lib/components/library/ai-elements/prompt-input/core.d.ts +16 -0
  93. package/dist/lib/components/library/ai-elements/prompt-input/hooks.d.ts +46 -0
  94. package/dist/lib/components/library/ai-elements/prompt-input.d.ts +4 -137
  95. package/dist/lib/components/sessions/sessions-popover.d.ts +1 -0
  96. package/dist/lib/components/settings/models-settings/ModelEditor.d.ts +2 -0
  97. package/dist/lib/components/settings/models-settings/ModelTestPanel.d.ts +2 -0
  98. package/dist/lib/components/settings/models-settings/ModelsList.d.ts +2 -0
  99. package/dist/lib/components/settings/models-settings/custom-provider-card.d.ts +9 -0
  100. package/dist/lib/components/settings/models-settings/custom-provider-dialog.d.ts +8 -0
  101. package/dist/lib/components/settings/models-settings/provider-api-key-dialog.d.ts +7 -0
  102. package/dist/lib/components/settings/models-settings/provider-models-dialog.d.ts +8 -0
  103. package/dist/lib/components/settings/models-settings/registry-provider-card.d.ts +10 -0
  104. package/dist/lib/components/spec-detail/spec-detail-content.d.ts +9 -0
  105. package/dist/lib/components/spec-detail/spec-detail-header.d.ts +36 -0
  106. package/dist/lib/components/spec-detail/sub-spec-tabs.d.ts +14 -0
  107. package/dist/lib/components/specs-nav/SidebarGrouping.d.ts +2 -0
  108. package/dist/lib/components/specs-nav/SidebarSearch.d.ts +2 -0
  109. package/dist/lib/components/specs-nav/SidebarSpecList.d.ts +2 -0
  110. package/dist/lib/components/specs-nav/sidebar-filters.d.ts +18 -0
  111. package/dist/lib/components/specs-nav/sidebar-spec-list.d.ts +22 -0
  112. package/dist/lib/hooks/useSessionStatusToasts.d.ts +4 -0
  113. package/dist/lib/hooks/useSpecsQuery.d.ts +6 -1
  114. package/dist/lib/index.js +366 -361
  115. package/dist/lib/lib/api-error.d.ts +2 -0
  116. package/dist/lib/lib/api.d.ts +3 -1
  117. package/dist/lib/lib/backend-adapter/core.d.ts +16 -3
  118. package/dist/lib/lib/backend-adapter/http.d.ts +3 -1
  119. package/dist/lib/lib/backend-adapter/tauri.d.ts +3 -1
  120. package/dist/lib/locales/en/common.json.d.ts +20 -1
  121. package/dist/lib/locales/en/errors.json.d.ts +14 -0
  122. package/dist/lib/locales/zh-CN/common.json.d.ts +47 -1
  123. package/dist/lib/locales/zh-CN/errors.json.d.ts +14 -0
  124. package/dist/lib/pages/dependencies/DependencyControls.d.ts +2 -0
  125. package/dist/lib/pages/dependencies/DependencyFilters.d.ts +2 -0
  126. package/dist/lib/pages/dependencies/DependencyGraph.d.ts +2 -0
  127. package/dist/lib/pages/spec-detail/SpecContent.d.ts +2 -0
  128. package/dist/lib/pages/spec-detail/SpecHeader.d.ts +2 -0
  129. package/dist/lib/pages/spec-detail/SpecMetadataPanel.d.ts +2 -0
  130. package/dist/lib/pages/spec-detail/SpecRelationships.d.ts +2 -0
  131. package/dist/lib/stores/sessions-ui.d.ts +2 -0
  132. package/dist/lib/types/api.d.ts +17 -5
  133. package/dist/lib/types/generated/BatchMetadataRequest.d.ts +6 -0
  134. package/dist/lib/types/generated/BatchMetadataResponse.d.ts +9 -0
  135. package/dist/lib/types/generated/ChecklistToggleItem.d.ts +7 -0
  136. package/dist/lib/types/generated/ChecklistToggleRequest.d.ts +12 -0
  137. package/dist/lib/types/generated/ChecklistToggleResponse.d.ts +9 -0
  138. package/dist/lib/types/generated/ChecklistToggledResult.d.ts +8 -0
  139. package/dist/lib/types/generated/ConfigFeatures.d.ts +3 -0
  140. package/dist/lib/types/generated/ConfigStructure.d.ts +7 -0
  141. package/dist/lib/types/generated/ContextFile.d.ts +10 -0
  142. package/dist/lib/types/generated/CreateSpecRequest.d.ts +14 -0
  143. package/dist/lib/types/generated/DependencyEdge.d.ts +5 -0
  144. package/dist/lib/types/generated/DependencyGraphResponse.d.ts +10 -0
  145. package/dist/lib/types/generated/DependencyNode.d.ts +8 -0
  146. package/dist/lib/types/generated/DependencyResponse.d.ts +9 -0
  147. package/dist/lib/types/generated/DetailedBreakdown.d.ts +22 -0
  148. package/dist/lib/types/generated/DetectionConfig.d.ts +6 -0
  149. package/dist/lib/types/generated/DetectionResult.d.ts +6 -0
  150. package/dist/lib/types/generated/DraftStatusConfig.d.ts +3 -0
  151. package/dist/lib/types/generated/FrontmatterResponse.d.ts +15 -0
  152. package/dist/lib/types/generated/HealthResponse.d.ts +7 -0
  153. package/dist/lib/types/generated/HierarchyNode.d.ts +29 -0
  154. package/dist/lib/types/generated/LeanSpecConfig.d.ts +16 -0
  155. package/dist/lib/types/generated/ListSpecsQuery.d.ts +16 -0
  156. package/dist/lib/types/generated/ListSpecsResponse.d.ts +15 -0
  157. package/dist/lib/types/generated/MetadataUpdate.d.ts +17 -0
  158. package/dist/lib/types/generated/PriorityCountItem.d.ts +4 -0
  159. package/dist/lib/types/generated/ProjectConfigResponse.d.ts +9 -0
  160. package/dist/lib/types/generated/ProjectContextResponse.d.ts +12 -0
  161. package/dist/lib/types/generated/ProjectValidationResponse.d.ts +9 -0
  162. package/dist/lib/types/generated/ProjectValidationSummary.d.ts +5 -0
  163. package/dist/lib/types/generated/RunnerDefinition.d.ts +19 -0
  164. package/dist/lib/types/generated/SearchFilters.d.ts +8 -0
  165. package/dist/lib/types/generated/SearchRequest.d.ts +9 -0
  166. package/dist/lib/types/generated/SearchResponse.d.ts +10 -0
  167. package/dist/lib/types/generated/SectionTokenCount.d.ts +7 -0
  168. package/dist/lib/types/generated/Session.d.ts +69 -0
  169. package/dist/lib/types/generated/SessionConfig.d.ts +44 -0
  170. package/dist/lib/types/generated/SessionMode.d.ts +4 -0
  171. package/dist/lib/types/generated/SessionStatus.d.ts +4 -0
  172. package/dist/lib/types/generated/SpecDetail.d.ts +31 -0
  173. package/dist/lib/types/generated/SpecMetadata.d.ts +8 -0
  174. package/dist/lib/types/generated/SpecPriority.d.ts +4 -0
  175. package/dist/lib/types/generated/SpecRawResponse.d.ts +8 -0
  176. package/dist/lib/types/generated/SpecRawUpdateRequest.d.ts +7 -0
  177. package/dist/lib/types/generated/SpecRelationships.d.ts +7 -0
  178. package/dist/lib/types/generated/SpecStatus.d.ts +4 -0
  179. package/dist/lib/types/generated/SpecSummary.d.ts +28 -0
  180. package/dist/lib/types/generated/SpecTokenResponse.d.ts +9 -0
  181. package/dist/lib/types/generated/SpecValidationError.d.ts +10 -0
  182. package/dist/lib/types/generated/SpecValidationResponse.d.ts +8 -0
  183. package/dist/lib/types/generated/StatsResponse.d.ts +13 -0
  184. package/dist/lib/types/generated/StatusCountItem.d.ts +4 -0
  185. package/dist/lib/types/generated/StatusTransition.d.ts +8 -0
  186. package/dist/lib/types/generated/SubSpec.d.ts +8 -0
  187. package/dist/lib/types/generated/TokenBreakdown.d.ts +13 -0
  188. package/dist/lib/types/generated/UpdateMetadataResponse.d.ts +9 -0
  189. package/dist/lib/types/generated/ValidationError.d.ts +5 -0
  190. package/dist/lib/types/generated/ValidationResponse.d.ts +8 -0
  191. package/dist/lib/types/generated/index.d.ts +58 -0
  192. package/dist/lib/types/specs.d.ts +3 -12
  193. package/dist/{linear-22T2wQM-.js → linear-DOiEav8w.js} +1 -1
  194. package/dist/{mermaid-parser.core-7H2TB5OK.js → mermaid-parser.core-CE74cRHV.js} +10 -10
  195. package/dist/{min-CTCa51YR.js → min-iEZRg5We.js} +2 -2
  196. package/dist/{mindmap-definition-VGOIOE7T-Vr4FAsaw.js → mindmap-definition-VGOIOE7T-B7vK-2rU.js} +3 -3
  197. package/dist/{packet-BFZMPI3H-DaHUmEbo.js → packet-BFZMPI3H-CRtMZ75O.js} +1 -1
  198. package/dist/pie-7BOR55EZ-CTCOpJ_s.js +5 -0
  199. package/dist/{pieDiagram-ADFJNKIX-B00pZd9u.js → pieDiagram-ADFJNKIX-B2CycMp2.js} +4 -4
  200. package/dist/{quadrantDiagram-AYHSOK5B-CBFHSPbe.js → quadrantDiagram-AYHSOK5B-DWzMKUVW.js} +2 -2
  201. package/dist/radar-NHE76QYJ-B-kEmJss.js +5 -0
  202. package/dist/{requirementDiagram-UZGBJVZJ-CcWV4kDd.js → requirementDiagram-UZGBJVZJ-B1JPpr0N.js} +3 -3
  203. package/dist/{sankeyDiagram-TZEHDZUN-Bh_9B5Is.js → sankeyDiagram-TZEHDZUN-DUe4DMeI.js} +1 -1
  204. package/dist/{sequenceDiagram-WL72ISMW-CXSDC0SA.js → sequenceDiagram-WL72ISMW-D1ka_qcb.js} +3 -3
  205. package/dist/{stateDiagram-FKZM4ZOC-BSe9CFeA.js → stateDiagram-FKZM4ZOC-kHECs8c-.js} +4 -4
  206. package/dist/{stateDiagram-v2-4FDKWEC3-Ci8JXu6f.js → stateDiagram-v2-4FDKWEC3-DtTw2e8h.js} +2 -2
  207. package/dist/{timeline-definition-IT6M3QCI-KvPKQjWb.js → timeline-definition-IT6M3QCI-B9QaWiVQ.js} +2 -2
  208. package/dist/{treemap-KMMF4GRG-CQejoiGu.js → treemap-KMMF4GRG-Ba6NXlAy.js} +1 -1
  209. package/dist/ui.css +1 -1
  210. package/dist/{xychartDiagram-PRI3JC2R-BgtmCQ1i.js → xychartDiagram-PRI3JC2R-Cx42bjo1.js} +2 -2
  211. package/package.json +2 -2
  212. package/dist/assets/channel-DXSNL_In.js +0 -1
  213. package/dist/assets/classDiagram-2ON5EDUG-DF__c9oZ.js +0 -1
  214. package/dist/assets/classDiagram-v2-WZHVMYZB-DF__c9oZ.js +0 -1
  215. package/dist/assets/clone-yzvp7c46.js +0 -1
  216. package/dist/assets/index-8bAo-Ya1.js +0 -2242
  217. package/dist/assets/index-DpQZDEhA.css +0 -1
  218. package/dist/assets/stateDiagram-v2-4FDKWEC3-fmuxwJig.js +0 -1
  219. package/dist/info-NVLQJR56-CtYMindw.js +0 -5
  220. package/dist/lib/components/sessions/sessions-drawer.d.ts +0 -1
  221. package/dist/pie-7BOR55EZ-CdGJxDmJ.js +0 -5
  222. package/dist/radar-NHE76QYJ-BdSRFNw4.js +0 -5
@@ -0,0 +1,2 @@
1
+ import { TFunction } from 'i18next';
2
+ export declare function describeApiError(err: unknown, t: TFunction): string;
@@ -1,5 +1,5 @@
1
1
  import { APIError, BackendAdapter } from './backend-adapter';
2
- import { FileContentResponse, FileListResponse, FileSearchResponse, ListParams, Spec, SpecDetail, Stats, DependencyGraph, MachinesResponse, Session, SessionLog, SessionMode, RunnerDefinition, RunnerListResponse, RunnerScope, RunnerValidateResponse, RunnerVersionResponse } from '../types/api';
2
+ import { FileContentResponse, FileListResponse, FileSearchResponse, ListParams, Spec, SpecDetail, Stats, DependencyGraph, MachinesResponse, Session, SessionLog, SessionMode, SpecSearchFilters, SpecSearchResponse, RunnerDefinition, RunnerListResponse, RunnerScope, RunnerValidateResponse, RunnerVersionResponse } from '../types/api';
3
3
  import { ChatConfig } from '../types/chat-config';
4
4
  import { ModelsRegistryResponse } from '../types/models-registry';
5
5
  import { ChatStorageInfo } from './backend-adapter/core';
@@ -78,6 +78,7 @@ declare class ProjectAPI {
78
78
  prompt?: string | null;
79
79
  runner?: string;
80
80
  mode: SessionMode;
81
+ model?: string;
81
82
  }): Promise<Session>;
82
83
  startSession(sessionId: string): Promise<Session>;
83
84
  pauseSession(sessionId: string): Promise<Session>;
@@ -138,6 +139,7 @@ declare class ProjectAPI {
138
139
  getFiles(path?: string): Promise<FileListResponse>;
139
140
  getFile(path: string): Promise<FileContentResponse>;
140
141
  searchFiles(query: string, limit?: number): Promise<FileSearchResponse>;
142
+ searchSpecs(query: string, filters?: SpecSearchFilters): Promise<SpecSearchResponse>;
141
143
  }
142
144
  export declare const api: ProjectAPI;
143
145
  export { APIError };
@@ -1,13 +1,24 @@
1
- import { BatchMetadataResponse, ContextFileContent, ContextFileListItem, DependencyGraph, DirectoryListResponse, FileContentResponse, FileListResponse, FileSearchResponse, ListParams, Spec, SpecDetail, Stats, Project, ProjectStatsResponse, ProjectValidationResponse, ProjectsResponse, ListSpecsResponse, ProjectContext, MachinesResponse, Session, SessionArchiveResult, SessionEvent, SessionLog, SessionMode, SpecTokenResponse, SpecValidationResponse, RunnerDefinition, RunnerListResponse, RunnerScope, RunnerValidateResponse, RunnerVersionResponse } from '../../types/api';
1
+ import { BatchMetadataResponse, ContextFileContent, ContextFileListItem, DependencyGraph, DirectoryListResponse, FileContentResponse, FileListResponse, FileSearchResponse, ListParams, Spec, SpecDetail, Stats, Project, ProjectStatsResponse, ProjectValidationResponse, ProjectsResponse, ListSpecsResponse, ProjectContext, MachinesResponse, Session, SessionArchiveResult, SessionEvent, SessionLog, SessionMode, SpecTokenResponse, SpecValidationResponse, SpecSearchFilters, SpecSearchResponse, RunnerDefinition, RunnerListResponse, RunnerScope, RunnerValidateResponse, RunnerVersionResponse } from '../../types/api';
2
2
  import { ChatConfig } from '../../types/chat-config';
3
3
  import { ModelsRegistryResponse } from '../../types/models-registry';
4
4
  export interface ChatStorageInfo {
5
5
  path: string;
6
6
  sizeBytes: number;
7
7
  }
8
+ export interface StructuredApiError {
9
+ code: string;
10
+ message: string;
11
+ details?: unknown;
12
+ }
8
13
  export declare class APIError extends Error {
9
14
  status: number;
10
- constructor(status: number, message: string);
15
+ code?: string;
16
+ details?: unknown;
17
+ constructor(status: number, message: string, options?: {
18
+ code?: string;
19
+ details?: unknown;
20
+ });
21
+ toStructured(): StructuredApiError;
11
22
  }
12
23
  /**
13
24
  * Backend adapter interface - abstracts the communication layer
@@ -80,6 +91,7 @@ export interface BackendAdapter {
80
91
  prompt?: string | null;
81
92
  runner?: string;
82
93
  mode: SessionMode;
94
+ model?: string;
83
95
  }): Promise<Session>;
84
96
  startSession(sessionId: string): Promise<Session>;
85
97
  pauseSession(sessionId: string): Promise<Session>;
@@ -137,8 +149,9 @@ export interface BackendAdapter {
137
149
  }): Promise<ModelsRegistryResponse>;
138
150
  refreshModelsRegistry(): Promise<void>;
139
151
  setProviderApiKey(providerId: string, apiKey: string, baseUrl?: string): Promise<void>;
152
+ searchSpecs(projectId: string, query: string, filters?: SpecSearchFilters): Promise<SpecSearchResponse>;
140
153
  getProjectFiles(projectId: string, path?: string): Promise<FileListResponse>;
141
154
  getProjectFile(projectId: string, path: string): Promise<FileContentResponse>;
142
155
  searchProjectFiles(projectId: string, query: string, limit?: number): Promise<FileSearchResponse>;
143
156
  }
144
- export type { BatchMetadataResponse, ContextFileContent, ContextFileListItem, DependencyGraph, DirectoryListResponse, ListParams, Spec, SpecDetail, Stats, Project, ProjectStatsResponse, ProjectValidationResponse, ProjectsResponse, ListSpecsResponse, ProjectContext, MachinesResponse, Session, SessionArchiveResult, SessionEvent, SessionLog, SessionMode, SpecTokenResponse, SpecValidationResponse, RunnerDefinition, RunnerListResponse, RunnerScope, RunnerValidateResponse, RunnerVersionResponse, ChatConfig, ModelsRegistryResponse, FileListResponse, FileContentResponse, FileSearchResponse, };
157
+ export type { BatchMetadataResponse, ContextFileContent, ContextFileListItem, DependencyGraph, DirectoryListResponse, ListParams, Spec, SpecDetail, Stats, Project, ProjectStatsResponse, ProjectValidationResponse, ProjectsResponse, ListSpecsResponse, ProjectContext, MachinesResponse, Session, SessionArchiveResult, SessionEvent, SessionLog, SessionMode, SpecTokenResponse, SpecValidationResponse, RunnerDefinition, RunnerListResponse, RunnerScope, RunnerValidateResponse, RunnerVersionResponse, ChatConfig, ModelsRegistryResponse, FileListResponse, FileContentResponse, FileSearchResponse, SpecSearchFilters, SpecSearchResponse, };
@@ -1,4 +1,4 @@
1
- import { BackendAdapter, BatchMetadataResponse, ChatStorageInfo, ContextFileContent, ContextFileListItem, DependencyGraph, DirectoryListResponse, FileContentResponse, FileListResponse, FileSearchResponse, ListParams, Spec, SpecDetail, Stats, Project, ProjectValidationResponse, ProjectsResponse, ListSpecsResponse, ProjectContext, MachinesResponse, Session, SessionArchiveResult, SessionEvent, SessionLog, SessionMode, SpecTokenResponse, SpecValidationResponse, RunnerDefinition, RunnerListResponse, RunnerScope, RunnerValidateResponse, RunnerVersionResponse, ChatConfig, ModelsRegistryResponse } from './core';
1
+ import { BackendAdapter, BatchMetadataResponse, ChatStorageInfo, ContextFileContent, ContextFileListItem, DependencyGraph, DirectoryListResponse, FileContentResponse, FileListResponse, FileSearchResponse, ListParams, Spec, SpecDetail, Stats, Project, ProjectValidationResponse, ProjectsResponse, ListSpecsResponse, ProjectContext, MachinesResponse, Session, SessionArchiveResult, SessionEvent, SessionLog, SessionMode, SpecTokenResponse, SpecValidationResponse, SpecSearchFilters, SpecSearchResponse, RunnerDefinition, RunnerListResponse, RunnerScope, RunnerValidateResponse, RunnerVersionResponse, ChatConfig, ModelsRegistryResponse } from './core';
2
2
  /**
3
3
  * HTTP adapter for web browser - connects to Rust HTTP server
4
4
  */
@@ -71,6 +71,7 @@ export declare class HttpBackendAdapter implements BackendAdapter {
71
71
  prompt?: string | null;
72
72
  runner?: string;
73
73
  mode: SessionMode;
74
+ model?: string;
74
75
  }): Promise<Session>;
75
76
  startSession(sessionId: string): Promise<Session>;
76
77
  pauseSession(sessionId: string): Promise<Session>;
@@ -128,6 +129,7 @@ export declare class HttpBackendAdapter implements BackendAdapter {
128
129
  }): Promise<ModelsRegistryResponse>;
129
130
  refreshModelsRegistry(): Promise<void>;
130
131
  setProviderApiKey(providerId: string, apiKey: string, baseUrl?: string): Promise<void>;
132
+ searchSpecs(projectId: string, query: string, filters?: SpecSearchFilters): Promise<SpecSearchResponse>;
131
133
  getProjectFiles(projectId: string, path?: string): Promise<FileListResponse>;
132
134
  getProjectFile(projectId: string, path: string): Promise<FileContentResponse>;
133
135
  searchProjectFiles(projectId: string, query: string, limit?: number): Promise<FileSearchResponse>;
@@ -1,4 +1,4 @@
1
- import { BackendAdapter, BatchMetadataResponse, ContextFileContent, ContextFileListItem, DependencyGraph, DirectoryListResponse, FileContentResponse, FileListResponse, FileSearchResponse, ListParams, Spec, SpecDetail, Stats, Project, ProjectValidationResponse, ProjectsResponse, ListSpecsResponse, ProjectContext, MachinesResponse, Session, SessionArchiveResult, SessionEvent, SessionLog, SessionMode, ChatConfig, ChatStorageInfo, ModelsRegistryResponse, SpecTokenResponse, SpecValidationResponse, RunnerDefinition, RunnerListResponse, RunnerScope, RunnerValidateResponse, RunnerVersionResponse } from './core';
1
+ import { BackendAdapter, BatchMetadataResponse, ContextFileContent, ContextFileListItem, DependencyGraph, DirectoryListResponse, FileContentResponse, FileListResponse, FileSearchResponse, ListParams, Spec, SpecDetail, Stats, Project, ProjectValidationResponse, ProjectsResponse, ListSpecsResponse, ProjectContext, MachinesResponse, Session, SessionArchiveResult, SessionEvent, SessionLog, SessionMode, ChatConfig, ChatStorageInfo, ModelsRegistryResponse, SpecTokenResponse, SpecValidationResponse, SpecSearchFilters, SpecSearchResponse, RunnerDefinition, RunnerListResponse, RunnerScope, RunnerValidateResponse, RunnerVersionResponse } from './core';
2
2
  /**
3
3
  * Tauri adapter for desktop app - uses IPC commands
4
4
  */
@@ -68,6 +68,7 @@ export declare class TauriBackendAdapter implements BackendAdapter {
68
68
  prompt?: string | null;
69
69
  runner?: string;
70
70
  mode: SessionMode;
71
+ model?: string;
71
72
  }): Promise<Session>;
72
73
  startSession(): Promise<Session>;
73
74
  pauseSession(): Promise<Session>;
@@ -126,4 +127,5 @@ export declare class TauriBackendAdapter implements BackendAdapter {
126
127
  getProjectFiles(projectId: string, path?: string): Promise<FileListResponse>;
127
128
  getProjectFile(projectId: string, path: string): Promise<FileContentResponse>;
128
129
  searchProjectFiles(projectId: string, query: string, limit?: number): Promise<FileSearchResponse>;
130
+ searchSpecs(projectId: string, query: string, filters?: SpecSearchFilters): Promise<SpecSearchResponse>;
129
131
  }
@@ -90,6 +90,11 @@ declare const _default: {
90
90
  "emptyLogs": "No logs recorded yet.",
91
91
  "status": {
92
92
  "pending": "Pending",
93
+ "indicators": {
94
+ "running": "Session running",
95
+ "attention": "Session needs attention",
96
+ "completedRecent": "Session completed recently"
97
+ },
93
98
  "running": "Running",
94
99
  "paused": "Paused",
95
100
  "completed": "Completed",
@@ -104,6 +109,7 @@ declare const _default: {
104
109
  "resume": "Resume",
105
110
  "archive": "Archive",
106
111
  "stop": "Stop",
112
+ "viewAll": "View all",
107
113
  "logs": "View Logs",
108
114
  "view": "View",
109
115
  "retry": "Retry",
@@ -117,6 +123,7 @@ declare const _default: {
117
123
  "labels": {
118
124
  "runner": "Runner",
119
125
  "mode": "Mode",
126
+ "model": "Model",
120
127
  "started": "Started",
121
128
  "ended": "Ended",
122
129
  "duration": "Duration",
@@ -229,6 +236,15 @@ declare const _default: {
229
236
  "emptyDescription": "Create a new session to start tracking AI runs.",
230
237
  "noResultsTitle": "No matching sessions",
231
238
  "noResultsDescription": "Try adjusting your filters or search."
239
+ },
240
+ "groups": {
241
+ "active": "Active",
242
+ "today": "Today",
243
+ "yesterday": "Yesterday",
244
+ "older": "Older"
245
+ },
246
+ "labels": {
247
+ "noSpecs": "No specs"
232
248
  }
233
249
  },
234
250
  "sessionDetail": {
@@ -838,6 +854,8 @@ declare const _default: {
838
854
  "quickSearch": "Open quick search",
839
855
  "toggleChat": "Toggle AI chat",
840
856
  "toggleChatSidebar": "Toggle AI chat sidebar",
857
+ "toggleSessionsPopover": "Toggle sessions popover",
858
+ "newSession": "Start new session",
841
859
  "focusChatInput": "Focus chat input",
842
860
  "newConversation": "New conversation",
843
861
  "viewHistory": "View history",
@@ -958,7 +976,8 @@ declare const _default: {
958
976
  "enter": "Enter wide mode",
959
977
  "exit": "Exit wide mode"
960
978
  },
961
- "searchPlaceholder": "Search specs...",
979
+ "searchPlaceholder": "Search titles, content, tags...",
980
+ "searchHint": "Searches across spec titles, content, and tags",
962
981
  "filters": {
963
982
  "status": "Status",
964
983
  "priority": "Priority",
@@ -8,6 +8,20 @@ declare const _default: {
8
8
  "unknownError": "An unknown error occurred",
9
9
  "permissionDenied": "Permission denied",
10
10
  "operationFailed": "Operation failed",
11
+ "apiCodes": {
12
+ "notFound": "Resource not found",
13
+ "projectNotFound": "Project not found",
14
+ "specNotFound": "Spec not found",
15
+ "noProject": "No project selected",
16
+ "invalidRequest": "Invalid request",
17
+ "unauthorized": "Unauthorized",
18
+ "validationFailed": "Validation failed",
19
+ "databaseError": "Database error",
20
+ "configError": "Configuration error",
21
+ "toolNotFound": "Tool not found",
22
+ "toolError": "Tool execution failed",
23
+ "internalError": "Internal server error"
24
+ },
11
25
  "pageError": {
12
26
  "title": "Something went wrong",
13
27
  "description": "The page failed to render."
@@ -13,6 +13,11 @@ declare const _default: {
13
13
  "manageMachines": "管理设备",
14
14
  "collapse": "收起",
15
15
  "closeMenu": "关闭菜单",
16
+ "indicators": {
17
+ "running": "会话运行中",
18
+ "attention": "会话需要关注",
19
+ "completedRecent": "会话最近已完成"
20
+ },
16
21
  "dashboard": "仪表板",
17
22
  "allSpecifications": "所有规范",
18
23
  "sessions": "会话",
@@ -101,6 +106,7 @@ declare const _default: {
101
106
  "resume": "继续",
102
107
  "archive": "归档",
103
108
  "stop": "停止",
109
+ "viewAll": "查看全部",
104
110
  "logs": "查看日志",
105
111
  "view": "查看",
106
112
  "retry": "重试",
@@ -114,6 +120,7 @@ declare const _default: {
114
120
  "labels": {
115
121
  "runner": "运行器",
116
122
  "mode": "模式",
123
+ "model": "模型",
117
124
  "started": "开始时间",
118
125
  "ended": "结束时间",
119
126
  "duration": "持续时间",
@@ -147,6 +154,33 @@ declare const _default: {
147
154
  "guided": "引导",
148
155
  "ralph": "Ralph(已弃用)"
149
156
  },
157
+ "runners": {
158
+ "claude": "Claude",
159
+ "copilot": "GitHub Copilot",
160
+ "codex": "Codex",
161
+ "opencode": "OpenCode",
162
+ "aider": "Aider",
163
+ "cline": "Cline",
164
+ "gemini": "Gemini",
165
+ "cursor": "Cursor",
166
+ "windsurf": "Windsurf",
167
+ "droid": "Droid",
168
+ "kiro": "Kiro",
169
+ "kimi": "Kimi",
170
+ "qodo": "Qodo",
171
+ "amp": "Amp",
172
+ "trae": "Trae",
173
+ "qwen-code": "Qwen Code",
174
+ "goose": "Goose",
175
+ "openhands": "OpenHands",
176
+ "continue": "Continue",
177
+ "crush": "Crush",
178
+ "roo": "Roo",
179
+ "codebuddy": "CodeBuddy",
180
+ "kilo": "Kilo",
181
+ "augment": "Augment",
182
+ "antigravity": "Antigravity"
183
+ },
150
184
  "select": {
151
185
  "placeholder": "选择...",
152
186
  "search": "搜索...",
@@ -199,6 +233,15 @@ declare const _default: {
199
233
  "emptyDescription": "创建新会话以开始跟踪 AI 运行情况。",
200
234
  "noResultsTitle": "没有匹配的会话",
201
235
  "noResultsDescription": "尝试调整筛选条件或搜索关键词。"
236
+ },
237
+ "groups": {
238
+ "active": "运行中",
239
+ "today": "今天",
240
+ "yesterday": "昨天",
241
+ "older": "更早"
242
+ },
243
+ "labels": {
244
+ "noSpecs": "无 Specs"
202
245
  }
203
246
  },
204
247
  "sessionDetail": {
@@ -811,6 +854,8 @@ declare const _default: {
811
854
  "quickSearch": "打开快速搜索",
812
855
  "toggleChat": "切换 AI 聊天",
813
856
  "toggleChatSidebar": "切换 AI 聊天侧边栏",
857
+ "toggleSessionsPopover": "切换会话弹出层",
858
+ "newSession": "新建会话",
814
859
  "focusChatInput": "聚焦聊天输入框",
815
860
  "newConversation": "新建对话",
816
861
  "viewHistory": "查看历史记录",
@@ -931,7 +976,8 @@ declare const _default: {
931
976
  "enter": "进入宽屏模式",
932
977
  "exit": "退出宽屏模式"
933
978
  },
934
- "searchPlaceholder": "搜索规范...",
979
+ "searchPlaceholder": "搜索标题、内容、标签...",
980
+ "searchHint": "在规范标题、内容和标签中搜索",
935
981
  "filters": {
936
982
  "status": "状态",
937
983
  "priority": "优先级",
@@ -8,6 +8,20 @@ declare const _default: {
8
8
  "unknownError": "发生未知错误",
9
9
  "permissionDenied": "权限被拒绝",
10
10
  "operationFailed": "操作失败",
11
+ "apiCodes": {
12
+ "notFound": "资源未找到",
13
+ "projectNotFound": "项目未找到",
14
+ "specNotFound": "Spec 未找到",
15
+ "noProject": "未选择项目",
16
+ "invalidRequest": "无效请求",
17
+ "unauthorized": "未授权",
18
+ "validationFailed": "验证失败",
19
+ "databaseError": "数据库错误",
20
+ "configError": "配置错误",
21
+ "toolNotFound": "工具未找到",
22
+ "toolError": "工具执行失败",
23
+ "internalError": "服务器内部错误"
24
+ },
11
25
  "pageError": {
12
26
  "title": "页面出现错误",
13
27
  "description": "页面渲染失败。"
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function DependencyControls({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function DependencyFilters({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function DependencyGraph({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function SpecContent({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function SpecHeader({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function SpecMetadataPanel({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare function SpecRelationships({ children }: PropsWithChildren): import("react/jsx-runtime").JSX.Element;
@@ -2,9 +2,11 @@ interface SessionsUiState {
2
2
  isDrawerOpen: boolean;
3
3
  activeSessionId: string | null;
4
4
  specFilter: string | null;
5
+ createDialogNonce: number;
5
6
  toggleDrawer: () => void;
6
7
  openDrawer: (specName?: string) => void;
7
8
  closeDrawer: () => void;
9
+ openCreateDialog: (specName?: string) => void;
8
10
  setSpecFilter: (specName: string | null) => void;
9
11
  setActiveSessionId: (id: string | null) => void;
10
12
  }
@@ -1,11 +1,12 @@
1
- import { LightweightSpec as UiLightweightSpec, SpecRelationships as UiSpecRelationships, SpecPriority as UiSpecPriority, SpecStatus as UiSpecStatus, SpecWithMetadata as UiSpecWithMetadata, SubSpec as UiSubSpec } from './specs';
2
- export type SpecStatus = UiSpecStatus;
3
- export type SpecPriority = UiSpecPriority;
1
+ import { LightweightSpec as UiLightweightSpec, SpecRelationships as UiSpecRelationships, SpecWithMetadata as UiSpecWithMetadata, SubSpec as UiSubSpec } from './specs';
2
+ import { SessionMode as GeneratedSessionMode, SessionStatus as GeneratedSessionStatus, SpecPriority as GeneratedSpecPriority, SpecStatus as GeneratedSpecStatus } from './generated';
3
+ export type SpecStatus = GeneratedSpecStatus;
4
+ export type SpecPriority = GeneratedSpecPriority;
4
5
  export type TokenStatus = 'optimal' | 'good' | 'warning' | 'critical';
5
6
  export type ValidationStatus = 'pass' | 'warn' | 'fail';
6
- export type SessionStatus = 'pending' | 'running' | 'paused' | 'completed' | 'failed' | 'cancelled';
7
+ export type SessionStatus = GeneratedSessionStatus;
7
8
  /** @deprecated 'ralph' is deprecated and kept only for backward-compatibility with existing sessions */
8
- export type SessionMode = 'guided' | 'autonomous' | 'ralph';
9
+ export type SessionMode = GeneratedSessionMode;
9
10
  export type SessionProtocol = 'acp' | 'subprocess';
10
11
  export type SubSpec = UiSubSpec & {
11
12
  file?: string;
@@ -403,3 +404,14 @@ export interface FileSearchResponse {
403
404
  query: string;
404
405
  results: FileSearchEntry[];
405
406
  }
407
+ export interface SpecSearchFilters {
408
+ status?: string;
409
+ priority?: string;
410
+ tags?: string[];
411
+ }
412
+ export interface SpecSearchResponse {
413
+ results: Spec[];
414
+ total: number;
415
+ query: string;
416
+ projectId?: string;
417
+ }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Batch metadata request
3
+ */
4
+ export type BatchMetadataRequest = {
5
+ specNames: Array<string>;
6
+ };
@@ -0,0 +1,9 @@
1
+ import { SpecMetadata } from './SpecMetadata';
2
+ /**
3
+ * Batch metadata response - tokens and validation for multiple specs
4
+ */
5
+ export type BatchMetadataResponse = {
6
+ specs: {
7
+ [key in string]?: SpecMetadata;
8
+ };
9
+ };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * A single checklist toggle item
3
+ */
4
+ export type ChecklistToggleItem = {
5
+ itemText: string;
6
+ checked: boolean;
7
+ };
@@ -0,0 +1,12 @@
1
+ import { ChecklistToggleItem } from './ChecklistToggleItem';
2
+ /**
3
+ * Request to toggle checklist items in a spec
4
+ */
5
+ export type ChecklistToggleRequest = {
6
+ toggles: Array<ChecklistToggleItem>;
7
+ expectedContentHash: string | null;
8
+ /**
9
+ * Optional sub-spec filename (e.g., "IMPLEMENTATION.md")
10
+ */
11
+ subspec: string | null;
12
+ };
@@ -0,0 +1,9 @@
1
+ import { ChecklistToggledResult } from './ChecklistToggledResult';
2
+ /**
3
+ * Response from checklist toggle
4
+ */
5
+ export type ChecklistToggleResponse = {
6
+ success: boolean;
7
+ contentHash: string;
8
+ toggled: Array<ChecklistToggledResult>;
9
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Result of a single checklist toggle
3
+ */
4
+ export type ChecklistToggledResult = {
5
+ itemText: string;
6
+ checked: boolean;
7
+ line: number;
8
+ };
@@ -0,0 +1,3 @@
1
+ export type ConfigFeatures = {
2
+ aiAgents: boolean | null;
3
+ };
@@ -0,0 +1,7 @@
1
+ export type ConfigStructure = {
2
+ pattern: string | null;
3
+ prefix: string | null;
4
+ dateFormat: string | null;
5
+ sequenceDigits: number | null;
6
+ defaultFile: string | null;
7
+ };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Context file representation
3
+ */
4
+ export type ContextFile = {
5
+ name: string;
6
+ path: string;
7
+ content: string;
8
+ tokenCount: number;
9
+ lastModified: string;
10
+ };
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Create spec request
3
+ */
4
+ export type CreateSpecRequest = {
5
+ name: string;
6
+ title: string | null;
7
+ status: string | null;
8
+ priority: string | null;
9
+ tags: Array<string> | null;
10
+ assignee: string | null;
11
+ dependsOn: Array<string> | null;
12
+ template: string | null;
13
+ content: string | null;
14
+ };
@@ -0,0 +1,5 @@
1
+ export type DependencyEdge = {
2
+ source: string;
3
+ target: string;
4
+ type: string | null;
5
+ };
@@ -0,0 +1,10 @@
1
+ import { DependencyEdge } from './DependencyEdge';
2
+ import { DependencyNode } from './DependencyNode';
3
+ /**
4
+ * Project-level dependency graph
5
+ */
6
+ export type DependencyGraphResponse = {
7
+ projectId: string | null;
8
+ nodes: Array<DependencyNode>;
9
+ edges: Array<DependencyEdge>;
10
+ };
@@ -0,0 +1,8 @@
1
+ export type DependencyNode = {
2
+ id: string;
3
+ name: string;
4
+ number: number;
5
+ status: string;
6
+ priority: string;
7
+ tags: Array<string>;
8
+ };
@@ -0,0 +1,9 @@
1
+ import { SpecSummary } from './SpecSummary';
2
+ /**
3
+ * Dependency graph response
4
+ */
5
+ export type DependencyResponse = {
6
+ spec: SpecSummary;
7
+ dependsOn: Array<SpecSummary>;
8
+ requiredBy: Array<SpecSummary>;
9
+ };
@@ -0,0 +1,22 @@
1
+ import { SectionTokenCount } from './SectionTokenCount';
2
+ /**
3
+ * Detailed content breakdown
4
+ */
5
+ export type DetailedBreakdown = {
6
+ /**
7
+ * Tokens in code blocks
8
+ */
9
+ codeBlocks: number;
10
+ /**
11
+ * Tokens in checklists (- [ ] items)
12
+ */
13
+ checklists: number;
14
+ /**
15
+ * Tokens in plain prose/text
16
+ */
17
+ prose: number;
18
+ /**
19
+ * Tokens per h2 section
20
+ */
21
+ sections: Array<SectionTokenCount>;
22
+ };
@@ -0,0 +1,6 @@
1
+ export type DetectionConfig = {
2
+ commands: Array<string>;
3
+ config_dirs: Array<string>;
4
+ env_vars: Array<string>;
5
+ extensions: Array<string>;
6
+ };
@@ -0,0 +1,6 @@
1
+ import { RunnerDefinition } from './RunnerDefinition';
2
+ export type DetectionResult = {
3
+ runner: RunnerDefinition;
4
+ detected: boolean;
5
+ reasons: Array<string>;
6
+ };
@@ -0,0 +1,3 @@
1
+ export type DraftStatusConfig = {
2
+ enabled: boolean | null;
3
+ };
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Frontmatter response for API
3
+ */
4
+ export type FrontmatterResponse = {
5
+ status: string;
6
+ created: string;
7
+ priority: string | null;
8
+ tags: Array<string>;
9
+ dependsOn: Array<string>;
10
+ parent: string | null;
11
+ assignee: string | null;
12
+ createdAt: string | null;
13
+ updatedAt: string | null;
14
+ completedAt: string | null;
15
+ };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Health check response
3
+ */
4
+ export type HealthResponse = {
5
+ status: string;
6
+ version: string;
7
+ };
@@ -0,0 +1,29 @@
1
+ import { SpecRelationships } from './SpecRelationships';
2
+ /**
3
+ * Hierarchical node for tree view - pre-computed server-side for performance
4
+ */
5
+ export type HierarchyNode = {
6
+ childNodes: Array<HierarchyNode>;
7
+ projectId: string | null;
8
+ id: string;
9
+ specNumber: number | null;
10
+ specName: string;
11
+ title: string | null;
12
+ status: string;
13
+ priority: string | null;
14
+ tags: Array<string>;
15
+ assignee: string | null;
16
+ createdAt: string | null;
17
+ updatedAt: string | null;
18
+ completedAt: string | null;
19
+ filePath: string;
20
+ dependsOn: Array<string>;
21
+ parent: string | null;
22
+ children: Array<string>;
23
+ requiredBy: Array<string>;
24
+ contentHash: string | null;
25
+ tokenCount: number | null;
26
+ tokenStatus: string | null;
27
+ validationStatus: string | null;
28
+ relationships: SpecRelationships | null;
29
+ };