@inharness-ai/claude4spec 1.0.21 → 1.0.22

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 (241) hide show
  1. package/.claude/skills/c4s-brief-implementer/SKILL.md +120 -53
  2. package/CHANGELOG.md +13 -0
  3. package/dist/bin/c4s/commands/agent.d.ts +18 -0
  4. package/dist/bin/c4s/commands/agent.js +102 -0
  5. package/dist/bin/c4s/commands/agent.js.map +1 -0
  6. package/dist/bin/c4s/commands/ask.d.ts +9 -8
  7. package/dist/bin/c4s/commands/ask.js +23 -31
  8. package/dist/bin/c4s/commands/ask.js.map +1 -1
  9. package/dist/bin/c4s/commands/catalog.d.ts +1 -1
  10. package/dist/bin/c4s/commands/catalog.js +2 -2
  11. package/dist/bin/c4s/commands/catalog.js.map +1 -1
  12. package/dist/bin/c4s/commands/describe.d.ts +1 -1
  13. package/dist/bin/c4s/commands/describe.js +2 -2
  14. package/dist/bin/c4s/commands/describe.js.map +1 -1
  15. package/dist/bin/c4s/commands/detail.d.ts +1 -1
  16. package/dist/bin/c4s/commands/detail.js +2 -2
  17. package/dist/bin/c4s/commands/detail.js.map +1 -1
  18. package/dist/bin/c4s/commands/element-list.d.ts +1 -1
  19. package/dist/bin/c4s/commands/element-list.js +2 -2
  20. package/dist/bin/c4s/commands/element-list.js.map +1 -1
  21. package/dist/bin/c4s/commands/find-references.js +1 -1
  22. package/dist/bin/c4s/commands/find-references.js.map +1 -1
  23. package/dist/bin/c4s/commands/inline-mention.d.ts +1 -1
  24. package/dist/bin/c4s/commands/inline-mention.js +2 -2
  25. package/dist/bin/c4s/commands/inline-mention.js.map +1 -1
  26. package/dist/bin/c4s/commands/list-slugs.d.ts +1 -1
  27. package/dist/bin/c4s/commands/list-slugs.js +2 -2
  28. package/dist/bin/c4s/commands/list-slugs.js.map +1 -1
  29. package/dist/bin/c4s/commands/list-tags.d.ts +1 -1
  30. package/dist/bin/c4s/commands/list-tags.js +2 -2
  31. package/dist/bin/c4s/commands/list-tags.js.map +1 -1
  32. package/dist/bin/c4s/commands/plugins.d.ts +9 -0
  33. package/dist/bin/c4s/commands/plugins.js +81 -0
  34. package/dist/bin/c4s/commands/plugins.js.map +1 -0
  35. package/dist/bin/c4s/commands/resolve.d.ts +1 -1
  36. package/dist/bin/c4s/commands/resolve.js +2 -2
  37. package/dist/bin/c4s/commands/resolve.js.map +1 -1
  38. package/dist/bin/c4s/commands/single-element.d.ts +1 -1
  39. package/dist/bin/c4s/commands/single-element.js +2 -2
  40. package/dist/bin/c4s/commands/single-element.js.map +1 -1
  41. package/dist/bin/c4s/commands/tagged-list-mixed.d.ts +1 -1
  42. package/dist/bin/c4s/commands/tagged-list-mixed.js +2 -2
  43. package/dist/bin/c4s/commands/tagged-list-mixed.js.map +1 -1
  44. package/dist/bin/c4s/commands/tagged-list.d.ts +1 -1
  45. package/dist/bin/c4s/commands/tagged-list.js +2 -2
  46. package/dist/bin/c4s/commands/tagged-list.js.map +1 -1
  47. package/dist/bin/c4s/context.d.ts +3 -3
  48. package/dist/bin/c4s/context.js +7 -4
  49. package/dist/bin/c4s/context.js.map +1 -1
  50. package/dist/bin/c4s/errors.d.ts +1 -1
  51. package/dist/bin/c4s/errors.js.map +1 -1
  52. package/dist/bin/c4s-mcp.js +6 -2
  53. package/dist/bin/c4s-mcp.js.map +1 -1
  54. package/dist/bin/c4s.js +19 -4
  55. package/dist/bin/c4s.js.map +1 -1
  56. package/dist/bin/gitignore.js +7 -11
  57. package/dist/bin/gitignore.js.map +1 -1
  58. package/dist/client/assets/{arc-Coa9fbDO.js → arc-C9oTB3b1.js} +1 -1
  59. package/dist/client/assets/{architectureDiagram-3BPJPVTR-VJZcRMEN.js → architectureDiagram-3BPJPVTR-Bno5ViqK.js} +1 -1
  60. package/dist/client/assets/{blockDiagram-GPEHLZMM-C7dU2lW1.js → blockDiagram-GPEHLZMM-CJYBoeWQ.js} +1 -1
  61. package/dist/client/assets/{c4Diagram-AAUBKEIU-CG_BBm_5.js → c4Diagram-AAUBKEIU-DaaqWE6s.js} +1 -1
  62. package/dist/client/assets/channel-Cei_E79M.js +1 -0
  63. package/dist/client/assets/{chunk-2J33WTMH-BnS95YpK.js → chunk-2J33WTMH-P_I0OPMy.js} +1 -1
  64. package/dist/client/assets/{chunk-4BX2VUAB-COr8w3X3.js → chunk-4BX2VUAB-CCySMlh5.js} +1 -1
  65. package/dist/client/assets/{chunk-55IACEB6-CxrIbZhB.js → chunk-55IACEB6-CEUyqKGF.js} +1 -1
  66. package/dist/client/assets/{chunk-727SXJPM-DRchPPRe.js → chunk-727SXJPM-CoTSYOVz.js} +1 -1
  67. package/dist/client/assets/{chunk-AQP2D5EJ-_SfN7mED.js → chunk-AQP2D5EJ-DB0nMxPr.js} +1 -1
  68. package/dist/client/assets/{chunk-FMBD7UC4-p2tIiP1D.js → chunk-FMBD7UC4-PG3m6-_a.js} +1 -1
  69. package/dist/client/assets/{chunk-ND2GUHAM-B1mbl2hP.js → chunk-ND2GUHAM-CBNk6IaV.js} +1 -1
  70. package/dist/client/assets/{chunk-QZHKN3VN-DBUpeqvS.js → chunk-QZHKN3VN-CLFa0WvN.js} +1 -1
  71. package/dist/client/assets/classDiagram-4FO5ZUOK-DUe_fAto.js +1 -0
  72. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-DUe_fAto.js +1 -0
  73. package/dist/client/assets/{cose-bilkent-S5V4N54A-BBsY5aKD.js → cose-bilkent-S5V4N54A-BDwDDxHN.js} +1 -1
  74. package/dist/client/assets/{dagre-BM42HDAG-b-vu4RC9.js → dagre-BM42HDAG-DR-1e8N5.js} +1 -1
  75. package/dist/client/assets/{diagram-2AECGRRQ-j-DW9qSf.js → diagram-2AECGRRQ-C-tHgBWt.js} +1 -1
  76. package/dist/client/assets/{diagram-5GNKFQAL-DHX_WYWQ.js → diagram-5GNKFQAL-uLmoKaJL.js} +1 -1
  77. package/dist/client/assets/{diagram-KO2AKTUF-DxdQok_M.js → diagram-KO2AKTUF-8Fd-xuOy.js} +1 -1
  78. package/dist/client/assets/{diagram-LMA3HP47-BbTIX5c1.js → diagram-LMA3HP47-C1gniWsn.js} +1 -1
  79. package/dist/client/assets/{diagram-OG6HWLK6-BQ9ODAlH.js → diagram-OG6HWLK6-BMWjZbeC.js} +1 -1
  80. package/dist/client/assets/{erDiagram-TEJ5UH35-6lwAL1y9.js → erDiagram-TEJ5UH35-CIUO8hrR.js} +1 -1
  81. package/dist/client/assets/{flowDiagram-I6XJVG4X-ioSHb5-t.js → flowDiagram-I6XJVG4X-Ccw5YEf3.js} +1 -1
  82. package/dist/client/assets/{ganttDiagram-6RSMTGT7-CXFQp9Nj.js → ganttDiagram-6RSMTGT7-BAvlf8cY.js} +1 -1
  83. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-C1pVD_NQ.js → gitGraphDiagram-PVQCEYII-ChCkdYar.js} +1 -1
  84. package/dist/client/assets/{index-JaAxQJXh.js → index-BotCWOKC.js} +1 -1
  85. package/dist/client/assets/index-CtdzGyqj.js +805 -0
  86. package/dist/client/assets/{index-hz5T_W2e.js → index-DtpKHGD1.js} +1 -1
  87. package/dist/client/assets/{infoDiagram-5YYISTIA-C2Guev-g.js → infoDiagram-5YYISTIA-CZMGwNyB.js} +1 -1
  88. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-D3v8VBb2.js → ishikawaDiagram-YF4QCWOH-CubjZGk6.js} +1 -1
  89. package/dist/client/assets/{journeyDiagram-JHISSGLW-DX1AW_Ap.js → journeyDiagram-JHISSGLW-DzwOyVzB.js} +1 -1
  90. package/dist/client/assets/{kanban-definition-UN3LZRKU-CzXThvq2.js → kanban-definition-UN3LZRKU-CXznoTY9.js} +1 -1
  91. package/dist/client/assets/{linear-CVw4gl5i.js → linear-EDwTFRrU.js} +1 -1
  92. package/dist/client/assets/{mermaid.core-C29eoXRj.js → mermaid.core-Lae2097R.js} +4 -4
  93. package/dist/client/assets/{mindmap-definition-RKZ34NQL-DEEGVQVA.js → mindmap-definition-RKZ34NQL-DFjIW41g.js} +1 -1
  94. package/dist/client/assets/{pieDiagram-4H26LBE5-Dme-VM6m.js → pieDiagram-4H26LBE5-CZDLR1jd.js} +1 -1
  95. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-CURFNo24.js → quadrantDiagram-W4KKPZXB-CTGDzbqp.js} +1 -1
  96. package/dist/client/assets/{requirementDiagram-4Y6WPE33-DxMZWXME.js → requirementDiagram-4Y6WPE33-CeH0NbMv.js} +1 -1
  97. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-BW64D4_P.js → sankeyDiagram-5OEKKPKP-B6ZTjurV.js} +1 -1
  98. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-BATRPm8Q.js → sequenceDiagram-3UESZ5HK-DcTRztVx.js} +1 -1
  99. package/dist/client/assets/{stateDiagram-AJRCARHV-pgHVMnO3.js → stateDiagram-AJRCARHV-nUgRVZSA.js} +1 -1
  100. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-D9pJuQbI.js +1 -0
  101. package/dist/client/assets/{timeline-definition-PNZ67QCA-qBxJZPWd.js → timeline-definition-PNZ67QCA-CXm5n4rV.js} +1 -1
  102. package/dist/client/assets/{vennDiagram-CIIHVFJN-BZJK9hqJ.js → vennDiagram-CIIHVFJN-EmNJBYNd.js} +1 -1
  103. package/dist/client/assets/{wardley-L42UT6IY-BobtgEXg.js → wardley-L42UT6IY-MLrlp8H-.js} +1 -1
  104. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-DuWfX_-P.js → wardleyDiagram-YWT4CUSO-5QoES25n.js} +1 -1
  105. package/dist/client/assets/{xychartDiagram-2RQKCTM6-DCw1iURo.js → xychartDiagram-2RQKCTM6-CbDEQbY0.js} +1 -1
  106. package/dist/client/index.html +1 -1
  107. package/dist/core/agent/run-agent.d.ts +61 -0
  108. package/dist/core/agent/run-agent.js +212 -0
  109. package/dist/core/agent/run-agent.js.map +1 -0
  110. package/dist/core/ask/run-ask.d.ts +1 -1
  111. package/dist/core/ask/run-ask.js +14 -5
  112. package/dist/core/ask/run-ask.js.map +1 -1
  113. package/dist/core/workspace/resolve.d.ts +2 -0
  114. package/dist/core/workspace/resolve.js +2 -1
  115. package/dist/core/workspace/resolve.js.map +1 -1
  116. package/dist/plugin-types/ambient.d.ts +30 -0
  117. package/dist/plugin-types/plugin-runtime.d.ts +172 -0
  118. package/dist/plugin-types/ui.d.ts +154 -0
  119. package/dist/server/config.d.ts +12 -0
  120. package/dist/server/config.js +26 -0
  121. package/dist/server/config.js.map +1 -1
  122. package/dist/server/core/plugin-host/__fixtures__/plugins.d.ts +14 -0
  123. package/dist/server/core/plugin-host/__fixtures__/plugins.js +56 -0
  124. package/dist/server/core/plugin-host/__fixtures__/plugins.js.map +1 -0
  125. package/dist/server/core/plugin-host/base-packages.d.ts +14 -0
  126. package/dist/server/core/plugin-host/base-packages.js +26 -0
  127. package/dist/server/core/plugin-host/base-packages.js.map +1 -0
  128. package/dist/server/core/plugin-host/cache-bust.d.ts +10 -0
  129. package/dist/server/core/plugin-host/cache-bust.js +21 -0
  130. package/dist/server/core/plugin-host/cache-bust.js.map +1 -0
  131. package/dist/server/core/plugin-host/cli-engine.d.ts +7 -2
  132. package/dist/server/core/plugin-host/cli-engine.js +11 -3
  133. package/dist/server/core/plugin-host/cli-engine.js.map +1 -1
  134. package/dist/server/core/plugin-host/cli-plugins.d.ts +23 -0
  135. package/dist/server/core/plugin-host/cli-plugins.js +49 -0
  136. package/dist/server/core/plugin-host/cli-plugins.js.map +1 -0
  137. package/dist/server/core/plugin-host/cross-cutting.d.ts +41 -4
  138. package/dist/server/core/plugin-host/cross-cutting.js +52 -4
  139. package/dist/server/core/plugin-host/cross-cutting.js.map +1 -1
  140. package/dist/server/core/plugin-host/frontend-assets.d.ts +100 -0
  141. package/dist/server/core/plugin-host/frontend-assets.js +262 -0
  142. package/dist/server/core/plugin-host/frontend-assets.js.map +1 -0
  143. package/dist/server/core/plugin-host/frontend-manifest.d.ts +33 -0
  144. package/dist/server/core/plugin-host/frontend-manifest.js +52 -0
  145. package/dist/server/core/plugin-host/frontend-manifest.js.map +1 -0
  146. package/dist/server/core/plugin-host/loader.d.ts +107 -0
  147. package/dist/server/core/plugin-host/loader.js +196 -0
  148. package/dist/server/core/plugin-host/loader.js.map +1 -0
  149. package/dist/server/core/plugin-host/manifest-adapter.d.ts +30 -0
  150. package/dist/server/core/plugin-host/manifest-adapter.js +119 -0
  151. package/dist/server/core/plugin-host/manifest-adapter.js.map +1 -0
  152. package/dist/server/core/plugin-host/overlay-loader.d.ts +60 -0
  153. package/dist/server/core/plugin-host/overlay-loader.js +243 -0
  154. package/dist/server/core/plugin-host/overlay-loader.js.map +1 -0
  155. package/dist/server/core/plugin-host/plugin-watcher.d.ts +41 -0
  156. package/dist/server/core/plugin-host/plugin-watcher.js +95 -0
  157. package/dist/server/core/plugin-host/plugin-watcher.js.map +1 -0
  158. package/dist/server/core/plugin-host/project-host.d.ts +8 -2
  159. package/dist/server/core/plugin-host/project-host.js +56 -6
  160. package/dist/server/core/plugin-host/project-host.js.map +1 -1
  161. package/dist/server/core/plugin-host/registry.d.ts +26 -2
  162. package/dist/server/core/plugin-host/registry.js +107 -2
  163. package/dist/server/core/plugin-host/registry.js.map +1 -1
  164. package/dist/server/core/plugin-host/runtime-shims.d.ts +26 -0
  165. package/dist/server/core/plugin-host/runtime-shims.js +96 -0
  166. package/dist/server/core/plugin-host/runtime-shims.js.map +1 -0
  167. package/dist/server/core/plugin-host/types.d.ts +105 -3
  168. package/dist/server/db/migrations/042_chat_thread_drop_context_type_check.sql +61 -0
  169. package/dist/server/external-skills/brief-implementer-template.d.ts +1 -1
  170. package/dist/server/external-skills/brief-implementer-template.js +5 -2
  171. package/dist/server/external-skills/brief-implementer-template.js.map +1 -1
  172. package/dist/server/external-skills/spec-reader-template.d.ts +1 -1
  173. package/dist/server/external-skills/spec-reader-template.js +14 -0
  174. package/dist/server/external-skills/spec-reader-template.js.map +1 -1
  175. package/dist/server/index.js +82 -1
  176. package/dist/server/index.js.map +1 -1
  177. package/dist/server/mcp/c4s-tools.d.ts +6 -1
  178. package/dist/server/mcp/c4s-tools.js +18 -13
  179. package/dist/server/mcp/c4s-tools.js.map +1 -1
  180. package/dist/server/plugin-runtime/index.d.ts +17 -0
  181. package/dist/server/plugin-runtime/index.js +16 -0
  182. package/dist/server/plugin-runtime/index.js.map +1 -0
  183. package/dist/server/plugin-runtime/ui.d.ts +15 -0
  184. package/dist/server/plugin-runtime/ui.js +15 -0
  185. package/dist/server/plugin-runtime/ui.js.map +1 -0
  186. package/dist/server/routes/agent-turn.d.ts +8 -1
  187. package/dist/server/routes/agent-turn.js +67 -39
  188. package/dist/server/routes/agent-turn.js.map +1 -1
  189. package/dist/server/routes/config.d.ts +8 -0
  190. package/dist/server/routes/config.js +41 -3
  191. package/dist/server/routes/config.js.map +1 -1
  192. package/dist/server/routes/plugins.d.ts +43 -0
  193. package/dist/server/routes/plugins.js +93 -0
  194. package/dist/server/routes/plugins.js.map +1 -0
  195. package/dist/server/routes/threads.js +21 -3
  196. package/dist/server/routes/threads.js.map +1 -1
  197. package/dist/server/serialization/registerAll.d.ts +4 -0
  198. package/dist/server/serialization/registerAll.js +4 -2
  199. package/dist/server/serialization/registerAll.js.map +1 -1
  200. package/dist/server/services/chat-context.d.ts +34 -0
  201. package/dist/server/services/chat-context.js +58 -15
  202. package/dist/server/services/chat-context.js.map +1 -1
  203. package/dist/server/services/chat.d.ts +6 -0
  204. package/dist/server/services/chat.js +18 -2
  205. package/dist/server/services/chat.js.map +1 -1
  206. package/dist/server/services/entity-writer.d.ts +2 -3
  207. package/dist/server/services/entity-writer.js.map +1 -1
  208. package/dist/server/services/skill-registry.d.ts +31 -2
  209. package/dist/server/services/skill-registry.js +73 -1
  210. package/dist/server/services/skill-registry.js.map +1 -1
  211. package/dist/server/workspace/context-cache.d.ts +9 -0
  212. package/dist/server/workspace/context-cache.js +14 -0
  213. package/dist/server/workspace/context-cache.js.map +1 -1
  214. package/dist/server/workspace/project-context.d.ts +3 -0
  215. package/dist/server/workspace/project-context.js +106 -4
  216. package/dist/server/workspace/project-context.js.map +1 -1
  217. package/dist/server/workspace/registry.d.ts +28 -1
  218. package/dist/server/workspace/registry.js +57 -1
  219. package/dist/server/workspace/registry.js.map +1 -1
  220. package/dist/server/workspace/types.d.ts +15 -0
  221. package/dist/shared/entities.d.ts +4 -1
  222. package/dist/shared/entities.js.map +1 -1
  223. package/dist/shared/plugin-host/frontend-manifest.d.ts +56 -0
  224. package/dist/shared/plugin-host/frontend-manifest.js +89 -0
  225. package/dist/shared/plugin-host/frontend-manifest.js.map +1 -0
  226. package/dist/shared/plugin-host/host-api.d.ts +60 -0
  227. package/dist/shared/plugin-host/host-api.js +67 -0
  228. package/dist/shared/plugin-host/host-api.js.map +1 -0
  229. package/dist/shared/plugin-host/manifest.d.ts +194 -0
  230. package/dist/shared/plugin-host/manifest.js +52 -0
  231. package/dist/shared/plugin-host/manifest.js.map +1 -0
  232. package/dist/shared/plugin-host/ui-kit-surface.d.ts +22 -0
  233. package/dist/shared/plugin-host/ui-kit-surface.js +25 -0
  234. package/dist/shared/plugin-host/ui-kit-surface.js.map +1 -0
  235. package/dist/shared/types.d.ts +5 -0
  236. package/package.json +18 -3
  237. package/dist/client/assets/channel-D5gzBvo7.js +0 -1
  238. package/dist/client/assets/classDiagram-4FO5ZUOK-CT-amIxa.js +0 -1
  239. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-CT-amIxa.js +0 -1
  240. package/dist/client/assets/index-DyAnw7YN.js +0 -798
  241. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-szm_LIuD.js +0 -1
@@ -0,0 +1,17 @@
1
+ /**
2
+ * `@c4s/plugin-runtime` — backend half.
3
+ *
4
+ * The single, versioned surface a runtime plugin's server code (its
5
+ * `backend.mount(ctx)`) compiles against, instead of reaching into deep host
6
+ * paths. On the backend the host singletons are shared in-process; this module
7
+ * re-exports the stable contract pieces.
8
+ *
9
+ * Phase 1 has no plugin packages, so nothing imports this yet — it exists so the
10
+ * contract surface is in place and stable for phase 2 (when project-local
11
+ * plugins under `.claude4spec/plugins/` link against it). The frontend half of
12
+ * `@c4s/plugin-runtime` lives in `src/client/runtime/plugin-runtime.ts` and is
13
+ * delivered to plugins through the import-map shim.
14
+ */
15
+ export { HOST_API_VERSION } from '../../shared/plugin-host/manifest.js';
16
+ export type { PluginManifest, EntityContribution, PluginEngines, } from '../../shared/plugin-host/manifest.js';
17
+ export type { PluginRegistry, ProjectPluginHost, BackendModule, MountContext, PluginMountFn, } from '../core/plugin-host/types.js';
@@ -0,0 +1,16 @@
1
+ /**
2
+ * `@c4s/plugin-runtime` — backend half.
3
+ *
4
+ * The single, versioned surface a runtime plugin's server code (its
5
+ * `backend.mount(ctx)`) compiles against, instead of reaching into deep host
6
+ * paths. On the backend the host singletons are shared in-process; this module
7
+ * re-exports the stable contract pieces.
8
+ *
9
+ * Phase 1 has no plugin packages, so nothing imports this yet — it exists so the
10
+ * contract surface is in place and stable for phase 2 (when project-local
11
+ * plugins under `.claude4spec/plugins/` link against it). The frontend half of
12
+ * `@c4s/plugin-runtime` lives in `src/client/runtime/plugin-runtime.ts` and is
13
+ * delivered to plugins through the import-map shim.
14
+ */
15
+ export { HOST_API_VERSION } from '../../shared/plugin-host/manifest.js';
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/plugin-runtime/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * `@c4s/plugin-runtime/ui` — backend half.
3
+ *
4
+ * The Host UI Kit is a FRONTEND surface (React components delivered via the M33
5
+ * import-map shim — see `client/runtime/plugin-runtime-ui.ts`). On the backend
6
+ * there are no components to share; this module exists only so server-side
7
+ * plugin code can reference the versioned contract — the React-free set of
8
+ * `stable` component names and the `Stability` type — without reaching into the
9
+ * client catalog (which imports React).
10
+ *
11
+ * Phase 1 ships no plugin packages, so nothing imports this yet; it keeps the
12
+ * contract surface stable for phase 2.
13
+ */
14
+ export { UI_KIT_STABLE_COMPONENTS } from '../../shared/plugin-host/ui-kit-surface.js';
15
+ export type { Stability, StableUiKitComponent } from '../../shared/plugin-host/ui-kit-surface.js';
@@ -0,0 +1,15 @@
1
+ /**
2
+ * `@c4s/plugin-runtime/ui` — backend half.
3
+ *
4
+ * The Host UI Kit is a FRONTEND surface (React components delivered via the M33
5
+ * import-map shim — see `client/runtime/plugin-runtime-ui.ts`). On the backend
6
+ * there are no components to share; this module exists only so server-side
7
+ * plugin code can reference the versioned contract — the React-free set of
8
+ * `stable` component names and the `Stability` type — without reaching into the
9
+ * client catalog (which imports React).
10
+ *
11
+ * Phase 1 ships no plugin packages, so nothing imports this yet; it keeps the
12
+ * contract surface stable for phase 2.
13
+ */
14
+ export { UI_KIT_STABLE_COMPONENTS } from '../../shared/plugin-host/ui-kit-surface.js';
15
+ //# sourceMappingURL=ui.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui.js","sourceRoot":"","sources":["../../../src/server/plugin-runtime/ui.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,4CAA4C,CAAC"}
@@ -12,7 +12,7 @@ import type { PatchService } from '../services/patch.js';
12
12
  import type { ReleaseService } from '../services/release.js';
13
13
  import type { PageVersionService } from '../services/page-version.js';
14
14
  import type { SkillResolver, SkillRegistry } from '../services/skill-registry.js';
15
- import type { Annotation, ChatThread } from '../../shared/entities.js';
15
+ import type { Annotation, ChatMessage, ChatThread } from '../../shared/entities.js';
16
16
  import type { WsEmitter } from '../ws/project-emitter.js';
17
17
  import type { Db } from '../db/index.js';
18
18
  import type { ProjectPluginHost } from '../core/plugin-host/types.js';
@@ -126,6 +126,13 @@ export interface AgentTurnInput {
126
126
  export interface AgentTurnResult {
127
127
  threadId: string;
128
128
  answer: string;
129
+ /**
130
+ * 0.1.79: every chat_message persisted during THIS turn (user + assistant +
131
+ * reasoning + tool rows), in id order. Sliced from `chat_message`, returned in
132
+ * one batch after the turn. Feeds `runAgent({ output: 'full' })` / `c4s agent`;
133
+ * `output: 'final'` callers ignore it.
134
+ */
135
+ messages: ChatMessage[];
129
136
  }
130
137
  /**
131
138
  * Uruchamia jedna ture agenta dla istniejacego watku: wstawia wiadomosc user,
@@ -4,7 +4,7 @@ import { architectureCapabilities, createAdapter, observeStream, AdapterAbortErr
4
4
  import { buildPlanToolsServer } from '../mcp/plan-tools.js';
5
5
  import { buildBriefToolsServer } from '../mcp/brief-tools.js';
6
6
  import { buildC4sToolsServer } from '../mcp/c4s-tools.js';
7
- import { buildSystemPrompt, subagentsFor } from '../services/chat-context.js';
7
+ import { buildSystemPrompt, subagentsFor, CONTEXT_TYPE_REGISTRY, } from '../services/chat-context.js';
8
8
  import { readConfig } from '../config.js';
9
9
  import { TransagentDispatcher } from '../services/transagent-dispatcher.js';
10
10
  import { buildTransagentToolsServer, TRANSAGENT_TOOL_FULL_NAME } from '../mcp/transagent-tools.js';
@@ -51,7 +51,17 @@ export async function runAgentTurn(deps, input) {
51
51
  const { thread, prompt, requestId } = input;
52
52
  const annotations = input.annotations ?? [];
53
53
  const currentPage = input.currentPage ?? null;
54
- const planMode = thread.planMode;
54
+ // 0.1.79: snapshot the highest message id BEFORE this turn inserts anything, so
55
+ // we can slice exactly this turn's messages at the end (for `output: 'full'`).
56
+ const turnStartMessageId = deps.chatService.latestMessageId(thread.id);
57
+ // M05 m05ctxreg: the context-type registry is the single source of truth for this
58
+ // thread's five dispatch dimensions (skill / MCP set / chrome / subagent / posture).
59
+ const ctx = CONTEXT_TYPE_REGISTRY[thread.contextType];
60
+ // Builtin posture (dim 5): `force-plan` pins read-only plan-mode EVERY turn regardless
61
+ // of the thread's stored plan_mode flag (→ READONLY_BUILTINS + disallowedTools =
62
+ // MUTATING_BUILTINS). One site, so it covers both POST /api/threads/:id/ask and
63
+ // POST /api/chat. (Today only `ask` forces; the rest follow the thread flag.)
64
+ const planMode = ctx.builtinPosture === 'force-plan' ? true : thread.planMode;
55
65
  const adapter = createAdapter('claude-code');
56
66
  const emitter = new EventEmitter();
57
67
  // `turn_start` jest syntetyzowany serwerowo wyłącznie dla wznawiających klientów
@@ -194,14 +204,15 @@ export async function runAgentTurn(deps, input) {
194
204
  const title = prompt.slice(0, 60) + (prompt.length > 60 ? '...' : '');
195
205
  deps.chatService.updateTitle(thread.id, title || '(annotations only)');
196
206
  }
197
- const isBrief = thread.contextType === 'brief';
198
- // M23: patch threads keep the FULL spec-editing toolset (isBrief stays
199
- // false) their job is to edit the spec. Only the system prompt differs.
200
- const isPatch = thread.contextType === 'patch';
207
+ // M05 m05ctxreg: the brief frame (uiChrome='brief-detail') is the only one with a
208
+ // narrow toolset + reduced prompt it skips entity counters, plan tools, pages, and
209
+ // the current-page block. Every brief-frame cheap-skip below reads this one flag.
210
+ const isBriefFrame = ctx.uiChrome === 'brief-detail';
201
211
  // M21: dla brief context czytamy aktualny snapshot brief'u (frontmatter+body+hash)
202
212
  // i wkladamy do system promptu. Skip kosztownych obliczen pageCount/entityCounts.
213
+ // Gated on the registry's brief-tools dimension (brief is the only briefTools row).
203
214
  let briefSnapshot = null;
204
- if (isBrief && thread.briefPath) {
215
+ if (ctx.mcp.briefTools && thread.briefPath) {
205
216
  try {
206
217
  briefSnapshot = await deps.briefService.getBrief(thread.briefPath);
207
218
  }
@@ -209,9 +220,11 @@ export async function runAgentTurn(deps, input) {
209
220
  console.warn(`[chat] brief read failed for ${thread.briefPath}:`, err.message);
210
221
  }
211
222
  }
212
- // M23: dla patch context czytamy snapshot patcha i wkladamy do system promptu.
223
+ // M23: patch threads keep the FULL spec-editing toolset their job is to edit the
224
+ // spec; only the system prompt differs (the patch snapshot is injected). `patch_path`
225
+ // is set iff context_type='patch' (chat.ts invariant), so its presence IS the gate.
213
226
  let patchSnapshot = null;
214
- if (isPatch && thread.patchPath) {
227
+ if (thread.patchPath) {
215
228
  try {
216
229
  patchSnapshot = await deps.patchService.getPatch(thread.patchPath);
217
230
  }
@@ -220,7 +233,7 @@ export async function runAgentTurn(deps, input) {
220
233
  }
221
234
  }
222
235
  let currentPageBody = null;
223
- if (!isBrief && currentPage) {
236
+ if (!isBriefFrame && currentPage) {
224
237
  try {
225
238
  const page = await deps.pagesService.read(currentPage);
226
239
  currentPageBody = page.body;
@@ -232,8 +245,8 @@ export async function runAgentTurn(deps, input) {
232
245
  // Stale-plan reminder MUSI byc sprawdzony PRZED markPlanSeenByThread —
233
246
  // ten ostatni bumpuje last_seen_plan_version i zapodaje sygnal "synced".
234
247
  const isFirstTurn = !thread.hasSystemPrompt;
235
- const stalePlanReminder = isBrief ? null : deps.planService.getStalePlanReminder(thread.id);
236
- const currentPlan = isBrief ? null : deps.planService.getByThread(thread.id);
248
+ const stalePlanReminder = isBriefFrame ? null : deps.planService.getStalePlanReminder(thread.id);
249
+ const currentPlan = isBriefFrame ? null : deps.planService.getByThread(thread.id);
237
250
  // Skill resolution: writing-style (config.writingStyle, M15) ladowany
238
251
  // niezaleznie od kontekstu. Dla brief context dokladamy bundled `brief-author`.
239
252
  const writingStyleSkills = deps.skillResolver.resolve();
@@ -243,8 +256,10 @@ export async function runAgentTurn(deps, input) {
243
256
  title: String(writingStyleSkills[0].metadata?.title ?? writingStyleSkills[0].name),
244
257
  }
245
258
  : null;
259
+ // M05 m05ctxreg dim 1: the registry's bundled skill (beyond config.writingStyle).
260
+ // Only the brief row carries `brief-author`; chat/patch/ask carry null.
246
261
  const inlineSkills = [...writingStyleSkills];
247
- if (isBrief && deps.skillRegistry.has('brief-author')) {
262
+ if (ctx.bundledSkill === 'brief-author' && deps.skillRegistry.has('brief-author')) {
248
263
  const skill = deps.skillRegistry.resolve('brief-author');
249
264
  inlineSkills.push({
250
265
  name: skill.metadata.slug,
@@ -258,7 +273,7 @@ export async function runAgentTurn(deps, input) {
258
273
  },
259
274
  });
260
275
  }
261
- const pageCount = isBrief ? 0 : countPages(await deps.pagesService.listTree());
276
+ const pageCount = isBriefFrame ? 0 : countPages(await deps.pagesService.listTree());
262
277
  // 0.1.51: language directives travel the same path as writingStyle — read from
263
278
  // config per-turn here, NOT via architectureConfig. Effective only from the first
264
279
  // turn of a new thread (the prompt is persisted once by setInitialSystemPrompt).
@@ -271,17 +286,22 @@ export async function runAgentTurn(deps, input) {
271
286
  currentPagePath: currentPage,
272
287
  currentPageBody,
273
288
  pageCount,
274
- entityCounts: isBrief ? {} : deps.pluginHost.computeEntityCounts(deps.db.handle),
275
- tagCount: isBrief ? 0 : deps.tagsService.list().length,
276
- sectionCount: isBrief ? 0 : deps.sectionsService.count(),
289
+ entityCounts: isBriefFrame ? {} : deps.pluginHost.computeEntityCounts(deps.db.handle),
290
+ tagCount: isBriefFrame ? 0 : deps.tagsService.list().length,
291
+ sectionCount: isBriefFrame ? 0 : deps.sectionsService.count(),
277
292
  annotations,
278
293
  planMode,
279
294
  currentPlan,
280
- planToolsAvailable: !isBrief,
281
- c4sToolsAvailable: !isBrief,
282
- // 0.1.58: peer-discovery block. Skip the disk reads for brief frames
283
- // (c4sToolsAvailable=false there, so the block would be gated out anyway).
284
- workspaceProjects: isBrief ? [] : (deps.listWorkspacePeers?.() ?? []),
295
+ // M05 m05ctxreg dim 2: prompt-side tooling flags mirror the registry's MCP set
296
+ // (the <tooling>/usage blocks must match what is actually mounted below).
297
+ planToolsAvailable: ctx.mcp.planTools,
298
+ // c4s-tools excluded for brief (narrow toolset) and `ask` (recursion guard) — the
299
+ // registry encodes this; dropping it also drops the <c4s_tools_usage> +
300
+ // peer-discovery prompt blocks.
301
+ c4sToolsAvailable: ctx.mcp.c4sTools,
302
+ // 0.1.58: peer-discovery block. Gated on the same c4s-tools dimension; skip the
303
+ // disk reads when c4s-tools is absent (the block would be gated out anyway).
304
+ workspaceProjects: ctx.mcp.c4sTools ? (deps.listWorkspacePeers?.() ?? []) : [],
285
305
  workspaceName: deps.workspaceName,
286
306
  writingStyle,
287
307
  specLanguage: cfg.language ?? undefined,
@@ -306,30 +326,32 @@ export async function runAgentTurn(deps, input) {
306
326
  if (isFirstTurn && currentPlan) {
307
327
  deps.planService.markPlanSeenByThread(thread.id);
308
328
  }
309
- // M21 m05ctxreg: per-thread MCP servers depend on context_type.
310
- const planTools = isBrief
311
- ? null
312
- : buildPlanToolsServer({
329
+ // M05 m05ctxreg dim 2: per-thread MCP servers are dispatched from the registry's
330
+ // `mcp` descriptor — each server mounts iff its registry flag is set.
331
+ const planTools = ctx.mcp.planTools
332
+ ? buildPlanToolsServer({
313
333
  threadId: thread.id,
314
334
  planService: deps.planService,
315
- });
316
- const briefTools = isBrief && thread.briefPath
335
+ })
336
+ : null;
337
+ const briefTools = ctx.mcp.briefTools && thread.briefPath
317
338
  ? buildBriefToolsServer({
318
339
  threadId: thread.id,
319
340
  briefPath: thread.briefPath,
320
341
  briefService: deps.briefService,
321
342
  })
322
343
  : null;
323
- // M24 c4s-tools: cross-cutting MCP exposing `c4s ask` flow. Stateless,
324
- // fresh factory per request. Whitelist: chat + patch contexts; brief is
325
- // intentionally narrow (brief-tools + read-only release-tools only).
326
- const c4sTools = isBrief ? null : buildC4sToolsServer();
344
+ // M24 c4s-tools: cross-cutting MCP exposing the peer-consult flow. Stateless,
345
+ // fresh factory per request. Registry-gated: chat + patch only (brief is
346
+ // intentionally narrow; `ask` is excluded a consulted peer cannot consult another).
347
+ const c4sTools = ctx.mcp.c4sTools ? buildC4sToolsServer() : null;
327
348
  // 0.1.69 transagent-tools: delegate work to a hidden child banka. Two guards:
328
- // - context whitelist: chat + patch only (never brief — mirror c4sTools).
329
- // - recursion depth 1: never inside a child banka (parentThreadId != null),
330
- // so a banka cannot spawn a banka.
349
+ // - registry dimension `transagentTools` (chat + patch only never brief/`ask`).
350
+ // - recursion depth 1: never inside a child banka (parentThreadId != null), so a
351
+ // banka cannot spawn a banka. This guard is orthogonal to the registry (it depends
352
+ // on the thread's lineage, not its context_type), so it stays at the call site.
331
353
  const isChildBanka = thread.parentThreadId != null;
332
- const transagentTools = !isBrief && !isChildBanka
354
+ const transagentTools = ctx.mcp.transagentTools && !isChildBanka
333
355
  ? buildTransagentToolsServer({
334
356
  parentThreadId: thread.id,
335
357
  dispatcher: new TransagentDispatcher(deps, {
@@ -340,9 +362,11 @@ export async function runAgentTurn(deps, input) {
340
362
  }),
341
363
  })
342
364
  : null;
365
+ // Registry `pluginServers`: 'all' mounts every entity-plugin server; 'release-only'
366
+ // narrows to the BRIEF_ALLOWED_PLUGIN_MCP whitelist (read-only release-tools).
343
367
  const pluginMcpEntries = deps.pluginHost
344
368
  .buildMcpServers()
345
- .filter(({ name }) => (isBrief ? BRIEF_ALLOWED_PLUGIN_MCP.has(name) : true))
369
+ .filter(({ name }) => ctx.mcp.pluginServers === 'release-only' ? BRIEF_ALLOWED_PLUGIN_MCP.has(name) : true)
346
370
  .map(({ name, server }) => [name, server.config]);
347
371
  const mcpServers = Object.fromEntries(pluginMcpEntries);
348
372
  if (planTools)
@@ -521,7 +545,7 @@ export async function runAgentTurn(deps, input) {
521
545
  replay.events = [];
522
546
  emit(mergedTurnStart);
523
547
  // Stale-plan reminder is applied at DISPATCH (here), not at enqueue.
524
- const mergedReminder = isBrief ? null : deps.planService.getStalePlanReminder(thread.id);
548
+ const mergedReminder = isBriefFrame ? null : deps.planService.getStalePlanReminder(thread.id);
525
549
  await consume(mergedReminder ? `${mergedReminder}\n\n${merged}` : merged);
526
550
  batch = deps.chatService.popAllQueued(thread.id);
527
551
  }
@@ -570,7 +594,11 @@ export async function runAgentTurn(deps, input) {
570
594
  cancelPendingForRequest(deps.pendingInputs, requestId);
571
595
  deps.onTurnFinished?.();
572
596
  }
573
- return { threadId: thread.id, answer: lastAssistantText.trim() };
597
+ // 0.1.79: slice the messages this turn persisted (id > pre-turn snapshot).
598
+ const messages = deps.chatService
599
+ .getMessages(thread.id)
600
+ .filter((m) => m.id > turnStartMessageId);
601
+ return { threadId: thread.id, answer: lastAssistantText.trim(), messages };
574
602
  }
575
603
  export function countPages(tree) {
576
604
  let n = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-turn.js","sourceRoot":"","sources":["../../../src/server/routes/agent-turn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-turn.js","sourceRoot":"","sources":["../../../src/server/routes/agent-turn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EACL,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GAOpB,MAAM,8BAA8B,CAAC;AAMtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,GAEtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAuDnG;;;0EAG0E;AAC1E,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;AAE5D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,CAAU,CAAC;AAwC1F,4EAA4E;AAC5E,qEAAqE;AACrE,6EAA6E;AAC7E,4EAA4E;AAC5E,8EAA8E;AAC9E,MAAM,UAAU,uBAAuB,CACrC,aAAwC,EACxC,SAAiB;IAEjB,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,aAAa,EAAE,CAAC;QAC/C,IAAI,OAAO,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;YAC/C,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC5C,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;AACH,CAAC;AAED;sEACsE;AACtE,MAAM,OAAO,cAAe,SAAQ,KAAK;IAE9B;IADT,YACS,IAAiE,EACxE,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QAHR,SAAI,GAAJ,IAAI,CAA6D;QAIxE,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAgCD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,IAAmB,EACnB,KAAqB;IAErB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC5C,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC;IAC5C,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC;IAC9C,gFAAgF;IAChF,+EAA+E;IAC/E,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvE,kFAAkF;IAClF,qFAAqF;IACrF,MAAM,GAAG,GAAG,qBAAqB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACtD,uFAAuF;IACvF,iFAAiF;IACjF,gFAAgF;IAChF,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,GAAG,CAAC,cAAc,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;IAE9E,MAAM,OAAO,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;IACnC,iFAAiF;IACjF,iFAAiF;IACjF,gFAAgF;IAChF,MAAM,SAAS,GAAc;QAC3B,IAAI,EAAE,YAAY;QAClB,aAAa,EAAE,MAAM,CAAC,EAAE,CAAC;QACzB,kBAAkB,EAAE,MAAM,CAAC,EAAE,CAAC;QAC9B,MAAM;QACN,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;IACF,MAAM,MAAM,GAAe,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAErD,+EAA+E;IAC/E,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;QACjC,YAAY;QACZ,UAAU;QACV,UAAU;QACV,aAAa;QACb,kBAAkB;QAClB,mBAAmB;QACnB,oBAAoB;QACpB,mBAAmB;QACnB,oBAAoB;QACpB,wEAAwE;QACxE,sBAAsB;QACtB,oBAAoB;QACpB,sBAAsB;QACtB,QAAQ;QACR,OAAO;KACR,CAAC,CAAC;IACH,MAAM,eAAe,GAAG,CAAC,KAAgB,EAAE,EAAE;QAC3C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;YAAE,OAAO;QAChD,+EAA+E;QAC/E,iFAAiF;QACjF,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACrD,IACE,IAAI;gBACJ,IAAI,CAAC,IAAI,KAAK,YAAY;gBAC1B,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;gBACtD,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,cAAc,EAC5C,CAAC;gBACD,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;gBAC/D,OAAO;YACT,CAAC;YACD,0EAA0E;YAC1E,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,mFAAmF;IACnF,MAAM,IAAI,GAAG,CAAC,KAAgB,EAAE,EAAE;QAChC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC7B,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,0EAA0E;IAC1E,gFAAgF;IAChF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE;QACjC,SAAS;QACT,OAAO;QACP,OAAO;QACP,MAAM;QACN,IAAI;QACJ,6EAA6E;QAC7E,6DAA6D;QAC7D,cAAc,EAAE,MAAM,CAAC,cAAc;KACtC,CAAC,CAAC;IACH,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;IAE5D,8DAA8D;IAC9D,+EAA+E;IAC/E,gFAAgF;IAChF,wDAAwD;IACxD,MAAM,sBAAsB,GAAa,EAAE,CAAC;IAC5C,MAAM,iBAAiB,GAAgC,EAAE,CAAC;IAC1D,MAAM,qBAAqB,GAAG,CAAC,EAAU,EAAE,EAAE;QAC3C,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,EAAE,CAAC;QACzC,IAAI,MAAM;YAAE,MAAM,CAAC,EAAE,CAAC,CAAC;;YAClB,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC,CAAC;IACF,MAAM,qBAAqB,GAAG,GAAoB,EAAE;QAClD,MAAM,MAAM,GAAG,sBAAsB,CAAC,KAAK,EAAE,CAAC;QAC9C,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACzD,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3E,CAAC,CAAC;IAEF,IAAI,YAAY,GAAG,EAAE,CAAC;IACtB,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,wEAAwE;IACxE,6EAA6E;IAC7E,wEAAwE;IACxE,+EAA+E;IAC/E,yEAAyE;IACzE,IAAI,iBAAiB,GAAG,EAAE,CAAC;IAC3B,MAAM,eAAe,GAAG,IAAI,GAAG,EAA8C,CAAC;IAC9E,IAAI,sBAAsB,GAAkB,IAAI,CAAC;IACjD,IAAI,mBAAmB,GAAkB,IAAI,CAAC;IAC9C,IAAI,aAAa,GAAsB,IAAI,CAAC;IAE5C,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,EAAE;QACnC,IAAI,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,GAAG,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;YACjC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,EAAE;QACrC,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAC,UAAU,CACzB,MAAM,CAAC,EAAE,EACT,WAAW,EACX,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,EAClC,IAAI,EACJ,IAAI,EACJ,MAAM,CACP,CAAC;YACF,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC;QAChB,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YACjB,IAAI,CAAC,WAAW,CAAC,UAAU,CACzB,MAAM,CAAC,EAAE,EACT,WAAW,EACX,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EACtD,IAAI,EACJ,IAAI,EACJ,MAAM,CACP,CAAC;YACF,GAAG,CAAC,QAAQ,GAAG,EAAE,CAAC;QACpB,CAAC;IACH,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CACrC,MAAM,CAAC,EAAE,EACT,WAAW,EACX,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CACvC,CAAC;YACF,sBAAsB,GAAG,GAAG,CAAC,EAAE,CAAC;YAChC,qEAAqE;YACrE,8DAA8D;YAC9D,iBAAiB,GAAG,YAAY,CAAC;YACjC,YAAY,GAAG,EAAE,CAAC;QACpB,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,CAAC,UAAU,CACzB,MAAM,CAAC,EAAE,EACT,WAAW,EACX,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CACtD,CAAC;YACF,WAAW,GAAG,EAAE,CAAC;QACnB,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,CAAC;QACH,IAAI,CAAC,WAAW,CAAC,UAAU,CACzB,MAAM,CAAC,EAAE,EACT,MAAM,EACN,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAC7C,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,CACT,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACtE,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,IAAI,oBAAoB,CAAC,CAAC;QACzE,CAAC;QAED,kFAAkF;QAClF,qFAAqF;QACrF,kFAAkF;QAClF,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,KAAK,cAAc,CAAC;QAErD,mFAAmF;QACnF,kFAAkF;QAClF,oFAAoF;QACpF,IAAI,aAAa,GAAiB,IAAI,CAAC;QACvC,IAAI,GAAG,CAAC,GAAG,CAAC,UAAU,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YAC3C,IAAI,CAAC;gBACH,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACrE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,gCAAgC,MAAM,CAAC,SAAS,GAAG,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;QAED,mFAAmF;QACnF,sFAAsF;QACtF,oFAAoF;QACpF,IAAI,aAAa,GAAyB,IAAI,CAAC;QAC/C,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACrE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,gCAAgC,MAAM,CAAC,SAAS,GAAG,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;QAED,IAAI,eAAe,GAAkB,IAAI,CAAC;QAC1C,IAAI,CAAC,YAAY,IAAI,WAAW,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACvD,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC;YAC9B,CAAC;YAAC,MAAM,CAAC;gBACP,eAAe,GAAG,IAAI,CAAC;YACzB,CAAC;QACH,CAAC;QAED,uEAAuE;QACvE,yEAAyE;QACzE,MAAM,WAAW,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC;QAC5C,MAAM,iBAAiB,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACjG,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAElF,sEAAsE;QACtE,gFAAgF;QAChF,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QACxD,MAAM,YAAY,GAAG,kBAAkB,CAAC,CAAC,CAAC;YACxC,CAAC,CAAC;gBACE,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI;gBAChC,KAAK,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;aACnF;YACH,CAAC,CAAC,IAAI,CAAC;QACT,kFAAkF;QAClF,wEAAwE;QACxE,MAAM,YAAY,GAAG,CAAC,GAAG,kBAAkB,CAAC,CAAC;QAC7C,IAAI,GAAG,CAAC,YAAY,KAAK,cAAc,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YAClF,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YACzD,YAAY,CAAC,IAAI,CAAC;gBAChB,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;gBACzB,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW;gBACvC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,QAAQ,EAAE;oBACR,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO;oBAC/B,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ;oBACjC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK;iBAC5B;aACF,CAAC,CAAC;QACL,CAAC;QAED,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpF,+EAA+E;QAC/E,kFAAkF;QAClF,iFAAiF;QACjF,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,YAAY,GAAG,iBAAiB,CAAC;YACrC,IAAI,EAAE,IAAI,CAAC,UAAU;YACrB,WAAW,EAAE,GAAG,CAAC,IAAI;YACrB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,eAAe,EAAE,WAAW;YAC5B,eAAe;YACf,SAAS;YACT,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;YACrF,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM;YAC3D,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE;YAC7D,WAAW;YACX,QAAQ;YACR,WAAW;YACX,+EAA+E;YAC/E,0EAA0E;YAC1E,kBAAkB,EAAE,GAAG,CAAC,GAAG,CAAC,SAAS;YACrC,kFAAkF;YAClF,wEAAwE;YACxE,gCAAgC;YAChC,iBAAiB,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ;YACnC,gFAAgF;YAChF,6EAA6E;YAC7E,iBAAiB,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YAC9E,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,YAAY;YACZ,YAAY,EAAE,GAAG,CAAC,QAAQ,IAAI,SAAS;YACvC,sBAAsB,EAAE,GAAG,CAAC,KAAK,EAAE,sBAAsB,IAAI,SAAS;YACtE,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,KAAK,EAAE,aAAa;YACpB,KAAK,EAAE,aAAa;SACrB,CAAC,CAAC;QAEH,sEAAsE;QACtE,oFAAoF;QACpF,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QAEjE,kFAAkF;QAClF,2FAA2F;QAC3F,4FAA4F;QAC5F,0FAA0F;QAC1F,4EAA4E;QAC5E,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,0BAA0B,EAAE,GAAG,KAAK,CAAC,kBAAkB,CAAC;QAC3F,IAAI,CAAC,WAAW,CAAC,4BAA4B,CAAC,MAAM,CAAC,EAAE,EAAE;YACvD,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,kBAAkB,EAAE,0BAA0B;SAC/C,CAAC,CAAC;QAEH,IAAI,WAAW,IAAI,WAAW,EAAE,CAAC;YAC/B,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,iFAAiF;QACjF,sEAAsE;QACtE,MAAM,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,SAAS;YACjC,CAAC,CAAC,oBAAoB,CAAC;gBACnB,QAAQ,EAAE,MAAM,CAAC,EAAE;gBACnB,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,CAAC;YACJ,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,UAAU,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,IAAI,MAAM,CAAC,SAAS;YACvD,CAAC,CAAC,qBAAqB,CAAC;gBACpB,QAAQ,EAAE,MAAM,CAAC,EAAE;gBACnB,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,YAAY,EAAE,IAAI,CAAC,YAAY;aAChC,CAAC;YACJ,CAAC,CAAC,IAAI,CAAC;QACT,8EAA8E;QAC9E,yEAAyE;QACzE,sFAAsF;QACtF,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAEjE,8EAA8E;QAC9E,oFAAoF;QACpF,mFAAmF;QACnF,uFAAuF;QACvF,oFAAoF;QACpF,MAAM,YAAY,GAAG,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC;QACnD,MAAM,eAAe,GAAG,GAAG,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,YAAY;YAC9D,CAAC,CAAC,0BAA0B,CAAC;gBACzB,cAAc,EAAE,MAAM,CAAC,EAAE;gBACzB,UAAU,EAAE,IAAI,oBAAoB,CAAC,IAAI,EAAE;oBACzC,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;oBAC5C,aAAa,EAAE,qBAAqB;oBACpC,OAAO,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC;iBACxD,CAAC;aACH,CAAC;YACJ,CAAC,CAAC,IAAI,CAAC;QAET,oFAAoF;QACpF,+EAA+E;QAC/E,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU;aACrC,eAAe,EAAE;aACjB,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CACnB,GAAG,CAAC,GAAG,CAAC,aAAa,KAAK,cAAc,CAAC,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CACrF;aACA,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAU,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAoC,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;QACzF,IAAI,SAAS;YAAE,UAAU,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;QAC3D,IAAI,UAAU;YAAE,UAAU,CAAC,aAAa,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC;QAC9D,IAAI,QAAQ;YAAE,UAAU,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;QACxD,IAAI,eAAe;YAAE,UAAU,CAAC,kBAAkB,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC;QAE7E,8EAA8E;QAC9E,4EAA4E;QAC5E,4EAA4E;QAC5E,MAAM,cAAc,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC;QAC3E,MAAM,eAAe,GAAG;YACtB,YAAY;YACZ,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU;YACV,MAAM,EAAE,YAAY;YACpB,wFAAwF;YACxF,kFAAkF;YAClF,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC;YAC5D,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,QAAQ;YACR,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpD,CAAC;QACF,+EAA+E;QAC/E,2EAA2E;QAC3E,qCAAqC;QACrC,IAAI,gBAAgB,GAAuB,MAAM,CAAC,aAAa,IAAI,SAAS,CAAC;QAE7E,MAAM,OAAO,GAAG,KAAK,EAAE,UAAkB,EAAiB,EAAE;YAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;gBAC7B,GAAG,eAAe;gBAClB,MAAM,EAAE,UAAU;gBAClB,eAAe,EAAE,gBAAgB;aAClC,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,KAAK,CAAC,eAAe;gBACpC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBAChD,CAAC,CAAC,MAAM,CAAC;YACX,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;gBACnC,2EAA2E;gBAC3E,wDAAwD;gBACxD,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;oBAClC,IAAI,CAAC;wBACH,IAAI,EAAE,cAAc;wBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,SAAS,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;qBACnD,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,KAA6B,CAAC,CAAC;gBACtC,CAAC;gBAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;oBACnB,KAAK,YAAY;wBACf,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;4BAC7C,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC;wBACrD,CAAC;6BAAM,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;4BAC7B,YAAY,IAAI,KAAK,CAAC,IAAI,CAAC;wBAC7B,CAAC;wBACD,MAAM;oBACR,KAAK,UAAU;wBACb,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;4BAC7C,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC;wBACzD,CAAC;6BAAM,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;4BAC7B,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC;wBAC5B,CAAC;wBACD,MAAM;oBACR,KAAK,cAAc,CAAC,CAAC,CAAC;wBACpB,uEAAuE;wBACvE,sEAAsE;wBACtE,mEAAmE;wBACnE,sEAAsE;wBACtE,YAAY,EAAE,CAAC;wBACf,IAAI,CAAC,WAAW,CAAC,UAAU,CACzB,MAAM,CAAC,EAAE,EACT,MAAM,EACN,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,EACpC,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,CACT,CAAC;wBACF,MAAM;oBACR,CAAC;oBACD,KAAK,mBAAmB,CAAC,CAAC,CAAC;wBACzB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;4BACzD,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;4BACpC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;wBAChE,CAAC;wBACD,MAAM;oBACR,CAAC;oBACD,KAAK,UAAU,CAAC,CAAC,CAAC;wBAChB,MAAM,MAAM,GAAG,KAAK,CAAC,cAAc,IAAI,IAAI,CAAC;wBAC5C,IAAI,MAAM;4BAAE,WAAW,CAAC,MAAM,CAAC,CAAC;;4BAC3B,YAAY,EAAE,CAAC;wBACpB,sEAAsE;wBACtE,qEAAqE;wBACrE,IAAI,KAAK,CAAC,QAAQ,KAAK,yBAAyB,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;4BACpE,qBAAqB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;wBACzC,CAAC;wBACD,IAAI,CAAC,WAAW,CAAC,UAAU,CACzB,MAAM,CAAC,EAAE,EACT,UAAU,EACV,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,EACtC,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,SAAS,EACf,MAAM,EACN,QAAQ,EACR,WAAW,CACZ,CAAC;wBACF,MAAM;oBACR,CAAC;oBACD,KAAK,aAAa,CAAC,CAAC,CAAC;wBACnB,MAAM,MAAM,GAAG,KAAK,CAAC,cAAc,IAAI,IAAI,CAAC;wBAC5C,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;wBACjE,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CACrC,MAAM,CAAC,EAAE,EACT,aAAa,EACb,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,EAClE,IAAI,EACJ,KAAK,CAAC,SAAS,EACf,MAAM,CACP,CAAC;wBACF,IAAI,MAAM,KAAK,IAAI;4BAAE,mBAAmB,GAAG,GAAG,CAAC,EAAE,CAAC;wBAClD,MAAM;oBACR,CAAC;oBACD,KAAK,kBAAkB;wBACrB,YAAY,EAAE,CAAC;wBACf,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAChC,MAAM,CAAC,EAAE,EACT,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,SAAS,IAAI,IAAI,CACxB,CAAC;wBACF,MAAM;oBACR,KAAK,mBAAmB;wBACtB,IAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;wBACxF,MAAM;oBACR,KAAK,oBAAoB;wBACvB,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;wBAC1B,IAAI,CAAC,WAAW,CAAC,oBAAoB,CACnC,MAAM,CAAC,EAAE,EACT,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,OAAO,IAAI,IAAI,CACtB,CAAC;wBACF,MAAM;oBACR,KAAK,QAAQ,CAAC,CAAC,CAAC;wBACd,YAAY,EAAE,CAAC;wBACf,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;4BAAE,WAAW,CAAC,GAAG,CAAC,CAAC;wBACvE,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;4BACpB,gBAAgB,GAAG,KAAK,CAAC,SAAS,CAAC;4BACnC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;wBAChE,CAAC;wBACD,MAAM,UAAU,GAAG,sBAAsB,IAAI,mBAAmB,CAAC;wBACjE,IAAI,aAAa,EAAE,CAAC;4BAClB,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;4BACxD,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;gCACxB,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;4BACzE,CAAC;wBACH,CAAC;wBACD,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;4BAC1C,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;4BAClE,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;gCACxB,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;4BACnF,CAAC;wBACH,CAAC;wBACD,MAAM;oBACR,CAAC;oBACD,KAAK,mBAAmB;wBACtB,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;4BACtB,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;wBAClE,CAAC;wBACD,MAAM;oBACR,KAAK,SAAS;wBACZ,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;wBAC/C,MAAM;gBACV,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,eAAe,GAAG,iBAAiB,CAAC,CAAC,CAAC,GAAG,iBAAiB,OAAO,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QACzF,MAAM,OAAO,CAAC,eAAe,CAAC,CAAC;QAE/B,4EAA4E;QAC5E,6EAA6E;QAC7E,uEAAuE;QACvE,yCAAyC;QACzC,IAAI,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACrD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;YAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC9D,0EAA0E;YAC1E,mDAAmD;YACnD,IAAI,CAAC,WAAW,CAAC,UAAU,CACzB,MAAM,CAAC,EAAE,EACT,MAAM,EACN,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAChC,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,CACT,CAAC;YACF,MAAM,eAAe,GAAc;gBACjC,IAAI,EAAE,YAAY;gBAClB,aAAa,EAAE,MAAM,CAAC,EAAE,CAAC;gBACzB,kBAAkB,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC9B,MAAM,EAAE,MAAM;gBACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC,CAAC;YACF,MAAM,CAAC,SAAS,GAAG,eAAe,CAAC;YACnC,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,eAAe,CAAC,CAAC;YACtB,qEAAqE;YACrE,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC9F,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,cAAc,OAAO,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC1E,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,qEAAqE;QACrE,qEAAqE;QACrE,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,0EAA0E;QAC1E,4EAA4E;QAC5E,IAAI,OAAuB,CAAC;QAC5B,IAAI,GAAG,YAAY,iBAAiB,EAAE,CAAC;YACrC,OAAO,GAAG,IAAI,cAAc,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QAC7D,CAAC;aAAM,IAAI,GAAG,YAAY,mBAAmB,EAAE,CAAC;YAC9C,OAAO,GAAG,IAAI,cAAc,CAAC,SAAS,EAAE,gCAAgC,CAAC,CAAC;QAC5E,CAAC;aAAM,IAAI,GAAG,YAAY,gBAAgB,EAAE,CAAC;YAC3C,OAAO,GAAG,IAAI,cAAc,CAC1B,mBAAmB,EACnB,kEAAkE,CACnE,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,IAAI,cAAc,CAAC,aAAa,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAChG,CAAC;QACD,gFAAgF;QAChF,6FAA6F;QAC7F,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACpE,MAAM,OAAO,CAAC;IAChB,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YACH,YAAY,EAAE,CAAC;YACf,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;gBAAE,WAAW,CAAC,GAAG,CAAC,CAAC;QACzE,CAAC;QAAC,OAAO,QAAQ,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,QAAQ,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,CAAC;YACH,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,WAAW,EAAE,CAAC;YACrB,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,WAAW,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACtC,uBAAuB,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;IAC1B,CAAC;IAED,2EAA2E;IAC3E,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW;SAC9B,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;SACtB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,kBAAkB,CAAC,CAAC;IAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,iBAAiB,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAmD;IAC5E,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;YAAE,CAAC,EAAE,CAAC;aACzB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;YACnC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,QAAyD,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { Router } from 'express';
2
2
  import type { SkillRegistry } from '../services/skill-registry.js';
3
+ import type { PluginSettingsSection } from '../../shared/plugin-host/manifest.js';
3
4
  export interface ConfigRouterDeps {
4
5
  cwd: string;
5
6
  skillRegistry: SkillRegistry;
@@ -16,6 +17,13 @@ export interface ConfigRouterDeps {
16
17
  * onboarding can't leave an orphan index on the old path.
17
18
  */
18
19
  onOnboardingCompleted?: (effectivePagesDir: string) => void;
20
+ /**
21
+ * M33 phase 3: current plugin Settings sections (host.listSettings()). Used to
22
+ * classify a `plugins` PATCH per field `kind` — if any written field is
23
+ * `executive`, the context is invalidated (rebuild); `hot-reload` fields are
24
+ * not (parity with writingStyle/language).
25
+ */
26
+ pluginSettingsSections?: () => PluginSettingsSection[];
19
27
  }
20
28
  /**
21
29
  * Per-context config/meta/writing-styles routes (carved out of startServer,
@@ -29,6 +29,8 @@ function configResponse(c) {
29
29
  syncCommitOnRelease: c.git?.syncCommitOnRelease ?? false,
30
30
  syncPushOnPush: c.git?.syncPushOnPush ?? false,
31
31
  },
32
+ // M33 phase 3: persisted plugin settings namespace (absent ⇒ {}).
33
+ plugins: c.plugins ?? {},
32
34
  remoteProjectId: c.remoteProjectId ?? null,
33
35
  remoteApiUrl: c.remoteApiUrl ?? null,
34
36
  $schemaVersion: c.$schemaVersion,
@@ -105,8 +107,7 @@ export function configRouter(deps) {
105
107
  return res.status(400).json({ error: { code: 'VALIDATION', message: 'writingStyle must be string | null' } });
106
108
  }
107
109
  if (typeof body.writingStyle === 'string' && !skillRegistry.isSelectable(body.writingStyle)) {
108
- const available = skillRegistry.listSelectable().map((s) => s.slug).join(', ') || '(none)';
109
- return res.status(400).json({ error: { code: 'VALIDATION', message: `writingStyle "${body.writingStyle}" not a selectable writing-style skill. Available: ${available}` } });
110
+ return res.status(400).json({ error: { code: 'VALIDATION', message: `writingStyle "${body.writingStyle}" ${skillRegistry.unselectableReason(body.writingStyle)}` } });
110
111
  }
111
112
  patch.writingStyle = body.writingStyle;
112
113
  }
@@ -187,6 +188,24 @@ export function configRouter(deps) {
187
188
  }
188
189
  patch.git = next;
189
190
  }
191
+ // M33 phase 3: plugin settings namespace. Validate shape only (object of
192
+ // per-plugin objects); writeConfig deep-merges each `plugins[<name>]` so a
193
+ // single-field write preserves the plugin's other fields and other
194
+ // namespaces. Field semantics live in each plugin's settings descriptor.
195
+ if ('plugins' in body) {
196
+ const p = body.plugins;
197
+ if (p === null || typeof p !== 'object' || Array.isArray(p)) {
198
+ return res.status(400).json({ error: { code: 'VALIDATION', message: 'plugins must be an object' } });
199
+ }
200
+ const next = {};
201
+ for (const [name, sub] of Object.entries(p)) {
202
+ if (sub === null || typeof sub !== 'object' || Array.isArray(sub)) {
203
+ return res.status(400).json({ error: { code: 'VALIDATION', message: `plugins.${name} must be an object` } });
204
+ }
205
+ next[name] = sub;
206
+ }
207
+ patch.plugins = next;
208
+ }
190
209
  // M25: allow manual clear/override of remoteProjectId (e.g. UI "clear" after
191
210
  // a stale UUID). null ⇒ next push is a first push again.
192
211
  if ('remoteProjectId' in body) {
@@ -203,7 +222,26 @@ export function configRouter(deps) {
203
222
  if (patch.onboardingCompleted === true) {
204
223
  deps.onOnboardingCompleted?.(updated.pagesDir);
205
224
  }
206
- if (deps.onContextConfigChanged && CONTEXT_DEFINING_FIELDS.some((f) => f in patch)) {
225
+ // M33 phase 3: a `plugins` write invalidates the context only when at
226
+ // least one written field is `executive`; `hot-reload`-only writes take
227
+ // effect on the next turn/thread without a rebuild.
228
+ const pluginsPatchIsExecutive = () => {
229
+ if (!patch.plugins || !deps.pluginSettingsSections)
230
+ return false;
231
+ const sections = deps.pluginSettingsSections();
232
+ for (const [name, fields] of Object.entries(patch.plugins)) {
233
+ const section = sections.find((s) => s.name === name);
234
+ if (!section)
235
+ continue;
236
+ for (const key of Object.keys(fields)) {
237
+ if (section.fields.find((f) => f.key === key)?.kind === 'executive')
238
+ return true;
239
+ }
240
+ }
241
+ return false;
242
+ };
243
+ if (deps.onContextConfigChanged &&
244
+ (CONTEXT_DEFINING_FIELDS.some((f) => f in patch) || pluginsPatchIsExecutive())) {
207
245
  deps.onContextConfigChanged();
208
246
  }
209
247
  res.json(configResponse(updated));
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/server/routes/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,WAAW,EAAe,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAqB5D,MAAM,uBAAuB,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,CAAU,CAAC;AAE5G;;;;GAIG;AACH,SAAS,cAAc,CAAC,CAAS;IAC/B,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,IAAI;QAC5B,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,IAAI;QAClC,UAAU,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,mBAAmB,EAAE;QAChD,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,KAAK,EAAE;YACL,eAAe,EAAE,CAAC,CAAC,KAAK,EAAE,eAAe,IAAI,IAAI;YACjD,sBAAsB,EAAE,CAAC,CAAC,KAAK,EAAE,sBAAsB,IAAI,IAAI;SAChE;QACD,GAAG,EAAE;YACH,mBAAmB,EAAE,CAAC,CAAC,GAAG,EAAE,mBAAmB,IAAI,KAAK;YACxD,cAAc,EAAE,CAAC,CAAC,GAAG,EAAE,cAAc,IAAI,KAAK;SAC/C;QACD,eAAe,EAAE,CAAC,CAAC,eAAe,IAAI,IAAI;QAC1C,YAAY,EAAE,CAAC,CAAC,YAAY,IAAI,IAAI;QACpC,cAAc,EAAE,CAAC,CAAC,cAAc;KACjC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,IAAsB;IACjD,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QAChC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QAClC,8EAA8E;QAC9E,oEAAoE;QACpE,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACzC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;YACzD,0EAA0E;YAC1E,kEAAkE;YAClE,wEAAwE;YACxE,mEAAmE;YACnE,MAAM,KAAK,GAcN,EAAE,CAAC;YAER,uEAAuE;YACvE,yEAAyE;YACzE,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACrC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,uCAAuC,EAAE;iBAChF,CAAC,CAAC;YACL,CAAC;YAED,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAClC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,uBAAuB,EAAE,EAAE,CAAC,CAAC;gBACnG,CAAC;gBACD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACjC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;oBACtF,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,2CAA2C,EAAE,EAAE,CAAC,CAAC;gBACvH,CAAC;gBACD,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC;YACvB,CAAC;YAED,kEAAkE;YAClE,iCAAiC;YACjC,MAAM,WAAW,GAAG,CAAC,KAAa,EAAE,KAAc,EAA8B,EAAE;gBAChF,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;oBACrD,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,6BAA6B,EAAE,CAAC;gBAC1D,CAAC;gBACD,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC3B,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,0BAA0B,EAAE,CAAC;gBACvD,CAAC;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACrC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACpC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBACjD,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,+BAA+B,EAAE,CAAC;gBAC5D,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC,CAAC;YAEF,KAAK,MAAM,KAAK,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,CAAU,EAAE,CAAC;gBACpF,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;oBAClB,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC/C,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAC/B,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBACxF,CAAC;oBACD,KAAK,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;gBACxB,CAAC;YACH,CAAC;YAED,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;gBAC3B,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;oBACxE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,oCAAoC,EAAE,EAAE,CAAC,CAAC;gBAChH,CAAC;gBACD,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC5F,MAAM,SAAS,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC;oBAC3F,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,iBAAiB,IAAI,CAAC,YAAY,sDAAsD,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC/K,CAAC;gBACD,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YACzC,CAAC;YAED,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAClE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,+BAA+B,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC7K,CAAC;gBACD,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YACjC,CAAC;YAED,wEAAwE;YACxE,gEAAgE;YAChE,qDAAqD;YACrD,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;gBAC1B,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;oBACtE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,mCAAmC,EAAE,EAAE,CAAC,CAAC;gBAC/G,CAAC;gBACD,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;oBAC1E,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,4CAA4C,EAAE,EAAE,CAAC,CAAC;gBACxH,CAAC;gBACD,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBACtF,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;YACxD,CAAC;YAED,IAAI,qBAAqB,IAAI,IAAI,EAAE,CAAC;gBAClC,IAAI,OAAO,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;oBAClD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,qCAAqC,EAAE,EAAE,CAAC,CAAC;gBACjH,CAAC;gBACD,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;YACvD,CAAC;YAED,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;gBACvB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;oBACxF,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,2BAA2B,EAAE,EAAE,CAAC,CAAC;gBACvG,CAAC;gBACD,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAoB,CAAC;YAC7C,CAAC;YAED,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;gBACpB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;gBACrB,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5D,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,yBAAyB,EAAE,EAAE,CAAC,CAAC;gBACrG,CAAC;gBACD,MAAM,EAAE,GAAG,CAA4B,CAAC;gBACxC,MAAM,IAAI,GAA0E,EAAE,CAAC;gBACvF,IAAI,iBAAiB,IAAI,EAAE,EAAE,CAAC;oBAC5B,IAAI,OAAO,EAAE,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;wBAC5C,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,uCAAuC,EAAE,EAAE,CAAC,CAAC;oBACnH,CAAC;oBACD,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC,eAAe,CAAC;gBAC5C,CAAC;gBACD,IAAI,wBAAwB,IAAI,EAAE,EAAE,CAAC;oBACnC,IAAI,EAAE,CAAC,sBAAsB,KAAK,IAAI,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,sBAAsB,CAAC,EAAE,CAAC;wBAC1F,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,iCAAiC,MAAM,CAAC,EAAE,CAAC,sBAAsB,CAAC,+BAA+B,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC7M,CAAC;oBACD,IAAI,CAAC,sBAAsB,GAAG,EAAE,CAAC,sBAAsB,CAAC;gBAC1D,CAAC;gBACD,wEAAwE;gBACxE,8DAA8D;gBAC9D,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;YACrB,CAAC;YAED,0EAA0E;YAC1E,sEAAsE;YACtE,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;gBAClB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC;gBACnB,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5D,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,uBAAuB,EAAE,EAAE,CAAC,CAAC;gBACnG,CAAC;gBACD,MAAM,EAAE,GAAG,CAA4B,CAAC;gBACxC,MAAM,IAAI,GAAgE,EAAE,CAAC;gBAC7E,IAAI,qBAAqB,IAAI,EAAE,EAAE,CAAC;oBAChC,IAAI,OAAO,EAAE,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;wBAChD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,yCAAyC,EAAE,EAAE,CAAC,CAAC;oBACrH,CAAC;oBACD,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC,mBAAmB,CAAC;gBACpD,CAAC;gBACD,IAAI,gBAAgB,IAAI,EAAE,EAAE,CAAC;oBAC3B,IAAI,OAAO,EAAE,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;wBAC3C,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,oCAAoC,EAAE,EAAE,CAAC,CAAC;oBAChH,CAAC;oBACD,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC,cAAc,CAAC;gBAC1C,CAAC;gBACD,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC;YACnB,CAAC;YAED,6EAA6E;YAC7E,yDAAyD;YACzD,IAAI,iBAAiB,IAAI,IAAI,EAAE,CAAC;gBAC9B,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI,IAAI,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;oBAC9E,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,uCAAuC,EAAE,EAAE,CAAC,CAAC;gBACnH,CAAC;gBACD,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;YAC/C,CAAC;YAED,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACxC,4EAA4E;YAC5E,sEAAsE;YACtE,4EAA4E;YAC5E,2BAA2B;YAC3B,IAAI,KAAK,CAAC,mBAAmB,KAAK,IAAI,EAAE,CAAC;gBACvC,IAAI,CAAC,qBAAqB,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjD,CAAC;YACD,IAAI,IAAI,CAAC,sBAAsB,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACnF,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChC,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,CAAC;QACZ,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QAC1C,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC;YACP,MAAM,EAAE,CAAC,CAAC,YAAY;YACtB,SAAS,EAAE,aAAa,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACpD,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,MAAM,EAAE,CAAC,CAAC,MAAM;aACjB,CAAC,CAAC;SACJ,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/server/routes/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * M33 process-level plugin routes. Mounted at `/api` (before the
3
+ * `/api/projects/:id` dispatch) — the plugin catalog is process-global, so
4
+ * these are reachable with a plain `fetch` (no project prefix):
5
+ *
6
+ * GET /api/plugins/frontend-manifest → import map + active plugins ("Option B")
7
+ * GET /api/plugins/runtime/<peer>.js → shared-singleton ESM shim
8
+ * GET /api/plugins/<name>/frontend.js → plugin frontend (overlay: trust-gated, workspace: ungated)
9
+ * GET /api/plugins/<name>/frontend.css → plugin styles (overlay: trust-gated, workspace: ungated)
10
+ * GET /api/_meta/plugins → loader diagnostics (per-package state)
11
+ */
12
+ import { Router } from 'express';
13
+ import type { PluginRegistry } from '../core/plugin-host/types.js';
14
+ import type { PluginLoadRecord } from '../core/plugin-host/loader.js';
15
+ export { buildBasePluginPackages } from '../core/plugin-host/base-packages.js';
16
+ export interface PluginRoutesDeps {
17
+ pluginRegistry: PluginRegistry;
18
+ /** Per-package outcomes from the M33 bootstrap loader (workspace/npm layer). */
19
+ pluginRecords: PluginLoadRecord[];
20
+ /**
21
+ * M33 phase 2: the process's primary project, whose project-local plugin
22
+ * frontends these process-global routes serve. Absent on workspace-only
23
+ * starts (nothing registered) ⇒ serving is disabled and the manifest lists no
24
+ * plugins. `isTrusted()` is read per request, so a `POST /trust-plugins` flip
25
+ * takes effect without a process restart.
26
+ */
27
+ frontendServing?: {
28
+ cwd: string;
29
+ isTrusted: () => boolean;
30
+ };
31
+ /**
32
+ * M33 phase 3: the process's resolved workspace plugin package names (the same
33
+ * list `loadWorkspacePlugins` consumed). Their frontends are served UNGATED for
34
+ * every project, and they are advertised in the manifest. Empty by default.
35
+ */
36
+ workspacePackages?: string[];
37
+ }
38
+ /** Diagnostics response — array of per-package records, extensible for phase 2. */
39
+ export interface PluginsMetaResponse {
40
+ hostApiVersion: string;
41
+ packages: PluginLoadRecord[];
42
+ }
43
+ export declare function pluginsRouter(deps: PluginRoutesDeps): Router;