@rubytech/create-realagent-code 0.1.573 → 0.1.575

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 (1001) hide show
  1. package/dist/index.js +14 -0
  2. package/package.json +1 -1
  3. package/payload/platform/lib/admins-write/__tests__/index.test.ts +97 -0
  4. package/payload/platform/lib/admins-write/dist/index.d.ts +12 -0
  5. package/payload/platform/lib/admins-write/dist/index.d.ts.map +1 -1
  6. package/payload/platform/lib/admins-write/dist/index.js +27 -5
  7. package/payload/platform/lib/admins-write/dist/index.js.map +1 -1
  8. package/payload/platform/lib/admins-write/src/index.ts +35 -5
  9. package/payload/platform/lib/admins-write/vitest.config.ts +14 -0
  10. package/payload/platform/lib/canonical-instant/dist/index.d.ts +57 -0
  11. package/payload/platform/lib/canonical-instant/dist/index.d.ts.map +1 -0
  12. package/payload/platform/lib/canonical-instant/dist/index.js +139 -0
  13. package/payload/platform/lib/canonical-instant/dist/index.js.map +1 -0
  14. package/payload/platform/lib/canonical-instant/src/__tests__/normalise-instant.test.ts +158 -0
  15. package/payload/platform/lib/canonical-instant/src/index.ts +147 -0
  16. package/payload/platform/lib/canonical-instant/tsconfig.json +9 -0
  17. package/payload/platform/lib/canonical-instant/vitest.config.ts +9 -0
  18. package/payload/platform/lib/dispatch-read/dist/geo.d.ts +34 -0
  19. package/payload/platform/lib/dispatch-read/dist/geo.d.ts.map +1 -0
  20. package/payload/platform/lib/dispatch-read/dist/geo.js +27 -0
  21. package/payload/platform/lib/dispatch-read/dist/geo.js.map +1 -0
  22. package/payload/platform/lib/dispatch-read/dist/index.d.ts +6 -2
  23. package/payload/platform/lib/dispatch-read/dist/index.d.ts.map +1 -1
  24. package/payload/platform/lib/dispatch-read/dist/index.js +21 -1
  25. package/payload/platform/lib/dispatch-read/dist/index.js.map +1 -1
  26. package/payload/platform/lib/dispatch-read/dist/keyboard.d.ts +66 -0
  27. package/payload/platform/lib/dispatch-read/dist/keyboard.d.ts.map +1 -0
  28. package/payload/platform/lib/dispatch-read/dist/keyboard.js +64 -0
  29. package/payload/platform/lib/dispatch-read/dist/keyboard.js.map +1 -0
  30. package/payload/platform/lib/dispatch-read/dist/read.d.ts +144 -9
  31. package/payload/platform/lib/dispatch-read/dist/read.d.ts.map +1 -1
  32. package/payload/platform/lib/dispatch-read/dist/read.js +437 -118
  33. package/payload/platform/lib/dispatch-read/dist/read.js.map +1 -1
  34. package/payload/platform/lib/dispatch-read/dist/session.d.ts.map +1 -1
  35. package/payload/platform/lib/dispatch-read/dist/session.js +19 -4
  36. package/payload/platform/lib/dispatch-read/dist/session.js.map +1 -1
  37. package/payload/platform/lib/dispatch-read/dist/types.d.ts +80 -11
  38. package/payload/platform/lib/dispatch-read/dist/types.d.ts.map +1 -1
  39. package/payload/platform/lib/dispatch-read/src/__tests__/geo.test.ts +86 -0
  40. package/payload/platform/lib/dispatch-read/src/__tests__/keyboard.test.ts +124 -0
  41. package/payload/platform/lib/dispatch-read/src/__tests__/previous-visit.test.ts +98 -0
  42. package/payload/platform/lib/dispatch-read/src/__tests__/read.test.ts +107 -8
  43. package/payload/platform/lib/dispatch-read/src/__tests__/session.test.ts +91 -0
  44. package/payload/platform/lib/dispatch-read/src/__tests__/worker-day.test.ts +215 -10
  45. package/payload/platform/lib/dispatch-read/src/geo.ts +56 -0
  46. package/payload/platform/lib/dispatch-read/src/index.ts +25 -1
  47. package/payload/platform/lib/dispatch-read/src/keyboard.ts +98 -0
  48. package/payload/platform/lib/dispatch-read/src/read.ts +522 -119
  49. package/payload/platform/lib/dispatch-read/src/session.ts +25 -6
  50. package/payload/platform/lib/dispatch-read/src/types.ts +83 -11
  51. package/payload/platform/lib/dispatch-write/dist/write.d.ts +14 -0
  52. package/payload/platform/lib/dispatch-write/dist/write.d.ts.map +1 -1
  53. package/payload/platform/lib/dispatch-write/dist/write.js +50 -11
  54. package/payload/platform/lib/dispatch-write/dist/write.js.map +1 -1
  55. package/payload/platform/lib/dispatch-write/src/__tests__/write.test.ts +72 -2
  56. package/payload/platform/lib/dispatch-write/src/write.ts +79 -14
  57. package/payload/platform/neo4j/schema.cypher +66 -1
  58. package/payload/platform/package.json +2 -2
  59. package/payload/platform/plugins/admin/.claude-plugin/plugin.json +1 -1
  60. package/payload/platform/plugins/admin/PLUGIN.md +11 -3
  61. package/payload/platform/plugins/admin/hooks/__tests__/fs-schema-guard-bash.test.sh +106 -0
  62. package/payload/platform/plugins/admin/hooks/__tests__/fs-schema-guard.test.sh +66 -0
  63. package/payload/platform/plugins/admin/hooks/__tests__/html-structure-gate.test.sh +264 -0
  64. package/payload/platform/plugins/admin/hooks/__tests__/quote-render-pdf-conformance.test.sh +122 -24
  65. package/payload/platform/plugins/admin/hooks/__tests__/specialist-dispatch-gate.test.sh +158 -0
  66. package/payload/platform/plugins/admin/hooks/fs-schema-guard-bash-post.sh +85 -12
  67. package/payload/platform/plugins/admin/hooks/fs-schema-guard.sh +18 -0
  68. package/payload/platform/plugins/admin/hooks/html-structure-gate.sh +165 -0
  69. package/payload/platform/plugins/admin/hooks/quote-render-pdf-conformance.sh +111 -19
  70. package/payload/platform/plugins/admin/hooks/specialist-dispatch-gate.sh +159 -0
  71. package/payload/platform/plugins/admin/mcp/dist/admin-bind-classify.d.ts +27 -0
  72. package/payload/platform/plugins/admin/mcp/dist/admin-bind-classify.d.ts.map +1 -0
  73. package/payload/platform/plugins/admin/mcp/dist/admin-bind-classify.js +29 -0
  74. package/payload/platform/plugins/admin/mcp/dist/admin-bind-classify.js.map +1 -0
  75. package/payload/platform/plugins/admin/mcp/dist/binding-validate.d.ts +11 -0
  76. package/payload/platform/plugins/admin/mcp/dist/binding-validate.d.ts.map +1 -0
  77. package/payload/platform/plugins/admin/mcp/dist/binding-validate.js +20 -0
  78. package/payload/platform/plugins/admin/mcp/dist/binding-validate.js.map +1 -0
  79. package/payload/platform/plugins/admin/mcp/dist/index.js +133 -1
  80. package/payload/platform/plugins/admin/mcp/dist/index.js.map +1 -1
  81. package/payload/platform/plugins/admin/skills/admin-user-management/SKILL.md +31 -2
  82. package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +242 -61
  83. package/payload/platform/plugins/admin/skills/whats-new/SKILL.md +16 -0
  84. package/payload/platform/plugins/cloudflare/mcp/__tests__/portal-visits-scope.test.ts +130 -1
  85. package/payload/platform/plugins/cloudflare/skills/data-portal/schema.sql +63 -0
  86. package/payload/platform/plugins/cloudflare/skills/data-portal/template/functions/api/visits.ts +104 -3
  87. package/payload/platform/plugins/dispatch/.claude-plugin/plugin.json +1 -1
  88. package/payload/platform/plugins/dispatch/PLUGIN.md +49 -6
  89. package/payload/platform/plugins/dispatch/mcp/dist/index.js +200 -2
  90. package/payload/platform/plugins/dispatch/mcp/dist/index.js.map +1 -1
  91. package/payload/platform/plugins/dispatch/mcp/dist/lib/allocate.d.ts +22 -4
  92. package/payload/platform/plugins/dispatch/mcp/dist/lib/allocate.d.ts.map +1 -1
  93. package/payload/platform/plugins/dispatch/mcp/dist/lib/allocate.js +4 -0
  94. package/payload/platform/plugins/dispatch/mcp/dist/lib/allocate.js.map +1 -1
  95. package/payload/platform/plugins/dispatch/mcp/dist/lib/bot-token.d.ts +10 -0
  96. package/payload/platform/plugins/dispatch/mcp/dist/lib/bot-token.d.ts.map +1 -0
  97. package/payload/platform/plugins/dispatch/mcp/dist/lib/bot-token.js +47 -0
  98. package/payload/platform/plugins/dispatch/mcp/dist/lib/bot-token.js.map +1 -0
  99. package/payload/platform/plugins/dispatch/mcp/dist/lib/config.d.ts.map +1 -1
  100. package/payload/platform/plugins/dispatch/mcp/dist/lib/config.js +12 -0
  101. package/payload/platform/plugins/dispatch/mcp/dist/lib/config.js.map +1 -1
  102. package/payload/platform/plugins/dispatch/mcp/dist/lib/ids.d.ts +1 -0
  103. package/payload/platform/plugins/dispatch/mcp/dist/lib/ids.d.ts.map +1 -1
  104. package/payload/platform/plugins/dispatch/mcp/dist/lib/ids.js +1 -0
  105. package/payload/platform/plugins/dispatch/mcp/dist/lib/ids.js.map +1 -1
  106. package/payload/platform/plugins/dispatch/mcp/dist/lib/intake.d.ts +36 -0
  107. package/payload/platform/plugins/dispatch/mcp/dist/lib/intake.d.ts.map +1 -0
  108. package/payload/platform/plugins/dispatch/mcp/dist/lib/intake.js +36 -0
  109. package/payload/platform/plugins/dispatch/mcp/dist/lib/intake.js.map +1 -0
  110. package/payload/platform/plugins/dispatch/mcp/dist/lib/keyboard.d.ts +11 -0
  111. package/payload/platform/plugins/dispatch/mcp/dist/lib/keyboard.d.ts.map +1 -0
  112. package/payload/platform/plugins/dispatch/mcp/dist/lib/keyboard.js +10 -0
  113. package/payload/platform/plugins/dispatch/mcp/dist/lib/keyboard.js.map +1 -0
  114. package/payload/platform/plugins/dispatch/mcp/dist/lib/read.d.ts +2 -2
  115. package/payload/platform/plugins/dispatch/mcp/dist/lib/read.d.ts.map +1 -1
  116. package/payload/platform/plugins/dispatch/mcp/dist/lib/read.js +9 -1
  117. package/payload/platform/plugins/dispatch/mcp/dist/lib/read.js.map +1 -1
  118. package/payload/platform/plugins/dispatch/mcp/dist/lib/travel.d.ts +43 -0
  119. package/payload/platform/plugins/dispatch/mcp/dist/lib/travel.d.ts.map +1 -0
  120. package/payload/platform/plugins/dispatch/mcp/dist/lib/travel.js +53 -0
  121. package/payload/platform/plugins/dispatch/mcp/dist/lib/travel.js.map +1 -0
  122. package/payload/platform/plugins/dispatch/mcp/dist/lib/types.d.ts +13 -2
  123. package/payload/platform/plugins/dispatch/mcp/dist/lib/types.d.ts.map +1 -1
  124. package/payload/platform/plugins/dispatch/mcp/dist/scripts/converge-visit-instants.d.ts +6 -0
  125. package/payload/platform/plugins/dispatch/mcp/dist/scripts/converge-visit-instants.d.ts.map +1 -0
  126. package/payload/platform/plugins/dispatch/mcp/dist/scripts/converge-visit-instants.js +102 -0
  127. package/payload/platform/plugins/dispatch/mcp/dist/scripts/converge-visit-instants.js.map +1 -0
  128. package/payload/platform/plugins/dispatch/mcp/dist/tools/allocate.d.ts +18 -0
  129. package/payload/platform/plugins/dispatch/mcp/dist/tools/allocate.d.ts.map +1 -1
  130. package/payload/platform/plugins/dispatch/mcp/dist/tools/allocate.js +251 -40
  131. package/payload/platform/plugins/dispatch/mcp/dist/tools/allocate.js.map +1 -1
  132. package/payload/platform/plugins/dispatch/mcp/dist/tools/intake.d.ts +75 -0
  133. package/payload/platform/plugins/dispatch/mcp/dist/tools/intake.d.ts.map +1 -0
  134. package/payload/platform/plugins/dispatch/mcp/dist/tools/intake.js +194 -0
  135. package/payload/platform/plugins/dispatch/mcp/dist/tools/intake.js.map +1 -0
  136. package/payload/platform/plugins/dispatch/mcp/dist/tools/notify-worker.d.ts +61 -0
  137. package/payload/platform/plugins/dispatch/mcp/dist/tools/notify-worker.d.ts.map +1 -0
  138. package/payload/platform/plugins/dispatch/mcp/dist/tools/notify-worker.js +130 -0
  139. package/payload/platform/plugins/dispatch/mcp/dist/tools/notify-worker.js.map +1 -0
  140. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-location-set.d.ts +28 -0
  141. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-location-set.d.ts.map +1 -0
  142. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-location-set.js +44 -0
  143. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-location-set.js.map +1 -0
  144. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-upsert.d.ts +43 -0
  145. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-upsert.d.ts.map +1 -0
  146. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-upsert.js +139 -0
  147. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-upsert.js.map +1 -0
  148. package/payload/platform/plugins/dispatch/skills/dispatch-page/SKILL.md +85 -0
  149. package/payload/platform/plugins/dispatch/skills/dispatch-page/template/planner.css +97 -0
  150. package/payload/platform/plugins/dispatch/skills/dispatch-page/template/planner.html +59 -0
  151. package/payload/platform/plugins/dispatch/skills/dispatch-page/template/planner.js +343 -0
  152. package/payload/platform/plugins/dispatch/skills/dispatch-setup/SKILL.md +9 -4
  153. package/payload/platform/plugins/docs/references/admin-ui.md +71 -31
  154. package/payload/platform/plugins/docs/references/channel-wake-and-prompt.md +29 -13
  155. package/payload/platform/plugins/docs/references/dispatch.md +94 -15
  156. package/payload/platform/plugins/docs/references/internals.md +6 -0
  157. package/payload/platform/plugins/docs/references/outlook-guide.md +31 -1
  158. package/payload/platform/plugins/docs/references/troubleshooting.md +10 -0
  159. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/dispatch-vertical-coverage.test.js +4 -1
  160. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/dispatch-vertical-coverage.test.js.map +1 -1
  161. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/relationship-patterns.test.js +24 -1
  162. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/relationship-patterns.test.js.map +1 -1
  163. package/payload/platform/plugins/memory/references/schema-dispatch.md +70 -4
  164. package/payload/platform/plugins/outlook/PLUGIN.md +3 -1
  165. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger-write-sites.test.d.ts +2 -0
  166. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger-write-sites.test.d.ts.map +1 -0
  167. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger-write-sites.test.js +177 -0
  168. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger-write-sites.test.js.map +1 -0
  169. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger.test.d.ts +2 -0
  170. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger.test.d.ts.map +1 -0
  171. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger.test.js +130 -0
  172. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger.test.js.map +1 -0
  173. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-reconcile.test.d.ts +2 -0
  174. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-reconcile.test.d.ts.map +1 -0
  175. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-reconcile.test.js +162 -0
  176. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-reconcile.test.js.map +1 -0
  177. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-state-fields.test.d.ts +2 -0
  178. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-state-fields.test.d.ts.map +1 -0
  179. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-state-fields.test.js +168 -0
  180. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-state-fields.test.js.map +1 -0
  181. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-ledger.d.ts +64 -0
  182. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-ledger.d.ts.map +1 -0
  183. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-ledger.js +110 -0
  184. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-ledger.js.map +1 -0
  185. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-reconcile.d.ts +119 -0
  186. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-reconcile.d.ts.map +1 -0
  187. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-reconcile.js +0 -0
  188. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-reconcile.js.map +1 -0
  189. package/payload/platform/plugins/outlook/mcp/dist/scripts/draft-reconcile.d.ts +8 -0
  190. package/payload/platform/plugins/outlook/mcp/dist/scripts/draft-reconcile.d.ts.map +1 -0
  191. package/payload/platform/plugins/outlook/mcp/dist/scripts/draft-reconcile.js +247 -0
  192. package/payload/platform/plugins/outlook/mcp/dist/scripts/draft-reconcile.js.map +1 -0
  193. package/payload/platform/plugins/outlook/mcp/dist/tools/draft-send.d.ts.map +1 -1
  194. package/payload/platform/plugins/outlook/mcp/dist/tools/draft-send.js +10 -0
  195. package/payload/platform/plugins/outlook/mcp/dist/tools/draft-send.js.map +1 -1
  196. package/payload/platform/plugins/outlook/mcp/dist/tools/draft.d.ts.map +1 -1
  197. package/payload/platform/plugins/outlook/mcp/dist/tools/draft.js +21 -0
  198. package/payload/platform/plugins/outlook/mcp/dist/tools/draft.js.map +1 -1
  199. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-fetch-body.d.ts +16 -0
  200. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-fetch-body.d.ts.map +1 -1
  201. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-fetch-body.js +5 -1
  202. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-fetch-body.js.map +1 -1
  203. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-list.d.ts +4 -0
  204. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-list.d.ts.map +1 -1
  205. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-list.js +2 -1
  206. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-list.js.map +1 -1
  207. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-reply.d.ts.map +1 -1
  208. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-reply.js +24 -0
  209. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-reply.js.map +1 -1
  210. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-search.d.ts.map +1 -1
  211. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-search.js +2 -1
  212. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-search.js.map +1 -1
  213. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-send.d.ts.map +1 -1
  214. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-send.js +29 -0
  215. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-send.js.map +1 -1
  216. package/payload/platform/plugins/scheduling/mcp/dist/__tests__/draft-reconcile-throttle.test.d.ts +2 -0
  217. package/payload/platform/plugins/scheduling/mcp/dist/__tests__/draft-reconcile-throttle.test.d.ts.map +1 -0
  218. package/payload/platform/plugins/scheduling/mcp/dist/__tests__/draft-reconcile-throttle.test.js +21 -0
  219. package/payload/platform/plugins/scheduling/mcp/dist/__tests__/draft-reconcile-throttle.test.js.map +1 -0
  220. package/payload/platform/plugins/scheduling/mcp/dist/lib/draft-reconcile-throttle.d.ts +13 -0
  221. package/payload/platform/plugins/scheduling/mcp/dist/lib/draft-reconcile-throttle.d.ts.map +1 -0
  222. package/payload/platform/plugins/scheduling/mcp/dist/lib/draft-reconcile-throttle.js +10 -0
  223. package/payload/platform/plugins/scheduling/mcp/dist/lib/draft-reconcile-throttle.js.map +1 -0
  224. package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.d.ts +2 -35
  225. package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.d.ts.map +1 -1
  226. package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.js +6 -114
  227. package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.js.map +1 -1
  228. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js +54 -0
  229. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js.map +1 -1
  230. package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.d.ts +1 -1
  231. package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.js +3 -3
  232. package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.js.map +1 -1
  233. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js +2 -2
  234. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js.map +1 -1
  235. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.js +3 -3
  236. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.js.map +1 -1
  237. package/payload/platform/services/claude-session-manager/dist/authored-specialist-tools.d.ts +32 -0
  238. package/payload/platform/services/claude-session-manager/dist/authored-specialist-tools.d.ts.map +1 -0
  239. package/payload/platform/services/claude-session-manager/dist/authored-specialist-tools.js +144 -0
  240. package/payload/platform/services/claude-session-manager/dist/authored-specialist-tools.js.map +1 -0
  241. package/payload/platform/services/claude-session-manager/dist/blocked-tool-census.d.ts +40 -6
  242. package/payload/platform/services/claude-session-manager/dist/blocked-tool-census.d.ts.map +1 -1
  243. package/payload/platform/services/claude-session-manager/dist/blocked-tool-census.js +116 -15
  244. package/payload/platform/services/claude-session-manager/dist/blocked-tool-census.js.map +1 -1
  245. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.d.ts.map +1 -1
  246. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js +7 -0
  247. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js.map +1 -1
  248. package/payload/platform/services/claude-session-manager/dist/html-structure-census.d.ts +44 -0
  249. package/payload/platform/services/claude-session-manager/dist/html-structure-census.d.ts.map +1 -0
  250. package/payload/platform/services/claude-session-manager/dist/html-structure-census.js +185 -0
  251. package/payload/platform/services/claude-session-manager/dist/html-structure-census.js.map +1 -0
  252. package/payload/platform/services/claude-session-manager/dist/index.js +125 -0
  253. package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
  254. package/payload/platform/services/claude-session-manager/dist/quote-delivery-reconcile.d.ts.map +1 -1
  255. package/payload/platform/services/claude-session-manager/dist/quote-delivery-reconcile.js +7 -0
  256. package/payload/platform/services/claude-session-manager/dist/quote-delivery-reconcile.js.map +1 -1
  257. package/payload/platform/services/claude-session-manager/dist/quote-print-census.d.ts +42 -0
  258. package/payload/platform/services/claude-session-manager/dist/quote-print-census.d.ts.map +1 -0
  259. package/payload/platform/services/claude-session-manager/dist/quote-print-census.js +254 -0
  260. package/payload/platform/services/claude-session-manager/dist/quote-print-census.js.map +1 -0
  261. package/payload/platform/services/claude-session-manager/dist/specialist-census.d.ts +92 -0
  262. package/payload/platform/services/claude-session-manager/dist/specialist-census.d.ts.map +1 -0
  263. package/payload/platform/services/claude-session-manager/dist/specialist-census.js +227 -0
  264. package/payload/platform/services/claude-session-manager/dist/specialist-census.js.map +1 -0
  265. package/payload/platform/services/telegram-channel/dist/notification.d.ts +0 -12
  266. package/payload/platform/services/telegram-channel/dist/notification.d.ts.map +1 -1
  267. package/payload/platform/services/telegram-channel/dist/notification.js +8 -29
  268. package/payload/platform/services/telegram-channel/dist/notification.js.map +1 -1
  269. package/payload/platform/services/telegram-channel/dist/server.d.ts.map +1 -1
  270. package/payload/platform/services/telegram-channel/dist/server.js +8 -11
  271. package/payload/platform/services/telegram-channel/dist/server.js.map +1 -1
  272. package/payload/platform/templates/account-settings.json +8 -4
  273. package/payload/server/public/activity.html +7 -7
  274. package/payload/server/public/agents.html +6 -6
  275. package/payload/server/public/assets/AdminLoginScreens-BLGZEaKU.js +1 -0
  276. package/payload/server/public/assets/AdminLoginScreens-BLGZEaKU.js.br +0 -0
  277. package/payload/server/public/assets/AdminLoginScreens-BLGZEaKU.js.gz +0 -0
  278. package/payload/server/public/assets/AdminShell-C_M7YE5Z.js +3 -0
  279. package/payload/server/public/assets/AdminShell-C_M7YE5Z.js.br +0 -0
  280. package/payload/server/public/assets/AdminShell-C_M7YE5Z.js.gz +0 -0
  281. package/payload/server/public/assets/activity-BL6qbB9a.js +1 -0
  282. package/payload/server/public/assets/activity-BL6qbB9a.js.br +0 -0
  283. package/payload/server/public/assets/activity-BL6qbB9a.js.gz +0 -0
  284. package/payload/server/public/assets/admin-jnJ3P2u4.js +1 -0
  285. package/payload/server/public/assets/admin-jnJ3P2u4.js.br +0 -0
  286. package/payload/server/public/assets/admin-jnJ3P2u4.js.gz +0 -0
  287. package/payload/server/public/assets/agents-BzhfKZDN.js +1 -0
  288. package/payload/server/public/assets/agents-BzhfKZDN.js.br +0 -0
  289. package/payload/server/public/assets/agents-BzhfKZDN.js.gz +0 -0
  290. package/payload/server/public/assets/arc-Bge2fWf4.js +1 -0
  291. package/payload/server/public/assets/arc-Bge2fWf4.js.br +0 -0
  292. package/payload/server/public/assets/arc-Bge2fWf4.js.gz +0 -0
  293. package/payload/server/public/assets/architecture-YZFGNWBL-B9jqFTbw.js +1 -0
  294. package/payload/server/public/assets/architecture-YZFGNWBL-B9jqFTbw.js.br +0 -0
  295. package/payload/server/public/assets/architectureDiagram-Q4EWVU46-BRauf5b8.js +36 -0
  296. package/payload/server/public/assets/architectureDiagram-Q4EWVU46-BRauf5b8.js.br +0 -0
  297. package/payload/server/public/assets/architectureDiagram-Q4EWVU46-BRauf5b8.js.gz +0 -0
  298. package/payload/server/public/assets/blockDiagram-DXYQGD6D-CUJ554WZ.js +132 -0
  299. package/payload/server/public/assets/blockDiagram-DXYQGD6D-CUJ554WZ.js.br +0 -0
  300. package/payload/server/public/assets/blockDiagram-DXYQGD6D-CUJ554WZ.js.gz +0 -0
  301. package/payload/server/public/assets/browser-C-6io2B9.js +1 -0
  302. package/payload/server/public/assets/browser-C-6io2B9.js.br +0 -0
  303. package/payload/server/public/assets/browser-C-6io2B9.js.gz +0 -0
  304. package/payload/server/public/assets/c4Diagram-AHTNJAMY-CV9gKsKo.js +10 -0
  305. package/payload/server/public/assets/c4Diagram-AHTNJAMY-CV9gKsKo.js.br +0 -0
  306. package/payload/server/public/assets/c4Diagram-AHTNJAMY-CV9gKsKo.js.gz +0 -0
  307. package/payload/server/public/assets/calendar-Dt3gS88s.js +1 -0
  308. package/payload/server/public/assets/calendar-Dt3gS88s.js.br +0 -0
  309. package/payload/server/public/assets/calendar-Dt3gS88s.js.gz +0 -0
  310. package/payload/server/public/assets/channel-DUwJcjZw.js +1 -0
  311. package/payload/server/public/assets/channel-DUwJcjZw.js.br +0 -0
  312. package/payload/server/public/assets/chat-IUOvVkL-.js +1 -0
  313. package/payload/server/public/assets/chat-IUOvVkL-.js.br +1 -0
  314. package/payload/server/public/assets/chat-IUOvVkL-.js.gz +0 -0
  315. package/payload/server/public/assets/chevron-left-DSzR9zR7.js +1 -0
  316. package/payload/server/public/assets/chevron-left-DSzR9zR7.js.br +0 -0
  317. package/payload/server/public/assets/chunk-2KRD3SAO-HzWGrran.js +1 -0
  318. package/payload/server/public/assets/chunk-2KRD3SAO-HzWGrran.js.br +0 -0
  319. package/payload/server/public/assets/chunk-2KRD3SAO-HzWGrran.js.gz +0 -0
  320. package/payload/server/public/assets/chunk-336JU56O-ChGDYu_S.js +2 -0
  321. package/payload/server/public/assets/chunk-336JU56O-ChGDYu_S.js.br +0 -0
  322. package/payload/server/public/assets/chunk-336JU56O-ChGDYu_S.js.gz +0 -0
  323. package/payload/server/public/assets/chunk-426QAEUC-DLLi1nAr.js +1 -0
  324. package/payload/server/public/assets/chunk-426QAEUC-DLLi1nAr.js.br +0 -0
  325. package/payload/server/public/assets/chunk-426QAEUC-DLLi1nAr.js.gz +0 -0
  326. package/payload/server/public/assets/chunk-4BX2VUAB-BJunAy2u.js +1 -0
  327. package/payload/server/public/assets/chunk-4BX2VUAB-BJunAy2u.js.br +0 -0
  328. package/payload/server/public/assets/chunk-4BX2VUAB-BJunAy2u.js.gz +0 -0
  329. package/payload/server/public/assets/chunk-4TB4RGXK-Df9Ew0fN.js +206 -0
  330. package/payload/server/public/assets/chunk-4TB4RGXK-Df9Ew0fN.js.br +0 -0
  331. package/payload/server/public/assets/chunk-4TB4RGXK-Df9Ew0fN.js.gz +0 -0
  332. package/payload/server/public/assets/chunk-55IACEB6-DtquCg7p.js +1 -0
  333. package/payload/server/public/assets/chunk-55IACEB6-DtquCg7p.js.br +0 -0
  334. package/payload/server/public/assets/chunk-55IACEB6-DtquCg7p.js.gz +0 -0
  335. package/payload/server/public/assets/chunk-5FUZZQ4R-B3s1YuQa.js +62 -0
  336. package/payload/server/public/assets/chunk-5FUZZQ4R-B3s1YuQa.js.br +0 -0
  337. package/payload/server/public/assets/chunk-5FUZZQ4R-B3s1YuQa.js.gz +0 -0
  338. package/payload/server/public/assets/chunk-5PVQY5BW-C0bRnMKQ.js +2 -0
  339. package/payload/server/public/assets/chunk-5PVQY5BW-C0bRnMKQ.js.br +0 -0
  340. package/payload/server/public/assets/chunk-5PVQY5BW-C0bRnMKQ.js.gz +0 -0
  341. package/payload/server/public/assets/chunk-67CJDMHE-B9jxnEpu.js +1 -0
  342. package/payload/server/public/assets/chunk-67CJDMHE-B9jxnEpu.js.br +0 -0
  343. package/payload/server/public/assets/chunk-67CJDMHE-B9jxnEpu.js.gz +0 -0
  344. package/payload/server/public/assets/chunk-7N4EOEYR-DaimaIlO.js +1 -0
  345. package/payload/server/public/assets/chunk-7N4EOEYR-DaimaIlO.js.br +0 -0
  346. package/payload/server/public/assets/chunk-7N4EOEYR-DaimaIlO.js.gz +0 -0
  347. package/payload/server/public/assets/chunk-AA7GKIK3-htgz4y5z.js +1 -0
  348. package/payload/server/public/assets/chunk-AA7GKIK3-htgz4y5z.js.br +0 -0
  349. package/payload/server/public/assets/chunk-AA7GKIK3-htgz4y5z.js.gz +0 -0
  350. package/payload/server/public/assets/chunk-BSJP7CBP-0xBlnKJN.js +1 -0
  351. package/payload/server/public/assets/chunk-BSJP7CBP-0xBlnKJN.js.br +0 -0
  352. package/payload/server/public/assets/chunk-BSJP7CBP-0xBlnKJN.js.gz +0 -0
  353. package/payload/server/public/assets/chunk-CIAEETIT-HZOrcAzJ.js +1 -0
  354. package/payload/server/public/assets/chunk-CIAEETIT-HZOrcAzJ.js.br +0 -0
  355. package/payload/server/public/assets/chunk-CIAEETIT-HZOrcAzJ.js.gz +0 -0
  356. package/payload/server/public/assets/chunk-EDXVE4YY-CC8hCcuU.js +1 -0
  357. package/payload/server/public/assets/chunk-EDXVE4YY-CC8hCcuU.js.br +0 -0
  358. package/payload/server/public/assets/chunk-EDXVE4YY-CC8hCcuU.js.gz +0 -0
  359. package/payload/server/public/assets/chunk-ENJZ2VHE-BdPfdZYB.js +10 -0
  360. package/payload/server/public/assets/chunk-ENJZ2VHE-BdPfdZYB.js.br +0 -0
  361. package/payload/server/public/assets/chunk-ENJZ2VHE-BdPfdZYB.js.gz +0 -0
  362. package/payload/server/public/assets/chunk-FMBD7UC4-MHdn_KgF.js +15 -0
  363. package/payload/server/public/assets/chunk-FMBD7UC4-MHdn_KgF.js.br +0 -0
  364. package/payload/server/public/assets/chunk-FMBD7UC4-MHdn_KgF.js.gz +0 -0
  365. package/payload/server/public/assets/chunk-FOC6F5B3-Ti8BlQKX.js +1 -0
  366. package/payload/server/public/assets/chunk-FOC6F5B3-Ti8BlQKX.js.br +0 -0
  367. package/payload/server/public/assets/chunk-FOC6F5B3-Ti8BlQKX.js.gz +0 -0
  368. package/payload/server/public/assets/chunk-ICPOFSXX-BP8A8zb1.js +122 -0
  369. package/payload/server/public/assets/chunk-ICPOFSXX-BP8A8zb1.js.br +0 -0
  370. package/payload/server/public/assets/chunk-ICPOFSXX-BP8A8zb1.js.gz +0 -0
  371. package/payload/server/public/assets/chunk-K5T4RW27-F30EnSBL.js +94 -0
  372. package/payload/server/public/assets/chunk-K5T4RW27-F30EnSBL.js.br +0 -0
  373. package/payload/server/public/assets/chunk-K5T4RW27-F30EnSBL.js.gz +0 -0
  374. package/payload/server/public/assets/chunk-KGLVRYIC-DNSEkg2Q.js +1 -0
  375. package/payload/server/public/assets/chunk-KGLVRYIC-DNSEkg2Q.js.br +2 -0
  376. package/payload/server/public/assets/chunk-KGLVRYIC-DNSEkg2Q.js.gz +0 -0
  377. package/payload/server/public/assets/chunk-LIHQZDEY-DM7b0dec.js +1 -0
  378. package/payload/server/public/assets/chunk-LIHQZDEY-DM7b0dec.js.br +0 -0
  379. package/payload/server/public/assets/chunk-LIHQZDEY-DM7b0dec.js.gz +0 -0
  380. package/payload/server/public/assets/chunk-ORNJ4GCN-B0qoI_vp.js +1 -0
  381. package/payload/server/public/assets/chunk-ORNJ4GCN-B0qoI_vp.js.br +0 -0
  382. package/payload/server/public/assets/chunk-ORNJ4GCN-B0qoI_vp.js.gz +0 -0
  383. package/payload/server/public/assets/chunk-OYMX7WX6-Bfzo53eI.js +231 -0
  384. package/payload/server/public/assets/chunk-OYMX7WX6-Bfzo53eI.js.br +0 -0
  385. package/payload/server/public/assets/chunk-OYMX7WX6-Bfzo53eI.js.gz +0 -0
  386. package/payload/server/public/assets/chunk-QZHKN3VN-A6b8ZN9i.js +1 -0
  387. package/payload/server/public/assets/chunk-QZHKN3VN-A6b8ZN9i.js.br +0 -0
  388. package/payload/server/public/assets/chunk-QZHKN3VN-A6b8ZN9i.js.gz +0 -0
  389. package/payload/server/public/assets/chunk-U2HBQHQK-DcqGPXEy.js +70 -0
  390. package/payload/server/public/assets/chunk-U2HBQHQK-DcqGPXEy.js.br +0 -0
  391. package/payload/server/public/assets/chunk-U2HBQHQK-DcqGPXEy.js.gz +0 -0
  392. package/payload/server/public/assets/chunk-X2U36JSP-DtRi7n5Z.js +1 -0
  393. package/payload/server/public/assets/chunk-X2U36JSP-DtRi7n5Z.js.br +0 -0
  394. package/payload/server/public/assets/chunk-X2U36JSP-DtRi7n5Z.js.gz +0 -0
  395. package/payload/server/public/assets/chunk-XPW4576I-DmuDCcY3.js +32 -0
  396. package/payload/server/public/assets/chunk-XPW4576I-DmuDCcY3.js.br +0 -0
  397. package/payload/server/public/assets/chunk-XPW4576I-DmuDCcY3.js.gz +0 -0
  398. package/payload/server/public/assets/chunk-YZCP3GAM-oKk9Gv_e.js +1 -0
  399. package/payload/server/public/assets/chunk-YZCP3GAM-oKk9Gv_e.js.br +0 -0
  400. package/payload/server/public/assets/chunk-YZCP3GAM-oKk9Gv_e.js.gz +0 -0
  401. package/payload/server/public/assets/chunk-ZZ45TVLE-teET41Yh.js +1 -0
  402. package/payload/server/public/assets/chunk-ZZ45TVLE-teET41Yh.js.br +0 -0
  403. package/payload/server/public/assets/chunk-ZZ45TVLE-teET41Yh.js.gz +0 -0
  404. package/payload/server/public/assets/classDiagram-6PBFFD2Q-CMXajSzA.js +1 -0
  405. package/payload/server/public/assets/classDiagram-6PBFFD2Q-CMXajSzA.js.br +0 -0
  406. package/payload/server/public/assets/classDiagram-6PBFFD2Q-CMXajSzA.js.gz +0 -0
  407. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-Cz5Kib2r.js +1 -0
  408. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-Cz5Kib2r.js.br +0 -0
  409. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-Cz5Kib2r.js.gz +0 -0
  410. package/payload/server/public/assets/clock-C5xE5p2I.js +1 -0
  411. package/payload/server/public/assets/clock-C5xE5p2I.js.br +0 -0
  412. package/payload/server/public/assets/clone-BORhq8On.js +1 -0
  413. package/payload/server/public/assets/clone-BORhq8On.js.br +0 -0
  414. package/payload/server/public/assets/copy-TkPJgllS.js +1 -0
  415. package/payload/server/public/assets/copy-TkPJgllS.js.br +0 -0
  416. package/payload/server/public/assets/copy-TkPJgllS.js.gz +0 -0
  417. package/payload/server/public/assets/cose-bilkent-S5V4N54A-D1xLpHGm.js +1 -0
  418. package/payload/server/public/assets/cose-bilkent-S5V4N54A-D1xLpHGm.js.br +0 -0
  419. package/payload/server/public/assets/cose-bilkent-S5V4N54A-D1xLpHGm.js.gz +0 -0
  420. package/payload/server/public/assets/dagre-KV5264BT-Byl65NKT.js +4 -0
  421. package/payload/server/public/assets/dagre-KV5264BT-Byl65NKT.js.br +0 -0
  422. package/payload/server/public/assets/dagre-KV5264BT-Byl65NKT.js.gz +0 -0
  423. package/payload/server/public/assets/dagre-ZzXkSDir.js +1 -0
  424. package/payload/server/public/assets/dagre-ZzXkSDir.js.br +0 -0
  425. package/payload/server/public/assets/dagre-ZzXkSDir.js.gz +0 -0
  426. package/payload/server/public/assets/data-Bhv0Pvfl.js +1 -0
  427. package/payload/server/public/assets/data-Bhv0Pvfl.js.br +0 -0
  428. package/payload/server/public/assets/data-Bhv0Pvfl.js.gz +0 -0
  429. package/payload/server/public/assets/diagram-5BDNPKRD-BFNkV5GK.js +10 -0
  430. package/payload/server/public/assets/diagram-5BDNPKRD-BFNkV5GK.js.br +0 -0
  431. package/payload/server/public/assets/diagram-5BDNPKRD-BFNkV5GK.js.gz +0 -0
  432. package/payload/server/public/assets/diagram-G4DWMVQ6-1n6vHXzR.js +24 -0
  433. package/payload/server/public/assets/diagram-G4DWMVQ6-1n6vHXzR.js.br +0 -0
  434. package/payload/server/public/assets/diagram-G4DWMVQ6-1n6vHXzR.js.gz +0 -0
  435. package/payload/server/public/assets/diagram-MMDJMWI5-D4QOzaw0.js +43 -0
  436. package/payload/server/public/assets/diagram-MMDJMWI5-D4QOzaw0.js.br +0 -0
  437. package/payload/server/public/assets/diagram-MMDJMWI5-D4QOzaw0.js.gz +0 -0
  438. package/payload/server/public/assets/diagram-TYMM5635-z8lBRsaV.js +24 -0
  439. package/payload/server/public/assets/diagram-TYMM5635-z8lBRsaV.js.br +0 -0
  440. package/payload/server/public/assets/diagram-TYMM5635-z8lBRsaV.js.gz +0 -0
  441. package/payload/server/public/assets/dist-DjYA4E4S.js +1 -0
  442. package/payload/server/public/assets/dist-DjYA4E4S.js.br +0 -0
  443. package/payload/server/public/assets/dist-DjYA4E4S.js.gz +0 -0
  444. package/payload/server/public/assets/erDiagram-SMLLAGMA-CXj3tbtX.js +85 -0
  445. package/payload/server/public/assets/erDiagram-SMLLAGMA-CXj3tbtX.js.br +0 -0
  446. package/payload/server/public/assets/erDiagram-SMLLAGMA-CXj3tbtX.js.gz +0 -0
  447. package/payload/server/public/assets/field-B490-evJ.js +1 -0
  448. package/payload/server/public/assets/field-B490-evJ.js.br +0 -0
  449. package/payload/server/public/assets/field-B490-evJ.js.gz +0 -0
  450. package/payload/server/public/assets/file-text-DyAL2DCh.js +1 -0
  451. package/payload/server/public/assets/file-text-DyAL2DCh.js.br +0 -0
  452. package/payload/server/public/assets/file-text-DyAL2DCh.js.gz +0 -0
  453. package/payload/server/public/assets/flatten-UdUTbm8v.js +1 -0
  454. package/payload/server/public/assets/flatten-UdUTbm8v.js.br +0 -0
  455. package/payload/server/public/assets/flatten-UdUTbm8v.js.gz +0 -0
  456. package/payload/server/public/assets/flowDiagram-DWJPFMVM-DnySI-I4.js +162 -0
  457. package/payload/server/public/assets/flowDiagram-DWJPFMVM-DnySI-I4.js.br +0 -0
  458. package/payload/server/public/assets/flowDiagram-DWJPFMVM-DnySI-I4.js.gz +0 -0
  459. package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-BIE2Q78F.js +292 -0
  460. package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-BIE2Q78F.js.br +0 -0
  461. package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-BIE2Q78F.js.gz +0 -0
  462. package/payload/server/public/assets/gitGraph-7Q5UKJZL-Ua2z-DNt.js +1 -0
  463. package/payload/server/public/assets/gitGraph-7Q5UKJZL-Ua2z-DNt.js.br +0 -0
  464. package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-B2RTRpyG.js +106 -0
  465. package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-B2RTRpyG.js.br +0 -0
  466. package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-B2RTRpyG.js.gz +0 -0
  467. package/payload/server/public/assets/graph-PiNIcCfX.js +51 -0
  468. package/payload/server/public/assets/graph-PiNIcCfX.js.br +0 -0
  469. package/payload/server/public/assets/graph-PiNIcCfX.js.gz +0 -0
  470. package/payload/server/public/assets/graph-labels-8jKFrLHn.js +1 -0
  471. package/payload/server/public/assets/graph-labels-8jKFrLHn.js.br +0 -0
  472. package/payload/server/public/assets/graph-labels-8jKFrLHn.js.gz +0 -0
  473. package/payload/server/public/assets/graphlib-SOh92ucm.js +1 -0
  474. package/payload/server/public/assets/graphlib-SOh92ucm.js.br +0 -0
  475. package/payload/server/public/assets/graphlib-SOh92ucm.js.gz +0 -0
  476. package/payload/server/public/assets/info-OMHHGYJF-CNYp42iX.js +1 -0
  477. package/payload/server/public/assets/info-OMHHGYJF-CNYp42iX.js.br +0 -0
  478. package/payload/server/public/assets/infoDiagram-42DDH7IO-DklHffYr.js +2 -0
  479. package/payload/server/public/assets/infoDiagram-42DDH7IO-DklHffYr.js.br +0 -0
  480. package/payload/server/public/assets/infoDiagram-42DDH7IO-DklHffYr.js.gz +0 -0
  481. package/payload/server/public/assets/isEmpty-DY_Xp9Na.js +1 -0
  482. package/payload/server/public/assets/isEmpty-DY_Xp9Na.js.br +0 -0
  483. package/payload/server/public/assets/isEmpty-DY_Xp9Na.js.gz +0 -0
  484. package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-KAC06i3M.js +70 -0
  485. package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-KAC06i3M.js.br +0 -0
  486. package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-KAC06i3M.js.gz +0 -0
  487. package/payload/server/public/assets/journeyDiagram-VCZTEJTY-cA37ob8S.js +139 -0
  488. package/payload/server/public/assets/journeyDiagram-VCZTEJTY-cA37ob8S.js.br +0 -0
  489. package/payload/server/public/assets/journeyDiagram-VCZTEJTY-cA37ob8S.js.gz +0 -0
  490. package/payload/server/public/assets/jsx-runtime-ChVh0xOm.css +1 -0
  491. package/payload/server/public/assets/jsx-runtime-ChVh0xOm.css.br +0 -0
  492. package/payload/server/public/assets/jsx-runtime-ChVh0xOm.css.gz +0 -0
  493. package/payload/server/public/assets/jsx-runtime-YcUntiud.js +9 -0
  494. package/payload/server/public/assets/jsx-runtime-YcUntiud.js.br +0 -0
  495. package/payload/server/public/assets/jsx-runtime-YcUntiud.js.gz +0 -0
  496. package/payload/server/public/assets/kanban-definition-6JOO6SKY-CBjL70wU.js +89 -0
  497. package/payload/server/public/assets/kanban-definition-6JOO6SKY-CBjL70wU.js.br +0 -0
  498. package/payload/server/public/assets/kanban-definition-6JOO6SKY-CBjL70wU.js.gz +0 -0
  499. package/payload/server/public/assets/line-K8229GLG.js +1 -0
  500. package/payload/server/public/assets/line-K8229GLG.js.br +0 -0
  501. package/payload/server/public/assets/line-K8229GLG.js.gz +0 -0
  502. package/payload/server/public/assets/linear-DeX7Wdt6.js +1 -0
  503. package/payload/server/public/assets/linear-DeX7Wdt6.js.br +0 -0
  504. package/payload/server/public/assets/linear-DeX7Wdt6.js.gz +0 -0
  505. package/payload/server/public/assets/mermaid-parser.core-OnNOAzPX.js +4 -0
  506. package/payload/server/public/assets/mermaid-parser.core-OnNOAzPX.js.br +0 -0
  507. package/payload/server/public/assets/mermaid-parser.core-OnNOAzPX.js.gz +0 -0
  508. package/payload/server/public/assets/mermaid.core-DA-Gezeo.js +11 -0
  509. package/payload/server/public/assets/mermaid.core-DA-Gezeo.js.br +0 -0
  510. package/payload/server/public/assets/mermaid.core-DA-Gezeo.js.gz +0 -0
  511. package/payload/server/public/assets/mindmap-definition-QFDTVHPH-C24TcDyS.js +96 -0
  512. package/payload/server/public/assets/mindmap-definition-QFDTVHPH-C24TcDyS.js.br +0 -0
  513. package/payload/server/public/assets/mindmap-definition-QFDTVHPH-C24TcDyS.js.gz +0 -0
  514. package/payload/server/public/assets/operator-DKGKGzrb.js +1 -0
  515. package/payload/server/public/assets/operator-DKGKGzrb.js.br +0 -0
  516. package/payload/server/public/assets/operator-DKGKGzrb.js.gz +0 -0
  517. package/payload/server/public/assets/ordinal-gnpqfIHn.js +1 -0
  518. package/payload/server/public/assets/ordinal-gnpqfIHn.js.br +0 -0
  519. package/payload/server/public/assets/ordinal-gnpqfIHn.js.gz +0 -0
  520. package/payload/server/public/assets/packet-4T2RLAQJ-B3ZAElsg.js +1 -0
  521. package/payload/server/public/assets/packet-4T2RLAQJ-B3ZAElsg.js.br +0 -0
  522. package/payload/server/public/assets/page-BU5vlY9Y.js +1 -0
  523. package/payload/server/public/assets/page-BU5vlY9Y.js.br +0 -0
  524. package/payload/server/public/assets/page-BU5vlY9Y.js.gz +0 -0
  525. package/payload/server/public/assets/page-DXz_K10G.js +32 -0
  526. package/payload/server/public/assets/page-DXz_K10G.js.br +0 -0
  527. package/payload/server/public/assets/page-DXz_K10G.js.gz +0 -0
  528. package/payload/server/public/assets/pdf-render-B5af7vu1.js +11 -0
  529. package/payload/server/public/assets/pdf-render-B5af7vu1.js.br +0 -0
  530. package/payload/server/public/assets/pdf-render-B5af7vu1.js.gz +0 -0
  531. package/payload/server/public/assets/pie-ZZUOXDRM-BWsRCj8p.js +1 -0
  532. package/payload/server/public/assets/pie-ZZUOXDRM-BWsRCj8p.js.br +0 -0
  533. package/payload/server/public/assets/pieDiagram-DEJITSTG-ChS9jalQ.js +30 -0
  534. package/payload/server/public/assets/pieDiagram-DEJITSTG-ChS9jalQ.js.br +0 -0
  535. package/payload/server/public/assets/pieDiagram-DEJITSTG-ChS9jalQ.js.gz +0 -0
  536. package/payload/server/public/assets/play-CmSyYrB6.js +1 -0
  537. package/payload/server/public/assets/play-CmSyYrB6.js.br +0 -0
  538. package/payload/server/public/assets/play-CmSyYrB6.js.gz +0 -0
  539. package/payload/server/public/assets/public-BmA3-jLj.js +1 -0
  540. package/payload/server/public/assets/public-BmA3-jLj.js.br +0 -0
  541. package/payload/server/public/assets/public-BmA3-jLj.js.gz +0 -0
  542. package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-BxLfRK0z.js +7 -0
  543. package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-BxLfRK0z.js.br +0 -0
  544. package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-BxLfRK0z.js.gz +0 -0
  545. package/payload/server/public/assets/radar-PYXPWWZC-Gxbt2rGT.js +1 -0
  546. package/payload/server/public/assets/radar-PYXPWWZC-Gxbt2rGT.js.br +0 -0
  547. package/payload/server/public/assets/reduce-BvezuHIe.js +1 -0
  548. package/payload/server/public/assets/reduce-BvezuHIe.js.br +0 -0
  549. package/payload/server/public/assets/reduce-BvezuHIe.js.gz +0 -0
  550. package/payload/server/public/assets/requirementDiagram-MS252O5E-CWy48VI3.js +84 -0
  551. package/payload/server/public/assets/requirementDiagram-MS252O5E-CWy48VI3.js.br +0 -0
  552. package/payload/server/public/assets/requirementDiagram-MS252O5E-CWy48VI3.js.gz +0 -0
  553. package/payload/server/public/assets/rotate-ccw-fCH0LSMq.js +1 -0
  554. package/payload/server/public/assets/rotate-ccw-fCH0LSMq.js.br +0 -0
  555. package/payload/server/public/assets/rotate-ccw-fCH0LSMq.js.gz +0 -0
  556. package/payload/server/public/assets/routines-BeFrmkls.js +2 -0
  557. package/payload/server/public/assets/routines-BeFrmkls.js.br +0 -0
  558. package/payload/server/public/assets/routines-BeFrmkls.js.gz +0 -0
  559. package/payload/server/public/assets/sankeyDiagram-XADWPNL6-BBCLEJA3.js +10 -0
  560. package/payload/server/public/assets/sankeyDiagram-XADWPNL6-BBCLEJA3.js.br +0 -0
  561. package/payload/server/public/assets/sankeyDiagram-XADWPNL6-BBCLEJA3.js.gz +0 -0
  562. package/payload/server/public/assets/sequenceDiagram-FGHM5R23-wu64F04G.js +157 -0
  563. package/payload/server/public/assets/sequenceDiagram-FGHM5R23-wu64F04G.js.br +0 -0
  564. package/payload/server/public/assets/sequenceDiagram-FGHM5R23-wu64F04G.js.gz +0 -0
  565. package/payload/server/public/assets/skills-mjls5HBa.js +1 -0
  566. package/payload/server/public/assets/skills-mjls5HBa.js.br +0 -0
  567. package/payload/server/public/assets/skills-mjls5HBa.js.gz +0 -0
  568. package/payload/server/public/assets/src-BvINb2fL.js +1 -0
  569. package/payload/server/public/assets/src-BvINb2fL.js.br +0 -0
  570. package/payload/server/public/assets/src-BvINb2fL.js.gz +0 -0
  571. package/payload/server/public/assets/stateDiagram-FHFEXIEX-Bq6BFFDC.js +1 -0
  572. package/payload/server/public/assets/stateDiagram-FHFEXIEX-Bq6BFFDC.js.br +0 -0
  573. package/payload/server/public/assets/stateDiagram-FHFEXIEX-Bq6BFFDC.js.gz +0 -0
  574. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-PxPsWt1r.js +1 -0
  575. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-PxPsWt1r.js.br +0 -0
  576. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-PxPsWt1r.js.gz +0 -0
  577. package/payload/server/public/assets/tasks-p6puHHD0.js +3 -0
  578. package/payload/server/public/assets/tasks-p6puHHD0.js.br +0 -0
  579. package/payload/server/public/assets/tasks-p6puHHD0.js.gz +0 -0
  580. package/payload/server/public/assets/timeline-definition-GMOUNBTQ-DTdvVZp-.js +120 -0
  581. package/payload/server/public/assets/timeline-definition-GMOUNBTQ-DTdvVZp-.js.br +0 -0
  582. package/payload/server/public/assets/timeline-definition-GMOUNBTQ-DTdvVZp-.js.gz +0 -0
  583. package/payload/server/public/assets/treeView-SZITEDCU-Bl-aPmE3.js +1 -0
  584. package/payload/server/public/assets/treeView-SZITEDCU-Bl-aPmE3.js.br +0 -0
  585. package/payload/server/public/assets/treemap-W4RFUUIX-CUxE8Ofg.js +1 -0
  586. package/payload/server/public/assets/treemap-W4RFUUIX-CUxE8Ofg.js.br +0 -0
  587. package/payload/server/public/assets/triangle-alert-CrZ1ewbd.js +1 -0
  588. package/payload/server/public/assets/triangle-alert-CrZ1ewbd.js.br +0 -0
  589. package/payload/server/public/assets/triangle-alert-CrZ1ewbd.js.gz +0 -0
  590. package/payload/server/public/assets/useCopyFeedback-zOQNrIwd.js +1 -0
  591. package/payload/server/public/assets/useCopyFeedback-zOQNrIwd.js.br +0 -0
  592. package/payload/server/public/assets/useCopyFeedback-zOQNrIwd.js.gz +0 -0
  593. package/payload/server/public/assets/useMediaQuery-BmG090FR.js +6 -0
  594. package/payload/server/public/assets/useMediaQuery-BmG090FR.js.br +0 -0
  595. package/payload/server/public/assets/useMediaQuery-BmG090FR.js.gz +0 -0
  596. package/payload/server/public/assets/useVoiceRecorder-9pf6FFJ-.js +2 -0
  597. package/payload/server/public/assets/useVoiceRecorder-9pf6FFJ-.js.br +0 -0
  598. package/payload/server/public/assets/useVoiceRecorder-9pf6FFJ-.js.gz +0 -0
  599. package/payload/server/public/assets/vennDiagram-DHZGUBPP-CigqIBdl.js +34 -0
  600. package/payload/server/public/assets/vennDiagram-DHZGUBPP-CigqIBdl.js.br +0 -0
  601. package/payload/server/public/assets/vennDiagram-DHZGUBPP-CigqIBdl.js.gz +0 -0
  602. package/payload/server/public/assets/wardley-RL74JXVD-DPB13D22.js +1 -0
  603. package/payload/server/public/assets/wardley-RL74JXVD-DPB13D22.js.br +0 -0
  604. package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-VhV1plUD.js +20 -0
  605. package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-VhV1plUD.js.br +0 -0
  606. package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-VhV1plUD.js.gz +0 -0
  607. package/payload/server/public/assets/wrench-k4GYG5rc.js +1 -0
  608. package/payload/server/public/assets/wrench-k4GYG5rc.js.br +0 -0
  609. package/payload/server/public/assets/wrench-k4GYG5rc.js.gz +0 -0
  610. package/payload/server/public/assets/xychartDiagram-5P7HB3ND-DGkkNLZt.js +7 -0
  611. package/payload/server/public/assets/xychartDiagram-5P7HB3ND-DGkkNLZt.js.br +0 -0
  612. package/payload/server/public/assets/xychartDiagram-5P7HB3ND-DGkkNLZt.js.gz +0 -0
  613. package/payload/server/public/browser.html +6 -6
  614. package/payload/server/public/calendar.html +9 -9
  615. package/payload/server/public/chat.html +16 -16
  616. package/payload/server/public/data.html +15 -15
  617. package/payload/server/public/field.html +4 -4
  618. package/payload/server/public/graph.html +11 -11
  619. package/payload/server/public/index.html +17 -17
  620. package/payload/server/public/operator.html +17 -17
  621. package/payload/server/public/public.html +16 -16
  622. package/payload/server/public/routines.html +10 -10
  623. package/payload/server/public/skills.html +7 -7
  624. package/payload/server/public/tasks.html +8 -8
  625. package/payload/server/server.js +2894 -1985
  626. package/payload/platform/lib/dispatch-read/src/config.d.ts +0 -26
  627. package/payload/platform/lib/dispatch-read/src/types.d.ts +0 -143
  628. package/payload/server/public/assets/AdminLoginScreens-Dp6k1XgD.js +0 -1
  629. package/payload/server/public/assets/AdminLoginScreens-Dp6k1XgD.js.br +0 -0
  630. package/payload/server/public/assets/AdminLoginScreens-Dp6k1XgD.js.gz +0 -0
  631. package/payload/server/public/assets/AdminShell-D-wB90c3.js +0 -3
  632. package/payload/server/public/assets/AdminShell-D-wB90c3.js.br +0 -0
  633. package/payload/server/public/assets/AdminShell-D-wB90c3.js.gz +0 -0
  634. package/payload/server/public/assets/activity-BJxhblz-.js +0 -1
  635. package/payload/server/public/assets/activity-BJxhblz-.js.br +0 -0
  636. package/payload/server/public/assets/activity-BJxhblz-.js.gz +0 -0
  637. package/payload/server/public/assets/admin-DzEi8shs.js +0 -1
  638. package/payload/server/public/assets/admin-DzEi8shs.js.br +0 -0
  639. package/payload/server/public/assets/admin-DzEi8shs.js.gz +0 -0
  640. package/payload/server/public/assets/agents-DTL8kjfD.js +0 -1
  641. package/payload/server/public/assets/agents-DTL8kjfD.js.br +0 -0
  642. package/payload/server/public/assets/agents-DTL8kjfD.js.gz +0 -0
  643. package/payload/server/public/assets/arc-CWXBKNZd.js +0 -1
  644. package/payload/server/public/assets/arc-CWXBKNZd.js.br +0 -0
  645. package/payload/server/public/assets/arc-CWXBKNZd.js.gz +0 -0
  646. package/payload/server/public/assets/architecture-YZFGNWBL-CIL4I0fc.js +0 -1
  647. package/payload/server/public/assets/architecture-YZFGNWBL-CIL4I0fc.js.br +0 -0
  648. package/payload/server/public/assets/architectureDiagram-Q4EWVU46-C-KPMyG4.js +0 -36
  649. package/payload/server/public/assets/architectureDiagram-Q4EWVU46-C-KPMyG4.js.br +0 -0
  650. package/payload/server/public/assets/architectureDiagram-Q4EWVU46-C-KPMyG4.js.gz +0 -0
  651. package/payload/server/public/assets/blockDiagram-DXYQGD6D-DkYbV9Sf.js +0 -132
  652. package/payload/server/public/assets/blockDiagram-DXYQGD6D-DkYbV9Sf.js.br +0 -0
  653. package/payload/server/public/assets/blockDiagram-DXYQGD6D-DkYbV9Sf.js.gz +0 -0
  654. package/payload/server/public/assets/browser-UZp75zhx.js +0 -1
  655. package/payload/server/public/assets/browser-UZp75zhx.js.br +0 -0
  656. package/payload/server/public/assets/browser-UZp75zhx.js.gz +0 -0
  657. package/payload/server/public/assets/c4Diagram-AHTNJAMY-EYW4kdlx.js +0 -10
  658. package/payload/server/public/assets/c4Diagram-AHTNJAMY-EYW4kdlx.js.br +0 -0
  659. package/payload/server/public/assets/c4Diagram-AHTNJAMY-EYW4kdlx.js.gz +0 -0
  660. package/payload/server/public/assets/calendar-Dfo0O2K_.js +0 -1
  661. package/payload/server/public/assets/calendar-Dfo0O2K_.js.br +0 -0
  662. package/payload/server/public/assets/calendar-Dfo0O2K_.js.gz +0 -0
  663. package/payload/server/public/assets/channel-CbHmRjy_.js +0 -1
  664. package/payload/server/public/assets/channel-CbHmRjy_.js.br +0 -0
  665. package/payload/server/public/assets/chat-ByJAvEWZ.js +0 -1
  666. package/payload/server/public/assets/chat-ByJAvEWZ.js.br +0 -0
  667. package/payload/server/public/assets/chat-ByJAvEWZ.js.gz +0 -0
  668. package/payload/server/public/assets/chevron-left-iG7sYNm7.js +0 -1
  669. package/payload/server/public/assets/chevron-left-iG7sYNm7.js.br +0 -0
  670. package/payload/server/public/assets/chunk-2KRD3SAO-CmAF1UmH.js +0 -1
  671. package/payload/server/public/assets/chunk-2KRD3SAO-CmAF1UmH.js.br +0 -0
  672. package/payload/server/public/assets/chunk-2KRD3SAO-CmAF1UmH.js.gz +0 -0
  673. package/payload/server/public/assets/chunk-336JU56O-CyhmJeMM.js +0 -2
  674. package/payload/server/public/assets/chunk-336JU56O-CyhmJeMM.js.br +0 -0
  675. package/payload/server/public/assets/chunk-336JU56O-CyhmJeMM.js.gz +0 -0
  676. package/payload/server/public/assets/chunk-426QAEUC-C2tnHCM7.js +0 -1
  677. package/payload/server/public/assets/chunk-426QAEUC-C2tnHCM7.js.br +0 -0
  678. package/payload/server/public/assets/chunk-426QAEUC-C2tnHCM7.js.gz +0 -0
  679. package/payload/server/public/assets/chunk-4BX2VUAB-DCzC40-Y.js +0 -1
  680. package/payload/server/public/assets/chunk-4BX2VUAB-DCzC40-Y.js.br +0 -0
  681. package/payload/server/public/assets/chunk-4BX2VUAB-DCzC40-Y.js.gz +0 -0
  682. package/payload/server/public/assets/chunk-4TB4RGXK-D9BXrSA_.js +0 -206
  683. package/payload/server/public/assets/chunk-4TB4RGXK-D9BXrSA_.js.br +0 -0
  684. package/payload/server/public/assets/chunk-4TB4RGXK-D9BXrSA_.js.gz +0 -0
  685. package/payload/server/public/assets/chunk-55IACEB6-BwXC-qTZ.js +0 -1
  686. package/payload/server/public/assets/chunk-55IACEB6-BwXC-qTZ.js.br +0 -0
  687. package/payload/server/public/assets/chunk-55IACEB6-BwXC-qTZ.js.gz +0 -0
  688. package/payload/server/public/assets/chunk-5FUZZQ4R-De7QtXxM.js +0 -62
  689. package/payload/server/public/assets/chunk-5FUZZQ4R-De7QtXxM.js.br +0 -0
  690. package/payload/server/public/assets/chunk-5FUZZQ4R-De7QtXxM.js.gz +0 -0
  691. package/payload/server/public/assets/chunk-5PVQY5BW-B5tsJiCq.js +0 -2
  692. package/payload/server/public/assets/chunk-5PVQY5BW-B5tsJiCq.js.br +0 -0
  693. package/payload/server/public/assets/chunk-5PVQY5BW-B5tsJiCq.js.gz +0 -0
  694. package/payload/server/public/assets/chunk-67CJDMHE-BjTh9STV.js +0 -1
  695. package/payload/server/public/assets/chunk-67CJDMHE-BjTh9STV.js.br +0 -0
  696. package/payload/server/public/assets/chunk-67CJDMHE-BjTh9STV.js.gz +0 -0
  697. package/payload/server/public/assets/chunk-7N4EOEYR-91klRswn.js +0 -1
  698. package/payload/server/public/assets/chunk-7N4EOEYR-91klRswn.js.br +0 -0
  699. package/payload/server/public/assets/chunk-7N4EOEYR-91klRswn.js.gz +0 -0
  700. package/payload/server/public/assets/chunk-AA7GKIK3-XFPGEoBu.js +0 -1
  701. package/payload/server/public/assets/chunk-AA7GKIK3-XFPGEoBu.js.br +0 -3
  702. package/payload/server/public/assets/chunk-AA7GKIK3-XFPGEoBu.js.gz +0 -0
  703. package/payload/server/public/assets/chunk-BSJP7CBP-B7wgMyWq.js +0 -1
  704. package/payload/server/public/assets/chunk-BSJP7CBP-B7wgMyWq.js.br +0 -0
  705. package/payload/server/public/assets/chunk-BSJP7CBP-B7wgMyWq.js.gz +0 -0
  706. package/payload/server/public/assets/chunk-CIAEETIT-WPy9vcOo.js +0 -1
  707. package/payload/server/public/assets/chunk-CIAEETIT-WPy9vcOo.js.br +0 -0
  708. package/payload/server/public/assets/chunk-CIAEETIT-WPy9vcOo.js.gz +0 -0
  709. package/payload/server/public/assets/chunk-EDXVE4YY-D_2JIFFG.js +0 -1
  710. package/payload/server/public/assets/chunk-EDXVE4YY-D_2JIFFG.js.br +0 -0
  711. package/payload/server/public/assets/chunk-EDXVE4YY-D_2JIFFG.js.gz +0 -0
  712. package/payload/server/public/assets/chunk-ENJZ2VHE-xORReRt0.js +0 -10
  713. package/payload/server/public/assets/chunk-ENJZ2VHE-xORReRt0.js.br +0 -0
  714. package/payload/server/public/assets/chunk-ENJZ2VHE-xORReRt0.js.gz +0 -0
  715. package/payload/server/public/assets/chunk-FMBD7UC4-BZsDu4nl.js +0 -15
  716. package/payload/server/public/assets/chunk-FMBD7UC4-BZsDu4nl.js.br +0 -0
  717. package/payload/server/public/assets/chunk-FMBD7UC4-BZsDu4nl.js.gz +0 -0
  718. package/payload/server/public/assets/chunk-FOC6F5B3-QzUp8wXX.js +0 -1
  719. package/payload/server/public/assets/chunk-FOC6F5B3-QzUp8wXX.js.br +0 -0
  720. package/payload/server/public/assets/chunk-FOC6F5B3-QzUp8wXX.js.gz +0 -0
  721. package/payload/server/public/assets/chunk-ICPOFSXX-B64S7i7x.js +0 -122
  722. package/payload/server/public/assets/chunk-ICPOFSXX-B64S7i7x.js.br +0 -0
  723. package/payload/server/public/assets/chunk-ICPOFSXX-B64S7i7x.js.gz +0 -0
  724. package/payload/server/public/assets/chunk-K5T4RW27-DzPc6X1_.js +0 -94
  725. package/payload/server/public/assets/chunk-K5T4RW27-DzPc6X1_.js.br +0 -0
  726. package/payload/server/public/assets/chunk-K5T4RW27-DzPc6X1_.js.gz +0 -0
  727. package/payload/server/public/assets/chunk-KGLVRYIC-A2rPnD7k.js +0 -1
  728. package/payload/server/public/assets/chunk-KGLVRYIC-A2rPnD7k.js.br +0 -1
  729. package/payload/server/public/assets/chunk-KGLVRYIC-A2rPnD7k.js.gz +0 -0
  730. package/payload/server/public/assets/chunk-LIHQZDEY-CaWX327m.js +0 -1
  731. package/payload/server/public/assets/chunk-LIHQZDEY-CaWX327m.js.br +0 -0
  732. package/payload/server/public/assets/chunk-LIHQZDEY-CaWX327m.js.gz +0 -0
  733. package/payload/server/public/assets/chunk-ORNJ4GCN-zrWhdmnc.js +0 -1
  734. package/payload/server/public/assets/chunk-ORNJ4GCN-zrWhdmnc.js.br +0 -0
  735. package/payload/server/public/assets/chunk-ORNJ4GCN-zrWhdmnc.js.gz +0 -0
  736. package/payload/server/public/assets/chunk-OYMX7WX6-B_2qQir6.js +0 -231
  737. package/payload/server/public/assets/chunk-OYMX7WX6-B_2qQir6.js.br +0 -0
  738. package/payload/server/public/assets/chunk-OYMX7WX6-B_2qQir6.js.gz +0 -0
  739. package/payload/server/public/assets/chunk-QZHKN3VN-BzgrgCTo.js +0 -1
  740. package/payload/server/public/assets/chunk-QZHKN3VN-BzgrgCTo.js.br +0 -0
  741. package/payload/server/public/assets/chunk-QZHKN3VN-BzgrgCTo.js.gz +0 -0
  742. package/payload/server/public/assets/chunk-U2HBQHQK-B-IYgxsc.js +0 -70
  743. package/payload/server/public/assets/chunk-U2HBQHQK-B-IYgxsc.js.br +0 -0
  744. package/payload/server/public/assets/chunk-U2HBQHQK-B-IYgxsc.js.gz +0 -0
  745. package/payload/server/public/assets/chunk-X2U36JSP-Y9Y1_EuG.js +0 -1
  746. package/payload/server/public/assets/chunk-X2U36JSP-Y9Y1_EuG.js.br +0 -0
  747. package/payload/server/public/assets/chunk-X2U36JSP-Y9Y1_EuG.js.gz +0 -0
  748. package/payload/server/public/assets/chunk-XPW4576I-C-6yETG_.js +0 -32
  749. package/payload/server/public/assets/chunk-XPW4576I-C-6yETG_.js.br +0 -0
  750. package/payload/server/public/assets/chunk-XPW4576I-C-6yETG_.js.gz +0 -0
  751. package/payload/server/public/assets/chunk-YZCP3GAM-KAuQIU5n.js +0 -1
  752. package/payload/server/public/assets/chunk-YZCP3GAM-KAuQIU5n.js.br +0 -0
  753. package/payload/server/public/assets/chunk-YZCP3GAM-KAuQIU5n.js.gz +0 -0
  754. package/payload/server/public/assets/chunk-ZZ45TVLE-BJcH3KDH.js +0 -1
  755. package/payload/server/public/assets/chunk-ZZ45TVLE-BJcH3KDH.js.br +0 -0
  756. package/payload/server/public/assets/chunk-ZZ45TVLE-BJcH3KDH.js.gz +0 -0
  757. package/payload/server/public/assets/classDiagram-6PBFFD2Q-BxvqeBEj.js +0 -1
  758. package/payload/server/public/assets/classDiagram-6PBFFD2Q-BxvqeBEj.js.br +0 -0
  759. package/payload/server/public/assets/classDiagram-6PBFFD2Q-BxvqeBEj.js.gz +0 -0
  760. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-R3-NzMRG.js +0 -1
  761. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-R3-NzMRG.js.br +0 -0
  762. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-R3-NzMRG.js.gz +0 -0
  763. package/payload/server/public/assets/clock-xSs0UF10.js +0 -1
  764. package/payload/server/public/assets/clock-xSs0UF10.js.br +0 -0
  765. package/payload/server/public/assets/clock-xSs0UF10.js.gz +0 -0
  766. package/payload/server/public/assets/clone-QdOE5SXR.js +0 -1
  767. package/payload/server/public/assets/copy-CGI2jioK.js +0 -1
  768. package/payload/server/public/assets/copy-CGI2jioK.js.br +0 -0
  769. package/payload/server/public/assets/copy-CGI2jioK.js.gz +0 -0
  770. package/payload/server/public/assets/cose-bilkent-S5V4N54A-CcXj8vHa.js +0 -1
  771. package/payload/server/public/assets/cose-bilkent-S5V4N54A-CcXj8vHa.js.br +0 -0
  772. package/payload/server/public/assets/cose-bilkent-S5V4N54A-CcXj8vHa.js.gz +0 -0
  773. package/payload/server/public/assets/dagre-DOtq9kYX.js +0 -1
  774. package/payload/server/public/assets/dagre-DOtq9kYX.js.br +0 -0
  775. package/payload/server/public/assets/dagre-DOtq9kYX.js.gz +0 -0
  776. package/payload/server/public/assets/dagre-KV5264BT-BOhQs4rS.js +0 -4
  777. package/payload/server/public/assets/dagre-KV5264BT-BOhQs4rS.js.br +0 -0
  778. package/payload/server/public/assets/dagre-KV5264BT-BOhQs4rS.js.gz +0 -0
  779. package/payload/server/public/assets/data-dvwK4BcP.js +0 -1
  780. package/payload/server/public/assets/data-dvwK4BcP.js.br +0 -0
  781. package/payload/server/public/assets/data-dvwK4BcP.js.gz +0 -0
  782. package/payload/server/public/assets/diagram-5BDNPKRD-CqJFt5ZM.js +0 -10
  783. package/payload/server/public/assets/diagram-5BDNPKRD-CqJFt5ZM.js.br +0 -0
  784. package/payload/server/public/assets/diagram-5BDNPKRD-CqJFt5ZM.js.gz +0 -0
  785. package/payload/server/public/assets/diagram-G4DWMVQ6-WQIyAZMn.js +0 -24
  786. package/payload/server/public/assets/diagram-G4DWMVQ6-WQIyAZMn.js.br +0 -0
  787. package/payload/server/public/assets/diagram-G4DWMVQ6-WQIyAZMn.js.gz +0 -0
  788. package/payload/server/public/assets/diagram-MMDJMWI5-jcKc4a2w.js +0 -43
  789. package/payload/server/public/assets/diagram-MMDJMWI5-jcKc4a2w.js.br +0 -0
  790. package/payload/server/public/assets/diagram-MMDJMWI5-jcKc4a2w.js.gz +0 -0
  791. package/payload/server/public/assets/diagram-TYMM5635-Bbt2KuWe.js +0 -24
  792. package/payload/server/public/assets/diagram-TYMM5635-Bbt2KuWe.js.br +0 -0
  793. package/payload/server/public/assets/diagram-TYMM5635-Bbt2KuWe.js.gz +0 -0
  794. package/payload/server/public/assets/dispatch-Dx9-ty1K.js +0 -1
  795. package/payload/server/public/assets/dispatch-Dx9-ty1K.js.br +0 -0
  796. package/payload/server/public/assets/dispatch-Dx9-ty1K.js.gz +0 -0
  797. package/payload/server/public/assets/dist-9RiN6lky.js +0 -1
  798. package/payload/server/public/assets/dist-9RiN6lky.js.br +0 -0
  799. package/payload/server/public/assets/dist-9RiN6lky.js.gz +0 -0
  800. package/payload/server/public/assets/erDiagram-SMLLAGMA-BBm6azPJ.js +0 -85
  801. package/payload/server/public/assets/erDiagram-SMLLAGMA-BBm6azPJ.js.br +0 -0
  802. package/payload/server/public/assets/erDiagram-SMLLAGMA-BBm6azPJ.js.gz +0 -0
  803. package/payload/server/public/assets/field-D-P6CsWA.js +0 -1
  804. package/payload/server/public/assets/field-D-P6CsWA.js.br +0 -0
  805. package/payload/server/public/assets/field-D-P6CsWA.js.gz +0 -0
  806. package/payload/server/public/assets/file-text-RWintp9q.js +0 -1
  807. package/payload/server/public/assets/file-text-RWintp9q.js.br +0 -0
  808. package/payload/server/public/assets/file-text-RWintp9q.js.gz +0 -0
  809. package/payload/server/public/assets/flatten-BurGKeIy.js +0 -1
  810. package/payload/server/public/assets/flatten-BurGKeIy.js.br +0 -0
  811. package/payload/server/public/assets/flatten-BurGKeIy.js.gz +0 -0
  812. package/payload/server/public/assets/flowDiagram-DWJPFMVM-_r45DYJ8.js +0 -162
  813. package/payload/server/public/assets/flowDiagram-DWJPFMVM-_r45DYJ8.js.br +0 -0
  814. package/payload/server/public/assets/flowDiagram-DWJPFMVM-_r45DYJ8.js.gz +0 -0
  815. package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-Bjgj9Bej.js +0 -292
  816. package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-Bjgj9Bej.js.br +0 -0
  817. package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-Bjgj9Bej.js.gz +0 -0
  818. package/payload/server/public/assets/gitGraph-7Q5UKJZL-DdbK59od.js +0 -1
  819. package/payload/server/public/assets/gitGraph-7Q5UKJZL-DdbK59od.js.br +0 -0
  820. package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-DTRdhGJA.js +0 -106
  821. package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-DTRdhGJA.js.br +0 -0
  822. package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-DTRdhGJA.js.gz +0 -0
  823. package/payload/server/public/assets/graph-CpBlfYrJ.js +0 -51
  824. package/payload/server/public/assets/graph-CpBlfYrJ.js.br +0 -0
  825. package/payload/server/public/assets/graph-CpBlfYrJ.js.gz +0 -0
  826. package/payload/server/public/assets/graph-labels-BOMyPppX.js +0 -1
  827. package/payload/server/public/assets/graph-labels-BOMyPppX.js.br +0 -0
  828. package/payload/server/public/assets/graph-labels-BOMyPppX.js.gz +0 -0
  829. package/payload/server/public/assets/graphlib-DT4h6-4N.js +0 -1
  830. package/payload/server/public/assets/graphlib-DT4h6-4N.js.br +0 -0
  831. package/payload/server/public/assets/graphlib-DT4h6-4N.js.gz +0 -0
  832. package/payload/server/public/assets/info-OMHHGYJF-BR8gm0wj.js +0 -1
  833. package/payload/server/public/assets/info-OMHHGYJF-BR8gm0wj.js.br +0 -0
  834. package/payload/server/public/assets/infoDiagram-42DDH7IO-Cr3Efss6.js +0 -2
  835. package/payload/server/public/assets/infoDiagram-42DDH7IO-Cr3Efss6.js.br +0 -0
  836. package/payload/server/public/assets/infoDiagram-42DDH7IO-Cr3Efss6.js.gz +0 -0
  837. package/payload/server/public/assets/isEmpty-C5v0-EY7.js +0 -1
  838. package/payload/server/public/assets/isEmpty-C5v0-EY7.js.br +0 -0
  839. package/payload/server/public/assets/isEmpty-C5v0-EY7.js.gz +0 -0
  840. package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-BklHzVHm.js +0 -70
  841. package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-BklHzVHm.js.br +0 -0
  842. package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-BklHzVHm.js.gz +0 -0
  843. package/payload/server/public/assets/journeyDiagram-VCZTEJTY-Ckxx2CmV.js +0 -139
  844. package/payload/server/public/assets/journeyDiagram-VCZTEJTY-Ckxx2CmV.js.br +0 -0
  845. package/payload/server/public/assets/journeyDiagram-VCZTEJTY-Ckxx2CmV.js.gz +0 -0
  846. package/payload/server/public/assets/jsx-runtime-5lmxFBIw.js +0 -9
  847. package/payload/server/public/assets/jsx-runtime-5lmxFBIw.js.br +0 -0
  848. package/payload/server/public/assets/jsx-runtime-5lmxFBIw.js.gz +0 -0
  849. package/payload/server/public/assets/jsx-runtime-DxsQ5Y-z.css +0 -1
  850. package/payload/server/public/assets/jsx-runtime-DxsQ5Y-z.css.br +0 -0
  851. package/payload/server/public/assets/jsx-runtime-DxsQ5Y-z.css.gz +0 -0
  852. package/payload/server/public/assets/kanban-definition-6JOO6SKY-BLELXpqn.js +0 -89
  853. package/payload/server/public/assets/kanban-definition-6JOO6SKY-BLELXpqn.js.br +0 -0
  854. package/payload/server/public/assets/kanban-definition-6JOO6SKY-BLELXpqn.js.gz +0 -0
  855. package/payload/server/public/assets/line-BkI5icOY.js +0 -1
  856. package/payload/server/public/assets/line-BkI5icOY.js.br +0 -0
  857. package/payload/server/public/assets/line-BkI5icOY.js.gz +0 -0
  858. package/payload/server/public/assets/linear-B64ANRVs.js +0 -1
  859. package/payload/server/public/assets/linear-B64ANRVs.js.br +0 -0
  860. package/payload/server/public/assets/linear-B64ANRVs.js.gz +0 -0
  861. package/payload/server/public/assets/mermaid-parser.core-qXPKkdJe.js +0 -4
  862. package/payload/server/public/assets/mermaid-parser.core-qXPKkdJe.js.br +0 -0
  863. package/payload/server/public/assets/mermaid-parser.core-qXPKkdJe.js.gz +0 -0
  864. package/payload/server/public/assets/mermaid.core-BMsz65Wy.js +0 -11
  865. package/payload/server/public/assets/mermaid.core-BMsz65Wy.js.br +0 -0
  866. package/payload/server/public/assets/mermaid.core-BMsz65Wy.js.gz +0 -0
  867. package/payload/server/public/assets/mindmap-definition-QFDTVHPH-DhFTS2sx.js +0 -96
  868. package/payload/server/public/assets/mindmap-definition-QFDTVHPH-DhFTS2sx.js.br +0 -0
  869. package/payload/server/public/assets/mindmap-definition-QFDTVHPH-DhFTS2sx.js.gz +0 -0
  870. package/payload/server/public/assets/operator-DFgW6GiH.js +0 -1
  871. package/payload/server/public/assets/operator-DFgW6GiH.js.br +0 -0
  872. package/payload/server/public/assets/operator-DFgW6GiH.js.gz +0 -0
  873. package/payload/server/public/assets/ordinal-CJ_pL32Z.js +0 -1
  874. package/payload/server/public/assets/ordinal-CJ_pL32Z.js.br +0 -0
  875. package/payload/server/public/assets/ordinal-CJ_pL32Z.js.gz +0 -0
  876. package/payload/server/public/assets/packet-4T2RLAQJ-B31PbAeA.js +0 -1
  877. package/payload/server/public/assets/packet-4T2RLAQJ-B31PbAeA.js.br +0 -0
  878. package/payload/server/public/assets/page-BRShHSH0.js +0 -1
  879. package/payload/server/public/assets/page-BRShHSH0.js.br +0 -0
  880. package/payload/server/public/assets/page-BRShHSH0.js.gz +0 -0
  881. package/payload/server/public/assets/page-BbBCu9iP.js +0 -32
  882. package/payload/server/public/assets/page-BbBCu9iP.js.br +0 -0
  883. package/payload/server/public/assets/page-BbBCu9iP.js.gz +0 -0
  884. package/payload/server/public/assets/pdf-render-ynIPXfRA.js +0 -11
  885. package/payload/server/public/assets/pdf-render-ynIPXfRA.js.br +0 -0
  886. package/payload/server/public/assets/pdf-render-ynIPXfRA.js.gz +0 -0
  887. package/payload/server/public/assets/pie-ZZUOXDRM-BbSc1VXl.js +0 -1
  888. package/payload/server/public/assets/pie-ZZUOXDRM-BbSc1VXl.js.br +0 -0
  889. package/payload/server/public/assets/pieDiagram-DEJITSTG-B2TxkbHK.js +0 -30
  890. package/payload/server/public/assets/pieDiagram-DEJITSTG-B2TxkbHK.js.br +0 -0
  891. package/payload/server/public/assets/pieDiagram-DEJITSTG-B2TxkbHK.js.gz +0 -0
  892. package/payload/server/public/assets/play-BJxUaf6-.js +0 -1
  893. package/payload/server/public/assets/play-BJxUaf6-.js.br +0 -0
  894. package/payload/server/public/assets/play-BJxUaf6-.js.gz +0 -0
  895. package/payload/server/public/assets/public-DkObqkzL.js +0 -1
  896. package/payload/server/public/assets/public-DkObqkzL.js.br +0 -0
  897. package/payload/server/public/assets/public-DkObqkzL.js.gz +0 -0
  898. package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-GsMxIJuS.js +0 -7
  899. package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-GsMxIJuS.js.br +0 -0
  900. package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-GsMxIJuS.js.gz +0 -0
  901. package/payload/server/public/assets/radar-PYXPWWZC-B0La8_mZ.js +0 -1
  902. package/payload/server/public/assets/radar-PYXPWWZC-B0La8_mZ.js.br +0 -0
  903. package/payload/server/public/assets/reduce-CfkEiHc9.js +0 -1
  904. package/payload/server/public/assets/reduce-CfkEiHc9.js.br +0 -0
  905. package/payload/server/public/assets/reduce-CfkEiHc9.js.gz +0 -0
  906. package/payload/server/public/assets/requirementDiagram-MS252O5E-DqNprm-1.js +0 -84
  907. package/payload/server/public/assets/requirementDiagram-MS252O5E-DqNprm-1.js.br +0 -0
  908. package/payload/server/public/assets/requirementDiagram-MS252O5E-DqNprm-1.js.gz +0 -0
  909. package/payload/server/public/assets/rotate-ccw-DgMO69nh.js +0 -1
  910. package/payload/server/public/assets/rotate-ccw-DgMO69nh.js.br +0 -0
  911. package/payload/server/public/assets/rotate-ccw-DgMO69nh.js.gz +0 -0
  912. package/payload/server/public/assets/routines-D9kvg_Xu.js +0 -2
  913. package/payload/server/public/assets/routines-D9kvg_Xu.js.br +0 -0
  914. package/payload/server/public/assets/routines-D9kvg_Xu.js.gz +0 -0
  915. package/payload/server/public/assets/sankeyDiagram-XADWPNL6-B-kRuiuz.js +0 -10
  916. package/payload/server/public/assets/sankeyDiagram-XADWPNL6-B-kRuiuz.js.br +0 -0
  917. package/payload/server/public/assets/sankeyDiagram-XADWPNL6-B-kRuiuz.js.gz +0 -0
  918. package/payload/server/public/assets/sequenceDiagram-FGHM5R23-DEhL9g3K.js +0 -157
  919. package/payload/server/public/assets/sequenceDiagram-FGHM5R23-DEhL9g3K.js.br +0 -0
  920. package/payload/server/public/assets/sequenceDiagram-FGHM5R23-DEhL9g3K.js.gz +0 -0
  921. package/payload/server/public/assets/skills-l5I9HZ3D.js +0 -1
  922. package/payload/server/public/assets/skills-l5I9HZ3D.js.br +0 -0
  923. package/payload/server/public/assets/skills-l5I9HZ3D.js.gz +0 -0
  924. package/payload/server/public/assets/src-BrAT6wKv.js +0 -1
  925. package/payload/server/public/assets/src-BrAT6wKv.js.br +0 -0
  926. package/payload/server/public/assets/src-BrAT6wKv.js.gz +0 -0
  927. package/payload/server/public/assets/stateDiagram-FHFEXIEX-Q-g6BHdz.js +0 -1
  928. package/payload/server/public/assets/stateDiagram-FHFEXIEX-Q-g6BHdz.js.br +0 -0
  929. package/payload/server/public/assets/stateDiagram-FHFEXIEX-Q-g6BHdz.js.gz +0 -0
  930. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-ssRWItVj.js +0 -1
  931. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-ssRWItVj.js.br +0 -0
  932. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-ssRWItVj.js.gz +0 -0
  933. package/payload/server/public/assets/tasks-C2qJMv6i.js +0 -3
  934. package/payload/server/public/assets/tasks-C2qJMv6i.js.br +0 -0
  935. package/payload/server/public/assets/tasks-C2qJMv6i.js.gz +0 -0
  936. package/payload/server/public/assets/timeline-definition-GMOUNBTQ-B3-52q4Q.js +0 -120
  937. package/payload/server/public/assets/timeline-definition-GMOUNBTQ-B3-52q4Q.js.br +0 -0
  938. package/payload/server/public/assets/timeline-definition-GMOUNBTQ-B3-52q4Q.js.gz +0 -0
  939. package/payload/server/public/assets/treeView-SZITEDCU-BBR3hu9P.js +0 -1
  940. package/payload/server/public/assets/treeView-SZITEDCU-BBR3hu9P.js.br +0 -0
  941. package/payload/server/public/assets/treemap-W4RFUUIX-wSQMuzBT.js +0 -1
  942. package/payload/server/public/assets/treemap-W4RFUUIX-wSQMuzBT.js.br +0 -0
  943. package/payload/server/public/assets/triangle-alert-BnC67uSs.js +0 -1
  944. package/payload/server/public/assets/triangle-alert-BnC67uSs.js.br +0 -0
  945. package/payload/server/public/assets/triangle-alert-BnC67uSs.js.gz +0 -0
  946. package/payload/server/public/assets/useCopyFeedback-1RmgkTFh.js +0 -1
  947. package/payload/server/public/assets/useCopyFeedback-1RmgkTFh.js.br +0 -0
  948. package/payload/server/public/assets/useCopyFeedback-1RmgkTFh.js.gz +0 -0
  949. package/payload/server/public/assets/useMediaQuery-BQslddHQ.js +0 -6
  950. package/payload/server/public/assets/useMediaQuery-BQslddHQ.js.br +0 -0
  951. package/payload/server/public/assets/useMediaQuery-BQslddHQ.js.gz +0 -0
  952. package/payload/server/public/assets/useVoiceRecorder-BeZNQEC4.js +0 -2
  953. package/payload/server/public/assets/useVoiceRecorder-BeZNQEC4.js.br +0 -0
  954. package/payload/server/public/assets/useVoiceRecorder-BeZNQEC4.js.gz +0 -0
  955. package/payload/server/public/assets/vennDiagram-DHZGUBPP-Bzm1VDi1.js +0 -34
  956. package/payload/server/public/assets/vennDiagram-DHZGUBPP-Bzm1VDi1.js.br +0 -0
  957. package/payload/server/public/assets/vennDiagram-DHZGUBPP-Bzm1VDi1.js.gz +0 -0
  958. package/payload/server/public/assets/wardley-RL74JXVD-3QaECtQN.js +0 -1
  959. package/payload/server/public/assets/wardley-RL74JXVD-3QaECtQN.js.br +0 -0
  960. package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-DIqGZr4v.js +0 -20
  961. package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-DIqGZr4v.js.br +0 -0
  962. package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-DIqGZr4v.js.gz +0 -0
  963. package/payload/server/public/assets/wrench-D4ufQG6C.js +0 -1
  964. package/payload/server/public/assets/wrench-D4ufQG6C.js.br +0 -0
  965. package/payload/server/public/assets/wrench-D4ufQG6C.js.gz +0 -0
  966. package/payload/server/public/assets/xychartDiagram-5P7HB3ND-0W2L2hQA.js +0 -7
  967. package/payload/server/public/assets/xychartDiagram-5P7HB3ND-0W2L2hQA.js.br +0 -0
  968. package/payload/server/public/assets/xychartDiagram-5P7HB3ND-0W2L2hQA.js.gz +0 -0
  969. package/payload/server/public/dispatch.html +0 -20
  970. /package/payload/server/public/assets/{_baseFor-D1duyODO.js → _baseFor-BApe6Tla.js} +0 -0
  971. /package/payload/server/public/assets/{_baseFor-D1duyODO.js.br → _baseFor-BApe6Tla.js.br} +0 -0
  972. /package/payload/server/public/assets/{_baseFor-D1duyODO.js.gz → _baseFor-BApe6Tla.js.gz} +0 -0
  973. /package/payload/server/public/assets/{array-j7Xa9Fap.js → array-eiH4WfvY.js} +0 -0
  974. /package/payload/server/public/assets/{array-j7Xa9Fap.js.br → array-eiH4WfvY.js.br} +0 -0
  975. /package/payload/server/public/assets/{chunk-DlZTsV_O.js → chunk-BycB0eMI.js} +0 -0
  976. /package/payload/server/public/assets/{chunk-DlZTsV_O.js.br → chunk-BycB0eMI.js.br} +0 -0
  977. /package/payload/server/public/assets/{chunk-DlZTsV_O.js.gz → chunk-BycB0eMI.js.gz} +0 -0
  978. /package/payload/server/public/assets/{cytoscape.esm-Dob3eilA.js → cytoscape.esm-BZ6NYo0w.js} +0 -0
  979. /package/payload/server/public/assets/{cytoscape.esm-Dob3eilA.js.br → cytoscape.esm-BZ6NYo0w.js.br} +0 -0
  980. /package/payload/server/public/assets/{cytoscape.esm-Dob3eilA.js.gz → cytoscape.esm-BZ6NYo0w.js.gz} +0 -0
  981. /package/payload/server/public/assets/{defaultLocale-BNILPWh2.js → defaultLocale-DWHqsa6O.js} +0 -0
  982. /package/payload/server/public/assets/{defaultLocale-BNILPWh2.js.br → defaultLocale-DWHqsa6O.js.br} +0 -0
  983. /package/payload/server/public/assets/{defaultLocale-BNILPWh2.js.gz → defaultLocale-DWHqsa6O.js.gz} +0 -0
  984. /package/payload/server/public/assets/{file-download-CN4H4Eih.js → file-download-B7zwa78w.js} +0 -0
  985. /package/payload/server/public/assets/{file-download-CN4H4Eih.js.br → file-download-B7zwa78w.js.br} +0 -0
  986. /package/payload/server/public/assets/{file-download-CN4H4Eih.js.gz → file-download-B7zwa78w.js.gz} +0 -0
  987. /package/payload/server/public/assets/{init-ve51bpJo.js → init-BdkYWjJJ.js} +0 -0
  988. /package/payload/server/public/assets/{init-ve51bpJo.js.br → init-BdkYWjJJ.js.br} +0 -0
  989. /package/payload/server/public/assets/{init-ve51bpJo.js.gz → init-BdkYWjJJ.js.gz} +0 -0
  990. /package/payload/server/public/assets/{katex-CJNaolDQ.js → katex-BCzoGtFh.js} +0 -0
  991. /package/payload/server/public/assets/{katex-CJNaolDQ.js.br → katex-BCzoGtFh.js.br} +0 -0
  992. /package/payload/server/public/assets/{katex-CJNaolDQ.js.gz → katex-BCzoGtFh.js.gz} +0 -0
  993. /package/payload/server/public/assets/{path-B4emajHp.js → path-DY2qBuPM.js} +0 -0
  994. /package/payload/server/public/assets/{path-B4emajHp.js.br → path-DY2qBuPM.js.br} +0 -0
  995. /package/payload/server/public/assets/{path-B4emajHp.js.gz → path-DY2qBuPM.js.gz} +0 -0
  996. /package/payload/server/public/assets/{preload-helper-3YNEDsJZ.js → preload-helper-eAV8hweq.js} +0 -0
  997. /package/payload/server/public/assets/{preload-helper-3YNEDsJZ.js.br → preload-helper-eAV8hweq.js.br} +0 -0
  998. /package/payload/server/public/assets/{preload-helper-3YNEDsJZ.js.gz → preload-helper-eAV8hweq.js.gz} +0 -0
  999. /package/payload/server/public/assets/{rough.esm-zabqYs6f.js → rough.esm-ec8xsRC7.js} +0 -0
  1000. /package/payload/server/public/assets/{rough.esm-zabqYs6f.js.br → rough.esm-ec8xsRC7.js.br} +0 -0
  1001. /package/payload/server/public/assets/{rough.esm-zabqYs6f.js.gz → rough.esm-ec8xsRC7.js.gz} +0 -0
@@ -36,9 +36,21 @@
36
36
  # shell redirect as its sanctioned path, so flagging that first creation would
37
37
  # fire on the one legitimate writer and stay blind to every edit after it.
38
38
  #
39
- # Exit codes: 0 = allow, 2 = feedback to the agent (stderr shown). Fail open
40
- # (exit 0) when the snapshot is missing or the allowed set is empty. Every block
41
- # logs: [fs-guard-bash] stray path=<name> reason=<top-level|bad-name>
39
+ # This hook has a second, independent job. The Write/Edit path guard records every
40
+ # cross-account target it refused in this session, and any recorded path that
41
+ # exists on disk now was written by some other route after that refusal. Those are
42
+ # reported as `evaded` and pair with the guard's own `blocked` line on the same
43
+ # path, so a bypass is two grep-able lines rather than a transcript to read. The
44
+ # stray fail-opens below do not gate that check: the path guard refuses a sibling
45
+ # target before it parses any schema, so an account with no SCHEMA.md, and a
46
+ # session whose pre-hook failed open, can both still hold a recorded refusal.
47
+ #
48
+ # Exit codes: 0 = allow, 2 = feedback to the agent (stderr shown). The stray check
49
+ # falls silent when the snapshot is missing or the allowed set is empty; the
50
+ # evasion check falls silent when the ledger is missing or unreadable. Every
51
+ # finding logs one of:
52
+ # [fs-guard-bash] stray path=<name> reason=<top-level|bad-name>
53
+ # [fs-guard-bash] evaded path=<abs> reason=cross-account target=<acct8>
42
54
  # No task numbers / internal refs in any operator-visible string.
43
55
 
44
56
  set -uo pipefail
@@ -75,21 +87,18 @@ else
75
87
  fi
76
88
  SID_SAN=$(printf '%s' "$SESSION_ID" | sed 's/[^A-Za-z0-9_-]/_/g')
77
89
  SNAP="$TMP_DIR/maxy-fsguard-snapshot-${SID_SAN}.txt"
78
-
79
- # Missing pre-snapshot -> fail open (the pre hook could not run or failed open).
80
- [ -f "$SNAP" ] || exit 0
90
+ LEDGER="$TMP_DIR/maxy-fsguard-refused-${SID_SAN}.txt"
81
91
 
82
92
  ACCOUNT_DIR="$PWD"
83
93
 
84
94
  # Parse the allowed top-level set from the account's seeded SCHEMA.md — the same
85
- # awk extraction fs-schema-guard.sh uses. Empty/absent -> fail open.
95
+ # awk extraction fs-schema-guard.sh uses.
86
96
  ALLOWED=""
87
97
  if [ -f "$ACCOUNT_DIR/SCHEMA.md" ]; then
88
98
  ALLOWED=$(awk '/^```allowed-top-level$/{f=1;next} /^```$/{f=0} f' "$ACCOUNT_DIR/SCHEMA.md")
89
99
  fi
90
- [ -z "$ALLOWED" ] && exit 0
91
100
 
92
- # Compute this command's findings, each tagged `reason<TAB>name`:
101
+ # Compute this command's stray findings, each tagged `reason<TAB>name`:
93
102
  # top-level : an account-root entry present now, absent from the pre-snapshot,
94
103
  # not in the allowed set (the original stray check).
95
104
  # bad-name : an immediate child of an operator-data bucket (projects/contacts/
@@ -101,7 +110,16 @@ fi
101
110
  # reconcile's job (it can distinguish backlog from fresh; this hook
102
111
  # cannot, with a top-level-only snapshot). python3 does the set
103
112
  # arithmetic and regex (names may contain spaces).
104
- FINDINGS=$(ACCOUNT_DIR="$ACCOUNT_DIR" SNAP="$SNAP" ALLOWED="$ALLOWED" python3 -c '
113
+ #
114
+ # A missing pre-snapshot, an empty allowed set, or an unlistable account root
115
+ # leaves this check silent. Each of those fail-opens governs THIS check alone:
116
+ # the ledger check below runs whatever they do, because a session whose pre-hook
117
+ # failed open, and an account with no SCHEMA.md, can both still hold a recorded
118
+ # cross-account refusal — the path guard refuses a sibling target before it parses
119
+ # any schema.
120
+ FINDINGS=""
121
+ if [ -f "$SNAP" ] && [ -n "$ALLOWED" ]; then
122
+ FINDINGS=$(ACCOUNT_DIR="$ACCOUNT_DIR" SNAP="$SNAP" ALLOWED="$ALLOWED" python3 -c '
105
123
  import os, sys, re
106
124
  acct = os.environ["ACCOUNT_DIR"]
107
125
  try:
@@ -134,14 +152,61 @@ for bucket in ("projects", "contacts", "documents"):
134
152
  out.append("bad-name\t" + child)
135
153
 
136
154
  sys.stdout.write("\n".join(out))
137
- ' 2>/dev/null) || exit 0
155
+ ' 2>/dev/null) || FINDINGS=""
156
+ fi
157
+
158
+ # Evasion check. The path guard records every cross-account target it refused in
159
+ # this session; a recorded path that exists on disk now was written by some other
160
+ # route after the refusal. The path was refused in THIS session by this session's
161
+ # own hook, so existence afterwards is attribution, not inference — no directory
162
+ # is walked and no mtime is read, which is what makes this cheap and sound where a
163
+ # sibling scan is neither. Each reported path is dropped from the ledger so one
164
+ # evasion reports once, not on every later Bash call. A missing, unreadable or
165
+ # unstattable ledger reports nothing.
166
+ EVADED=""
167
+ if [ -f "$LEDGER" ]; then
168
+ EVADED=$(LEDGER="$LEDGER" ACCOUNT_DIR="$ACCOUNT_DIR" python3 -c '
169
+ import os, sys
170
+ ledger = os.environ["LEDGER"]
171
+ root = os.path.dirname(os.path.realpath(os.environ["ACCOUNT_DIR"]))
172
+ try:
173
+ with open(ledger) as f:
174
+ paths = [l for l in f.read().split("\n") if l != ""]
175
+ except Exception:
176
+ sys.exit(1)
177
+ hit, keep, seen = [], [], set()
178
+ for p in paths:
179
+ try:
180
+ landed = os.path.exists(p)
181
+ except Exception:
182
+ landed = False
183
+ if not landed:
184
+ keep.append(p)
185
+ continue
186
+ if p in seen:
187
+ continue
188
+ seen.add(p)
189
+ hit.append(p + "\t" + os.path.relpath(p, root).split(os.sep)[0][:8])
190
+ if hit:
191
+ try:
192
+ if keep:
193
+ with open(ledger, "w") as f:
194
+ f.write("\n".join(keep) + "\n")
195
+ else:
196
+ os.remove(ledger)
197
+ except Exception:
198
+ pass
199
+ sys.stdout.write("\n".join(hit))
200
+ ' 2>/dev/null) || EVADED=""
201
+ fi
138
202
 
139
- [ -z "$FINDINGS" ] && exit 0
203
+ [ -z "$FINDINGS" ] && [ -z "$EVADED" ] && exit 0
140
204
 
141
205
  # One log line per finding, then a schema-citing feedback block per reason seen.
142
206
  # exit 2 feeds stderr back to the agent.
143
207
  TOPLEVEL=""
144
208
  BADNAME=""
209
+ EVADEDPATHS=""
145
210
  {
146
211
  while IFS=$'\t' read -r reason name; do
147
212
  [ -z "$reason" ] && continue
@@ -150,11 +215,19 @@ BADNAME=""
150
215
  bad-name) echo "[fs-guard-bash] stray path=$name reason=bad-name"; BADNAME="$BADNAME $name" ;;
151
216
  esac
152
217
  done <<< "$FINDINGS"
218
+ while IFS=$'\t' read -r epath etarget; do
219
+ [ -z "$epath" ] && continue
220
+ echo "[fs-guard-bash] evaded path=$epath reason=cross-account target=$etarget"
221
+ EVADEDPATHS="$EVADEDPATHS $epath"
222
+ done <<< "$EVADED"
153
223
  if [ -n "$TOPLEVEL" ]; then
154
224
  echo "Blocked: this Bash command created top-level entries that are not allowed in this account's data directory:$TOPLEVEL. The layout is fixed by SCHEMA.md — only the entries listed there are permitted at the top level. Relocate this content under projects/, contacts/, or documents/, and route any reorganisation through the data-manager specialist."
155
225
  fi
156
226
  if [ -n "$BADNAME" ]; then
157
227
  echo "Blocked: this Bash command created names that break the account's naming rule:$BADNAME. Folder and file names under projects/, contacts/, and documents/ use lowercase letters, digits, and hyphens only, with a lowercase file extension. Rename them, or route a reorganisation through the data-manager specialist."
158
228
  fi
229
+ if [ -n "$EVADEDPATHS" ]; then
230
+ echo "Blocked: this Bash command wrote to a path in another account's data directory that a file edit was refused earlier in this session:$EVADEDPATHS. Another account's data is reachable only through the account-scoped file tools, naming the target account explicitly. Undo this write and redo it through those tools."
231
+ fi
159
232
  } >&2
160
233
  exit 2
@@ -29,6 +29,9 @@
29
29
  # Exit codes: 0 = allow, 2 = block (stderr shown to the agent). Fail closed when
30
30
  # the tool call cannot be inspected (tty or empty stdin). Every block logs
31
31
  # [fs-guard] blocked path=<rel> reason=<top-level|account-machinery|declared-file|over-deep|bad-name>
32
+ # A cross-account block additionally records the refused absolute path in a
33
+ # per-session ledger under the tmpdir, which the PostToolUse Bash twin reads to
34
+ # report the refusal being walked around by a shell command.
32
35
  # No task numbers / internal refs in any operator-visible string.
33
36
 
34
37
  set -uo pipefail
@@ -98,6 +101,21 @@ IFS=$'\t' read -r VERDICT PAYLOAD XABS <<< "$RESOLVED"
98
101
  if [ "$VERDICT" = "xacct" ]; then
99
102
  echo "[fs-guard] blocked path=$XABS reason=cross-account target=$(printf '%s' "$PAYLOAD" | cut -c1-8)" >&2
100
103
  echo "Blocked: '$XABS' is inside another account's data directory. A file edit reaches this account's data only. Cross-account file work goes through the account-scoped file tools, naming the target account explicitly." >&2
104
+ # Record the refused path for the PostToolUse Bash twin. The block above is the
105
+ # verdict and stands whatever happens here: recording is best-effort, refusing
106
+ # is not. Same tmpdir and session-id sanitisation the two Bash hooks carry, so
107
+ # all three agree on the filename by construction rather than by comment.
108
+ SESSION_ID=$(field '' session_id)
109
+ if [ -n "$SESSION_ID" ]; then
110
+ if [ -n "${FS_GUARD_BASH_TMPDIR:-}" ]; then
111
+ TMP_DIR="$FS_GUARD_BASH_TMPDIR"
112
+ else
113
+ TMP_DIR="${TMPDIR:-${TMP:-${TEMP:-/tmp}}}"
114
+ TMP_DIR="${TMP_DIR%/}"
115
+ fi
116
+ SID_SAN=$(printf '%s' "$SESSION_ID" | sed 's/[^A-Za-z0-9_-]/_/g')
117
+ printf '%s\n' "$XABS" >> "$TMP_DIR/maxy-fsguard-refused-${SID_SAN}.txt" 2>/dev/null || true
118
+ fi
101
119
  exit 2
102
120
  fi
103
121
 
@@ -0,0 +1,165 @@
1
+ #!/usr/bin/env bash
2
+ # html-structure-gate — PreToolUse gate on Write / Edit / MultiEdit.
3
+ #
4
+ # Refuses a write that would produce an HTML document with a <style> element
5
+ # opened inside another one, or with more openers than closers.
6
+ #
7
+ # The fault is not cosmetic. HTML parses style content as raw text, so the FIRST
8
+ # </style> closes the outer element: everything after it becomes body content and
9
+ # renders as visible text, and the rule immediately after the stray opener is
10
+ # eaten as part of an invalid selector. One fault, two symptoms — a leaked
11
+ # stylesheet above the header and an unstyled box further down the same page.
12
+ #
13
+ # The detector has three rules, and the same three are implemented in the
14
+ # session-manager census that walks what is already on disk:
15
+ # 1. HTML comments are stripped first, each replaced by its own newlines, so a
16
+ # <style> inside <!-- … --> is not scanned and line numbers do not shift.
17
+ # That comment case is real: two account templates carry one and are clean,
18
+ # and a comment-blind detector reports both.
19
+ # 2. <style…> and </style…> are walked case-insensitively, tracking depth. An
20
+ # opener seen at depth > 0 is the fault.
21
+ # 3. At end of input, openers must equal closers; an unmatched opener is
22
+ # reported at its own line.
23
+ #
24
+ # It walks the document the call would PRODUCE, not the fragment it carries. For
25
+ # Write that is `content`; for Edit and MultiEdit the on-disk file is read and
26
+ # the replacements applied in memory first. Walking a fragment cannot work: rule
27
+ # 3 would refuse every partial edit, and a nested opener whose outer <style> is
28
+ # already on disk would pass.
29
+ #
30
+ # Scope is the whole account with an exclusion list, never a bucket list: every
31
+ # .html/.htm resolving inside the account dir except under node_modules/,
32
+ # .wrangler/, .tool/ and .trash/. A bucket list is what let the live document
33
+ # through — it sat under sites/<project>/public/, which no quote bucket covers.
34
+ # The account dir is this hook's cwd, as in fs-schema-guard.sh.
35
+ #
36
+ # Exit codes: 0 = allow, 2 = block (stderr shown to the agent). Fail OPEN on an
37
+ # uninspectable envelope — tty, empty stdin, unreadable target, unparseable edit.
38
+ # A gate that bricks writes on a parse failure is worse than the fault it catches.
39
+ #
40
+ # The observability line is a direct append to the resolved server.log, not an
41
+ # echo: a hook's stderr reaches no sink on an allow, so a stderr-only line would
42
+ # be an audit nothing reads. No task numbers or internal refs in operator text.
43
+
44
+ set -uo pipefail
45
+
46
+ # No envelope (tty or empty stdin) → allow: cannot inspect, must not brick writes.
47
+ if [ -t 0 ]; then exit 0; fi
48
+ INPUT=$(cat)
49
+ [ -z "$INPUT" ] && exit 0
50
+
51
+ VERDICT=$(INPUT="$INPUT" ACCT="$PWD" python3 - <<'PY' 2>/dev/null || true
52
+ import os, re, json, sys
53
+
54
+ COMMENT = re.compile(r"<!--.*?-->", re.S)
55
+ CSS_COMMENT = re.compile(r"/\*.*?\*/", re.S)
56
+ TAG = re.compile(r"<\s*(/)?\s*style\b[^>]*>", re.I)
57
+ EXCLUDED = ("node_modules", ".wrangler", ".tool", ".trash")
58
+
59
+
60
+ def fault_line(s):
61
+ """Line of the first nested or unmatched <style> opener, else None."""
62
+ t = COMMENT.sub(lambda m: "\n" * m.group(0).count("\n"), s)
63
+ spans = [(m.start(), m.end()) for m in CSS_COMMENT.finditer(t)]
64
+ depth = 0
65
+ open_line = 0
66
+ for m in TAG.finditer(t):
67
+ line = t.count("\n", 0, m.start()) + 1
68
+ if m.group(1):
69
+ if depth > 0:
70
+ depth -= 1
71
+ elif depth > 0:
72
+ # A CSS comment protects an opener but never a closer. Style content
73
+ # is raw text to the HTML parser, so </style> terminates the element
74
+ # wherever it appears; an opener is never a parse event there, only
75
+ # text the CSS parser reads as an invalid selector — and inside a
76
+ # comment it is discarded, so nothing is eaten.
77
+ if any(a <= m.start() < b for a, b in spans):
78
+ continue
79
+ return line
80
+ else:
81
+ depth = 1
82
+ open_line = line
83
+ return open_line if depth > 0 else None
84
+
85
+
86
+ try:
87
+ d = json.loads(os.environ["INPUT"])
88
+ except Exception:
89
+ sys.exit(0)
90
+ if (d.get("tool_name", "") or "") not in ("Write", "Edit", "MultiEdit"):
91
+ sys.exit(0)
92
+ tool = d["tool_name"]
93
+ ti = d.get("tool_input", {}) or {}
94
+ target = ti.get("file_path") or ""
95
+ if not target:
96
+ sys.exit(0)
97
+
98
+ acct = os.path.realpath(os.environ["ACCT"])
99
+ ab = os.path.realpath(target if os.path.isabs(target) else os.path.join(acct, target))
100
+ if not ab.startswith(acct + os.sep):
101
+ sys.exit(0)
102
+ rel = os.path.relpath(ab, acct)
103
+ if os.path.splitext(rel)[1].lower() not in (".html", ".htm"):
104
+ sys.exit(0)
105
+ if any(p in EXCLUDED for p in rel.split(os.sep)):
106
+ sys.exit(0)
107
+
108
+ if tool == "Write":
109
+ produced = ti.get("content")
110
+ if not isinstance(produced, str):
111
+ sys.exit(0)
112
+ else:
113
+ try:
114
+ with open(ab, encoding="utf-8", errors="replace") as fh:
115
+ produced = fh.read()
116
+ except Exception:
117
+ sys.exit(0)
118
+ edits = ti.get("edits") if tool == "MultiEdit" else [ti]
119
+ if not isinstance(edits, list):
120
+ sys.exit(0)
121
+ for e in edits:
122
+ if not isinstance(e, dict):
123
+ sys.exit(0)
124
+ old, new = e.get("old_string"), e.get("new_string")
125
+ if not isinstance(old, str) or not isinstance(new, str):
126
+ sys.exit(0)
127
+ produced = produced.replace(old, new) if e.get("replace_all") else produced.replace(old, new, 1)
128
+
129
+ line = fault_line(produced)
130
+ if line is None:
131
+ sys.exit(0)
132
+ print(line)
133
+ print(json.dumps(rel))
134
+ PY
135
+ )
136
+
137
+ [ -z "$VERDICT" ] && exit 0
138
+ LINE=$(printf '%s' "$VERDICT" | sed -n 1p)
139
+ QREL=$(printf '%s' "$VERDICT" | sed -n 2p)
140
+ [ -z "$LINE" ] && exit 0
141
+
142
+ # Sink ladder, as quote-render-pdf-conformance.sh: LOG_DIR is stamped on the
143
+ # rc-spawn path, CLAUDE_SESSION_MANAGER_PERSIST_DIR is on the systemd unit and
144
+ # resolves to the same directory, the account's own logs dir is the last resort.
145
+ #
146
+ # There is deliberately no hard-coded brand fallback. Four brands are co-resident
147
+ # on one box, each with its own ~/.<brand>/logs, so a literal would file this
148
+ # account's path in a SIBLING brand's server.log. When no rung resolves, the line
149
+ # is dropped: the refusal still blocks and still reaches the agent on stderr.
150
+ LOGD=""
151
+ if [ -n "${LOG_DIR:-}" ] && [ -d "${LOG_DIR}" ]; then
152
+ LOGD="$LOG_DIR"
153
+ elif [ -n "${CLAUDE_SESSION_MANAGER_PERSIST_DIR:-}" ] && [ -d "${CLAUDE_SESSION_MANAGER_PERSIST_DIR}/logs" ]; then
154
+ LOGD="$CLAUDE_SESSION_MANAGER_PERSIST_DIR/logs"
155
+ elif [ -d "$PWD/logs" ]; then
156
+ LOGD="$PWD/logs"
157
+ fi
158
+ if [ -n "$LOGD" ]; then
159
+ ID8=$(basename "$PWD" | cut -c1-8)
160
+ printf '[html-structure-gate] op=refuse account=%s file=%s line=%s\n' \
161
+ "$ID8" "$QREL" "$LINE" >>"$LOGD/server.log" 2>/dev/null || true
162
+ fi
163
+
164
+ echo "Blocked: this document opens a <style> element inside another one (line $LINE). The browser closes the outer element at the first </style>, so the rest of the stylesheet renders as visible text on the page and the rule after the stray opener is discarded. Put the block in the body as its own <style> element, or merge its rules into the one already open." >&2
165
+ exit 2
@@ -4,20 +4,37 @@
4
4
  # The companion to the PreToolUse quote-render-gate: that gate checks the
5
5
  # rendered HTML on the deterministic path (via the render receipt) before the
6
6
  # PDF is printed; the HTML the tool gated cannot yet be a PDF at PreToolUse, so
7
- # the two PDF-only conformance checks run here, once the PDF exists.
7
+ # the PDF-only conformance checks run here, once the PDF exists.
8
8
  #
9
- # For a gated client-quote PDF (memory/users/<phone>/documents/quote-<jobId>.pdf
10
- # or ...-breakdown.pdf) whose render receipt names the source HTML, it asserts:
11
- # 1. the PDF's /URI annotation count >= the source HTML's absolute-link count
9
+ # PAGE CHROME receipt-free and path-agnostic, so it also covers template-seeded
10
+ # documents (budget estimates, valuations, works orders) that never pass through
11
+ # the quote renderer. Each check gates only a document that DECLARES the thing it
12
+ # checks, so a brochure is never touched:
13
+ # 1. a running header on every physical page, when the source declares a text
14
+ # margin box. Chrome decides pagination at print time, so a header placed
15
+ # next to a hand-declared page break misses every bleed page.
16
+ # 2. that header's image no wider than a third of the page, when the source
17
+ # declares an image margin box. Chromium paints a margin box's content:url()
18
+ # at intrinsic pixel size and does NOT scale it to the declared box.
19
+ # Both are offline, and both report before either exits, so one print surfaces
20
+ # both faults rather than the second appearing only after the first is reprinted.
21
+ #
22
+ # LINKS — for a gated client-quote PDF (memory/users/<phone>/documents/
23
+ # quote-<jobId>.pdf or ...-breakdown.pdf) whose render receipt names the source:
24
+ # 3. the PDF's /URI annotation count >= the source HTML's absolute-link count
12
25
  # (a print that dropped links — a rasterised or flattened copy — carries
13
26
  # fewer /URI than the HTML had anchors);
14
- # 2. every embedded https:// anchor in the source HTML answers 200 (a pending
27
+ # 4. every embedded https:// anchor in the source HTML answers 200 (a pending
15
28
  # redeploy that would 404 the Sign-Online link is caught before the PDF is
16
29
  # sent).
17
30
  # The /URI-count check is offline and runs first; the network fetch runs only
18
31
  # when the count check passes, so a link-loss regression never depends on the
19
32
  # network being up.
20
33
  #
34
+ # Every path that inspects nothing emits `op=skip reason=…`: a silent return is
35
+ # indistinguishable from a gate that never ran, which is the state an account
36
+ # with a stale PostToolUse matcher is actually in.
37
+ #
21
38
  # Exit codes: 0 = allow, 2 = block (stderr shown to the agent). Fail OPEN on any
22
39
  # uninspectable call (tty / empty stdin / no python3 / no receipt / PDF not
23
40
  # written): the no-receipt case is already the PreToolUse gate's to block, and
@@ -184,16 +201,73 @@ for p in range(first, pages + 1):
184
201
  missing.append(p)
185
202
 
186
203
  checked = pages - first + 1
204
+ print("LOG|op=pdf-header-conformance file=%s pages=%d pagesChecked=%d pagesHeaderless=%d"
205
+ % (base, pages, checked, len(missing)))
187
206
  if missing:
188
- print("LOG|op=pdf-header-conformance file=%s pages=%d pagesChecked=%d pagesHeaderless=%d"
189
- % (base, pages, checked, len(missing)))
190
- out("HBLOCK|%s|pagesHeaderless=%d pages=%s"
191
- % (base, len(missing), ",".join(str(x) for x in missing)))
192
- out("LOG|op=pdf-header-conformance file=%s pages=%d pagesChecked=%d pagesHeaderless=0"
193
- % (base, pages, checked))
207
+ print("HBLOCK|%s|pagesHeaderless=%d pages=%s"
208
+ % (base, len(missing), ",".join(str(x) for x in missing)))
209
+
210
+ # --- running-image geometry -------------------------------------------------
211
+ # Chromium paints a page-margin box's content:url() at INTRINSIC pixel size (one
212
+ # image px to one CSS px at 96 px/in) and does NOT scale it to the box's declared
213
+ # width/height, so a full-resolution logo covers most of the page on every page
214
+ # the box paints. Measured 2026-08-05 on a real print: a 700x252 asset in a
215
+ # declared 34mm box rendered 525.0 pt wide on a 594.96 pt A4 page, 88%.
216
+ #
217
+ # The assertion is scoped to the RUNNING image — the object present on every
218
+ # checked page, which is what a running header is by construction — never to
219
+ # every image. A content photo legitimately runs wider: measured across three
220
+ # real quotes, running headers occupy 9.0% to 18.9% of page width while
221
+ # single-page content photos occupy 38.7% to 77.2%, so a whole-page threshold
222
+ # blocks legitimate documents while the recurrence-scoped one separates the
223
+ # correct case from the defect by more than four to one.
224
+ #
225
+ # This runs after the header verdict rather than instead of it, so one print
226
+ # reports a headerless page AND an oversized logo together. Both are offline, so
227
+ # the file's offline-before-network ordering still holds.
228
+ if re.search(r'@top-(?:left|center|right)\s*\{[^}]*?content\s*:\s*url\(', doc, re.S) and checked >= 2:
229
+ try:
230
+ listing = subprocess.run(["pdfimages", "-list", pdf],
231
+ capture_output=True, text=True, timeout=30).stdout
232
+ except Exception:
233
+ listing = ""
234
+ if not listing:
235
+ out("LOG|op=pdf-image-geometry file=%s pagesChecked=0 reason=no-poppler" % base)
236
+ # Columns, zero-based: 0 page, 3 width, 10 object, 12 x-ppi. A row whose
237
+ # object or ppi is not numeric (an inline image) is skipped rather than
238
+ # guessed at.
239
+ per = {}
240
+ for row in listing.splitlines()[2:]:
241
+ f = row.split()
242
+ if len(f) < 13:
243
+ continue
244
+ try:
245
+ pg, wpx, obj, ppi = int(f[0]), int(f[3]), f[10], float(f[12])
246
+ except ValueError:
247
+ continue
248
+ if pg < first or pg > pages or ppi <= 0:
249
+ continue
250
+ seen = per.setdefault(obj, {})
251
+ seen[pg] = max(seen.get(pg, 0.0), wpx / ppi * 72.0)
252
+ limit = pw / 3.0
253
+ running = {o: max(v.values()) for o, v in per.items() if len(v) == checked}
254
+ widest = max(running.values()) if running else 0.0
255
+ over = sorted(w for w in running.values() if w > limit)
256
+ # Logged whether or not it fails: this is the line that decides the verdict.
257
+ print("LOG|op=pdf-image-geometry file=%s pagesChecked=%d runningImages=%d "
258
+ "widestPt=%.1f fracPage=%.1f%% limitPt=%.1f"
259
+ % (base, checked, len(running), widest, widest / pw * 100.0, limit))
260
+ if over:
261
+ print("GBLOCK|%s|widestPt=%.1f fracPage=%.1f%% limitPt=%.1f"
262
+ % (base, over[-1], over[-1] / pw * 100.0, limit))
263
+ sys.exit(0)
194
264
  PY
195
265
  )
196
266
 
267
+ # Both page-chrome faults are collected before exiting, so a document with a
268
+ # headerless page AND an oversized running logo reports both on one print rather
269
+ # than surfacing the second only after the first is fixed and reprinted.
270
+ BLOCKED=0
197
271
  while IFS= read -r hline; do
198
272
  case "$hline" in
199
273
  LOG\|*) emit_log "${hline#LOG|}" ;;
@@ -203,32 +277,49 @@ while IFS= read -r hline; do
203
277
  hdetail=${hrest#*|}
204
278
  emit_log "op=bypass file=$hfile reason=pdf-header-conformance detail=$hdetail"
205
279
  echo "Blocked: this printed document has physical pages carrying no running header, so it would go out with unbranded pages ($hdetail). The header must be a property of the page itself, a page margin box, not a header block placed next to a declared page break, because the browser decides the real page boundaries at print time. Fix the document's print CSS, print it again, and check every page." >&2
206
- exit 2
280
+ BLOCKED=1
281
+ ;;
282
+ GBLOCK\|*)
283
+ grest=${hline#GBLOCK|}
284
+ gfile=${grest%%|*}
285
+ gdetail=${grest#*|}
286
+ emit_log "op=bypass file=$gfile reason=pdf-header-image-geometry detail=$gdetail"
287
+ echo "Blocked: the running header image on this printed document covers most of the page width ($gdetail). An image used as a page margin box's content is painted at its own pixel size and is not scaled down to the box you declared, so the image file itself has to be made the size the box expects. Shrink the asset, rebuild the document, print it again, and check a page after the first." >&2
288
+ BLOCKED=1
207
289
  ;;
208
290
  esac
209
291
  done <<< "$HRESULT"
292
+ [ "$BLOCKED" -eq 1 ] && exit 2
210
293
 
211
294
  RESULT=$(INPUT="$INPUT" BASE="$PWD" python3 - <<'PY' 2>/dev/null || true
212
295
  import os, json, re, sys, urllib.request
213
296
 
297
+ # Every return that inspects nothing names its reason. A silent return is
298
+ # indistinguishable from a gate that never ran at all, which is the state a
299
+ # stale PostToolUse matcher leaves an account in; fail-open behaviour itself is
300
+ # unchanged, only its visibility.
301
+ def skip(reason):
302
+ print("SKIP|%s" % reason)
303
+ sys.exit(0)
304
+
214
305
  try:
215
306
  d = json.loads(os.environ["INPUT"])
216
307
  except Exception:
217
- sys.exit(0) # uninspectable envelope -> fail open
308
+ skip("bad-envelope")
218
309
 
219
310
  tool = d.get("tool_name", "") or ""
220
311
  if not tool.endswith("browser-pdf-save"):
221
- sys.exit(0)
312
+ skip("not-browser-tool")
222
313
  path = (d.get("tool_input", {}) or {}).get("path", "") or ""
223
314
  if not path:
224
- sys.exit(0)
315
+ skip("no-path")
225
316
  norm = os.path.normpath(path)
226
317
  m = re.search(r'(?:^|/)memory/users/[^/]+/documents/quote-(.+?)(-breakdown)?\.pdf$', norm)
227
318
  if not m:
228
- sys.exit(0) # not a gated client-quote artefact
319
+ skip("not-gated") # not a gated client-quote artefact
229
320
  jobid = m.group(1)
230
321
  if "/" in jobid or ".." in jobid:
231
- sys.exit(0) # the PreToolUse gate owns bad-jobid; here fail open
322
+ skip("bad-jobid") # the PreToolUse gate owns bad-jobid; here fail open
232
323
  variant = m.group(2) # "-breakdown" or None
233
324
 
234
325
  base = os.environ["BASE"]
@@ -236,12 +327,12 @@ receipt_path = os.path.join(base, "quoting", "jobs", jobid, "render-receipt.json
236
327
  try:
237
328
  receipt = json.load(open(receipt_path))
238
329
  except Exception:
239
- sys.exit(0) # no receipt -> PreToolUse gate already blocks; fail open
330
+ skip("no-receipt") # PreToolUse gate already blocks that; fail open here
240
331
 
241
332
  filed = receipt.get("filed", {}) or {}
242
333
  html_path = filed.get("breakdown" if variant else "quote", "")
243
334
  if not html_path or not os.path.isfile(html_path) or not os.path.isfile(path):
244
- sys.exit(0) # nothing to compare against -> fail open
335
+ skip("no-source") # nothing to compare against -> fail open
245
336
 
246
337
  html = open(html_path, encoding="utf-8", errors="replace").read()
247
338
  # Anchors that become a /URI annotation in the printed PDF: absolute http(s) or
@@ -274,6 +365,7 @@ PY
274
365
  )
275
366
 
276
367
  case "$RESULT" in
368
+ SKIP\|*) emit_log "op=skip reason=${RESULT#SKIP|}" ;;
277
369
  BLOCK\|*)
278
370
  rest=${RESULT#BLOCK|}
279
371
  jobid=${rest%%|*}