@rubytech/create-maxy-code 0.1.32 → 0.1.34

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 (445) hide show
  1. package/dist/__tests__/account-id-env.test.js +1 -1
  2. package/dist/__tests__/apt-resolve.test.js +7 -7
  3. package/dist/__tests__/brew-install.test.js +1 -1
  4. package/dist/__tests__/brew-resolve.test.js +1 -1
  5. package/dist/__tests__/cdp-port-no-silent-fallback.test.js +4 -4
  6. package/dist/__tests__/init-logging.test.js +1 -1
  7. package/dist/__tests__/launchd-plist.test.js +1 -1
  8. package/dist/__tests__/macos-version.test.js +1 -1
  9. package/dist/__tests__/peer-brand-detect.test.js +1 -1
  10. package/dist/__tests__/platform-detect.test.js +2 -2
  11. package/dist/__tests__/port-canonicalisation.test.js +1 -1
  12. package/dist/__tests__/preflight-port-classifier.test.js +6 -6
  13. package/dist/__tests__/samba-provision.test.js +1 -1
  14. package/dist/__tests__/snap-chromium.test.js +1 -1
  15. package/dist/apt-resolve.js +5 -5
  16. package/dist/brew-install.js +1 -1
  17. package/dist/brew-resolve.js +3 -3
  18. package/dist/index.js +146 -122
  19. package/dist/init-logging.js +1 -1
  20. package/dist/launchd-plist.js +1 -1
  21. package/dist/macos-version.js +2 -2
  22. package/dist/peer-brand-detect.js +1 -1
  23. package/dist/pinned-binaries.js +1 -1
  24. package/dist/platform-detect.js +1 -1
  25. package/dist/port-resolution.js +2 -2
  26. package/dist/preflight-port-classifier.js +3 -3
  27. package/dist/samba-provision.js +1 -1
  28. package/dist/snap-chromium.js +3 -3
  29. package/dist/uninstall.js +28 -28
  30. package/package.json +1 -1
  31. package/payload/docs/desktop-code-controls.md +63 -0
  32. package/payload/platform/lib/account-enumeration/dist/__tests__/validate-env.test.js +1 -1
  33. package/payload/platform/lib/account-enumeration/dist/__tests__/validate-env.test.js.map +1 -1
  34. package/payload/platform/lib/account-enumeration/dist/index.d.ts +1 -1
  35. package/payload/platform/lib/account-enumeration/src/__tests__/validate-env.test.ts +1 -1
  36. package/payload/platform/lib/account-enumeration/src/index.ts +1 -1
  37. package/payload/platform/lib/admins-write/dist/index.js +3 -3
  38. package/payload/platform/lib/admins-write/dist/index.js.map +1 -1
  39. package/payload/platform/lib/admins-write/src/index.ts +4 -4
  40. package/payload/platform/lib/entitlement/dist/index.d.ts +1 -1
  41. package/payload/platform/lib/entitlement/dist/index.js +2 -2
  42. package/payload/platform/lib/entitlement/dist/index.js.map +1 -1
  43. package/payload/platform/lib/graph-mcp/dist/__tests__/warnings-envelope.test.js +1 -1
  44. package/payload/platform/lib/graph-mcp/dist/__tests__/warnings-envelope.test.js.map +1 -1
  45. package/payload/platform/lib/graph-mcp/dist/cypher-rewrite-stamp.d.ts +3 -3
  46. package/payload/platform/lib/graph-mcp/dist/cypher-rewrite-stamp.js +3 -3
  47. package/payload/platform/lib/graph-mcp/dist/cypher-shim-read.d.ts +1 -1
  48. package/payload/platform/lib/graph-mcp/dist/cypher-shim-read.js +1 -1
  49. package/payload/platform/lib/graph-mcp/dist/cypher-shim-write.d.ts +1 -1
  50. package/payload/platform/lib/graph-mcp/dist/cypher-shim-write.js +1 -1
  51. package/payload/platform/lib/graph-mcp/dist/cypher-validate.d.ts +1 -1
  52. package/payload/platform/lib/graph-mcp/dist/cypher-validate.js +1 -1
  53. package/payload/platform/lib/graph-mcp/dist/index.d.ts +1 -1
  54. package/payload/platform/lib/graph-mcp/dist/index.js +24 -24
  55. package/payload/platform/lib/graph-mcp/dist/index.js.map +1 -1
  56. package/payload/platform/lib/graph-mcp/dist/schema-cache.d.ts +1 -1
  57. package/payload/platform/lib/graph-mcp/dist/schema-cache.js +2 -2
  58. package/payload/platform/lib/graph-mcp/dist/schema-cypher-parser.d.ts +3 -3
  59. package/payload/platform/lib/graph-mcp/dist/schema-cypher-parser.js +3 -3
  60. package/payload/platform/lib/graph-mcp/src/__tests__/warnings-envelope.test.ts +1 -1
  61. package/payload/platform/lib/graph-mcp/src/cypher-rewrite-stamp.ts +3 -3
  62. package/payload/platform/lib/graph-mcp/src/cypher-shim-read.ts +1 -1
  63. package/payload/platform/lib/graph-mcp/src/cypher-shim-write.ts +1 -1
  64. package/payload/platform/lib/graph-mcp/src/cypher-validate.ts +1 -1
  65. package/payload/platform/lib/graph-mcp/src/index.ts +29 -29
  66. package/payload/platform/lib/graph-mcp/src/schema-cache.ts +2 -2
  67. package/payload/platform/lib/graph-mcp/src/schema-cypher-parser.ts +3 -3
  68. package/payload/platform/lib/graph-search/dist/index.d.ts +12 -12
  69. package/payload/platform/lib/graph-search/dist/index.js +11 -11
  70. package/payload/platform/lib/graph-search/dist/index.js.map +1 -1
  71. package/payload/platform/lib/graph-search/src/__tests__/bm25-label-gate.test.ts +2 -2
  72. package/payload/platform/lib/graph-search/src/__tests__/bm25-strong-bypass-threshold.test.ts +2 -2
  73. package/payload/platform/lib/graph-search/src/__tests__/brochure-threshold.test.ts +3 -3
  74. package/payload/platform/lib/graph-search/src/__tests__/expand-batch.test.ts +2 -2
  75. package/payload/platform/lib/graph-search/src/__tests__/fulltext-coverage.test.ts +6 -6
  76. package/payload/platform/lib/graph-search/src/__tests__/hybrid.test.ts +5 -5
  77. package/payload/platform/lib/graph-search/src/__tests__/vector-threshold.test.ts +2 -2
  78. package/payload/platform/lib/graph-search/src/index.ts +18 -18
  79. package/payload/platform/lib/graph-trash/dist/index.d.ts +3 -3
  80. package/payload/platform/lib/graph-trash/dist/index.js +3 -3
  81. package/payload/platform/lib/graph-trash/src/index.ts +3 -3
  82. package/payload/platform/lib/graph-write/dist/__tests__/action-provenance-gate.test.js +4 -4
  83. package/payload/platform/lib/graph-write/dist/__tests__/action-provenance-gate.test.js.map +1 -1
  84. package/payload/platform/lib/graph-write/dist/audit.d.ts +2 -2
  85. package/payload/platform/lib/graph-write/dist/audit.js +2 -2
  86. package/payload/platform/lib/graph-write/dist/conversation-provenance.js +1 -1
  87. package/payload/platform/lib/graph-write/dist/conversation-provenance.js.map +1 -1
  88. package/payload/platform/lib/graph-write/dist/index.d.ts +5 -5
  89. package/payload/platform/lib/graph-write/dist/index.js +12 -12
  90. package/payload/platform/lib/graph-write/dist/index.js.map +1 -1
  91. package/payload/platform/lib/graph-write/src/__tests__/action-provenance-gate.test.ts +4 -4
  92. package/payload/platform/lib/graph-write/src/audit.ts +2 -2
  93. package/payload/platform/lib/graph-write/src/conversation-provenance.ts +1 -1
  94. package/payload/platform/lib/graph-write/src/index.ts +13 -13
  95. package/payload/platform/lib/mcp-eager/dist/index.d.ts +2 -2
  96. package/payload/platform/lib/mcp-eager/dist/index.js +2 -2
  97. package/payload/platform/lib/mcp-eager/src/index.ts +2 -2
  98. package/payload/platform/lib/mcp-spawn-tee/dist/index.d.ts +2 -2
  99. package/payload/platform/lib/mcp-spawn-tee/dist/index.js +2 -2
  100. package/payload/platform/lib/mcp-spawn-tee/src/index.ts +2 -2
  101. package/payload/platform/lib/mcp-stderr-tee/dist/index.d.ts +1 -1
  102. package/payload/platform/lib/mcp-stderr-tee/dist/index.js +4 -4
  103. package/payload/platform/lib/mcp-stderr-tee/dist/index.js.map +1 -1
  104. package/payload/platform/lib/mcp-stderr-tee/src/index.ts +4 -4
  105. package/payload/platform/lib/oauth-llm/dist/index.d.ts +4 -4
  106. package/payload/platform/lib/oauth-llm/dist/index.js +3 -3
  107. package/payload/platform/lib/oauth-llm/dist/index.js.map +1 -1
  108. package/payload/platform/lib/oauth-llm/src/index.ts +6 -6
  109. package/payload/platform/lib/persistent-components/dist/index.d.ts +1 -1
  110. package/payload/platform/lib/persistent-components/dist/index.js +1 -1
  111. package/payload/platform/lib/persistent-components/src/index.ts +1 -1
  112. package/payload/platform/lib/task-secrets/dist/index.js +1 -1
  113. package/payload/platform/lib/task-secrets/dist/index.js.map +1 -1
  114. package/payload/platform/lib/task-secrets/src/__tests__/redact-secrets.test.ts +1 -1
  115. package/payload/platform/lib/task-secrets/src/index.ts +1 -1
  116. package/payload/platform/neo4j/edge-annotations.json +9 -9
  117. package/payload/platform/neo4j/schema.cypher +32 -33
  118. package/payload/platform/package.json +2 -2
  119. package/payload/platform/plugins/admin/PLUGIN.md +0 -2
  120. package/payload/platform/plugins/admin/hooks/__tests__/archive-ingest-surface-gate.test.sh +4 -4
  121. package/payload/platform/plugins/admin/hooks/__tests__/playwright-file-guard.test.sh +1 -1
  122. package/payload/platform/plugins/admin/hooks/__tests__/pre-tool-use-base64-guard.test.sh +1 -1
  123. package/payload/platform/plugins/admin/hooks/archive-ingest-surface-gate.sh +13 -13
  124. package/payload/platform/plugins/admin/hooks/pre-tool-use.sh +7 -7
  125. package/payload/platform/plugins/admin/mcp/dist/__tests__/plugin-read-skill-resolution.test.js +2 -2
  126. package/payload/platform/plugins/admin/mcp/dist/__tests__/plugin-read-skill-resolution.test.js.map +1 -1
  127. package/payload/platform/plugins/admin/mcp/dist/__tests__/public-hostname.test.js +1 -1
  128. package/payload/platform/plugins/admin/mcp/dist/__tests__/public-hostname.test.js.map +1 -1
  129. package/payload/platform/plugins/admin/mcp/dist/__tests__/skill-load-required-inputs.test.js +2 -2
  130. package/payload/platform/plugins/admin/mcp/dist/__tests__/skill-load-required-inputs.test.js.map +1 -1
  131. package/payload/platform/plugins/admin/mcp/dist/__tests__/skill-load.test.js +1 -1
  132. package/payload/platform/plugins/admin/mcp/dist/__tests__/skill-load.test.js.map +1 -1
  133. package/payload/platform/plugins/admin/mcp/dist/index.js +38 -65
  134. package/payload/platform/plugins/admin/mcp/dist/index.js.map +1 -1
  135. package/payload/platform/plugins/admin/mcp/dist/lib/neo4j.js +2 -2
  136. package/payload/platform/plugins/admin/mcp/dist/lib/neo4j.js.map +1 -1
  137. package/payload/platform/plugins/admin/mcp/dist/lib/public-hostname.js +2 -2
  138. package/payload/platform/plugins/admin/mcp/dist/lib/public-hostname.js.map +1 -1
  139. package/payload/platform/plugins/admin/mcp/dist/skill-resolution.js +5 -5
  140. package/payload/platform/plugins/admin/mcp/dist/skill-resolution.js.map +1 -1
  141. package/payload/platform/plugins/admin/skills/plugin-management/SKILL.md +1 -1
  142. package/payload/platform/plugins/admin/skills/public-agent-manager/SKILL.md +0 -1
  143. package/payload/platform/plugins/admin/skills/publish-site/SKILL.md +1 -1
  144. package/payload/platform/plugins/admin/skills/unzip-attachment/SKILL.md +2 -2
  145. package/payload/platform/plugins/cloudflare/mcp/dist/index.js +1 -1
  146. package/payload/platform/plugins/cloudflare/mcp/dist/index.js.map +1 -1
  147. package/payload/platform/plugins/cloudflare/mcp/dist/lib/cloudflared.d.ts +1 -1
  148. package/payload/platform/plugins/cloudflare/mcp/dist/lib/cloudflared.js +6 -6
  149. package/payload/platform/plugins/cloudflare/mcp/dist/lib/cloudflared.js.map +1 -1
  150. package/payload/platform/plugins/cloudflare/mcp/dist/lib/setup-orchestrator.d.ts +2 -2
  151. package/payload/platform/plugins/cloudflare/mcp/dist/lib/setup-orchestrator.js +2 -2
  152. package/payload/platform/plugins/cloudflare/references/dashboard-guide.md +1 -1
  153. package/payload/platform/plugins/cloudflare/references/manual-setup.md +4 -4
  154. package/payload/platform/plugins/cloudflare/scripts/__tests__/tunnel-ingress.test.ts +1 -1
  155. package/payload/platform/plugins/cloudflare/scripts/_stream-log.sh +8 -8
  156. package/payload/platform/plugins/cloudflare/scripts/list-cf-domains.sh +2 -2
  157. package/payload/platform/plugins/cloudflare/scripts/list-cf-domains.ts +16 -16
  158. package/payload/platform/plugins/cloudflare/scripts/reset-tunnel.sh +1 -1
  159. package/payload/platform/plugins/cloudflare/scripts/setup-tunnel.sh +28 -28
  160. package/payload/platform/plugins/cloudflare/scripts/tunnel-ingress.ts +5 -5
  161. package/payload/platform/plugins/cloudflare/skills/setup-tunnel/SKILL.md +3 -3
  162. package/payload/platform/plugins/contacts/mcp/dist/lib/neo4j.js +2 -2
  163. package/payload/platform/plugins/contacts/mcp/dist/lib/neo4j.js.map +1 -1
  164. package/payload/platform/plugins/contacts/mcp/dist/lib/resolve-person.d.ts +1 -1
  165. package/payload/platform/plugins/contacts/mcp/dist/lib/resolve-person.js +1 -1
  166. package/payload/platform/plugins/contacts/mcp/dist/tools/contact-create.js +2 -2
  167. package/payload/platform/plugins/contacts/mcp/dist/tools/contact-create.js.map +1 -1
  168. package/payload/platform/plugins/contacts/mcp/dist/tools/group-create.js +1 -1
  169. package/payload/platform/plugins/contacts/mcp/dist/tools/group-create.js.map +1 -1
  170. package/payload/platform/plugins/docs/references/deployment.md +30 -1
  171. package/payload/platform/plugins/docs/references/plugins-guide.md +2 -5
  172. package/payload/platform/plugins/docs/references/troubleshooting.md +3 -3
  173. package/payload/platform/plugins/email/mcp/dist/index.js +1 -1
  174. package/payload/platform/plugins/email/mcp/dist/index.js.map +1 -1
  175. package/payload/platform/plugins/email/mcp/dist/lib/claude-bridge.js +2 -2
  176. package/payload/platform/plugins/email/mcp/dist/lib/claude-bridge.js.map +1 -1
  177. package/payload/platform/plugins/email/mcp/dist/lib/credentials.d.ts +1 -1
  178. package/payload/platform/plugins/email/mcp/dist/lib/credentials.js +1 -1
  179. package/payload/platform/plugins/email/mcp/dist/lib/neo4j.js +2 -2
  180. package/payload/platform/plugins/email/mcp/dist/lib/neo4j.js.map +1 -1
  181. package/payload/platform/plugins/email/mcp/dist/lib/screening.d.ts +1 -1
  182. package/payload/platform/plugins/email/mcp/dist/lib/screening.js +1 -1
  183. package/payload/platform/plugins/email/mcp/dist/scripts/email-auto-respond.js +6 -6
  184. package/payload/platform/plugins/email/mcp/dist/scripts/email-auto-respond.js.map +1 -1
  185. package/payload/platform/plugins/email/mcp/dist/scripts/email-fetch.d.ts +1 -1
  186. package/payload/platform/plugins/email/mcp/dist/scripts/email-fetch.js +2 -2
  187. package/payload/platform/plugins/email/mcp/dist/scripts/email-fetch.js.map +1 -1
  188. package/payload/platform/plugins/email/references/email-reference.md +2 -2
  189. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.js +3 -3
  190. package/payload/platform/plugins/loop/mcp/dist/lib/neo4j.js.map +1 -1
  191. package/payload/platform/plugins/loop/mcp/src/lib/neo4j.ts +3 -3
  192. package/payload/platform/plugins/memory/bin/conversation-archive-ingest.mjs +24 -24
  193. package/payload/platform/plugins/memory/bin/conversation-archive-ingest.sh +6 -6
  194. package/payload/platform/plugins/memory/mcp/dist/index.js +8 -8
  195. package/payload/platform/plugins/memory/mcp/dist/index.js.map +1 -1
  196. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/llm-classifier.test.js +33 -33
  197. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/llm-classifier.test.js.map +1 -1
  198. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-loader.test.js +12 -12
  199. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-loader.test.js.map +1 -1
  200. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-validator.test.js +3 -3
  201. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-validator.test.js.map +1 -1
  202. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/types.js +2 -2
  203. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/types.js.map +1 -1
  204. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/whatsapp-text.d.ts.map +1 -1
  205. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/whatsapp-text.js +1 -1
  206. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-normalisers/whatsapp-text.js.map +1 -1
  207. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/derive-keys.d.ts.map +1 -1
  208. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/derive-keys.js +1 -2
  209. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/derive-keys.js.map +1 -1
  210. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/sender-bind.js +2 -2
  211. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/sender-bind.js.map +1 -1
  212. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/to-turn-text.js +1 -1
  213. package/payload/platform/plugins/memory/mcp/dist/lib/conversation-pipeline/to-turn-text.js.map +1 -1
  214. package/payload/platform/plugins/memory/mcp/dist/lib/document-chunker.d.ts +2 -2
  215. package/payload/platform/plugins/memory/mcp/dist/lib/document-chunker.js +2 -2
  216. package/payload/platform/plugins/memory/mcp/dist/lib/document-hierarchy.js +6 -6
  217. package/payload/platform/plugins/memory/mcp/dist/lib/document-hierarchy.js.map +1 -1
  218. package/payload/platform/plugins/memory/mcp/dist/lib/graph-prune.d.ts +1 -1
  219. package/payload/platform/plugins/memory/mcp/dist/lib/graph-prune.js +1 -1
  220. package/payload/platform/plugins/memory/mcp/dist/lib/graph-write-gate.d.ts +2 -2
  221. package/payload/platform/plugins/memory/mcp/dist/lib/graph-write-gate.js +7 -7
  222. package/payload/platform/plugins/memory/mcp/dist/lib/graph-write-gate.js.map +1 -1
  223. package/payload/platform/plugins/memory/mcp/dist/lib/live-schema-source.d.ts +2 -2
  224. package/payload/platform/plugins/memory/mcp/dist/lib/live-schema-source.js +2 -2
  225. package/payload/platform/plugins/memory/mcp/dist/lib/llm-classifier.d.ts +9 -9
  226. package/payload/platform/plugins/memory/mcp/dist/lib/llm-classifier.d.ts.map +1 -1
  227. package/payload/platform/plugins/memory/mcp/dist/lib/llm-classifier.js +25 -25
  228. package/payload/platform/plugins/memory/mcp/dist/lib/llm-classifier.js.map +1 -1
  229. package/payload/platform/plugins/memory/mcp/dist/lib/llm-ranker.d.ts +1 -1
  230. package/payload/platform/plugins/memory/mcp/dist/lib/llm-ranker.js +5 -5
  231. package/payload/platform/plugins/memory/mcp/dist/lib/llm-ranker.js.map +1 -1
  232. package/payload/platform/plugins/memory/mcp/dist/lib/neo4j.js +2 -2
  233. package/payload/platform/plugins/memory/mcp/dist/lib/neo4j.js.map +1 -1
  234. package/payload/platform/plugins/memory/mcp/dist/lib/schema-loader.d.ts +4 -4
  235. package/payload/platform/plugins/memory/mcp/dist/lib/schema-loader.js +3 -3
  236. package/payload/platform/plugins/memory/mcp/dist/lib/schema-loader.js.map +1 -1
  237. package/payload/platform/plugins/memory/mcp/dist/lib/schema-validator.d.ts +3 -3
  238. package/payload/platform/plugins/memory/mcp/dist/lib/schema-validator.js +5 -5
  239. package/payload/platform/plugins/memory/mcp/dist/lib/schema-validator.js.map +1 -1
  240. package/payload/platform/plugins/memory/mcp/dist/lib/uuid.js +1 -1
  241. package/payload/platform/plugins/memory/mcp/dist/lib/uuid.js.map +1 -1
  242. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-derive-insights.test.js +5 -5
  243. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-derive-insights.test.js.map +1 -1
  244. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-enrich-rejection.test.js +1 -1
  245. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-archive-enrich-rejection.test.js.map +1 -1
  246. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-normalisers-source-agnosticism.test.js +2 -2
  247. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-normalisers-source-agnosticism.test.js.map +1 -1
  248. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-normalisers-whatsapp-text.test.js +4 -4
  249. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/conversation-normalisers-whatsapp-text.test.js.map +1 -1
  250. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-archive-write.test.js +6 -6
  251. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-archive-write.test.js.map +1 -1
  252. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest.test.js +7 -7
  253. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/memory-ingest.test.js.map +1 -1
  254. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-not-applicable.test.js +2 -2
  255. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-not-applicable.test.js.map +1 -1
  256. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-personfields-open.test.js +3 -3
  257. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-personfields-open.test.js.map +1 -1
  258. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.d.ts +1 -1
  259. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.js +3 -3
  260. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-derive-insights.js.map +1 -1
  261. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-enrich-rejection.d.ts +1 -1
  262. package/payload/platform/plugins/memory/mcp/dist/tools/conversation-archive-enrich-rejection.js +1 -1
  263. package/payload/platform/plugins/memory/mcp/dist/tools/memory-archive-write.js +2 -2
  264. package/payload/platform/plugins/memory/mcp/dist/tools/memory-archive-write.js.map +1 -1
  265. package/payload/platform/plugins/memory/mcp/dist/tools/memory-classify.d.ts +1 -1
  266. package/payload/platform/plugins/memory/mcp/dist/tools/memory-classify.js +1 -1
  267. package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.d.ts +2 -2
  268. package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.js +1 -1
  269. package/payload/platform/plugins/memory/mcp/dist/tools/memory-delete.js.map +1 -1
  270. package/payload/platform/plugins/memory/mcp/dist/tools/memory-find-candidates.d.ts +3 -3
  271. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest-extract.js +2 -2
  272. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest-extract.js.map +1 -1
  273. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.d.ts +9 -9
  274. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.d.ts.map +1 -1
  275. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.js +10 -11
  276. package/payload/platform/plugins/memory/mcp/dist/tools/memory-ingest.js.map +1 -1
  277. package/payload/platform/plugins/memory/mcp/dist/tools/memory-list-attachments.js +1 -1
  278. package/payload/platform/plugins/memory/mcp/dist/tools/memory-list-attachments.js.map +1 -1
  279. package/payload/platform/plugins/memory/mcp/dist/tools/memory-search.js +1 -1
  280. package/payload/platform/plugins/memory/mcp/dist/tools/memory-search.js.map +1 -1
  281. package/payload/platform/plugins/memory/mcp/dist/tools/memory-update.js +1 -1
  282. package/payload/platform/plugins/memory/mcp/dist/tools/memory-update.js.map +1 -1
  283. package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.d.ts +1 -1
  284. package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.js +3 -3
  285. package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.js.map +1 -1
  286. package/payload/platform/plugins/memory/mcp/dist/tools/profile-read.js +9 -9
  287. package/payload/platform/plugins/memory/mcp/dist/tools/profile-read.js.map +1 -1
  288. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.d.ts +5 -5
  289. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.js +9 -9
  290. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.js.map +1 -1
  291. package/payload/platform/plugins/memory/mcp/scripts/boot-smoke.sh +1 -1
  292. package/payload/platform/plugins/memory/mcp/scripts/graph/fixture.cypher +1 -1
  293. package/payload/platform/plugins/memory/mcp/vitest.config.ts +2 -2
  294. package/payload/platform/plugins/outlook/mcp/dist/lib/graph-client.js +1 -1
  295. package/payload/platform/plugins/outlook/mcp/dist/lib/graph-client.js.map +1 -1
  296. package/payload/platform/plugins/outlook/mcp/scripts/verify-doc-impl.sh +1 -1
  297. package/payload/platform/plugins/scheduling/PLUGIN.md +1 -1
  298. package/payload/platform/plugins/scheduling/mcp/dist/__tests__/time-resolve-description.test.js +1 -1
  299. package/payload/platform/plugins/scheduling/mcp/dist/__tests__/time-resolve-description.test.js.map +1 -1
  300. package/payload/platform/plugins/scheduling/mcp/dist/index.js +1 -1
  301. package/payload/platform/plugins/scheduling/mcp/dist/index.js.map +1 -1
  302. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/getUserTimezone.test.js +3 -3
  303. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/getUserTimezone.test.js.map +1 -1
  304. package/payload/platform/plugins/scheduling/mcp/dist/lib/neo4j.d.ts +2 -2
  305. package/payload/platform/plugins/scheduling/mcp/dist/lib/neo4j.js +5 -5
  306. package/payload/platform/plugins/scheduling/mcp/dist/lib/neo4j.js.map +1 -1
  307. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.d.ts +1 -1
  308. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js +6 -6
  309. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js.map +1 -1
  310. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js +1 -1
  311. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js.map +1 -1
  312. package/payload/platform/plugins/tasks/mcp/dist/index.js +1 -1
  313. package/payload/platform/plugins/tasks/mcp/dist/index.js.map +1 -1
  314. package/payload/platform/plugins/tasks/mcp/dist/lib/neo4j.js +2 -2
  315. package/payload/platform/plugins/tasks/mcp/dist/lib/neo4j.js.map +1 -1
  316. package/payload/platform/plugins/tasks/mcp/dist/tools/project-create.js +2 -2
  317. package/payload/platform/plugins/tasks/mcp/dist/tools/project-create.js.map +1 -1
  318. package/payload/platform/plugins/tasks/mcp/dist/tools/session-name.d.ts +1 -1
  319. package/payload/platform/plugins/tasks/mcp/dist/tools/session-name.d.ts.map +1 -1
  320. package/payload/platform/plugins/tasks/mcp/dist/tools/task-create.d.ts +5 -5
  321. package/payload/platform/plugins/tasks/mcp/dist/tools/task-create.js +3 -3
  322. package/payload/platform/plugins/tasks/mcp/dist/tools/task-create.js.map +1 -1
  323. package/payload/platform/plugins/tasks/mcp/dist/tools/task-update.d.ts +4 -4
  324. package/payload/platform/plugins/tasks/mcp/dist/tools/task-update.js +2 -2
  325. package/payload/platform/plugins/tasks/mcp/dist/tools/task-update.js.map +1 -1
  326. package/payload/platform/plugins/telegram/mcp/dist/tools/message-history.js +2 -2
  327. package/payload/platform/plugins/telegram/mcp/dist/tools/message-history.js.map +1 -1
  328. package/payload/platform/plugins/waitlist/mcp/dist/lib/neo4j.js +2 -2
  329. package/payload/platform/plugins/waitlist/mcp/dist/lib/neo4j.js.map +1 -1
  330. package/payload/platform/plugins/waitlist/mcp/dist/tools/__tests__/waitlist-persist.test.js +3 -3
  331. package/payload/platform/plugins/waitlist/mcp/dist/tools/__tests__/waitlist-persist.test.js.map +1 -1
  332. package/payload/platform/plugins/waitlist/mcp/dist/tools/waitlist-persist.d.ts +1 -1
  333. package/payload/platform/plugins/waitlist/mcp/dist/tools/waitlist-persist.js +3 -3
  334. package/payload/platform/plugins/waitlist/mcp/dist/tools/waitlist-persist.js.map +1 -1
  335. package/payload/platform/plugins/waitlist/mcp/dist/tools/waitlist-setup.js +5 -5
  336. package/payload/platform/plugins/waitlist/mcp/dist/tools/waitlist-setup.js.map +1 -1
  337. package/payload/platform/plugins/whatsapp/mcp/dist/call-api.d.ts +1 -1
  338. package/payload/platform/plugins/whatsapp/mcp/dist/call-api.js +1 -1
  339. package/payload/platform/plugins/workflows/mcp/dist/index.js +1 -1
  340. package/payload/platform/plugins/workflows/mcp/dist/index.js.map +1 -1
  341. package/payload/platform/plugins/workflows/mcp/dist/lib/active-runs.d.ts +1 -1
  342. package/payload/platform/plugins/workflows/mcp/dist/lib/active-runs.js +1 -1
  343. package/payload/platform/plugins/workflows/mcp/dist/lib/llm-call.d.ts +1 -1
  344. package/payload/platform/plugins/workflows/mcp/dist/lib/neo4j.js +2 -2
  345. package/payload/platform/plugins/workflows/mcp/dist/lib/neo4j.js.map +1 -1
  346. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-create.js +1 -1
  347. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-create.js.map +1 -1
  348. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-execute.js +4 -4
  349. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-execute.js.map +1 -1
  350. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-update.js +1 -1
  351. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-update.js.map +1 -1
  352. package/payload/platform/plugins/workflows/mcp/test-workflows.sh +2 -2
  353. package/payload/platform/scripts/__tests__/first-token-creates-stream-log.test.sh +1 -1
  354. package/payload/platform/scripts/__tests__/logs-read-prefix.sh +6 -6
  355. package/payload/platform/scripts/admin-conversation-recover.mjs +5 -5
  356. package/payload/platform/scripts/admin-persist-audit.ts +4 -4
  357. package/payload/platform/scripts/check-no-conversation-id-leaks.mjs +1 -1
  358. package/payload/platform/scripts/check-no-direct-clipboard.mjs +1 -1
  359. package/payload/platform/scripts/check-no-task-id-leaks.mjs +2 -2
  360. package/payload/platform/scripts/check-skill-load-coverage.mjs +1 -1
  361. package/payload/platform/scripts/component-knowledgedoc-backfill.ts +1 -1
  362. package/payload/platform/scripts/dedupe-userprofile-ghosts.sh +2 -2
  363. package/payload/platform/scripts/generate-entitlement-fixture.mjs +1 -1
  364. package/payload/platform/scripts/installer-device-verify.sh +6 -6
  365. package/payload/platform/scripts/lib/resolve-account-dir.sh +6 -6
  366. package/payload/platform/scripts/log-adherence-check.sh +3 -3
  367. package/payload/platform/scripts/logs-read.sh +13 -13
  368. package/payload/platform/scripts/logs-read.test.sh +1 -1
  369. package/payload/platform/scripts/migrate-import.sh +4 -4
  370. package/payload/platform/scripts/redact-install-logs.sh +1 -1
  371. package/payload/platform/scripts/seed-neo4j.sh +26 -32
  372. package/payload/platform/scripts/test-laptop-vnc-boot.sh +3 -3
  373. package/payload/platform/scripts/verify-skill-tool-surface.sh +17 -2
  374. package/payload/platform/scripts/vnc.sh +9 -9
  375. package/payload/platform/services/claude-session-manager/dist/config.d.ts +15 -1
  376. package/payload/platform/services/claude-session-manager/dist/config.d.ts.map +1 -1
  377. package/payload/platform/services/claude-session-manager/dist/config.js +43 -2
  378. package/payload/platform/services/claude-session-manager/dist/config.js.map +1 -1
  379. package/payload/platform/services/claude-session-manager/dist/http-server.d.ts +2 -2
  380. package/payload/platform/services/claude-session-manager/dist/http-server.d.ts.map +1 -1
  381. package/payload/platform/services/claude-session-manager/dist/http-server.js +133 -90
  382. package/payload/platform/services/claude-session-manager/dist/http-server.js.map +1 -1
  383. package/payload/platform/services/claude-session-manager/dist/index.js +21 -3
  384. package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
  385. package/payload/platform/services/claude-session-manager/dist/jsonl-enumerator.d.ts +2 -2
  386. package/payload/platform/services/claude-session-manager/dist/jsonl-enumerator.d.ts.map +1 -1
  387. package/payload/platform/services/claude-session-manager/dist/jsonl-enumerator.js +4 -4
  388. package/payload/platform/services/claude-session-manager/dist/jsonl-enumerator.js.map +1 -1
  389. package/payload/platform/services/claude-session-manager/dist/jsonl-observer.js +1 -1
  390. package/payload/platform/services/claude-session-manager/dist/jsonl-observer.js.map +1 -1
  391. package/payload/platform/services/claude-session-manager/dist/jsonl-path.js +2 -2
  392. package/payload/platform/services/claude-session-manager/dist/jsonl-path.js.map +1 -1
  393. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts +42 -17
  394. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
  395. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +116 -48
  396. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
  397. package/payload/platform/services/claude-session-manager/dist/public-tool-audit.js +1 -1
  398. package/payload/platform/services/claude-session-manager/dist/public-tool-audit.js.map +1 -1
  399. package/payload/platform/services/claude-session-manager/dist/session-store.d.ts +36 -11
  400. package/payload/platform/services/claude-session-manager/dist/session-store.d.ts.map +1 -1
  401. package/payload/platform/services/claude-session-manager/dist/session-store.js +53 -2
  402. package/payload/platform/services/claude-session-manager/dist/session-store.js.map +1 -1
  403. package/payload/platform/services/claude-session-manager/dist/spawn-rate-limiter.js +2 -2
  404. package/payload/platform/services/claude-session-manager/dist/spawn-rate-limiter.js.map +1 -1
  405. package/payload/platform/services/claude-session-manager/dist/system-prompt.d.ts +60 -1
  406. package/payload/platform/services/claude-session-manager/dist/system-prompt.d.ts.map +1 -1
  407. package/payload/platform/services/claude-session-manager/dist/system-prompt.js +169 -11
  408. package/payload/platform/services/claude-session-manager/dist/system-prompt.js.map +1 -1
  409. package/payload/platform/services/claude-session-manager/dist/tool-surface.js +1 -1
  410. package/payload/platform/services/claude-session-manager/dist/tool-surface.js.map +1 -1
  411. package/payload/platform/services/claude-session-manager/dist/types.d.ts +8 -1
  412. package/payload/platform/services/claude-session-manager/dist/types.d.ts.map +1 -1
  413. package/payload/platform/services/claude-session-manager/dist/url-capture.js +1 -1
  414. package/payload/platform/services/claude-session-manager/dist/url-capture.js.map +1 -1
  415. package/payload/platform/templates/agents/admin/IDENTITY.md +14 -0
  416. package/payload/platform/templates/agents/admin/SOUL.md +1 -3
  417. package/payload/platform/templates/specialists/agents/personal-assistant.md +1 -3
  418. package/payload/platform/templates/specialists/agents/project-manager.md +1 -1
  419. package/payload/platform/templates/systemd/edge.service.template +3 -3
  420. package/payload/premium-plugins/real-agent/BUNDLE.md +2 -4
  421. package/payload/premium-plugins/real-agent/plugins/.claude-plugin/marketplace.json +0 -5
  422. package/payload/premium-plugins/real-agent/plugins/loop/mcp/dist/lib/neo4j.js +3 -3
  423. package/payload/premium-plugins/real-agent/plugins/loop/mcp/dist/lib/neo4j.js.map +1 -1
  424. package/payload/premium-plugins/real-agent/plugins/loop/mcp/src/lib/neo4j.ts +3 -3
  425. package/payload/server/{chunk-ZGJ6CUU2.js → chunk-3G6JMV7N.js} +1 -1
  426. package/payload/server/{chunk-KVGTWNKQ.js → chunk-NNHHGQJL.js} +314 -5
  427. package/payload/server/{chunk-RZQMYJVY.js → chunk-QC5LHYPH.js} +3 -3
  428. package/payload/server/{cloudflare-task-tracker-4PKOLE4H.js → cloudflare-task-tracker-NEB3X6O2.js} +2 -2
  429. package/payload/server/maxy-edge.js +2 -2
  430. package/payload/server/public/assets/{admin-Cuu1QdAA.js → admin-CF2ZQvXu.js} +1 -1
  431. package/payload/server/public/index.html +1 -1
  432. package/payload/server/server.js +274 -396
  433. package/payload/platform/plugins/anthropic/.claude-plugin/plugin.json +0 -8
  434. package/payload/platform/plugins/anthropic/PLUGIN.md +0 -40
  435. package/payload/platform/plugins/anthropic/references/console-api.md +0 -186
  436. package/payload/platform/plugins/anthropic/references/setup-guide.md +0 -36
  437. package/payload/platform/plugins/anthropic/skills/get-api-key/SKILL.md +0 -136
  438. package/payload/platform/plugins/estate-onboarding/.claude-plugin/plugin.json +0 -8
  439. package/payload/platform/plugins/estate-onboarding/PLUGIN.md +0 -30
  440. package/payload/platform/plugins/estate-onboarding/skills/bootstrap/SKILL.md +0 -26
  441. package/payload/platform/plugins/estate-onboarding/skills/bootstrap/references/onboarding-flow.md +0 -63
  442. package/payload/premium-plugins/real-agent/plugins/estate-onboarding/.claude-plugin/plugin.json +0 -8
  443. package/payload/premium-plugins/real-agent/plugins/estate-onboarding/PLUGIN.md +0 -30
  444. package/payload/premium-plugins/real-agent/plugins/estate-onboarding/skills/bootstrap/SKILL.md +0 -26
  445. package/payload/premium-plugins/real-agent/plugins/estate-onboarding/skills/bootstrap/references/onboarding-flow.md +0 -63
@@ -82,7 +82,7 @@
82
82
  },
83
83
  "REFERENCES": {
84
84
  "direction": "(Message|KnowledgeDocument|Task)-[:REFERENCES]->(*)",
85
- "note": "Soft reference link. Task 892 added `Task` as a source: derived-insight tasks created from a `:Section:Conversation` chunk record their provenance via (:Task)-[:REFERENCES]->(:Section:Conversation) with a `contentHash` merge-key for idempotent re-runs."
85
+ "note": "Soft reference link. `Task` is a valid source: derived-insight tasks created from a `:Section:Conversation` chunk record their provenance via (:Task)-[:REFERENCES]->(:Section:Conversation) with a `contentHash` merge-key for idempotent re-runs."
86
86
  },
87
87
  "ABOUT": {
88
88
  "direction": "(Review|Message)-[:ABOUT]->(*)",
@@ -102,35 +102,35 @@
102
102
  },
103
103
  "OBSERVED_IN": {
104
104
  "direction": "(*)-[:OBSERVED_IN]->(Conversation)",
105
- "note": "Observation provenance. Task 892: `:Section:Conversation` chunks (which carry the Conversation label) are valid OBSERVED_IN targets, so (:Preference)-[:OBSERVED_IN]->(:Section:Conversation) pattern-matches this annotation."
105
+ "note": "Observation provenance. `:Section:Conversation` chunks (which carry the Conversation label) are valid OBSERVED_IN targets, so (:Preference)-[:OBSERVED_IN]->(:Section:Conversation) pattern-matches this annotation."
106
106
  },
107
107
  "MENTIONS": {
108
108
  "direction": "(Section|Message|KnowledgeDocument)-[:MENTIONS]->(Person|Organization)",
109
- "note": "Named entity reference. Task 892 added `Section` (typically Section:Conversation) as a source so chunk-anchored insight derivation can record who a transcript chunk mentions. KnowledgeDocument-source MENTIONS is the document-ingest path; Message-source MENTIONS is reserved for future per-message extraction."
109
+ "note": "Named entity reference. `Section` (typically Section:Conversation) is a valid source so chunk-anchored insight derivation can record who a transcript chunk mentions. KnowledgeDocument-source MENTIONS is the document-ingest path; Message-source MENTIONS is reserved for future per-message extraction."
110
110
  },
111
111
  "RELATED_TO": {
112
112
  "direction": "(Person|Organization)-[:RELATED_TO]->(Person|Organization)",
113
- "note": "Operator-confirmed relationship between two named entities derived from a transcript chunk (Task 892). Carries `operatorConfirmed: true` plus `relationshipType` naming the specific bond (`broker`, `colleague`, `referrer`, …). Distinct from typed edges like AUTHORED_BY or PARTICIPANT — RELATED_TO is the generic surface for relationships the operator confirmed at enrich time."
113
+ "note": "Operator-confirmed relationship between two named entities derived from a transcript chunk. Carries `operatorConfirmed: true` plus `relationshipType` naming the specific bond (`broker`, `colleague`, `referrer`, …). Distinct from typed edges like AUTHORED_BY or PARTICIPANT — RELATED_TO is the generic surface for relationships the operator confirmed at enrich time."
114
114
  },
115
115
  "HAS_IDENTITY": {
116
116
  "direction": "(Agent)-[:HAS_IDENTITY]->(KnowledgeDocument)",
117
- "note": "Task 837 — public-agent IDENTITY.md projection (KnowledgeDocument with role='identity', namespaced attachmentId='agent:<slug>:identity')."
117
+ "note": "public-agent IDENTITY.md projection (KnowledgeDocument with role='identity', namespaced attachmentId='agent:<slug>:identity')."
118
118
  },
119
119
  "HAS_SOUL": {
120
120
  "direction": "(Agent)-[:HAS_SOUL]->(KnowledgeDocument)",
121
- "note": "Task 837 — public-agent SOUL.md projection (role='soul')."
121
+ "note": "public-agent SOUL.md projection (role='soul')."
122
122
  },
123
123
  "HAS_KNOWLEDGE": {
124
124
  "direction": "(Agent)-[:HAS_KNOWLEDGE]->(KnowledgeDocument)",
125
- "note": "Task 837 — public-agent KNOWLEDGE.md projection (role='knowledge'); KNOWLEDGE-SUMMARY.md uses the same edge with role='knowledge-summary'."
125
+ "note": "public-agent KNOWLEDGE.md projection (role='knowledge'); KNOWLEDGE-SUMMARY.md uses the same edge with role='knowledge-summary'."
126
126
  },
127
127
  "USES_KNOWLEDGE": {
128
128
  "direction": "(Agent)-[:USES_KNOWLEDGE]->(KnowledgeDocument)",
129
- "note": "Task 837 — operator-tagged docs (slug ∈ k.agents). Materialised at projection time only; runtime memory-search reads k.agents directly."
129
+ "note": "operator-tagged docs (slug ∈ k.agents). Materialised at projection time only; runtime memory-search reads k.agents directly."
130
130
  },
131
131
  "HANDLED_BY": {
132
132
  "direction": "(Conversation)-[:HANDLED_BY]->(Agent)",
133
- "note": "Task 837 — public conversations only. Written by ensureConversation via OPTIONAL MATCH so orphan slugs do not block conversation creation."
133
+ "note": "public conversations only. Written by ensureConversation via OPTIONAL MATCH so orphan slugs do not block conversation creation."
134
134
  }
135
135
  },
136
136
  "sublabels": {
@@ -201,8 +201,8 @@ OPTIONS {
201
201
  };
202
202
 
203
203
  // ----------------------------------------------------------
204
- // KnowledgeDocument / Section — single-Section document ingestion (Task 740,
205
- // replacing the Task 737 three-level KnowledgeDocument/Section/Chunk model).
204
+ // KnowledgeDocument / Section — single-Section document ingestion
205
+ // (replaces the three-level KnowledgeDocument/Section/Chunk model).
206
206
  //
207
207
  // KnowledgeDocument -[HAS_SECTION]-> Section
208
208
  // Section -[NEXT]-> Section (reading-order chain)
@@ -246,7 +246,7 @@ OPTIONS {
246
246
  }
247
247
  };
248
248
 
249
- // Pre-Task 740 :Chunk vector index — kept for backwards compatibility with
249
+ // earlier:Chunk vector index — kept for backwards compatibility with
250
250
  // Sections written before the writer rewrite. New ingests do not produce
251
251
  // :Chunk nodes; the index becomes inert once landfill is purged.
252
252
  CREATE VECTOR INDEX chunk_embedding IF NOT EXISTS
@@ -259,8 +259,8 @@ OPTIONS {
259
259
  };
260
260
 
261
261
  // ----------------------------------------------------------
262
- // ConversationArchive — chunked conversation archive (Task 894 generalises
263
- // Task 891). Source-agnostic: WhatsApp `_chat.txt`, Telegram, Signal,
262
+ // ConversationArchive — chunked conversation archive.
263
+ // Source-agnostic: WhatsApp `_chat.txt`, Telegram, Signal,
264
264
  // LinkedIn DMs, Zoom transcript, meeting minutes, iMessage, Slack — every
265
265
  // source flows through the same shape with `source` as the discriminator.
266
266
  //
@@ -300,7 +300,7 @@ OPTIONS {
300
300
  }
301
301
  };
302
302
 
303
- // Universal full-text BM25 index for hybrid keyword search (Task 748).
303
+ // Universal full-text BM25 index for hybrid keyword search.
304
304
  //
305
305
  // Every operator-meaningful label written by the platform is in the index union;
306
306
  // every textual property a writer assigns is in the property union. Neo4j silently
@@ -318,7 +318,7 @@ OPTIONS {
318
318
  // Label union — every operator-meaningful label:
319
319
  // - Business identity: LocalBusiness, Service, PriceSpecification, OpeningHoursSpecification, Organization
320
320
  // - People: Person, UserProfile, Preference, AdminUser, AccessGrant
321
- // - Knowledge: KnowledgeDocument, ConversationArchive (Task 891), Section, Chunk (legacy), DigitalDocument, CreativeWork,
321
+ // - Knowledge: KnowledgeDocument, ConversationArchive, Section, Chunk (legacy), DigitalDocument, CreativeWork,
322
322
  // Question, FAQPage, DefinedTerm, Review, ImageObject
323
323
  // - Conversational: Conversation, AdminConversation, PublicConversation, Message,
324
324
  // UserMessage, AssistantMessage, ToolCall
@@ -326,13 +326,13 @@ OPTIONS {
326
326
  // - Workflows: Workflow, WorkflowStep, WorkflowRun, StepResult
327
327
  // - Email: Email, EmailAccount
328
328
  // - CV/career sublabels: Position, Credential
329
- // - Public agents: Agent (Task 837 — projection of file-based public agents)
329
+ // - Public agents: Agent (projection of file-based public agents)
330
330
  //
331
331
  // Property union — every textual property the schema's writers assign:
332
332
  // - Generic: name, title, summary, body, content, text, description, headline, abstract,
333
333
  // note, label, value, message, preview, tagline
334
334
  // - Person: firstName, lastName, givenName, familyName, email,
335
- // currentTitle (Task 753 — denormalised from [:WORKS_FOR].title for
335
+ // currentTitle
336
336
  // LinkedIn imports, since edge properties are invisible to a
337
337
  // node-only fulltext index. `currentTitle` (not `title`) avoids
338
338
  // shadowing :Position.title semantics in cross-label cypher.)
@@ -342,7 +342,7 @@ OPTIONS {
342
342
  // - Credential: authority
343
343
  // - AccessGrant: contactValue
344
344
  // - ToolCall: toolName
345
- // - Agent (Task 837): displayName, slug, role
345
+ // - Agent: displayName, slug, role
346
346
  // `displayName` = operator-facing name; `slug` = directory-name identifier;
347
347
  // `role` = discriminator on KnowledgeDocument projections
348
348
  // ('identity'|'soul'|'knowledge'|'knowledge-summary') so BM25 hits surface
@@ -363,7 +363,7 @@ ON EACH [n.name, n.firstName, n.lastName, n.givenName, n.familyName,
363
363
  n.authority, n.contactValue, n.toolName,
364
364
  n.displayName, n.slug, n.role];
365
365
 
366
- // Project node (Task 740) — a standalone creative-output node distinct from
366
+ // Project node — a standalone creative-output node distinct from
367
367
  // :Section. Anchored via (:UserProfile)-[:CREATED]->(:Project), with optional
368
368
  // (:Project)-[:UNDER]->(:Organization) when the project was done at an org.
369
369
  // Written when a CV section classifies as `Project`.
@@ -388,7 +388,7 @@ OPTIONS {
388
388
  // Multiple Positions per UserProfile (career history); one Organization
389
389
  // may host many Positions across many UserProfiles. No unique constraint.
390
390
  // Written by the document-ingest skill when a CV section classifies as
391
- // `Position` (Task 737).
391
+ // `Position`.
392
392
  // ----------------------------------------------------------
393
393
 
394
394
  CREATE INDEX position_account IF NOT EXISTS
@@ -409,7 +409,7 @@ OPTIONS {
409
409
  // `accountId` property on the node itself — every read filters by it.
410
410
  // Public conversations carry a visitorId (browser cookie) and
411
411
  // agentSlug for session resume across page reloads and server restarts.
412
- // Task 621 — carries a `summary` string denormalised from the first
412
+ // carries a `summary` string denormalised from the first
413
413
  // user-role message (first 200 chars, set once, no overwrites) to
414
414
  // provide a stable human-identifiable label on the /graph canvas.
415
415
  // Conversations that never receive a user message (assistant-only
@@ -417,7 +417,7 @@ OPTIONS {
417
417
  // falls back to `Conv <shortId>` so empty conversations stay
418
418
  // distinguishable from each other.
419
419
  //
420
- // Task 633 — sublabels. Conversations written post-Task-633 carry one
420
+ // sublabels. Conversations written later carry one
421
421
  // of two sublabels alongside `:Conversation`:
422
422
  // :AdminConversation — agentType='admin' (operator-facing)
423
423
  // :PublicConversation — agentType='public' (customer-facing)
@@ -465,11 +465,11 @@ OPTIONS {
465
465
  // Message node — individual messages within a Conversation
466
466
  // Linked via (Message)-[:PART_OF]->(Conversation) to the parent.
467
467
  // Linked via (Message)-[:NEXT]->(Message) to the next message in
468
- // insertion order (Task 621). The chain is linear — one outgoing
468
+ // insertion order. The chain is linear — one outgoing
469
469
  // NEXT per message — so a Conversation with N messages has N-1
470
470
  // NEXT edges.
471
471
  //
472
- // Task 633 — sublabels. Messages written post-Task-633 carry one of
472
+ // sublabels. Messages written later carry one of
473
473
  // two sublabels alongside `:Message`, derived from `role`:
474
474
  // :UserMessage — role='user'
475
475
  // :AssistantMessage — role='assistant'
@@ -480,7 +480,7 @@ OPTIONS {
480
480
  // below applies to any Message node regardless of sublabel. Pre-Task-633
481
481
  // Messages stay unlabelled and render in the base :Message colour.
482
482
  //
483
- // Chain-fork invariant (Task 624): the write path in
483
+ // Chain-fork invariant: the write path in
484
484
  // platform/ui/app/lib/neo4j-store.ts#persistMessage holds a
485
485
  // per-conversationId async mutex around the Cypher that observes
486
486
  // the tail and CREATEs the new [:NEXT] edge. Without this, two
@@ -497,10 +497,9 @@ OPTIONS {
497
497
  CREATE CONSTRAINT message_id_unique IF NOT EXISTS
498
498
  FOR (m:Message) REQUIRE m.messageId IS UNIQUE;
499
499
 
500
- // Task 1007 — Message.sessionKey is the canonical conversation pointer.
501
- // The legacy m.conversationId index stays until follow-up Task 1011 (final
502
- // cutover, after the full code-rename slice lands and no path reads
503
- // m.conversationId).
500
+ // Message.sessionKey is the canonical conversation pointer.
501
+ // The legacy m.conversationId index stays until the final cutover, after the
502
+ // full code-rename slice lands and no path reads m.conversationId.
504
503
  CREATE INDEX message_conversation IF NOT EXISTS
505
504
  FOR (m:Message) ON (m.conversationId);
506
505
 
@@ -620,8 +619,8 @@ FOR (sr:StepResult) ON (sr.runId);
620
619
  // ----------------------------------------------------------
621
620
 
622
621
  // Composite unique constraint: one profile per admin per account.
623
- // Replaces the single-key accountId constraint (Task 249) and the
624
- // transitional name `user_profile_account_user_unique` (Task 792 — renamed
622
+ // Replaces the single-key accountId constraint and the
623
+ // transitional name `user_profile_account_user_unique`
625
624
  // for grep parity with the doctrine name in .docs/neo4j.md and the
626
625
  // per-bucket dedupe script). Old name dropped in seed-neo4j.sh MIGRATE_EOF.
627
626
  CREATE CONSTRAINT user_profile_unique_per_user IF NOT EXISTS
@@ -640,7 +639,7 @@ FOR (up:UserProfile) REQUIRE (up.accountId, up.userId) IS UNIQUE;
640
639
  // content, interaction
641
640
  //
642
641
  // Recognised optional properties:
643
- // notApplicable (boolean) — Task 888. When `true`, the Preference
642
+ // notApplicable (boolean). When `true`, the Preference
644
643
  // records that the user explicitly declared the (category, key)
645
644
  // does not apply to them. Counted as covered for the field-level
646
645
  // Coverage signal in `formatProfileSummary`; filtered from the
@@ -779,7 +778,7 @@ CREATE INDEX access_grant_status IF NOT EXISTS
779
778
  FOR (ag:AccessGrant) ON (ag.status);
780
779
 
781
780
  // ----------------------------------------------------------
782
- // Agent node — projection of file-based public agents (Task 837)
781
+ // Agent node — projection of file-based public agents
783
782
  //
784
783
  // Source of truth remains the filesystem: accountDir/agents/<slug>/
785
784
  // {config.json, IDENTITY.md, SOUL.md, KNOWLEDGE.md, KNOWLEDGE-SUMMARY.md}.
@@ -845,7 +844,7 @@ FOR (a:Agent) ON (a.accountId);
845
844
  // (not account-scoped). Linked to accounts via ADMIN_OF.
846
845
  //
847
846
  // Properties:
848
- // userId — UUID, matches entry in ~/<brand.configDir>/users.json (Task 904; pre-Task-904 path was platform/config/users.json)
847
+ // userId — UUID, matches entry in ~/<brand.configDir>/users.json (earlier path was platform/config/users.json)
849
848
  // name — display name (e.g. "Adam")
850
849
  // createdAt — ISO 8601 timestamp
851
850
  //
@@ -897,7 +896,7 @@ CREATE INDEX tool_call_account_started IF NOT EXISTS
897
896
  FOR (tc:ToolCall) ON (tc.accountId, tc.startedAt);
898
897
 
899
898
  // ----------------------------------------------------------
900
- // Component — Task 815 admin-resume rehydration.
899
+ // Component admin-resume rehydration.
901
900
  //
902
901
  // Each legacy component event emitted on an assistant turn (pre-066
903
902
  // admin agent surface only) produced one Component node linked to its
@@ -950,10 +949,10 @@ CREATE INDEX component_account IF NOT EXISTS
950
949
  FOR (c:Component) ON (c.accountId);
951
950
 
952
951
  // ----------------------------------------------------------
953
- // :Attachment — Task 854. Sibling node hung off a :Message via
952
+ //:Attachment. Sibling node hung off a:Message via
954
953
  // [:HAS_ATTACHMENT] capturing user-side file uploads (image, pdf,
955
954
  // text/markdown/csv/html, calendar, zip; see attachments.ts
956
- // SUPPORTED_MIME_TYPES). Mirrors :Component (Task 815).
955
+ // SUPPORTED_MIME_TYPES). Mirrors:Component.
957
956
  //
958
957
  // Properties:
959
958
  // attachmentId — UUID assigned at storeAttachment time; matches
@@ -984,7 +983,7 @@ CREATE INDEX attachment_account IF NOT EXISTS
984
983
  FOR (a:Attachment) ON (a.accountId);
985
984
 
986
985
  // ----------------------------------------------------------
987
- // :Trashed — Task 576 soft-delete primitive.
986
+ //:Trashed soft-delete primitive.
988
987
  //
989
988
  // Any node soft-deleted via memory-delete / contact-delete carries this
990
989
  // label plus trashedAt / trashedBy / trashReason / _trashedKeys properties.
@@ -1031,8 +1030,8 @@ CREATE INDEX credential_account IF NOT EXISTS
1031
1030
  FOR (c:Credential) ON (c.accountId);
1032
1031
 
1033
1032
  // ----------------------------------------------------------
1034
- // Provenance indexes (Task 800) — back the shim's per-write
1035
- // orphan check. Task 797's `executeWrite` runs an unanchored
1033
+ // Provenance indexes — back the shim's per-write
1034
+ // orphan check. the `executeWrite` runs an unanchored
1036
1035
  // `MATCH (n) WHERE n.createdBySession = $autoSession AND
1037
1036
  // n.createdAt >= $autoStartTimestamp AND NOT (n)--()` after
1038
1037
  // every operator write. Without an index this is `AllNodesScan`
@@ -1071,7 +1070,7 @@ CREATE INDEX task_created_by_session IF NOT EXISTS
1071
1070
  FOR (n:Task) ON (n.createdBySession);
1072
1071
 
1073
1072
  // ----------------------------------------------------------
1074
- // CloudflareTunnel / CloudflareHostname (Task 885) — graph audit of
1073
+ // CloudflareTunnel / CloudflareHostname — graph audit of
1075
1074
  // the tunnel-login deterministic flow. Written by the
1076
1075
  // /api/admin/cloudflare/setup endpoint after setup-tunnel.sh exits 0,
1077
1076
  // linked via (Task {kind:'cloudflare-tunnel-login'})-[:PRODUCED]->.
@@ -7,8 +7,8 @@
7
7
  "services/*"
8
8
  ],
9
9
  "scripts": {
10
- "build": "tsc -p lib/models/tsconfig.json && tsc -p lib/anthropic-key/tsconfig.json && tsc -p lib/oauth-llm/tsconfig.json && tsc -p lib/mcp-stderr-tee/tsconfig.json && tsc -p lib/mcp-spawn-tee/tsconfig.json && tsc -p lib/mcp-eager/tsconfig.json && tsc -p lib/account-enumeration/tsconfig.json && tsc -p lib/graph-write/tsconfig.json && tsc -p lib/graph-mcp/tsconfig.json && tsc -p lib/graph-trash/tsconfig.json && tsc -p lib/graph-search/tsconfig.json && tsc -p lib/screening-patterns/tsconfig.json && tsc -p lib/device-url/tsconfig.json && tsc -p lib/brand-templating/tsconfig.json && tsc -p lib/entitlement/tsconfig.json && tsc -p lib/task-secrets/tsconfig.json && tsc -p lib/admins-write/tsconfig.json && tsc -p lib/persistent-components/tsconfig.json && tsc -p services/claude-session-manager/tsconfig.json && NODE_OPTIONS='--max-old-space-size=8192' tsc -b plugins/*/mcp/tsconfig.json",
11
- "build:lib": "tsc -p lib/models/tsconfig.json && tsc -p lib/anthropic-key/tsconfig.json && tsc -p lib/oauth-llm/tsconfig.json && tsc -p lib/mcp-stderr-tee/tsconfig.json && tsc -p lib/mcp-spawn-tee/tsconfig.json && tsc -p lib/mcp-eager/tsconfig.json && tsc -p lib/account-enumeration/tsconfig.json && tsc -p lib/graph-write/tsconfig.json && tsc -p lib/graph-mcp/tsconfig.json && tsc -p lib/graph-trash/tsconfig.json && tsc -p lib/graph-search/tsconfig.json && tsc -p lib/screening-patterns/tsconfig.json && tsc -p lib/device-url/tsconfig.json && tsc -p lib/brand-templating/tsconfig.json && tsc -p lib/entitlement/tsconfig.json && tsc -p lib/task-secrets/tsconfig.json && tsc -p lib/admins-write/tsconfig.json && tsc -p lib/persistent-components/tsconfig.json",
10
+ "build": "tsc -p lib/models/tsconfig.json && tsc -p lib/oauth-llm/tsconfig.json && tsc -p lib/mcp-stderr-tee/tsconfig.json && tsc -p lib/mcp-spawn-tee/tsconfig.json && tsc -p lib/mcp-eager/tsconfig.json && tsc -p lib/account-enumeration/tsconfig.json && tsc -p lib/graph-write/tsconfig.json && tsc -p lib/graph-mcp/tsconfig.json && tsc -p lib/graph-trash/tsconfig.json && tsc -p lib/graph-search/tsconfig.json && tsc -p lib/screening-patterns/tsconfig.json && tsc -p lib/device-url/tsconfig.json && tsc -p lib/brand-templating/tsconfig.json && tsc -p lib/entitlement/tsconfig.json && tsc -p lib/task-secrets/tsconfig.json && tsc -p lib/admins-write/tsconfig.json && tsc -p lib/persistent-components/tsconfig.json && tsc -p services/claude-session-manager/tsconfig.json && NODE_OPTIONS='--max-old-space-size=8192' tsc -b plugins/*/mcp/tsconfig.json",
11
+ "build:lib": "tsc -p lib/models/tsconfig.json && tsc -p lib/oauth-llm/tsconfig.json && tsc -p lib/mcp-stderr-tee/tsconfig.json && tsc -p lib/mcp-spawn-tee/tsconfig.json && tsc -p lib/mcp-eager/tsconfig.json && tsc -p lib/account-enumeration/tsconfig.json && tsc -p lib/graph-write/tsconfig.json && tsc -p lib/graph-mcp/tsconfig.json && tsc -p lib/graph-trash/tsconfig.json && tsc -p lib/graph-search/tsconfig.json && tsc -p lib/screening-patterns/tsconfig.json && tsc -p lib/device-url/tsconfig.json && tsc -p lib/brand-templating/tsconfig.json && tsc -p lib/entitlement/tsconfig.json && tsc -p lib/task-secrets/tsconfig.json && tsc -p lib/admins-write/tsconfig.json && tsc -p lib/persistent-components/tsconfig.json",
12
12
  "build:memory": "tsc -p plugins/memory/mcp/tsconfig.json",
13
13
  "build:contacts": "tsc -p plugins/contacts/mcp/tsconfig.json",
14
14
  "build:telegram": "tsc -p plugins/telegram/mcp/tsconfig.json",
@@ -49,8 +49,6 @@ tools:
49
49
  hidden:
50
50
  - remote-auth-status
51
51
  - remote-auth-set-password
52
- - api-key-store
53
- - api-key-verify
54
52
  - qr-generate
55
53
  - wifi
56
54
  always: true
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env bash
2
- # Regression test for archive-ingest-surface-gate.sh (Task 855).
2
+ # Regression test for archive-ingest-surface-gate.sh.
3
3
  #
4
4
  # Covers:
5
5
  # Preserved-from-Task-846:
@@ -11,7 +11,7 @@
11
11
  # 6. UserPromptSubmit clears flag → normal allow resumes
12
12
  # 7. PostToolUse with isError:false → flag absent
13
13
  # 8. Stale flag (>600s) auto-clears
14
- # New (Task 855):
14
+ # New:
15
15
  # A. PreToolUse mcp__memory__whatsapp-export-parse → BLOCKED
16
16
  # B. PreToolUse mcp__memory__whatsapp-export-insight-write → BLOCKED
17
17
  # C. PreToolUse mcp__memory__memory-archive-write w/ archiveType=whatsapp-export → BLOCKED
@@ -77,7 +77,7 @@ run_case "Bash 'npm test' → BLOCKED" \
77
77
  '{"hook_event_name":"PreToolUse","tool_name":"Bash","tool_input":{"command":"npm test"}}' \
78
78
  2
79
79
 
80
- # New (Task 855) cases ----------------------------------------------------
80
+ # New cases ----------------------------------------------------
81
81
 
82
82
  run_case "PreToolUse mcp__memory__whatsapp-export-parse → BLOCKED" \
83
83
  '{"hook_event_name":"PreToolUse","tool_name":"mcp__memory__whatsapp-export-parse","tool_input":{"filePath":"/tmp/_chat.txt","accountId":"acct1","timezone":"Europe/London"}}' \
@@ -95,7 +95,7 @@ run_case "PreToolUse memory-archive-write w/ archiveType=linkedin-connections
95
95
  '{"hook_event_name":"PreToolUse","tool_name":"mcp__memory__memory-archive-write","tool_input":{"archiveType":"linkedin-connections","ownerNodeId":"x","accountId":"a","rows":[]}}' \
96
96
  0
97
97
 
98
- # Bypass attempts (Task 855 code-review C1): nested archiveType in rows[0]
98
+ # Bypass attempts (code-review C1): nested archiveType in rows[0]
99
99
  # or conversation must NOT defeat the block. The gate must read the
100
100
  # top-level tool_input.archiveType, not the first textual occurrence.
101
101
  run_case "BYPASS: nested rows[0].archiveType=linkedin + top-level archiveType=whatsapp-export → BLOCKED" \
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env bash
2
- # Regression test for playwright-file-guard.sh (Task 944).
2
+ # Regression test for playwright-file-guard.sh.
3
3
  #
4
4
  # Covers:
5
5
  # 1. file:// URL → hook emits hookSpecificOutput.updatedInput.url JSON,
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env bash
2
- # Regression test for the Task 983 base64 context-overflow guard.
2
+ # Regression test for the base64 context-overflow guard.
3
3
  #
4
4
  # Covers two PreToolUse rejection paths in pre-tool-use.sh:
5
5
  #
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env bash
2
- # Archive-ingest surface gate (Task 855, updated by Task 891, Task 892).
2
+ # Archive-ingest surface gate (updated).
3
3
  #
4
4
  # Five enforcements, one script — phase decided by `hook_event_name` on stdin.
5
- # Task 855 narrows the database-operator subagent's effective surface during
5
+ # narrows the database-operator subagent's effective surface during
6
6
  # WhatsApp archive ingestion to exactly one Bash entry
7
7
  # (`memory/bin/conversation-archive-ingest.sh`) plus read-only neighbours, by
8
- # blocking the legacy MCP deviation tools mechanically. Task 891 retired the
9
- # `whatsapp-export-insight-pass` tool; Task 892 reintroduces Phase 2 as
8
+ # blocking the legacy MCP deviation tools mechanically. The retired
9
+ # `whatsapp-export-insight-pass` tool is replaced by Phase 2:
10
10
  # `mcp__memory__conversation-archive-derive-insights` — a read-only tool that
11
11
  # walks :Section:Conversation chunks of one named :ConversationArchive in
12
12
  # pages and emits per-row proposals. The new tool is NOT in any BLOCK list
@@ -20,11 +20,11 @@
20
20
  # 1. PreToolUse on the four legacy WhatsApp MCP tools — BLOCK unconditionally.
21
21
  # The single deterministic Bash entry is the only supported path for
22
22
  # `archiveType=whatsapp-export`. Tool source for #1-#3 remains until cleanup;
23
- # `whatsapp-export-insight-pass` source was deleted by Task 891 and the
23
+ # `whatsapp-export-insight-pass` source was deleted and the
24
24
  # block here catches stale references.
25
25
  # mcp__memory__whatsapp-export-parse
26
26
  # mcp__memory__whatsapp-export-insight-write
27
- # mcp__memory__whatsapp-export-insight-pass (Task 891 — deleted, retired)
27
+ # mcp__memory__whatsapp-export-insight-pass (deleted, retired)
28
28
  # mcp__memory__memory-archive-write (only when `archiveType` is
29
29
  # `whatsapp-export`; LinkedIn
30
30
  # and other archiveTypes pass
@@ -32,17 +32,17 @@
32
32
  #
33
33
  # 2. PreToolUse Edit/Write/NotebookEdit: deny writes under
34
34
  # `*platform/plugins/*/lib/*` (parser/CSV-shape source for any *-import or
35
- # *-export plugin). Preserved from Task 846 — defence in depth even though
35
+ # *-export plugin). Preserved — defence in depth even though
36
36
  # the database-operator template no longer lists Edit/Write tools.
37
37
  #
38
38
  # 3. PreToolUse Bash: deny commands invoking JavaScript test runners
39
- # (vitest|bun test|npm test|npx jest|node .*vitest). Preserved from Task 846.
39
+ # (vitest|bun test|npm test|npx jest|node.*vitest). Preserved.
40
40
  #
41
41
  # 4. Parse-error gate: PostToolUse on any `mcp__*__*-export-parse` /
42
42
  # `mcp__*__*-import-parse` tool whose `tool_response.isError == true`
43
43
  # writes a flag file. Subsequent PreToolUse on ANY tool blocks until
44
44
  # UserPromptSubmit clears the flag. A 600s TTL is the cross-session safety
45
- # net. Preserved from Task 846 because LinkedIn and future per-source archive
45
+ # net. Preserved because LinkedIn and future per-source archive
46
46
  # parsers still use the legacy MCP path until they migrate to their own
47
47
  # deterministic Bash entries.
48
48
  #
@@ -147,14 +147,14 @@ if [ -f "$FLAG_FILE" ]; then
147
147
  fi
148
148
 
149
149
  # --- Block 2: legacy WhatsApp MCP tools — defensive denial ----------------
150
- # These tool sources were deleted by Task 894; the block stays as a stale-
150
+ # These tool sources were deleted; the block stays as a stale-
151
151
  # reference catch (skill markdown checked into older installs may still name
152
152
  # them). The harness will return tool-not-found anyway, but a named block
153
153
  # message guides the operator to the new entry.
154
154
  case "$TOOL_NAME" in
155
155
  mcp__memory__whatsapp-export-parse|mcp__memory__whatsapp-export-insight-write|mcp__memory__whatsapp-export-insight-pass|mcp__memory__whatsapp-export-preview)
156
156
  emit_decision "block" "denied-mcp-legacy" \
157
- "Blocked: ${TOOL_NAME} is a retired path. Task 894 generalised conversation-archive ingest — invoke 'bash platform/plugins/memory/bin/conversation-archive-ingest.sh <archive> --source whatsapp --owner-element-id <id> --participant-person-ids <csv> --scope <admin|public>' once. Normalise, sessionize, classify (mode=chat), and memory-ingest (parentLabel=ConversationArchive, source=<enum>) all run in-process."
157
+ "Blocked: ${TOOL_NAME} is a retired path. generalised conversation-archive ingest — invoke 'bash platform/plugins/memory/bin/conversation-archive-ingest.sh <archive> --source whatsapp --owner-element-id <id> --participant-person-ids <csv> --scope <admin|public>' once. Normalise, sessionize, classify (mode=chat), and memory-ingest (parentLabel=ConversationArchive, source=<enum>) all run in-process."
158
158
  ;;
159
159
  esac
160
160
 
@@ -179,14 +179,14 @@ except Exception:
179
179
 
180
180
  # --- Block 3: memory-archive-write conditional on conversation-shaped types
181
181
  # LinkedIn-connections and future flat-dataset archiveTypes flow unchanged.
182
- # `whatsapp-export` was the only conversation-shaped archiveType; Task 894
182
+ # `whatsapp-export` was the only conversation-shaped archiveType
183
183
  # deleted that handler entirely, so the type itself is now invalid input —
184
184
  # the block stays defensive against operator-edited skills that still name it.
185
185
  if [ "$TOOL_NAME" = "mcp__memory__memory-archive-write" ]; then
186
186
  ARCHIVE_TYPE=$(extract_tool_input_field archiveType)
187
187
  if [ "$ARCHIVE_TYPE" = "whatsapp-export" ]; then
188
188
  emit_decision "block" "denied-mcp-legacy archiveType=whatsapp-export" \
189
- "Blocked: memory-archive-write with archiveType='whatsapp-export' is a retired path. Task 894 routes conversation transcripts through 'bash platform/plugins/memory/bin/conversation-archive-ingest.sh <archive> --source whatsapp --owner-element-id <id> --participant-person-ids <csv> --scope <admin|public>'. Flat-dataset archiveTypes (linkedin-connections, …) flow through memory-archive-write unchanged."
189
+ "Blocked: memory-archive-write with archiveType='whatsapp-export' is a retired path. routes conversation transcripts through 'bash platform/plugins/memory/bin/conversation-archive-ingest.sh <archive> --source whatsapp --owner-element-id <id> --participant-person-ids <csv> --scope <admin|public>'. Flat-dataset archiveTypes (linkedin-connections, …) flow through memory-archive-write unchanged."
190
190
  fi
191
191
  fi
192
192
 
@@ -36,7 +36,7 @@ if [ "$AGENT_TYPE" = "admin" ]; then
36
36
  echo "Blocked: Admin agent cannot modify platform code at $FILE_PATH" >&2
37
37
  exit 2
38
38
  ;;
39
- # Entitlement library (Task 831) — verifier source, compiled output, vendored
39
+ # Entitlement library — verifier source, compiled output, vendored
40
40
  # pubkey, hash file, and any signed entitlement.json. Tampering here is the
41
41
  # agent path to revenue bypass; the legitimate write path is the Rubytech
42
42
  # issuance endpoint, never the agent's filesystem.
@@ -47,11 +47,11 @@ if [ "$AGENT_TYPE" = "admin" ]; then
47
47
  echo "[entitlement] tool-deny: tool=${TOOL_NAME} path=${FILE_PATH} field=entitlement-file" >&2
48
48
  exit 2
49
49
  ;;
50
- # account.json (Task 831 + Task 850) — agent must use the account-update
50
+ # account.json — agent must use the account-update
51
51
  # MCP tool (or plugin-toggle-enabled for enabledPlugins changes), which
52
52
  # whitelists editable fields server-side. Direct Edit/Write bypasses
53
53
  # that whitelist; deny unconditionally including cwd-relative paths.
54
- # Task 850 adds */account.json and *account.json as a backstop so any
54
+ # adds */account.json and *account.json as a backstop so any
55
55
  # layout the named patterns miss is still caught — the Adam Mackay
56
56
  # incident showed a tier upgrade via raw Edit on account.json reach
57
57
  # the disk, exactly the failure mode this hook exists to prevent.
@@ -74,13 +74,13 @@ if [ "$AGENT_TYPE" = "admin" ]; then
74
74
  echo "Blocked: Admin agent cannot run shell commands against code directories" >&2
75
75
  exit 2
76
76
  ;;
77
- # Entitlement files via shell (Task 831) — same surface, blocked symmetrically
77
+ # Entitlement files via shell — same surface, blocked symmetrically
78
78
  *"platform/lib/entitlement/"*|*"entitlement.json"*)
79
79
  echo "Blocked: Admin agent cannot reference entitlement files via shell." >&2
80
80
  echo "[entitlement] tool-deny: tool=Bash path=entitlement-file field=entitlement-file" >&2
81
81
  exit 2
82
82
  ;;
83
- # account.json via shell (Task 831) — same rationale as Edit/Write block
83
+ # account.json via shell — same rationale as Edit/Write block
84
84
  *"data/accounts/"*"account.json"*|*"config/accounts/"*"account.json"*)
85
85
  echo "Blocked: Admin agent cannot edit account.json via shell. Use the account-update MCP tool." >&2
86
86
  echo "[entitlement] tool-deny: tool=Bash path=account-json field=account-json" >&2
@@ -94,7 +94,7 @@ if [ "$AGENT_TYPE" = "admin" ]; then
94
94
  ;;
95
95
  esac
96
96
 
97
- # ── Base64 context-overflow guard (Task 983) ─────────────────────────────
97
+ # ── Base64 context-overflow guard ─────────────────────────────
98
98
  # Block inline base64 payloads from reaching the model context. Two paths:
99
99
  #
100
100
  # 1. Bash command that ENCODES a binary file to base64/hex (the producer).
@@ -103,7 +103,7 @@ if [ "$AGENT_TYPE" = "admin" ]; then
103
103
  # HTML/markdown Write).
104
104
  #
105
105
  # Either path landed ~33 KB of base64 in the SDK request and the next turn
106
- # tripped `main_stream_stalled` at 180 s (see Task 983 reproduction). The
106
+ # tripped `main_stream_stalled` at 180 s. The
107
107
  # remediation is symmetric: the agent saves bytes to `$ACCOUNT_DIR/tmp/<sha1>.<ext>`
108
108
  # and references the path (`<img src="./file">` or Read-by-path) instead of
109
109
  # carrying bytes through the assistant turn.
@@ -1,4 +1,4 @@
1
- // Task 964 — plugin-skill resolution gate.
1
+ // plugin-skill resolution gate.
2
2
  //
3
3
  // Locks in the contract for `findSkillOwners` (the helper backing the
4
4
  // new `skill-find` MCP tool) and the sibling-hint that `plugin-read`
@@ -63,7 +63,7 @@ describe("computePluginReadHint", () => {
63
63
  const hint = computePluginReadHint(root, "admin", "skills/imaginary/SKILL.md");
64
64
  expect(hint).toBeNull();
65
65
  });
66
- // Task 1000 — wrong-`pluginName` shape: the skill slug is buried inside
66
+ // wrong-`pluginName` shape: the skill slug is buried inside
67
67
  // pluginName instead of the file path. The hint must still surface both
68
68
  // the corrected pluginName and the canonical SKILL.md file path.
69
69
  it("hints when skills/<slug> is buried in pluginName and file defaults to PLUGIN.md", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-read-skill-resolution.test.js","sourceRoot":"","sources":["../../src/__tests__/plugin-read-skill-resolution.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-read-skill-resolution.test.js","sourceRoot":"","sources":["../../src/__tests__/plugin-read-skill-resolution.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- // Task 971 — filesystem-only resolver tests (4th recurrence of
1
+ // filesystem-only resolver tests (4th recurrence of
2
2
  // llm-framing-deterministic). Each test seeds a temp configDir on disk and
3
3
  // asserts the chosen hostname, source, and isApex flag — no driver, no graph.
4
4
  import { describe, it, expect, beforeEach, afterEach } from "vitest";
@@ -1 +1 @@
1
- {"version":3,"file":"public-hostname.test.js","sourceRoot":"","sources":["../../src/__tests__/public-hostname.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public-hostname.test.js","sourceRoot":"","sources":["../../src/__tests__/public-hostname.test.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,2EAA2E;AAC3E,8EAA8E;AAE9E,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE,SAAS,cAAc,CAAC,SAAiB,EAAE,IAAY;IACrD,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/D,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiB,EAAE,IAAa;IACzD,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,IAAI,SAAiB,CAAC;IAEtB,UAAU,CAAC,GAAG,EAAE;QACd,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACzE,cAAc,CAAC,SAAS,EAAE;YACxB,iBAAiB;YACjB,UAAU;YACV,6BAA6B;YAC7B,oCAAoC;YACpC,8BAA8B;YAC9B,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACd,MAAM,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;YAC/C,QAAQ,EAAE,eAAe;YACzB,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,wBAAwB;SACjC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,cAAc,CAAC,SAAS,EAAE;YACxB,UAAU;YACV,oCAAoC;YACpC,oCAAoC;YACpC,6BAA6B;YAC7B,oCAAoC;YACpC,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACd,MAAM,CAAC,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAChB,QAAQ,EAAE,eAAe;YACzB,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,wBAAwB;SACjC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,cAAc,CAAC,SAAS,EAAE;YACxB,UAAU;YACV,yBAAyB;YACzB,oCAAoC;YACpC,0BAA0B;YAC1B,oCAAoC;YACpC,6BAA6B;YAC7B,oCAAoC;YACpC,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACd,MAAM,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,cAAc,CAAC,SAAS,EAAE;YACxB,UAAU;YACV,iCAAiC;YACjC,oCAAoC;YACpC,iCAAiC;YACjC,oCAAoC;YACpC,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACd,MAAM,CAAC,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC7C,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,iBAAiB,CAAC,SAAS,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;QAChD,MAAM,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;YAC/C,QAAQ,EAAE,eAAe;YACzB,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,oBAAoB;SAC7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;YAC/C,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,WAAW;SACpB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- // Task 1021 — skill-load surfaces `requiredInputs` to the agent.
1
+ // skill-load surfaces `requiredInputs` to the agent.
2
2
  //
3
3
  // Tests the frontmatter parser (`parseRequiredInputs`) and the
4
4
  // integration contract: when a SKILL.md declares `requiredInputs:`, the
@@ -118,7 +118,7 @@ describe("loadSkill + parseRequiredInputs integration", () => {
118
118
  describe("skill-input-contract marker shape (writer/reader contract)", () => {
119
119
  it("the marker the handler prepends survives JSON round-trip and matches the stream-parser regex", () => {
120
120
  // Mirror the regex literal in
121
- // platform/ui/app/lib/claude-agent/stream-parser.ts (Task 1021).
121
+ // platform/ui/app/lib/claude-agent/stream-parser.ts.
122
122
  const RE = /<!-- skill-input-contract requiredInputs=(\[[^]+?\]) -->/;
123
123
  const slots = [["propertyAssetsDir", "listingURL"]];
124
124
  const marker = `<!-- skill-input-contract requiredInputs=${JSON.stringify(slots)} -->`;
@@ -1 +1 @@
1
- {"version":3,"file":"skill-load-required-inputs.test.js","sourceRoot":"","sources":["../../src/__tests__/skill-load-required-inputs.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-load-required-inputs.test.js","sourceRoot":"","sources":["../../src/__tests__/skill-load-required-inputs.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- // Task 1015 — `skill-load` MCP tool acceptance gate.
1
+ // `skill-load` MCP tool acceptance gate.
2
2
  //
3
3
  // Locks in the contract for `loadSkill` (the resolve+read helper backing
4
4
  // the new `skill-load` MCP tool registered in index.ts). Tests build a