@tea-agent/loop-agent 0.43.0-next.1 → 0.43.0-next.11

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 (207) hide show
  1. package/CHANGELOG.md +144 -9
  2. package/dist/application/dag/run-dag.js +5 -0
  3. package/dist/application/evaluation/budget.js +19 -1
  4. package/dist/application/task-lifecycle/advance.js +17 -4
  5. package/dist/application/task-lifecycle/observe.js +43 -29
  6. package/dist/application/task-lifecycle/plan-transitions.js +5 -4
  7. package/dist/build-stamp.json +3 -3
  8. package/dist/executors/dag-pi-executor.js +1237 -586
  9. package/dist/executors/pi-executor.js +22 -1
  10. package/dist/executors/pi-sdk-executor.js +140 -39
  11. package/dist/executors/shell-executor.js +8 -4
  12. package/dist/shared/frontend-execution-policy.js +23 -0
  13. package/dist/task/config-types.js +4 -0
  14. package/dist/task/source-prepare/ledger-reconciliation.js +2 -2
  15. package/dist/task/source-prepare/ledger-review.js +6 -9
  16. package/dist/task/source-prepare/semantic-intake.js +16 -26
  17. package/dist/task/source-prepare/source-fidelity-pi.js +28 -9
  18. package/dist/task/source-references.js +48 -23
  19. package/dist/worker/console/chat/assistant-content.js +23 -2
  20. package/dist/worker/console/chat/browser-policy.js +113 -0
  21. package/dist/worker/console/chat/browser-routes.js +140 -0
  22. package/dist/worker/console/chat/explore-tools.js +13 -0
  23. package/dist/worker/console/chat/pi-runtime/custom-tools/ask-user-question.js +44 -0
  24. package/dist/worker/console/chat/pi-runtime/custom-tools/explore-tools.js +202 -0
  25. package/dist/worker/console/chat/pi-runtime/custom-tools/goal-tools.js +79 -0
  26. package/dist/worker/console/chat/pi-runtime/custom-tools/operator-tools.js +86 -0
  27. package/dist/worker/console/chat/pi-runtime/custom-tools/todo-write.js +38 -0
  28. package/dist/worker/console/chat/pi-runtime/inspection-types.js +28 -0
  29. package/dist/worker/console/chat/pi-runtime/inspection.js +439 -0
  30. package/dist/worker/console/chat/pi-runtime/sdk-bindings.js +153 -0
  31. package/dist/worker/console/chat/pi-runtime/sdk-session.js +5 -0
  32. package/dist/worker/console/chat/pi-runtime.js +207 -1178
  33. package/dist/worker/console/chat/routes.js +208 -71
  34. package/dist/worker/console/chat/scm-routes.js +217 -0
  35. package/dist/worker/console/chat/scm-service.js +283 -0
  36. package/dist/worker/console/chat/scm-tools.js +111 -0
  37. package/dist/worker/console/chat/sdd-data-alignment.js +65 -9
  38. package/dist/worker/console/chat/session-catalog.js +32 -0
  39. package/dist/worker/console/chat/session-mode-view.js +49 -0
  40. package/dist/worker/console/chat/session-mode.js +219 -0
  41. package/dist/worker/console/chat/session-store.js +22 -6
  42. package/dist/worker/console/chat/shortcuts.js +6 -0
  43. package/dist/worker/console/chat/terminal-routes.js +216 -0
  44. package/dist/worker/console/chat/terminal-sessions.js +348 -0
  45. package/dist/worker/console/chat/terminal-tools.js +211 -0
  46. package/dist/worker/console/chat/tool-preview.js +11 -0
  47. package/dist/worker/console/chat/tools.js +2 -0
  48. package/dist/worker/console/server.js +2 -28
  49. package/dist/worker/console/static/assets/{abnfDiagram-N423BO3Z-B0Q0nClf.js → abnfDiagram-N423BO3Z-CTSK0xbU.js} +1 -1
  50. package/dist/worker/console/static/assets/{arc-DCPjC19G.js → arc-_2MfctFP.js} +1 -1
  51. package/dist/worker/console/static/assets/{architectureDiagram-T3A2C74G-CP5n9jmG.js → architectureDiagram-T3A2C74G-DsDe2wTg.js} +1 -1
  52. package/dist/worker/console/static/assets/{blockDiagram-VBNYF7ZC-CmaWi_Wg.js → blockDiagram-VBNYF7ZC-Dtz_779U.js} +1 -1
  53. package/dist/worker/console/static/assets/{c4Diagram-5PPSVZJV-Ct5tcMfZ.js → c4Diagram-5PPSVZJV-LaULi-gw.js} +1 -1
  54. package/dist/worker/console/static/assets/channel-CqS4yBWT.js +1 -0
  55. package/dist/worker/console/static/assets/{chunk-2GRJ4B5K-C0osm1Zf.js → chunk-2GRJ4B5K-DuHBqqX8.js} +1 -1
  56. package/dist/worker/console/static/assets/{chunk-2Q5K7J3B-CDWviED7.js → chunk-2Q5K7J3B-BZgZs1dn.js} +1 -1
  57. package/dist/worker/console/static/assets/{chunk-5RXB4S5H-mtSk1-j7.js → chunk-5RXB4S5H-tzwmlIO_.js} +1 -1
  58. package/dist/worker/console/static/assets/{chunk-5VM5RSS4-D5J9PHC7.js → chunk-5VM5RSS4-CeYrLkSn.js} +1 -1
  59. package/dist/worker/console/static/assets/{chunk-6Q2QTUOP-Begg4WAa.js → chunk-6Q2QTUOP-C92cgilm.js} +1 -1
  60. package/dist/worker/console/static/assets/{chunk-GF5L2VYU-sF1AEy7T.js → chunk-GF5L2VYU-XOXpGC0F.js} +1 -1
  61. package/dist/worker/console/static/assets/{chunk-JWPE2WC7-BqbsWXZb.js → chunk-JWPE2WC7-CGHbJyCH.js} +1 -1
  62. package/dist/worker/console/static/assets/{chunk-KBJHAD2P-BKJrPcJ6.js → chunk-KBJHAD2P-Bs2-LTzf.js} +1 -1
  63. package/dist/worker/console/static/assets/{chunk-RYQCIY6F-CcwNMRho.js → chunk-RYQCIY6F-rN7up7E4.js} +1 -1
  64. package/dist/worker/console/static/assets/{chunk-XXDRQBXY-BEJi3iIs.js → chunk-XXDRQBXY-B_fWjKpR.js} +1 -1
  65. package/dist/worker/console/static/assets/classDiagram-JCYQIIEL-DVOxNOq0.js +1 -0
  66. package/dist/worker/console/static/assets/classDiagram-v2-OCEON4UE-DVOxNOq0.js +1 -0
  67. package/dist/worker/console/static/assets/{cose-bilkent-JH36ORCC-DRLgTvVu.js → cose-bilkent-JH36ORCC-DE3SdJvB.js} +1 -1
  68. package/dist/worker/console/static/assets/{cynefin-VYW2F7L2-BoAVG3cs.js → cynefin-VYW2F7L2-B-4yuRAX.js} +1 -1
  69. package/dist/worker/console/static/assets/{cynefinDiagram-MW4NZA55-Bzol06hR.js → cynefinDiagram-MW4NZA55-TiCPFuO8.js} +1 -1
  70. package/dist/worker/console/static/assets/{dagre-VZM6K2ZE-UmliJM77.js → dagre-VZM6K2ZE-7crzLMzA.js} +1 -1
  71. package/dist/worker/console/static/assets/{diagram-7IWD3JNH-BWLcJkFo.js → diagram-7IWD3JNH-Cvr-x6Fd.js} +1 -1
  72. package/dist/worker/console/static/assets/{diagram-B4RE2ZJO-CgApOm-O.js → diagram-B4RE2ZJO-BzcRHUjH.js} +1 -1
  73. package/dist/worker/console/static/assets/{diagram-LBJQPF4R-Bh3RgTLs.js → diagram-LBJQPF4R-BjkAXilh.js} +1 -1
  74. package/dist/worker/console/static/assets/{diagram-Q27KOJAE-Dsh-D5nE.js → diagram-Q27KOJAE-BkzyATK7.js} +1 -1
  75. package/dist/worker/console/static/assets/{diagram-UB23O5K3-Dkbbpcpb.js → diagram-UB23O5K3-rZuTarYP.js} +1 -1
  76. package/dist/worker/console/static/assets/{ebnfDiagram-BXEA7PRR-3EBaA3t3.js → ebnfDiagram-BXEA7PRR-CAYENaN1.js} +1 -1
  77. package/dist/worker/console/static/assets/{erDiagram-JOGREHBK-Bq2Dc5ok.js → erDiagram-JOGREHBK-DCEam0Uq.js} +1 -1
  78. package/dist/worker/console/static/assets/{flowDiagram-UKHOOZJN-De7y55ha.js → flowDiagram-UKHOOZJN-e_dH4wVO.js} +1 -1
  79. package/dist/worker/console/static/assets/{ganttDiagram-PKOTCBZU-fLiDbQRh.js → ganttDiagram-PKOTCBZU-CvZa2zOK.js} +1 -1
  80. package/dist/worker/console/static/assets/{gitGraphDiagram-DS77QQ5N-Du617mp1.js → gitGraphDiagram-DS77QQ5N-CbT5TuKp.js} +1 -1
  81. package/dist/worker/console/static/assets/index-CUPeoE8W.js +468 -0
  82. package/dist/worker/console/static/assets/index-SAANIK8g.css +1 -0
  83. package/dist/worker/console/static/assets/{infoDiagram-6WML65LV-BwmlF-XP.js → infoDiagram-6WML65LV-BWzHQa_Z.js} +1 -1
  84. package/dist/worker/console/static/assets/{ishikawaDiagram-WSZJBQD7-zsGtS59u.js → ishikawaDiagram-WSZJBQD7-BTjlovtU.js} +1 -1
  85. package/dist/worker/console/static/assets/{journeyDiagram-NVQOT4AX-DTTPTe3f.js → journeyDiagram-NVQOT4AX-DkvQoCc1.js} +1 -1
  86. package/dist/worker/console/static/assets/{kanban-definition-27J2QSJJ-BkXg9aP-.js → kanban-definition-27J2QSJJ-CHSzGi3W.js} +1 -1
  87. package/dist/worker/console/static/assets/{linear-7U2ue5IE.js → linear-DZMkTCWH.js} +1 -1
  88. package/dist/worker/console/static/assets/{mermaid.core-BUuGHmWO.js → mermaid.core-BIMhty7A.js} +5 -5
  89. package/dist/worker/console/static/assets/{mindmap-definition-FAOFIHXS-7q6fX0Sv.js → mindmap-definition-FAOFIHXS-Dx-tyMl3.js} +1 -1
  90. package/dist/worker/console/static/assets/{pegDiagram-VL7TDLO6-CkQPJN55.js → pegDiagram-VL7TDLO6-C6G34rbY.js} +1 -1
  91. package/dist/worker/console/static/assets/{pieDiagram-7S7Q4E2Y-CCal_tfX.js → pieDiagram-7S7Q4E2Y-CHK9XOfm.js} +1 -1
  92. package/dist/worker/console/static/assets/{quadrantDiagram-CIZ2JOQS-B7bpxyAZ.js → quadrantDiagram-CIZ2JOQS-CDARkI0w.js} +1 -1
  93. package/dist/worker/console/static/assets/{railroadDiagram-AXF67PYL-CJmww7D-.js → railroadDiagram-AXF67PYL-DiuUe0ZQ.js} +1 -1
  94. package/dist/worker/console/static/assets/{requirementDiagram-LRYGKXZP-D6ldWJEv.js → requirementDiagram-LRYGKXZP-RE61UR56.js} +1 -1
  95. package/dist/worker/console/static/assets/{sankeyDiagram-W5VNT64P-VGh33I9e.js → sankeyDiagram-W5VNT64P-KDNLHMEG.js} +1 -1
  96. package/dist/worker/console/static/assets/{sequenceDiagram-SI44F4Z6-CCkDrIjU.js → sequenceDiagram-SI44F4Z6-CeVgXnD9.js} +1 -1
  97. package/dist/worker/console/static/assets/{sizeCapture-X5ZJPWSS-NC8f5Otb.js → sizeCapture-X5ZJPWSS-CXwGyjjG.js} +1 -1
  98. package/dist/worker/console/static/assets/{stateDiagram-OKZ733FA-_92ezZdF.js → stateDiagram-OKZ733FA-BjTfozab.js} +1 -1
  99. package/dist/worker/console/static/assets/stateDiagram-v2-UEYNNEHI-BXoYsyr2.js +1 -0
  100. package/dist/worker/console/static/assets/{swimlanes-SLNWSIFB-BdUCGtbP.js → swimlanes-SLNWSIFB-BaXOB8GT.js} +2 -2
  101. package/dist/worker/console/static/assets/swimlanesDiagram-ULZ7WXOC-DfKliS4e.js +8 -0
  102. package/dist/worker/console/static/assets/{timeline-definition-Z64GVDOM-CdD1H8ia.js → timeline-definition-Z64GVDOM-C3r2hqUU.js} +1 -1
  103. package/dist/worker/console/static/assets/{vennDiagram-T6HMQDX7-Dkdk3oFo.js → vennDiagram-T6HMQDX7-MWKgl1S9.js} +1 -1
  104. package/dist/worker/console/static/assets/{wardleyDiagram-T6FBY63Y-CKu2uPPY.js → wardleyDiagram-T6FBY63Y-C9iFcZPk.js} +1 -1
  105. package/dist/worker/console/static/assets/{xychartDiagram-ELKLHX3M-ClqAnuG8.js → xychartDiagram-ELKLHX3M-DqnM24Jp.js} +1 -1
  106. package/dist/worker/console/static/index.html +2 -2
  107. package/dist/worker/console/static-src/operator-chat/active-turn-tail.js +10 -0
  108. package/dist/worker/console/static-src/operator-chat/chat-link.js +94 -0
  109. package/dist/worker/console/static-src/operator-chat/chat-sse-events.js +122 -10
  110. package/dist/worker/console/static-src/operator-chat/compaction-message.js +7 -0
  111. package/dist/worker/console/static-src/operator-chat/pending-user-message.js +27 -15
  112. package/dist/worker/console/static-src/operator-chat/process-label.js +41 -0
  113. package/dist/worker/console/static-src/operator-chat/turn-group-equality.js +13 -0
  114. package/dist/worker/console/static-src/operator-chat/turn-process-disclosure.js +10 -0
  115. package/dist/worker/console/static-src/operator-chat/use-searchable-hidden.js +51 -0
  116. package/dist/worker/console/static-src/operator-chat/useChatSessions.js +44 -24
  117. package/dist/worker/console/static-src/operator-chat/useChatStream.js +18 -2
  118. package/dist/worker/console/static-src/operator-chat/useChatThread.js +41 -8
  119. package/dist/worker/console/static-src/operator-chat/useComposer.js +26 -11
  120. package/dist/worker/console/static-src/operator-chat/user-turn-anchor-equality.js +21 -0
  121. package/dist/worker/console/workspace-context.js +15 -1
  122. package/dist/worker/observe/node-transparency.js +81 -72
  123. package/dist/worker/observe/routes.js +20 -1
  124. package/dist/worker/observe/static/dag-inspector-humanize.js +3 -0
  125. package/dist/worker/observe/static/dom.js +20 -1
  126. package/dist/worker/observe/static/format-pool.d.ts +2 -0
  127. package/dist/worker/observe/static/format-pool.js +6 -0
  128. package/dist/worker/observe/static/format.js +7 -0
  129. package/dist/worker/observe/static/inspect-workspace.js +34 -7
  130. package/dist/worker/observe/static/inspector-submission.js +32 -0
  131. package/dist/worker/observe/static/kpi.js +1 -0
  132. package/dist/worker/observe/static/relations.js +2 -0
  133. package/dist/worker/observe/static/router.js +13 -0
  134. package/dist/worker/observe/static/run-processing.js +2 -0
  135. package/dist/worker/observe/static/shell-chrome.js +36 -3
  136. package/dist/worker/observe/static/state.js +35 -2
  137. package/dist/worker/observe/static/styles.css +263 -39
  138. package/dist/worker/observe/static/task-failure-labels.d.ts +4 -0
  139. package/dist/worker/observe/static/task-failure-labels.js +67 -0
  140. package/dist/worker/observe/static/task-history.js +12 -0
  141. package/dist/worker/observe/static/views/batch.js +6 -13
  142. package/dist/worker/observe/static/views/dag-graph.js +50 -3
  143. package/dist/worker/observe/static/views/dag-inspector.js +742 -268
  144. package/dist/worker/observe/static/views/dag-trajectory.js +3 -0
  145. package/dist/worker/observe/static/views/dag.d.ts +6 -0
  146. package/dist/worker/observe/static/views/dag.js +49 -11
  147. package/dist/worker/observe/static/views/dags.js +2 -0
  148. package/dist/worker/observe/static/views/dashboard.js +21 -12
  149. package/dist/worker/observe/static/views/failures.js +21 -11
  150. package/dist/worker/observe/static/views/feature.js +11 -29
  151. package/dist/worker/observe/static/views/pool.js +37 -28
  152. package/dist/worker/observe/static/views/run.js +48 -5
  153. package/dist/worker/observe/static/views/session-timeline.js +189 -240
  154. package/dist/worker/observe/static/views/task.js +81 -62
  155. package/dist/workflows/dag/budget-enforcement.js +53 -3
  156. package/dist/workflows/dag/frontend-capacity.js +9 -0
  157. package/dist/workflows/dag/frontend-closeout.js +1 -1
  158. package/dist/workflows/dag/frontend-design-policy.js +2 -1
  159. package/dist/workflows/dag/frontend-durable-tools.js +193 -0
  160. package/dist/workflows/dag/frontend-execution-groups.js +24 -0
  161. package/dist/workflows/dag/frontend-implementation-contract.js +13 -0
  162. package/dist/workflows/dag/frontend-input-projection.js +76 -0
  163. package/dist/workflows/dag/frontend-plan-completeness.js +186 -0
  164. package/dist/workflows/dag/frontend-plan-recovery-policy.js +18 -0
  165. package/dist/workflows/dag/frontend-plan-render.js +10 -3
  166. package/dist/workflows/dag/frontend-prewrite-gate.js +3 -3
  167. package/dist/workflows/dag/frontend-recovery-controller.js +7 -7
  168. package/dist/workflows/dag/frontend-recovery-lineage.js +13 -0
  169. package/dist/workflows/dag/frontend-recovery-run.js +4 -0
  170. package/dist/workflows/dag/frontend-review-context.js +2 -1
  171. package/dist/workflows/dag/frontend-review-scopes.js +139 -0
  172. package/dist/workflows/dag/frontend-session-budget.js +249 -0
  173. package/dist/workflows/dag/frontend-shadow-dual-write.js +20 -2
  174. package/dist/workflows/dag/frontend-shape-facts.js +12 -2
  175. package/dist/workflows/dag/frontend-shape.js +30 -1
  176. package/dist/workflows/dag/frontend-test-execution-evidence.js +3 -2
  177. package/dist/workflows/dag/frontend-typed-event-store.js +11 -0
  178. package/dist/workflows/dag/frontend-verification-trace.js +1 -1
  179. package/dist/workflows/dag/init-hybrid.js +65 -167
  180. package/dist/workflows/dag/node-execution.js +38 -155
  181. package/dist/workflows/dag/prompt.js +4 -0
  182. package/dist/workflows/dag/rerun-plan.js +7 -1
  183. package/dist/workflows/dag/runner.js +26 -1
  184. package/dist/workflows/dag/types.js +6 -0
  185. package/docs/operations/README.md +1 -0
  186. package/docs/templates/frontend-design-contract.md +4 -4
  187. package/docs/templates/frontend-implementation-contract.schema.json +34 -2
  188. package/docs/templates/frontend-implementation-dag.json +14 -13
  189. package/package.json +6 -3
  190. package/skills/frontend-bounded-implement/SKILL.md +3 -3
  191. package/skills/frontend-bounded-implement/references/code-standards.md +3 -3
  192. package/skills/frontend-contract/SKILL.md +2 -1
  193. package/skills/frontend-contract/references/contract-protocol.md +22 -4
  194. package/skills/frontend-design-review/SKILL.md +22 -16
  195. package/skills/frontend-design-review/references/review-checklist.md +7 -7
  196. package/skills/frontend-plan/SKILL.md +21 -2
  197. package/skills/frontend-plan/references/decision-contract.md +42 -23
  198. package/skills/frontend-review/SKILL.md +22 -29
  199. package/skills/frontend-review/references/review-findings.md +24 -43
  200. package/skills/frontend-scout/references/scout-evidence.md +4 -0
  201. package/dist/worker/console/static/assets/channel-DAS07MdS.js +0 -1
  202. package/dist/worker/console/static/assets/classDiagram-JCYQIIEL-Cwk-5jiW.js +0 -1
  203. package/dist/worker/console/static/assets/classDiagram-v2-OCEON4UE-Cwk-5jiW.js +0 -1
  204. package/dist/worker/console/static/assets/index-C0O48S_P.js +0 -449
  205. package/dist/worker/console/static/assets/index-CzKf4U8P.css +0 -1
  206. package/dist/worker/console/static/assets/stateDiagram-v2-UEYNNEHI-DyJg5gzW.js +0 -1
  207. package/dist/worker/console/static/assets/swimlanesDiagram-ULZ7WXOC-B1cw_0Uy.js +0 -8
@@ -8,14 +8,16 @@
8
8
  source-fidelity ledger. Do not infer fragment IDs from prose.
9
9
  - Record observable outcomes, applicable UI states, runtime/environment constraints,
10
10
  non-goals, risks, and verification expectations without choosing implementation.
11
- - Classify each requirement as `explicit`, `repository-resolvable`, `assumption`, or
12
- `blocking`. Blocking facts name their owner and evidence.
11
+ - Runtime owns requirement text, source binding and disposition. Use typed questions
12
+ and constraints for uncertainties; blocked terminal facts name their owner.
13
13
 
14
14
  ## Evidence and handoff
15
15
 
16
16
  - Register static, behavior, Mock, and real-integration evidence expectations as
17
17
  required, optional, or not-applicable. The classification follows the source and
18
- risk; it is not selected for model convenience.
18
+ risk; it is not selected for model convenience. These are source expectations
19
+ for the non-blocking frontend-test handoff, not implementation test gates.
20
+ This implementation workflow executes only npm run build.
19
21
  - Register a non-blocking frontend-test handoff for UI-visible or interactive work.
20
22
  - Preserve exact command labels and referenced paths. Do not invent evidence,
21
23
  connector results, APIs, or verification commands.
@@ -29,6 +31,22 @@ enumerate or downgrade them.
29
31
 
30
32
  ## Terminal
31
33
 
32
- Commit facts in small batches and call `finalize_contract` exactly once with
34
+ Commit facts from the complete current scope, then `complete_contract_scope` only
35
+ after its evidence, constraints and source-bound deliverables are recorded. Scope
36
+ checkpoints survive interruption; confirming an ID alone is not completion.
37
+ Call `finalize_contract` with
33
38
  `ready`, `ready-with-assumptions`, or `blocked`. If the task is too large for one
34
39
  bounded writer, record a split proposal instead of broadening the contract.
40
+
41
+ A successful receipt means the fact was saved durably. Replays are idempotent;
42
+ changed facts require explicit `replace:true`. Correct rejected calls and retry,
43
+ but do not mutate after a successful terminal. Never drop tail conditions to fit.
44
+
45
+ ## Execution ownership
46
+
47
+ `record_requirement` may include `execution:{groupId,kind,summary}`. Use `behavior`,
48
+ `constraint`, or `exclusion`; reuse an existing group only when semantics agree.
49
+ Keep permission, threshold and failure-path differences separate. Do not merge
50
+ source IDs or independent acceptance conditions. Unclassified requirements remain
51
+ independent. Later scopes receive the shared group index. A group is a planning
52
+ proposal; independent design review must check every member's complete text.
@@ -9,36 +9,36 @@ references:
9
9
 
10
10
  # Frontend Design Review
11
11
 
12
- For frontend design review nodes. Read the checklist and the non-blocking contract
13
- capacity diagnostic first. Audit either the canonical contract or, when the
14
- diagnostic recommends indexed reading, its hash-bound field sections. Check the
15
- bound Mock strategy, task bounds, and traceable design evidence supplied by the
16
- upstream context. Do not rediscover task sources, search specification roots, or
17
- replace frozen evidence with nearby-code conventions. Use only exact, bound evidence
18
- paths when additional reading is necessary; never invent connector results.
12
+ Audit the canonical contract or its hash-bound indexed sections, guided by the
13
+ capacity diagnostic. Check Mock strategy, task bounds and exact bound evidence.
14
+ Do not rediscover sources, search specification roots or invent connector results.
19
15
 
20
16
  ## Authoritative Terminal
21
17
 
22
- Complete the review with exactly one committed typed tool call:
18
+ Submit findings one at a time with `record_design_finding` using stable IDs.
19
+ Use `replace:true` for revisions. The terminal automatically includes saved findings;
20
+ do not repeat their array. Correct rejected calls, then commit one successful terminal:
23
21
 
24
22
  - `approve_design` when no blocking design defect remains;
25
23
  - `request_design_changes` when a blocker exists. It must include a typed
26
- `issueCategory`, at least one `evidenceRef`, and non-empty findings.
24
+ `issueCategory`, at least one `evidenceRef`, and non-empty findings (saved or supplied).
27
25
 
28
26
  The typed terminal is the only authoritative outcome. Do not require or emit a
29
27
  `VERDICT:` line, JSON verdict, revision patch, or a second final-design-review
30
- verdict. A requested design change ends this run; the recovery controller creates
31
- any bounded follow-up run from the appropriate phase.
28
+ verdict. Requested changes end this run; recovery owns the bounded follow-up.
29
+
30
+ Check every execution group against its members' complete outcomes. Permissions,
31
+ thresholds and error paths remain independent ACs with corresponding planned implementation.
32
+ The shared static build target checks buildability only.
32
33
 
33
34
  ## Blocking Conditions
34
35
 
35
- - Any criterion lacks implementation/verification; UI states lack reasons; a
36
+ - Any criterion lacks planned implementation; UI states lack reasons; a
36
37
  dependency lacks permission; confirmed primitives/rules are ignored; design claims
37
38
  lack knowledge-base or required openspec specification evidence; paths cross
38
- write bounds; commands are missing/non-deterministic; or
39
- interaction, responsive, accessibility, data, or failure behavior requires guessing.
39
+ write bounds; the frozen npm run build command is missing.
40
40
  - `MOCK_STRATEGY: blocked`; missing permitted target paths, endpoint/schema-to-fixture
41
- mapping, fixed verification, or dev/test-only activation; a second Mock framework;
41
+ mapping or dev/test-only activation; a second Mock framework;
42
42
  inline fake data; commented real requests; Mock-on production defaults; test-only
43
43
  production imports; or Mock evidence reported as real integration.
44
44
 
@@ -48,7 +48,7 @@ conflict, or unresolved UI decisions.
48
48
 
49
49
  ## Method And Human-readable Output
50
50
 
51
- Map criteria to steps/files/states/checks, audit paths/evidence, classify Blocking
51
+ Map criteria to planned steps/files/states, audit paths/evidence, classify Blocking
52
52
  or Advisory, and never edit files.
53
53
 
54
54
  ### Spec Evidence Rules
@@ -58,3 +58,9 @@ evidence paths bound in its upstream context. Successful paired reads are the on
58
58
  summaries do not substitute for them. A concise human-readable summary may list
59
59
  checked items and findings, but it is never a control protocol. Each requested
60
60
  change names its criterion/section, gap, and required plan change.
61
+
62
+ ## Implementation workflow boundary
63
+
64
+ Plan lists what to implement and where. Only npm run build is executed. Missing
65
+ unit tests, test frameworks, test plans, or behavior evidence never block this
66
+ workflow. Existing tests are preserved; tests can be added later in frontend-test.
@@ -3,7 +3,7 @@
3
3
  ## Coverage
4
4
 
5
5
  - Route/component, non-goals, assumptions, and unresolved ambiguity are explicit.
6
- - Each acceptance criterion maps to steps, files, UI behavior, states, and verification.
6
+ - Each acceptance criterion maps to planned steps, files, UI behavior, and states.
7
7
  - Success/error/loading/empty/disabled/permission/retry/stale/boundary states are handled or N/A.
8
8
 
9
9
  ## Project Fit
@@ -20,9 +20,9 @@
20
20
 
21
21
  ## Verification
22
22
 
23
- - Static/behavior commands are exact, frozen, discoverable, and deterministic.
24
- - Tests prove changed state and flows at supported levels; browser/visual only when task/gate requires.
25
- - Missing required verification is a blocker; optional gaps are disclosed risks.
23
+ - The only frozen command is npm run build.
24
+ - Do not require test plans, test files, a test framework, or behavior evidence.
25
+ - Behavior correctness and all tests are deferred to frontend-test and non-blocking.
26
26
 
27
27
  ## Mock Safety
28
28
 
@@ -31,13 +31,13 @@
31
31
  - Prefer native mock; browser intercept only for existing e2e; request adapter only for reversible local preview.
32
32
  - Real request stays default; activation is explicit, reversible, local/test-only, and production-off.
33
33
  - Plans use only DAG-frozen shell entrypoints.
34
- - Mock strategies need default-real-path build with Mock off plus Mock-backed behavior evidence.
35
- - `not-needed` needs real/no-remote evidence, or default-auto skipped-Mock rationale with Real Integration Gap preserved when no project Mock capability exists.
34
+ - Mock strategies keep production defaults off; Mock behavior tests are deferred.
35
+ - `not-needed` records its rationale and preserves any Real Integration Gap.
36
36
  - Mock-backed checks prove frontend states only; real integration remains pending until actual backend evidence exists.
37
37
 
38
38
  ## Verdict Matrix
39
39
 
40
- - Request revision for coverage gaps, unsafe scope, unauthorized deps, unresolved required interaction, missing required verification, skipped local specification fallback (`openspec/schemas/`, `openspec/project-specs/`, or `ai_workspace/`), unsafe/missing Mock strategy, or Mock evidence presented as real integration.
40
+ - Request revision for coverage gaps, unsafe scope, unauthorized deps, unresolved required interaction, missing build entrypoint, skipped local specification fallback (`openspec/schemas/`, `openspec/project-specs/`, or `ai_workspace/`), unsafe/missing Mock strategy, or Mock evidence presented as real integration.
41
41
  - Request revision for component selection non-conformance: spec-defined components silently replaced or self-invented without a declared deviation, `uiComponentChoices` missing for UI-visible work, or a `uiComponentChoices` `specReference.path` not cited in the `openspec-citations` block / not actually read.
42
42
  - Knowledge-base unavailable but relevant OpenSpec or `ai_workspace/` rules applied is advisory only.
43
43
  - Optional cleanup that cannot affect acceptance is advisory.
@@ -4,7 +4,7 @@ description: Use only for the tool-only frontend decision planning node.
4
4
  references:
5
5
  - path: references/decision-contract.md
6
6
  required: true
7
- maxChars: 5600
7
+ maxChars: 6800
8
8
  - path: references/design-decisions.md
9
9
  required: true
10
10
  maxChars: 3400
@@ -29,11 +29,30 @@ cite `evidencePath` of an existing file; greenfield is `decision=new`.
29
29
  Bind every file in the Contract-owned `requiredDeliverables` inventory. It records
30
30
  explicit source obligations, not every path mentioned by a requirement.
31
31
 
32
+ Large UX work runs in bounded scopes against that shared registry. Complete every
33
+ assigned requirement; preserve earlier scopes' shared bindings when correcting an
34
+ entry. Ledger previews are incomplete. Use `read_plan_facts` to retrieve full
35
+ fields, following `nextOffset` with `expectedRevision` pinned. For oversized
36
+ strings use `stringOffset` and follow `nextStringOffset`; restart pagination when
37
+ the revision changes. Never submit a truncated preview as a replacement payload.
38
+
32
39
  Cross-slice citations must close in the same session: when a requirement cites a
33
40
  verification target committed in another slice's session, re-commit that target
34
41
  here with the same id and `replace=true` (union backfill) before finalize. A
35
42
  `duplicate` receipt is a correction invitation, not a prohibition.
36
43
 
37
44
  The runtime owns protected skeleton fields, path/command validation, materialization,
38
- and final schema checks. Finish with exactly one `finalize_plan`; return no Markdown
45
+ and final schema checks. Finish with one successful `finalize_plan` (correct rejected facts and retry); return no Markdown
39
46
  narrative. Record a genuine evidence gap when frozen facts are insufficient.
47
+
48
+ ## Implementation boundary
49
+
50
+ Plan implementation actions and locations; this workflow runs only npm run build.
51
+ Missing tests or test plans never block it. Preserve existing tests; add tests
52
+ later in frontend-test.
53
+
54
+ Submit `finalize_plan({implementationSteps: [{requirementIds, action}]})`.
55
+ Cover every frozen ID, including constraints/exclusions (what to preserve/avoid).
56
+ An action may cover related IDs and must describe changes within approved paths,
57
+ not just repeat filenames or AC titles. Fix rejected missing/unknown/blank steps
58
+ and retry. Runtime renders AC-linked canonical steps; no test plan is required.
@@ -6,24 +6,21 @@
6
6
  implementation paths and verification target IDs.
7
7
  - Record observable state and interaction behavior, including trigger and expected
8
8
  behavior. IDs and paths alone are not behavioral coverage.
9
- - One behavior target may cover multiple related requirements when one observable
10
- test behavior proves them together.
11
- - Every non-static verification target `id` is the stable machine trace token and
12
- must later appear in a real `describe` / `it` / `test` title. There is no free-form
13
- `symbol` field.
9
+ - Use a shared static build target for requirement coverage; build does not prove behavior.
10
+ - Do not create behavior test targets, require test titles, or design tests.
14
11
  - Static targets are for project-wide commands and are traced by file and command
15
12
  only.
16
13
 
17
- ### Behavior target shape (canonical example)
14
+ ### Build target mapping
18
15
 
19
- Each behavior target names the requirements it proves and declared UI states it
20
- exercises. Empty `requirementIds`, or empty `uiStates` when any state/interaction
21
- is declared, is rejected. Copy state names verbatim; never invent synonyms.
16
+ Each static build target names the requirements mapped to its implementation file.
17
+ Use the frozen build commandId. This mapping is not evidence of tested behavior.
22
18
 
23
19
  ```json
24
20
  {
25
- "id": "VT-COUNTER-LOCAL-CONSTRAINTS",
26
- "file": "src/App.test.tsx",
21
+ "id": "VT-BUILD",
22
+ "commandId": "<frozen-build-commandId>",
23
+ "file": "src/App.tsx",
27
24
  "requirementIds": ["AC-FE-001", "AC-FE-005"],
28
25
  "uiStates": ["disabled-minus", "default"]
29
26
  }
@@ -47,7 +44,7 @@ carries behavior, implementation targets, and verification target ids:
47
44
  "applicable": true,
48
45
  "expectedBehavior": "minus button disabled at count 0",
49
46
  "implementationTargets": ["src/components/SmokeCounter.tsx"],
50
- "verificationTargetIds": ["VT-COUNTER-LOCAL-CONSTRAINTS"]
47
+ "verificationTargetIds": ["VT-BUILD"]
51
48
  }
52
49
  ],
53
50
  "interactions": [
@@ -56,7 +53,7 @@ carries behavior, implementation targets, and verification target ids:
56
53
  "trigger": "User clicks refresh",
57
54
  "expectedBehavior": "reloads runs",
58
55
  "implementationTargets": ["src/App.tsx"],
59
- "verificationTargetIds": ["VT-SMOKE-COUNTER-BEHAVIOR"]
56
+ "verificationTargetIds": ["VT-BUILD"]
60
57
  }
61
58
  ]
62
59
  }
@@ -76,8 +73,7 @@ non-static verification target files to the writer writeSet separately.
76
73
  "src/App.tsx"
77
74
  ],
78
75
  "verificationTargetIds": [
79
- "VT-SMOKE-COUNTER-BEHAVIOR",
80
- "VT-COUNTER-LOCAL-CONSTRAINTS"
76
+ "VT-BUILD"
81
77
  ]
82
78
  }
83
79
  ```
@@ -95,9 +91,11 @@ facts".
95
91
 
96
92
  ## UX vocabulary (registry first)
97
93
 
98
- - Record `record_state_registry` BEFORE `record_state_flow`: one global vocabulary.
99
- Coverage may slice by requirement; UX must not. Use stable kebab-case behavior
100
- names, never AC-number-derived names or renamed committed concepts.
94
+ - Record `record_state_registry` BEFORE any `record_state_flow`: one compact
95
+ global vocabulary of UI-state and interaction names. Details use complete execution
96
+ group scopes; reuse shared names across scopes, never one name per AC or a
97
+ rename of an already-recorded concept (kebab-case behavior-domain names, e.g.
98
+ `planner-task-edit`, `focus-queue-move`).
101
99
  - UI states use the contract's declared authoritative ids (`declaredUiStates`
102
100
  in the plan input) when the source declares a state table.
103
101
  - Retry slices see `committedUx` in the plan input: reuse those exact names.
@@ -111,9 +109,8 @@ One component choice may cover many states/interactions via `covers`.
111
109
  `reuse-existing` requires an existing-file `evidencePath`; greenfield uses `new`.
112
110
 
113
111
  For Mock/API, keep the real request path enabled by default. Select only a strategy
114
- allowed by the frozen task capability. Active Mock requires deterministic Mock-backed
115
- verification and production-default-off activation. `not-needed` requires positive
116
- real/no-remote evidence or records a real-integration gap.
112
+ allowed by the frozen task capability. Active Mock requires production-default-off activation; Mock tests are deferred. `not-needed` records the reason Mock is unnecessary or skipped and any real-integration gap;
113
+ no behavior test evidence is required here.
117
114
 
118
115
  Add dependencies only when authorized. Record unsupported dependency, path, API,
119
116
  design, or verification needs as blocking evidence gaps; never invent a command or
@@ -123,11 +120,33 @@ widen the write set.
123
120
 
124
121
  The runtime owns `schemaVersion`, `sourceBinding`, risk, canonical target files,
125
122
  `requiredDeliverables`, aliases, command allowlisting, path containment, and final
126
- validation. Submit only editable decision facts, then call `finalize_plan` exactly
127
- once. The deterministic design policy materializes the canonical implementation
123
+ validation. Submit editable decision facts, then call `finalize_plan`; correct
124
+ rejected facts and retry until one successful terminal commit. The deterministic design policy materializes the canonical implementation
128
125
  contract: every file in the Contract's explicit source-bound delivery inventory
129
126
  must be planned (`requiredDeliverables` gate). Permissions, prohibitions, examples
130
127
  and read-only references do not create delivery obligations. Plan receives this
131
128
  inventory as `requiredDeliverables`; it cannot add, remove or reinterpret it.
132
129
  Missing files and UX name collisions are reported by finalize_plan before commit
133
130
  and checked again by the policy shell.
131
+
132
+
133
+ Use `record_plan_group_coverage` for a complete declared execution group with shared
134
+ targets/VTs; runtime expands to all canonical members. Submit individual coverage
135
+ for differences. Constraints/exclusions create no invented UI or tests; keep genuine
136
+ source expectations for a non-blocking frontend-test handoff; do not require tests here.
137
+
138
+ Submit Mock policy with `record_mock_api` and empty endpoints, then one endpoint per
139
+ `record_mock_endpoint`. Use `replace:true` for revisions, plus `remove:true` to
140
+ withdraw an endpoint. Use stable finding/fact identities; successful receipts mean
141
+ durable commits. Resume missing work instead of regenerating full JSON or history.
142
+
143
+ ## Implementation steps submission
144
+
145
+ Submit `finalize_plan` with `implementationSteps: [{requirementIds, action}]`.
146
+ Each action says what to change and where within the approved implementation
147
+ paths. Cover every frozen requirement ID, including constraints and exclusions
148
+ (state what to preserve or avoid). One action may cover several related IDs.
149
+ Do not merely repeat file names or AC titles. Missing, unknown or blank steps
150
+ return a correctable receipt; fix the steps and call finalize_plan again.
151
+ The runtime renders these into canonical `implementationSteps` strings with AC
152
+ references. No test plan or new tests are required by this protocol.
@@ -9,46 +9,39 @@ references:
9
9
 
10
10
  # Frontend Review
11
11
 
12
- Use for `frontend-review-pi`; read the findings guide and capacity diagnostic first.
13
- Inputs are `contracts/frontend-review-context.json`, its hash-bound contract
14
- reference/index and diff fragments, and only source files named by that diff. Use
15
- indexed contract sections when recommended. Do not reopen task sources, plans,
16
- design-review prose, OpenSpec, or `ai_workspace/`; the bound context is authoritative.
12
+ Use `contracts/frontend-review-context.json`, its hash-bound contract index and diff,
13
+ and only files named by the diff. Read the findings guide and capacity diagnostic;
14
+ use indexed sections when advised. Do not reopen task sources, plans, OpenSpec,
15
+ design-review prose or `ai_workspace/`.
17
16
 
18
17
  ## Authoritative Terminal
19
18
 
20
- Complete the review with exactly one committed typed tool call:
19
+ Submit findings one at a time with `record_review_finding` using stable IDs.
20
+ Use `replace:true` for revisions. The terminal automatically includes saved findings;
21
+ do not repeat their array. Correct rejected calls, then commit one successful terminal:
21
22
 
22
23
  - `approve_review` when no Critical/Important finding remains;
23
24
  - `request_review_changes` for a defect, missing required evidence, forbidden
24
25
  write, or unmet acceptance criterion. It must include a typed `issueCategory`,
25
- at least one `evidenceRef`, and non-empty findings.
26
+ at least one `evidenceRef`, and non-empty findings (saved or supplied).
26
27
 
27
- The typed terminal is the only authoritative outcome. Do not require or emit a
28
- `VERDICT:` line or response-text JSON verdict. A request for review changes ends
29
- this run and is handled by the recovery controller rather than a same-run repair
30
- branch.
28
+ Only the typed terminal controls the outcome; no `VERDICT:` line or JSON verdict.
29
+ Requested changes end this run; the recovery controller owns follow-up.
31
30
 
32
31
  ## Review Scope
33
32
 
34
- - Compare intent, contract, plan, diff, and evidence; report altered requirements.
35
- - Inspect every changed file against allowed, forbidden, and approved write scope.
36
- - Map criteria to behavior, applicable UI states, tests, and shell evidence.
37
- - Review state/data flow, validation, async/error behavior, design, responsive/a11y,
38
- dependencies, and regression risk when applicable.
39
- - Inspect static, behavior, and available Mock-specific artifacts directly. For Mock
40
- strategies, compare the endpoint matrix, handler/fixture/adapter and consumer diff;
41
- require the real request as default, contract-aligned fixtures, production isolation,
42
- and no false real-integration claim. `not-needed` needs applicable real/no-remote
43
- evidence, or an explicit default-auto skipped-Mock rationale with the Real
44
- Integration Gap preserved when no project Mock capability is confirmed.
45
- - Inspect lint assessment directly. `baseline-debt` requires intact evidence, only
46
- baseline-matched diagnostics on unchanged files, and none on writer-changed files.
47
- Report debt, never `lint passed`; `failed`/`unavailable` blocks. Typecheck, build,
48
- and test still require successful final exits.
49
- - Evaluate component/design claims against bound evidence; do not replace it with a
50
- repository-wide search or connector query.
51
- - Treat shell exit status as authoritative. Do not edit files.
33
+ - Map every requirement to corresponding implementation in the cumulative diff
34
+ and bound target files. Report missing implementation or altered requirements.
35
+ - Check allowed paths, forbidden paths, approved dependencies and source-bound
36
+ design constraints. Preserve production Mock isolation and real-request defaults.
37
+ - Inspect the archived npm run build result; it is the only required command.
38
+ - Do not require unit tests, a test framework, test plans, lint, separate typecheck,
39
+ behavior evidence or Mock tests. Existing tests are preserved.
40
+ - Behavior correctness, edge cases and regressions belong to the non-blocking
41
+ frontend-test handoff and may be tested later. Do not expand into a correctness audit.
42
+ - Build success proves buildability only. Do not report tested behavior or real
43
+ integration without actual evidence. Treat shell exit status as authoritative.
44
+ - Do not edit files or perform repository-wide rediscovery.
52
45
 
53
46
  ## Evidence And Output
54
47
 
@@ -1,49 +1,30 @@
1
1
  # Frontend Review Findings Guide
2
2
 
3
- ## Severity
3
+ ## Scope and severity
4
4
 
5
- - **Critical**: blocks primary flow, corrupts data, violates security/privacy, writes forbidden paths, bypasses required verification.
6
- - **Important**: acceptance/state/validation gap, material convention drift, missing behavior tests, unauthorized dependency, unsafe mock activation/import, mock-contract drift, misleading real-integration claim, or failed/missing required verification.
7
- - **Minor**: non-blocking maintainability, copy, layout, or cleanup issue.
5
+ - **Critical/Important**: missing requirement implementation, unauthorized writes
6
+ or dependencies, production Mock isolation violation, altered source requirements,
7
+ failed/missing npm run build, or a false verification/integration claim.
8
+ - **Advisory**: behavior correctness, edge cases, regression concerns and missing
9
+ tests. Record these for later frontend-test work; they do not block implementation.
8
10
 
9
11
  ## Evidence
10
12
 
11
- - Cite tight file locations, exact commands/results, or named DAG artifacts.
12
- - Never invent evidence; name the missing check. An implementation summary is not the actual diff.
13
- - Failed required static/behavior verification is at least Important. Lint may be
14
- `baseline-debt` only with a valid `frontend-lint-assessment-v1`; this is not a
15
- passed lint result. A changed-file lint diagnostic, new unmatched diagnostic,
16
- command drift, missing baseline, timeout, or unparseable output is Important.
17
- - Treat the design evidence already bound in the canonical review context as the
18
- source of truth. Do not launch a connector query or repository-wide OpenSpec/
19
- `ai_workspace` search to replace frozen evidence; label a missing bound evidence
20
- reference accurately instead.
21
-
22
- ## Review Sequence
23
-
24
- 1. Establish changed-file inventory and write boundaries.
25
- 2. Compare the bound contract with the approved constraints and cumulative diff.
26
- 3. Map each criterion to code, states, tests, and evidence.
27
- 4. Inspect interactions, state/data/API behavior, failure paths, and regressions.
28
- 5. Check mock selection, contract-to-fixture mapping, activation/default path,
29
- handler/fixture/adapter and consumer diff, verification, production imports, and
30
- the real-integration gap.
31
- 6. Check bound design evidence, responsive/a11y behavior, dependencies, and maintenance.
32
- 7. Classify findings and derive the verdict mechanically.
33
-
34
- ```text
35
- - [Critical|Important|Minor] path:line — Problem; impact; required correction; evidence.
36
- ```
37
-
38
- ## Pass Rules
39
-
40
- - No Critical or Important findings remain.
41
- - Required static and behavior nodes ran and passed.
42
- - Lint is `passed` or evidence-backed `baseline-debt`; typecheck, build, and test are
43
- passed. Any debt count and affected unchanged files remain disclosed.
44
- - Changed files are authorized.
45
- - Criteria and applicable states have implementation and evidence.
46
- - Required Mock-backed behavior passed; any generated Mock-specific verification also
47
- passed; Mock is not enabled by default in production. For default-auto skipped
48
- Mock, the real request remains default and the Real Integration Gap is preserved.
49
- - Optional unavailable knowledge/browser/visual/manual checks remain explicit risks.
13
+ Cite the bound contract, actual cumulative diff, tight file locations and archived
14
+ build result. Never substitute an implementation summary for the diff or invent
15
+ verification results. Use only evidence supplied in the canonical review context.
16
+
17
+ ## Review sequence
18
+
19
+ 1. Establish changed files and authorized write boundaries.
20
+ 2. Map each requirement to corresponding implementation.
21
+ 3. Check source-bound design constraints, dependency permission and production Mock isolation.
22
+ 4. Confirm npm run build passed and classify findings within this scope.
23
+
24
+ ## Pass rules
25
+
26
+ All requirements have corresponding implementation, changes stay authorized,
27
+ production Mock safety is preserved, and npm run build passed. No blocking finding
28
+ within this scope remains. Missing unit tests, test frameworks, test plans, lint,
29
+ separate typecheck or behavior evidence are not blockers. Existing tests are kept.
30
+ Behavior and real integration remain unverified unless separate evidence exists.
@@ -21,3 +21,7 @@ the exact evidence. Do not recursively inspect unrelated directories.
21
21
  Commit `complete` only when the target surface is sufficiently proven for Plan to
22
22
  reuse without repository discovery. Otherwise commit `blocked` and list every
23
23
  unresolved path or ownership question. Do not shift discovery work into Plan.
24
+
25
+ A successful typed receipt is durable. Reuse only facts bound to the same source
26
+ and fresh file evidence; changed or missing evidence requires Scout refresh. Do
27
+ not replay stale success or repeat complete discovery merely because a reply was lost.
@@ -1 +0,0 @@
1
- import{ag as o,ah as n}from"./mermaid.core-BUuGHmWO.js";const t=(a,r)=>o.lang.round(n.parse(a)[r]);export{t as c};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./chunk-GF5L2VYU-sF1AEy7T.js";import{_ as i}from"./mermaid.core-BUuGHmWO.js";import"./chunk-5VM5RSS4-D5J9PHC7.js";import"./chunk-XXDRQBXY-BEJi3iIs.js";import"./chunk-KBJHAD2P-BKJrPcJ6.js";import"./chunk-2GRJ4B5K-C0osm1Zf.js";import"./index-C0O48S_P.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./chunk-GF5L2VYU-sF1AEy7T.js";import{_ as i}from"./mermaid.core-BUuGHmWO.js";import"./chunk-5VM5RSS4-D5J9PHC7.js";import"./chunk-XXDRQBXY-BEJi3iIs.js";import"./chunk-KBJHAD2P-BKJrPcJ6.js";import"./chunk-2GRJ4B5K-C0osm1Zf.js";import"./index-C0O48S_P.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram};