@voybio/ace-swarm 0.1.0

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 (334) hide show
  1. package/CHANGELOG.md +109 -0
  2. package/LICENSE +186 -0
  3. package/README.md +229 -0
  4. package/assets/.agents/ACE/ACE-Init/AGENTS.md +210 -0
  5. package/assets/.agents/ACE/ACE-Init/instructions.md +118 -0
  6. package/assets/.agents/ACE/ACE_coders/AGENTS.md +154 -0
  7. package/assets/.agents/ACE/ACE_coders/INSTRUCTIONS.md +216 -0
  8. package/assets/.agents/ACE/AGENT_REGISTRY.md +70 -0
  9. package/assets/.agents/ACE/AGENT_REGISTRY_7.md +9 -0
  10. package/assets/.agents/ACE/DIRECTIVE_KERNEL.md +234 -0
  11. package/assets/.agents/ACE/UI/AGENTS.md +115 -0
  12. package/assets/.agents/ACE/UI/instructions.md +178 -0
  13. package/assets/.agents/ACE/VOS/ACE_VOS_MISSING_INFO_MATRIX.md +42 -0
  14. package/assets/.agents/ACE/VOS/AGENTS.md +72 -0
  15. package/assets/.agents/ACE/VOS/instructions.md +211 -0
  16. package/assets/.agents/ACE/agent-astgrep/AGENTS.md +123 -0
  17. package/assets/.agents/ACE/agent-astgrep/instructions.md +91 -0
  18. package/assets/.agents/ACE/agent-builder/AGENTS.md +172 -0
  19. package/assets/.agents/ACE/agent-builder/instructions.md +137 -0
  20. package/assets/.agents/ACE/agent-docs/AGENTS.md +159 -0
  21. package/assets/.agents/ACE/agent-docs/instructions.md +133 -0
  22. package/assets/.agents/ACE/agent-eval/AGENTS.md +46 -0
  23. package/assets/.agents/ACE/agent-eval/instructions.md +56 -0
  24. package/assets/.agents/ACE/agent-memory/AGENTS.md +49 -0
  25. package/assets/.agents/ACE/agent-memory/instructions.md +50 -0
  26. package/assets/.agents/ACE/agent-observability/AGENTS.md +46 -0
  27. package/assets/.agents/ACE/agent-observability/instructions.md +50 -0
  28. package/assets/.agents/ACE/agent-ops/AGENTS.md +201 -0
  29. package/assets/.agents/ACE/agent-ops/instructions.md +136 -0
  30. package/assets/.agents/ACE/agent-qa/AGENTS.md +189 -0
  31. package/assets/.agents/ACE/agent-qa/instructions.md +121 -0
  32. package/assets/.agents/ACE/agent-release/AGENTS.md +48 -0
  33. package/assets/.agents/ACE/agent-release/instructions.md +49 -0
  34. package/assets/.agents/ACE/agent-research/AGENTS.md +160 -0
  35. package/assets/.agents/ACE/agent-research/instructions.md +118 -0
  36. package/assets/.agents/ACE/agent-security/AGENTS.md +48 -0
  37. package/assets/.agents/ACE/agent-security/instructions.md +50 -0
  38. package/assets/.agents/ACE/agent-skeptic/AGENTS.md +178 -0
  39. package/assets/.agents/ACE/agent-skeptic/instructions.md +196 -0
  40. package/assets/.agents/ACE/agent-spec/AGENTS.md +169 -0
  41. package/assets/.agents/ACE/agent-spec/instructions.md +116 -0
  42. package/assets/.agents/ACE/orchestrator/AGENTS.md +365 -0
  43. package/assets/.agents/ACE/orchestrator/instructions.md +231 -0
  44. package/assets/.agents/skills/ace-orchestrator/SKILL.md +63 -0
  45. package/assets/.agents/skills/ace-orchestrator/references/engineering-bootstrap-playbook.md +360 -0
  46. package/assets/.agents/skills/astgrep-index/SKILL.md +58 -0
  47. package/assets/.agents/skills/codemunch/SKILL.md +65 -0
  48. package/assets/.agents/skills/codemunch/references/ast-driven-protocol.md +543 -0
  49. package/assets/.agents/skills/codesnipe/SKILL.md +64 -0
  50. package/assets/.agents/skills/codesnipe/references/dual-codebase-playbook.md +671 -0
  51. package/assets/.agents/skills/eval-harness/SKILL.md +203 -0
  52. package/assets/.agents/skills/handoff-lint/SKILL.md +164 -0
  53. package/assets/.agents/skills/incident-commander/SKILL.md +174 -0
  54. package/assets/.agents/skills/landing-review-watcher/SKILL.md +68 -0
  55. package/assets/.agents/skills/memory-curator/SKILL.md +179 -0
  56. package/assets/.agents/skills/problem-triage/SKILL.md +57 -0
  57. package/assets/.agents/skills/problem-triage/agents/openai.yaml +3 -0
  58. package/assets/.agents/skills/release-sentry/SKILL.md +189 -0
  59. package/assets/.agents/skills/risk-quant/SKILL.md +190 -0
  60. package/assets/.agents/skills/schema-forge/SKILL.md +174 -0
  61. package/assets/.agents/skills/skill-auditor/SKILL.md +52 -0
  62. package/assets/.agents/skills/state-auditor/SKILL.md +182 -0
  63. package/assets/.github/hooks/ace-copilot.json +68 -0
  64. package/assets/agent-state/ACE_WORKFLOW.md +131 -0
  65. package/assets/agent-state/ARTIFACT_MANIFEST.json +5 -0
  66. package/assets/agent-state/AST_GREP_COMMANDS.md +121 -0
  67. package/assets/agent-state/AST_GREP_INDEX.json +13 -0
  68. package/assets/agent-state/AST_GREP_INDEX.md +15 -0
  69. package/assets/agent-state/DECISIONS.md +7 -0
  70. package/assets/agent-state/EVIDENCE_LOG.md +7 -0
  71. package/assets/agent-state/HANDOFF.json +24 -0
  72. package/assets/agent-state/INTERFACE_REGISTRY.md +75 -0
  73. package/assets/agent-state/MODULES/gates/gate-autonomy.json +7 -0
  74. package/assets/agent-state/MODULES/gates/gate-completeness.json +7 -0
  75. package/assets/agent-state/MODULES/gates/gate-correctness.json +7 -0
  76. package/assets/agent-state/MODULES/gates/gate-evaluation.json +7 -0
  77. package/assets/agent-state/MODULES/gates/gate-operability.json +7 -0
  78. package/assets/agent-state/MODULES/gates/gate-security.json +7 -0
  79. package/assets/agent-state/MODULES/gates/gate-typescript-public-surface.json +7 -0
  80. package/assets/agent-state/MODULES/registry.json +41 -0
  81. package/assets/agent-state/MODULES/roles/capability-astgrep.json +49 -0
  82. package/assets/agent-state/MODULES/roles/capability-build.json +39 -0
  83. package/assets/agent-state/MODULES/roles/capability-docs.json +38 -0
  84. package/assets/agent-state/MODULES/roles/capability-eval.json +20 -0
  85. package/assets/agent-state/MODULES/roles/capability-memory.json +20 -0
  86. package/assets/agent-state/MODULES/roles/capability-observability.json +20 -0
  87. package/assets/agent-state/MODULES/roles/capability-ops.json +45 -0
  88. package/assets/agent-state/MODULES/roles/capability-qa.json +40 -0
  89. package/assets/agent-state/MODULES/roles/capability-release.json +21 -0
  90. package/assets/agent-state/MODULES/roles/capability-research.json +44 -0
  91. package/assets/agent-state/MODULES/roles/capability-security.json +21 -0
  92. package/assets/agent-state/MODULES/roles/capability-skeptic.json +48 -0
  93. package/assets/agent-state/MODULES/roles/capability-spec.json +42 -0
  94. package/assets/agent-state/MODULES/schemas/ACE_RUNTIME_PROFILE.schema.json +289 -0
  95. package/assets/agent-state/MODULES/schemas/ARTIFACT_MANIFEST.schema.json +185 -0
  96. package/assets/agent-state/MODULES/schemas/HANDOFF.agent-state.schema.json +124 -0
  97. package/assets/agent-state/MODULES/schemas/HANDOFF.schema.json +55 -0
  98. package/assets/agent-state/MODULES/schemas/RUNTIME_EXECUTOR_SESSION_REGISTRY.schema.json +290 -0
  99. package/assets/agent-state/MODULES/schemas/RUNTIME_TOOL_SPEC_REGISTRY.schema.json +144 -0
  100. package/assets/agent-state/MODULES/schemas/STATUS_EVENT.schema.json +84 -0
  101. package/assets/agent-state/MODULES/schemas/SWARM_HANDOFF.schema.json +138 -0
  102. package/assets/agent-state/MODULES/schemas/TRACKER_SNAPSHOT.schema.json +134 -0
  103. package/assets/agent-state/MODULES/schemas/VERICIFY_BRIDGE_SNAPSHOT.schema.json +157 -0
  104. package/assets/agent-state/MODULES/schemas/VERICIFY_PROCESS_POST_LOG.schema.json +93 -0
  105. package/assets/agent-state/MODULES/schemas/WORKSPACE_SESSION_REGISTRY.schema.json +133 -0
  106. package/assets/agent-state/PROVENANCE_LOG.md +28 -0
  107. package/assets/agent-state/QUALITY_GATES.md +15 -0
  108. package/assets/agent-state/RISKS.md +8 -0
  109. package/assets/agent-state/SCOPE.md +20 -0
  110. package/assets/agent-state/SKILL_CATALOG.md +48 -0
  111. package/assets/agent-state/STATUS.md +8 -0
  112. package/assets/agent-state/STATUS_EVENTS.ndjson +1 -0
  113. package/assets/agent-state/TASK.md +18 -0
  114. package/assets/agent-state/TEAL_CONFIG.md +117 -0
  115. package/assets/agent-state/handoff-registry.json +5 -0
  116. package/assets/agent-state/index-fingerprints.json +7 -0
  117. package/assets/agent-state/index.json +32 -0
  118. package/assets/agent-state/run-ledger.json +5 -0
  119. package/assets/agent-state/runtime-executor-sessions.json +5 -0
  120. package/assets/agent-state/runtime-tool-specs.json +5 -0
  121. package/assets/agent-state/runtime-workspaces.json +5 -0
  122. package/assets/agent-state/todo-state.json +7 -0
  123. package/assets/agent-state/tracker-snapshot.json +7 -0
  124. package/assets/agent-state/vericify/ace-bridge.json +60 -0
  125. package/assets/agent-state/vericify/process-posts.json +5 -0
  126. package/assets/instructions/ACE.instructions.md +187 -0
  127. package/assets/instructions/ACE_Coder.instructions.md +146 -0
  128. package/assets/instructions/ACE_UI.instructions.md +178 -0
  129. package/assets/instructions/ACE_VOS.instructions.md +211 -0
  130. package/assets/scripts/ace-hook-dispatch.mjs +538 -0
  131. package/assets/scripts/bootstrap-workspace.sh +27 -0
  132. package/assets/scripts/copilot-hook-dispatch.mjs +3 -0
  133. package/assets/scripts/eval-harness.sh +68 -0
  134. package/assets/scripts/render-mcp-configs.sh +396 -0
  135. package/assets/tasks/README.md +48 -0
  136. package/assets/tasks/SWARM_HANDOFF.example.json +53 -0
  137. package/assets/tasks/SWARM_HANDOFF.example_ui_to_coders.json +55 -0
  138. package/assets/tasks/SWARM_HANDOFF.example_vos_to_ui.json +55 -0
  139. package/assets/tasks/SWARM_HANDOFF.template.json +52 -0
  140. package/assets/tasks/cli_work_split.md +22 -0
  141. package/assets/tasks/lessons.md +17 -0
  142. package/assets/tasks/role_tasks.md +206 -0
  143. package/assets/tasks/todo.md +23 -0
  144. package/dist/ace-autonomy.d.ts +137 -0
  145. package/dist/ace-autonomy.js +472 -0
  146. package/dist/ace-context.d.ts +29 -0
  147. package/dist/ace-context.js +240 -0
  148. package/dist/ace-internal-tools.d.ts +8 -0
  149. package/dist/ace-internal-tools.js +76 -0
  150. package/dist/ace-server-instructions.d.ts +12 -0
  151. package/dist/ace-server-instructions.js +324 -0
  152. package/dist/agent-runtime/role-adapters.d.ts +29 -0
  153. package/dist/agent-runtime/role-adapters.js +573 -0
  154. package/dist/astgrep-index.d.ts +24 -0
  155. package/dist/astgrep-index.js +476 -0
  156. package/dist/cli.d.ts +3 -0
  157. package/dist/cli.js +591 -0
  158. package/dist/git-ops.d.ts +53 -0
  159. package/dist/git-ops.js +238 -0
  160. package/dist/handoff-registry.d.ts +71 -0
  161. package/dist/handoff-registry.js +422 -0
  162. package/dist/helpers.d.ts +126 -0
  163. package/dist/helpers.js +1687 -0
  164. package/dist/index-store.d.ts +51 -0
  165. package/dist/index-store.js +328 -0
  166. package/dist/index.d.ts +3 -0
  167. package/dist/index.js +7 -0
  168. package/dist/internal-tool-runtime.d.ts +21 -0
  169. package/dist/internal-tool-runtime.js +136 -0
  170. package/dist/job-scheduler.d.ts +175 -0
  171. package/dist/job-scheduler.js +1217 -0
  172. package/dist/kanban.d.ts +27 -0
  173. package/dist/kanban.js +339 -0
  174. package/dist/local-model-runtime.d.ts +40 -0
  175. package/dist/local-model-runtime.js +174 -0
  176. package/dist/model-bridge.d.ts +54 -0
  177. package/dist/model-bridge.js +587 -0
  178. package/dist/orchestrator-supervisor.d.ts +100 -0
  179. package/dist/orchestrator-supervisor.js +399 -0
  180. package/dist/problem-triage.d.ts +23 -0
  181. package/dist/problem-triage.js +448 -0
  182. package/dist/prompts.d.ts +7 -0
  183. package/dist/prompts.js +628 -0
  184. package/dist/public-surface.d.ts +30 -0
  185. package/dist/public-surface.js +316 -0
  186. package/dist/resources.d.ts +7 -0
  187. package/dist/resources.js +545 -0
  188. package/dist/run-ledger.d.ts +36 -0
  189. package/dist/run-ledger.js +257 -0
  190. package/dist/runtime-command.d.ts +18 -0
  191. package/dist/runtime-command.js +76 -0
  192. package/dist/runtime-executor.d.ts +104 -0
  193. package/dist/runtime-executor.js +985 -0
  194. package/dist/runtime-profile.d.ts +116 -0
  195. package/dist/runtime-profile.js +532 -0
  196. package/dist/runtime-tool-specs.d.ts +68 -0
  197. package/dist/runtime-tool-specs.js +527 -0
  198. package/dist/safe-edit.d.ts +52 -0
  199. package/dist/safe-edit.js +255 -0
  200. package/dist/schemas.d.ts +44 -0
  201. package/dist/schemas.js +830 -0
  202. package/dist/semantic-cache.d.ts +147 -0
  203. package/dist/semantic-cache.js +552 -0
  204. package/dist/semantic-hash.d.ts +83 -0
  205. package/dist/semantic-hash.js +346 -0
  206. package/dist/server.d.ts +10 -0
  207. package/dist/server.js +46 -0
  208. package/dist/shared.d.ts +136 -0
  209. package/dist/shared.js +269 -0
  210. package/dist/skill-auditor.d.ts +26 -0
  211. package/dist/skill-auditor.js +184 -0
  212. package/dist/skill-catalog.d.ts +60 -0
  213. package/dist/skill-catalog.js +305 -0
  214. package/dist/status-events.d.ts +40 -0
  215. package/dist/status-events.js +269 -0
  216. package/dist/store/ace-packed-store.d.ts +69 -0
  217. package/dist/store/ace-packed-store.js +434 -0
  218. package/dist/store/bootstrap-store.d.ts +46 -0
  219. package/dist/store/bootstrap-store.js +242 -0
  220. package/dist/store/catalog-builder.d.ts +21 -0
  221. package/dist/store/catalog-builder.js +68 -0
  222. package/dist/store/importer.d.ts +19 -0
  223. package/dist/store/importer.js +157 -0
  224. package/dist/store/knowledge-bake.d.ts +59 -0
  225. package/dist/store/knowledge-bake.js +339 -0
  226. package/dist/store/materializers/hook-context-materializer.d.ts +25 -0
  227. package/dist/store/materializers/hook-context-materializer.js +100 -0
  228. package/dist/store/materializers/host-file-materializer.d.ts +37 -0
  229. package/dist/store/materializers/host-file-materializer.js +271 -0
  230. package/dist/store/materializers/todo-syncer.d.ts +30 -0
  231. package/dist/store/materializers/todo-syncer.js +140 -0
  232. package/dist/store/materializers/vericify-projector.d.ts +38 -0
  233. package/dist/store/materializers/vericify-projector.js +239 -0
  234. package/dist/store/repositories/discovery-repository.d.ts +24 -0
  235. package/dist/store/repositories/discovery-repository.js +58 -0
  236. package/dist/store/repositories/handoff-repository.d.ts +31 -0
  237. package/dist/store/repositories/handoff-repository.js +67 -0
  238. package/dist/store/repositories/ledger-repository.d.ts +26 -0
  239. package/dist/store/repositories/ledger-repository.js +49 -0
  240. package/dist/store/repositories/runtime-kv-repository.d.ts +16 -0
  241. package/dist/store/repositories/runtime-kv-repository.js +36 -0
  242. package/dist/store/repositories/scheduler-repository.d.ts +50 -0
  243. package/dist/store/repositories/scheduler-repository.js +123 -0
  244. package/dist/store/repositories/session-repository.d.ts +33 -0
  245. package/dist/store/repositories/session-repository.js +82 -0
  246. package/dist/store/repositories/todo-repository.d.ts +31 -0
  247. package/dist/store/repositories/todo-repository.js +77 -0
  248. package/dist/store/repositories/tracker-repository.d.ts +25 -0
  249. package/dist/store/repositories/tracker-repository.js +43 -0
  250. package/dist/store/repositories/vericify-repository.d.ts +32 -0
  251. package/dist/store/repositories/vericify-repository.js +58 -0
  252. package/dist/store/skills-install.d.ts +28 -0
  253. package/dist/store/skills-install.js +86 -0
  254. package/dist/store/state-reader.d.ts +49 -0
  255. package/dist/store/state-reader.js +111 -0
  256. package/dist/store/store-artifacts.d.ts +12 -0
  257. package/dist/store/store-artifacts.js +138 -0
  258. package/dist/store/store-snapshot.d.ts +19 -0
  259. package/dist/store/store-snapshot.js +140 -0
  260. package/dist/store/topology-bake.d.ts +15 -0
  261. package/dist/store/topology-bake.js +215 -0
  262. package/dist/store/types.d.ts +155 -0
  263. package/dist/store/types.js +35 -0
  264. package/dist/store/workspace-snapshot.d.ts +26 -0
  265. package/dist/store/workspace-snapshot.js +107 -0
  266. package/dist/store/write-queue.d.ts +7 -0
  267. package/dist/store/write-queue.js +26 -0
  268. package/dist/todo-state.d.ts +41 -0
  269. package/dist/todo-state.js +399 -0
  270. package/dist/tools-agent.d.ts +7 -0
  271. package/dist/tools-agent.js +1542 -0
  272. package/dist/tools-discovery.d.ts +6 -0
  273. package/dist/tools-discovery.js +178 -0
  274. package/dist/tools-drift.d.ts +13 -0
  275. package/dist/tools-drift.js +357 -0
  276. package/dist/tools-files.d.ts +6 -0
  277. package/dist/tools-files.js +679 -0
  278. package/dist/tools-framework.d.ts +7 -0
  279. package/dist/tools-framework.js +1414 -0
  280. package/dist/tools-git.d.ts +6 -0
  281. package/dist/tools-git.js +183 -0
  282. package/dist/tools-handoff.d.ts +32 -0
  283. package/dist/tools-handoff.js +489 -0
  284. package/dist/tools-lifecycle.d.ts +6 -0
  285. package/dist/tools-lifecycle.js +205 -0
  286. package/dist/tools-memory.d.ts +6 -0
  287. package/dist/tools-memory.js +260 -0
  288. package/dist/tools-scheduler.d.ts +6 -0
  289. package/dist/tools-scheduler.js +228 -0
  290. package/dist/tools-skills.d.ts +3 -0
  291. package/dist/tools-skills.js +104 -0
  292. package/dist/tools-todo.d.ts +6 -0
  293. package/dist/tools-todo.js +154 -0
  294. package/dist/tools.d.ts +9 -0
  295. package/dist/tools.js +33 -0
  296. package/dist/tracker-adapters.d.ts +74 -0
  297. package/dist/tracker-adapters.js +776 -0
  298. package/dist/tracker-sync.d.ts +10 -0
  299. package/dist/tracker-sync.js +84 -0
  300. package/dist/tui/agent-runner.d.ts +137 -0
  301. package/dist/tui/agent-runner.js +466 -0
  302. package/dist/tui/agent-worker.d.ts +10 -0
  303. package/dist/tui/agent-worker.js +347 -0
  304. package/dist/tui/chat.d.ts +84 -0
  305. package/dist/tui/chat.js +368 -0
  306. package/dist/tui/commands.d.ts +57 -0
  307. package/dist/tui/commands.js +432 -0
  308. package/dist/tui/dashboard.d.ts +24 -0
  309. package/dist/tui/dashboard.js +110 -0
  310. package/dist/tui/index.d.ts +114 -0
  311. package/dist/tui/index.js +1059 -0
  312. package/dist/tui/input.d.ts +49 -0
  313. package/dist/tui/input.js +336 -0
  314. package/dist/tui/layout.d.ts +116 -0
  315. package/dist/tui/layout.js +367 -0
  316. package/dist/tui/ollama.d.ts +116 -0
  317. package/dist/tui/ollama.js +192 -0
  318. package/dist/tui/openai-compatible.d.ts +63 -0
  319. package/dist/tui/openai-compatible.js +370 -0
  320. package/dist/tui/provider-discovery.d.ts +59 -0
  321. package/dist/tui/provider-discovery.js +530 -0
  322. package/dist/tui/renderer.d.ts +166 -0
  323. package/dist/tui/renderer.js +304 -0
  324. package/dist/tui/tabs.d.ts +70 -0
  325. package/dist/tui/tabs.js +208 -0
  326. package/dist/tui/telemetry.d.ts +56 -0
  327. package/dist/tui/telemetry.js +106 -0
  328. package/dist/vericify-bridge.d.ts +146 -0
  329. package/dist/vericify-bridge.js +571 -0
  330. package/dist/vericify-context.d.ts +10 -0
  331. package/dist/vericify-context.js +72 -0
  332. package/dist/workspace-manager.d.ts +107 -0
  333. package/dist/workspace-manager.js +636 -0
  334. package/package.json +83 -0
@@ -0,0 +1,155 @@
1
+ export declare const ContentSource: {
2
+ readonly Package: 0;
3
+ readonly User: 1;
4
+ readonly Runtime: 2;
5
+ };
6
+ export type ContentSourceCode = 0 | 1 | 2;
7
+ export declare const EntityKind: {
8
+ readonly Handoff: 0;
9
+ readonly Todo: 1;
10
+ readonly LedgerEvent: 2;
11
+ readonly SchedulerTick: 3;
12
+ readonly SessionEvent: 4;
13
+ readonly RuntimeKv: 5;
14
+ readonly HookEvent: 6;
15
+ readonly DiscoveryResult: 7;
16
+ readonly VericifyPost: 8;
17
+ readonly AgentInstruction: 9;
18
+ readonly AgentManifest: 10;
19
+ readonly SkillDefinition: 11;
20
+ readonly GateDefinition: 12;
21
+ readonly RoleCapability: 13;
22
+ readonly SchemaDefinition: 14;
23
+ readonly KernelArtifact: 15;
24
+ readonly TopologyEntry: 16;
25
+ readonly DomainDocument: 17;
26
+ readonly HookContext: 18;
27
+ readonly CatalogEntry: 19;
28
+ };
29
+ export type EntityKindCode = (typeof EntityKind)[keyof typeof EntityKind];
30
+ export interface UnifiedEntry {
31
+ id: number;
32
+ kind: EntityKindCode;
33
+ content_source: ContentSourceCode;
34
+ ts: number;
35
+ key: string;
36
+ payload: unknown;
37
+ parent_id?: number;
38
+ flags?: number;
39
+ }
40
+ export declare const MAGIC = "ACEPACK\0";
41
+ export declare const STORE_VERSION = 1;
42
+ export declare const HEADER_SIZE = 64;
43
+ export interface ChunkIndexEntry {
44
+ offset: number;
45
+ length: number;
46
+ }
47
+ /** Zarrita AsyncReadable protocol */
48
+ export interface AsyncReadable {
49
+ get(key: string): Promise<Uint8Array | undefined>;
50
+ }
51
+ /** Zarrita AsyncWritable protocol */
52
+ export interface AsyncWritable {
53
+ set(key: string, value: Uint8Array): Promise<void>;
54
+ delete(key: string): Promise<boolean>;
55
+ }
56
+ /** Full store API */
57
+ export interface IAcePackedStore extends AsyncReadable, AsyncWritable {
58
+ open(path: string): Promise<void>;
59
+ commit(): Promise<void>;
60
+ compact(): Promise<void>;
61
+ close(): Promise<void>;
62
+ list(): AsyncGenerator<string>;
63
+ getJSON<T>(key: string): Promise<T | undefined>;
64
+ setJSON(key: string, value: unknown): Promise<void>;
65
+ getBlob(key: string): Promise<string | undefined>;
66
+ setBlob(key: string, content: string): Promise<void>;
67
+ appendEntry(entry: Omit<UnifiedEntry, "id" | "ts">): Promise<UnifiedEntry>;
68
+ getEntries(filter?: EntryFilter): Promise<UnifiedEntry[]>;
69
+ getEntry(key: string): Promise<UnifiedEntry | undefined>;
70
+ getTopology(kind: string): Promise<TopologyEntry[]>;
71
+ setTopology(kind: string, entries: TopologyEntry[]): Promise<void>;
72
+ getAgentInstruction(agent: string, file: string): Promise<string | undefined>;
73
+ setAgentInstruction(agent: string, file: string, content: string, source?: ContentSourceCode): Promise<void>;
74
+ getSkillContent(skill: string, file: string): Promise<string | undefined>;
75
+ setSkillContent(skill: string, file: string, content: string, source?: ContentSourceCode): Promise<void>;
76
+ listAgents(): Promise<string[]>;
77
+ listSkills(): Promise<string[]>;
78
+ }
79
+ export interface EntryFilter {
80
+ kind?: EntityKindCode;
81
+ content_source?: ContentSourceCode;
82
+ keyPrefix?: string;
83
+ since?: number;
84
+ includeDeleted?: boolean;
85
+ }
86
+ export interface TopologyEntry {
87
+ kind: string;
88
+ key: string;
89
+ value: unknown;
90
+ source: ContentSourceCode;
91
+ }
92
+ export interface StateReader {
93
+ handoffs(): Promise<unknown[]>;
94
+ todos(): Promise<unknown[]>;
95
+ ledger(): Promise<unknown[]>;
96
+ schedulerState(): Promise<unknown>;
97
+ sessions(): Promise<unknown[]>;
98
+ statusEvents(): Promise<unknown[]>;
99
+ providerDiscovery(): Promise<unknown[]>;
100
+ vericifyPosts(): Promise<unknown[]>;
101
+ domainDocs(domain: string): Promise<unknown[]>;
102
+ }
103
+ export interface AgentKnowledge {
104
+ name: string;
105
+ instructions: Record<string, string>;
106
+ manifest?: unknown;
107
+ }
108
+ export interface SkillKnowledge {
109
+ name: string;
110
+ files: Record<string, string>;
111
+ }
112
+ export interface KnowledgeResolver {
113
+ resolveAgent(name: string): Promise<AgentKnowledge>;
114
+ resolveSkill(name: string): Promise<SkillKnowledge>;
115
+ resolveGate(name: string): Promise<unknown>;
116
+ resolveRole(name: string): Promise<unknown>;
117
+ resolveSchema(name: string): Promise<unknown>;
118
+ resolveKernel(name: string): Promise<string>;
119
+ catalog(): Promise<unknown[]>;
120
+ }
121
+ export interface MaterializationChecksum {
122
+ path: string;
123
+ hash: string;
124
+ written_at: number;
125
+ }
126
+ export interface HookContextSnapshot {
127
+ schema_version: 1;
128
+ generated_at: string;
129
+ task: {
130
+ content: string;
131
+ hash: string;
132
+ };
133
+ status: {
134
+ content: string;
135
+ hash: string;
136
+ };
137
+ scope: {
138
+ content: string;
139
+ hash: string;
140
+ };
141
+ evidence_log: {
142
+ content: string;
143
+ hash: string;
144
+ };
145
+ workflow: {
146
+ content: string;
147
+ hash: string;
148
+ };
149
+ active_agents: string[];
150
+ gated_tools: Record<string, {
151
+ allowed: boolean;
152
+ gate: string;
153
+ }>;
154
+ }
155
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1,35 @@
1
+ // ACE Packed Store — type definitions
2
+ // ── Content source codes ──────────────────────────────────────────────────────
3
+ export const ContentSource = {
4
+ Package: 0, // shipped with the npm package or installed via `ace add skills`
5
+ User: 1, // user override of a package-sourced entry — never touched by package installs
6
+ Runtime: 2, // created by ACE runtime during sessions
7
+ };
8
+ // ── Entity kind codes ─────────────────────────────────────────────────────────
9
+ export const EntityKind = {
10
+ Handoff: 0,
11
+ Todo: 1,
12
+ LedgerEvent: 2,
13
+ SchedulerTick: 3,
14
+ SessionEvent: 4,
15
+ RuntimeKv: 5,
16
+ HookEvent: 6,
17
+ DiscoveryResult: 7,
18
+ VericifyPost: 8,
19
+ AgentInstruction: 9,
20
+ AgentManifest: 10,
21
+ SkillDefinition: 11,
22
+ GateDefinition: 12,
23
+ RoleCapability: 13,
24
+ SchemaDefinition: 14,
25
+ KernelArtifact: 15,
26
+ TopologyEntry: 16,
27
+ DomainDocument: 17,
28
+ HookContext: 18,
29
+ CatalogEntry: 19,
30
+ };
31
+ // ── Store file header constants ───────────────────────────────────────────────
32
+ export const MAGIC = "ACEPACK\0";
33
+ export const STORE_VERSION = 1;
34
+ export const HEADER_SIZE = 64;
35
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,26 @@
1
+ export interface WorkspaceSnapshotFileRecord {
2
+ path: string;
3
+ size: number;
4
+ mtime_ms: number;
5
+ encoding: "utf8" | "base64";
6
+ key: string;
7
+ virtual_path: string;
8
+ }
9
+ export interface WorkspaceSnapshotResult {
10
+ version: 1;
11
+ captured_at: string;
12
+ session_id: string;
13
+ source_workspace_path: string;
14
+ virtual_root: string;
15
+ manifest_key: string;
16
+ manifest_path: string;
17
+ file_count: number;
18
+ files: WorkspaceSnapshotFileRecord[];
19
+ skipped_paths: Array<{
20
+ path: string;
21
+ reason: string;
22
+ }>;
23
+ }
24
+ export declare function workspaceSnapshotVirtualRoot(workspaceRoot: string, sessionId: string): string;
25
+ export declare function persistWorkspaceSnapshot(workspaceRoot: string, sessionId: string, sourceWorkspacePath: string): Promise<WorkspaceSnapshotResult>;
26
+ //# sourceMappingURL=workspace-snapshot.d.ts.map
@@ -0,0 +1,107 @@
1
+ import { readdirSync, readFileSync, statSync } from "node:fs";
2
+ import { relative, resolve, sep } from "node:path";
3
+ import { openStore } from "./ace-packed-store.js";
4
+ import { getWorkspaceStorePath, toVirtualStorePath } from "./store-snapshot.js";
5
+ import { withStoreWriteQueue } from "./write-queue.js";
6
+ function normalizeRelPath(path) {
7
+ return path.split(sep).join("/");
8
+ }
9
+ function workspaceSnapshotPrefix(sessionId) {
10
+ return `state/runtime/executor/sessions/${sessionId}/workspace`;
11
+ }
12
+ function workspaceSnapshotFileKey(sessionId, relPath) {
13
+ return `${workspaceSnapshotPrefix(sessionId)}/files/${normalizeRelPath(relPath)}`;
14
+ }
15
+ function workspaceSnapshotManifestKey(sessionId) {
16
+ return `${workspaceSnapshotPrefix(sessionId)}/manifest.json`;
17
+ }
18
+ function encodeBuffer(content) {
19
+ const utf8 = content.toString("utf8");
20
+ if (Buffer.from(utf8, "utf8").equals(content)) {
21
+ return { encoding: "utf8", body: utf8 };
22
+ }
23
+ return { encoding: "base64", body: content.toString("base64") };
24
+ }
25
+ function collectWorkspaceFiles(rootPath, currentPath, output, skipped) {
26
+ const entries = readdirSync(currentPath, { withFileTypes: true }).sort((a, b) => a.name.localeCompare(b.name));
27
+ for (const entry of entries) {
28
+ const absPath = resolve(currentPath, entry.name);
29
+ const relPath = normalizeRelPath(relative(rootPath, absPath));
30
+ if (entry.isSymbolicLink()) {
31
+ skipped.push({ path: relPath, reason: "symlink" });
32
+ continue;
33
+ }
34
+ if (entry.isDirectory()) {
35
+ collectWorkspaceFiles(rootPath, absPath, output, skipped);
36
+ continue;
37
+ }
38
+ if (entry.isFile()) {
39
+ output.push({ absPath, relPath });
40
+ continue;
41
+ }
42
+ skipped.push({ path: relPath, reason: "unsupported_entry_type" });
43
+ }
44
+ }
45
+ export function workspaceSnapshotVirtualRoot(workspaceRoot, sessionId) {
46
+ return toVirtualStorePath(getWorkspaceStorePath(workspaceRoot), workspaceSnapshotPrefix(sessionId));
47
+ }
48
+ export async function persistWorkspaceSnapshot(workspaceRoot, sessionId, sourceWorkspacePath) {
49
+ const files = [];
50
+ const skipped = [];
51
+ collectWorkspaceFiles(sourceWorkspacePath, sourceWorkspacePath, files, skipped);
52
+ const storePath = getWorkspaceStorePath(workspaceRoot);
53
+ const manifestKey = workspaceSnapshotManifestKey(sessionId);
54
+ const virtualRoot = workspaceSnapshotVirtualRoot(workspaceRoot, sessionId);
55
+ const capturedAt = new Date().toISOString();
56
+ const manifestFiles = [];
57
+ await withStoreWriteQueue(storePath, async () => {
58
+ const store = await openStore(storePath);
59
+ try {
60
+ for (const file of files) {
61
+ const content = readFileSync(file.absPath);
62
+ const stats = statSync(file.absPath);
63
+ const encoded = encodeBuffer(content);
64
+ const key = workspaceSnapshotFileKey(sessionId, file.relPath);
65
+ await store.setBlob(key, encoded.body);
66
+ manifestFiles.push({
67
+ path: file.relPath,
68
+ size: stats.size,
69
+ mtime_ms: stats.mtimeMs,
70
+ encoding: encoded.encoding,
71
+ key,
72
+ virtual_path: toVirtualStorePath(storePath, key),
73
+ });
74
+ }
75
+ const manifest = {
76
+ version: 1,
77
+ captured_at: capturedAt,
78
+ session_id: sessionId,
79
+ source_workspace_path: sourceWorkspacePath,
80
+ virtual_root: virtualRoot,
81
+ manifest_key: manifestKey,
82
+ manifest_path: toVirtualStorePath(storePath, manifestKey),
83
+ file_count: manifestFiles.length,
84
+ files: manifestFiles,
85
+ skipped_paths: skipped,
86
+ };
87
+ await store.setJSON(manifestKey, manifest);
88
+ await store.commit();
89
+ }
90
+ finally {
91
+ await store.close();
92
+ }
93
+ });
94
+ return {
95
+ version: 1,
96
+ captured_at: capturedAt,
97
+ session_id: sessionId,
98
+ source_workspace_path: sourceWorkspacePath,
99
+ virtual_root: virtualRoot,
100
+ manifest_key: manifestKey,
101
+ manifest_path: toVirtualStorePath(storePath, manifestKey),
102
+ file_count: manifestFiles.length,
103
+ files: manifestFiles,
104
+ skipped_paths: skipped,
105
+ };
106
+ }
107
+ //# sourceMappingURL=workspace-snapshot.js.map
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Serialize write-capable store operations per store path inside a single
3
+ * process. This prevents overlapping open/commit/close cycles from racing
4
+ * against each other and rewriting the packed-store header/index out of order.
5
+ */
6
+ export declare function withStoreWriteQueue<T>(storePath: string, fn: () => Promise<T>): Promise<T>;
7
+ //# sourceMappingURL=write-queue.d.ts.map
@@ -0,0 +1,26 @@
1
+ const storeWriteQueues = new Map();
2
+ /**
3
+ * Serialize write-capable store operations per store path inside a single
4
+ * process. This prevents overlapping open/commit/close cycles from racing
5
+ * against each other and rewriting the packed-store header/index out of order.
6
+ */
7
+ export async function withStoreWriteQueue(storePath, fn) {
8
+ const previous = storeWriteQueues.get(storePath) ?? Promise.resolve();
9
+ let release;
10
+ const current = new Promise((resolve) => {
11
+ release = resolve;
12
+ });
13
+ const tail = previous.catch(() => { }).then(() => current);
14
+ storeWriteQueues.set(storePath, tail);
15
+ await previous.catch(() => { });
16
+ try {
17
+ return await fn();
18
+ }
19
+ finally {
20
+ release();
21
+ if (storeWriteQueues.get(storePath) === tail) {
22
+ storeWriteQueues.delete(storePath);
23
+ }
24
+ }
25
+ }
26
+ //# sourceMappingURL=write-queue.js.map
@@ -0,0 +1,41 @@
1
+ export type TodoNodeStatus = "backlog" | "in_progress" | "blocked" | "gated" | "done";
2
+ export interface TodoNode {
3
+ id: string;
4
+ title: string;
5
+ section: string;
6
+ source_line: number;
7
+ depends_on: string[];
8
+ status: TodoNodeStatus;
9
+ }
10
+ export interface TodoStateFile {
11
+ version: 1;
12
+ updated_at: string;
13
+ source_todo_path: string;
14
+ order: string[];
15
+ nodes: Record<string, TodoNode>;
16
+ }
17
+ export interface TodoTransitionResult {
18
+ ok: boolean;
19
+ path: string;
20
+ todo_path: string;
21
+ node_id?: string;
22
+ from?: TodoNodeStatus;
23
+ to?: TodoNodeStatus;
24
+ unresolved_dependencies?: string[];
25
+ allowed?: TodoNodeStatus[];
26
+ error?: string;
27
+ }
28
+ export declare function waitForTodoStoreMirror(): Promise<void>;
29
+ export declare function getTodoStatePath(): string;
30
+ export declare function syncTodoState(todoContent?: string): {
31
+ state: TodoStateFile;
32
+ path: string;
33
+ };
34
+ export declare function syncTodoStateSafe(todoContent?: string): Promise<{
35
+ state: TodoStateFile;
36
+ path: string;
37
+ }>;
38
+ export declare function readTodoState(): TodoStateFile;
39
+ export declare function transitionTodoNode(nodeId: string, targetStatus: TodoNodeStatus): TodoTransitionResult;
40
+ export declare function transitionTodoNodeSafe(nodeId: string, targetStatus: TodoNodeStatus): Promise<TodoTransitionResult>;
41
+ //# sourceMappingURL=todo-state.d.ts.map