@namzu/cli 26.3.0 → 27.0.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 (321) hide show
  1. package/CHANGELOG.md +214 -0
  2. package/README.md +49 -34
  3. package/dist/bin.js +7 -0
  4. package/dist/bin.js.map +1 -1
  5. package/dist/checkpoints/store.d.ts +17 -4
  6. package/dist/checkpoints/store.d.ts.map +1 -1
  7. package/dist/checkpoints/store.js +20 -5
  8. package/dist/checkpoints/store.js.map +1 -1
  9. package/dist/cli.js +2 -2
  10. package/dist/cli.js.map +1 -1
  11. package/dist/commands/acp.d.ts +23 -1
  12. package/dist/commands/acp.d.ts.map +1 -1
  13. package/dist/commands/acp.js +41 -2
  14. package/dist/commands/acp.js.map +1 -1
  15. package/dist/commands/drain.d.ts +69 -2
  16. package/dist/commands/drain.d.ts.map +1 -1
  17. package/dist/commands/drain.js +214 -134
  18. package/dist/commands/drain.js.map +1 -1
  19. package/dist/commands/eval.js +1 -1
  20. package/dist/commands/eval.js.map +1 -1
  21. package/dist/commands/provider-wait.d.ts +5 -5
  22. package/dist/commands/provider-wait.d.ts.map +1 -1
  23. package/dist/commands/provider-wait.js +2 -2
  24. package/dist/commands/resident.d.ts.map +1 -1
  25. package/dist/commands/resident.js +2 -1
  26. package/dist/commands/resident.js.map +1 -1
  27. package/dist/commands/run-flags.d.ts +7 -7
  28. package/dist/commands/run-flags.js +4 -4
  29. package/dist/commands/run-stream.d.ts +16 -12
  30. package/dist/commands/run-stream.d.ts.map +1 -1
  31. package/dist/commands/run-stream.js +142 -98
  32. package/dist/commands/run-stream.js.map +1 -1
  33. package/dist/commands/run.d.ts +6 -4
  34. package/dist/commands/run.d.ts.map +1 -1
  35. package/dist/commands/run.js +129 -45
  36. package/dist/commands/run.js.map +1 -1
  37. package/dist/commands/serve.js +2 -2
  38. package/dist/commands/serve.js.map +1 -1
  39. package/dist/commands/state.js +8 -8
  40. package/dist/commands/state.js.map +1 -1
  41. package/dist/config/load.d.ts +1 -1
  42. package/dist/config/load.d.ts.map +1 -1
  43. package/dist/config/load.js +17 -5
  44. package/dist/config/load.js.map +1 -1
  45. package/dist/config/run-limits.d.ts +20 -8
  46. package/dist/config/run-limits.d.ts.map +1 -1
  47. package/dist/config/run-limits.js +28 -46
  48. package/dist/config/run-limits.js.map +1 -1
  49. package/dist/config/schema.d.ts +44 -19
  50. package/dist/config/schema.d.ts.map +1 -1
  51. package/dist/config/schema.js.map +1 -1
  52. package/dist/config/tool-result-screens.js +1 -1
  53. package/dist/context/directories.d.ts +37 -0
  54. package/dist/context/directories.d.ts.map +1 -0
  55. package/dist/context/directories.js +69 -0
  56. package/dist/context/directories.js.map +1 -0
  57. package/dist/context/environment.d.ts +55 -0
  58. package/dist/context/environment.d.ts.map +1 -1
  59. package/dist/context/environment.js +96 -0
  60. package/dist/context/environment.js.map +1 -1
  61. package/dist/context/project-tracker.d.ts +3 -3
  62. package/dist/context/project-tracker.d.ts.map +1 -1
  63. package/dist/context/project-tracker.js +3 -3
  64. package/dist/context/project-tracker.js.map +1 -1
  65. package/dist/context/project.d.ts +1 -1
  66. package/dist/context/project.js +1 -1
  67. package/dist/context/sandbox.d.ts +22 -3
  68. package/dist/context/sandbox.d.ts.map +1 -1
  69. package/dist/context/sandbox.js +42 -4
  70. package/dist/context/sandbox.js.map +1 -1
  71. package/dist/doctor/checks/chain.d.ts +1 -1
  72. package/dist/doctor/checks/chain.js +5 -5
  73. package/dist/doctor/checks/chain.js.map +1 -1
  74. package/dist/doctor/checks/invariants.d.ts +2 -2
  75. package/dist/doctor/checks/invariants.js +5 -5
  76. package/dist/doctor/checks/invariants.js.map +1 -1
  77. package/dist/doctor/checks/logging.js +1 -1
  78. package/dist/doctor/checks/logging.js.map +1 -1
  79. package/dist/doctor/checks/sandbox.js +1 -1
  80. package/dist/doctor/checks/sandbox.js.map +1 -1
  81. package/dist/doctor/checks/session-export.d.ts +1 -1
  82. package/dist/doctor/checks/session-export.js +2 -2
  83. package/dist/doctor/checks/session-export.js.map +1 -1
  84. package/dist/doctor/checks/telemetry.d.ts +1 -1
  85. package/dist/doctor/checks/telemetry.js +1 -1
  86. package/dist/doctor/registry.js +2 -2
  87. package/dist/doctor/registry.js.map +1 -1
  88. package/dist/exit-codes.d.ts +2 -2
  89. package/dist/exit-codes.js +2 -2
  90. package/dist/integrations/mcp/servers.d.ts +1 -1
  91. package/dist/integrations/providers/chain-capabilities.d.ts +6 -6
  92. package/dist/integrations/providers/chain-capabilities.js +8 -8
  93. package/dist/integrations/providers/chain-capabilities.js.map +1 -1
  94. package/dist/integrations/providers/register.d.ts +1 -1
  95. package/dist/integrations/providers/register.js +1 -1
  96. package/dist/integrations/providers/registry.d.ts +1 -1
  97. package/dist/integrations/resident/inspection.d.ts +4 -1
  98. package/dist/integrations/resident/inspection.d.ts.map +1 -1
  99. package/dist/integrations/resident/inspection.js +53 -34
  100. package/dist/integrations/resident/inspection.js.map +1 -1
  101. package/dist/integrations/resident/learning-storage.d.ts +7 -2
  102. package/dist/integrations/resident/learning-storage.d.ts.map +1 -1
  103. package/dist/integrations/resident/learning-storage.js +12 -8
  104. package/dist/integrations/resident/learning-storage.js.map +1 -1
  105. package/dist/integrations/resident/runner-store.d.ts +1 -1
  106. package/dist/integrations/resident/runner-store.d.ts.map +1 -1
  107. package/dist/integrations/resident/runner-store.js +5 -2
  108. package/dist/integrations/resident/runner-store.js.map +1 -1
  109. package/dist/integrations/resident/runner-worker.js +1 -0
  110. package/dist/integrations/resident/runner-worker.js.map +1 -1
  111. package/dist/integrations/resident/session-log-reads.d.ts +37 -0
  112. package/dist/integrations/resident/session-log-reads.d.ts.map +1 -0
  113. package/dist/integrations/resident/session-log-reads.js +125 -0
  114. package/dist/integrations/resident/session-log-reads.js.map +1 -0
  115. package/dist/integrations/resident/session-step.d.ts +2 -0
  116. package/dist/integrations/resident/session-step.d.ts.map +1 -1
  117. package/dist/integrations/resident/session-step.js +15 -13
  118. package/dist/integrations/resident/session-step.js.map +1 -1
  119. package/dist/integrations/resident/storage.d.ts +23 -1
  120. package/dist/integrations/resident/storage.d.ts.map +1 -1
  121. package/dist/integrations/resident/storage.js +60 -17
  122. package/dist/integrations/resident/storage.js.map +1 -1
  123. package/dist/integrations/resident/tool-evidence.d.ts +4 -2
  124. package/dist/integrations/resident/tool-evidence.d.ts.map +1 -1
  125. package/dist/integrations/resident/tool-evidence.js +36 -30
  126. package/dist/integrations/resident/tool-evidence.js.map +1 -1
  127. package/dist/integrations/resident/verification.d.ts +2 -2
  128. package/dist/integrations/resident/verification.d.ts.map +1 -1
  129. package/dist/integrations/resident/verification.js +4 -4
  130. package/dist/integrations/resident/verification.js.map +1 -1
  131. package/dist/integrations/sessions/checkpoint-view.d.ts +13 -0
  132. package/dist/integrations/sessions/checkpoint-view.d.ts.map +1 -0
  133. package/dist/integrations/sessions/checkpoint-view.js +48 -0
  134. package/dist/integrations/sessions/checkpoint-view.js.map +1 -0
  135. package/dist/integrations/sessions/context-inventory.js +1 -1
  136. package/dist/integrations/sessions/context-inventory.js.map +1 -1
  137. package/dist/integrations/sessions/conversation-search.d.ts +16 -20
  138. package/dist/integrations/sessions/conversation-search.d.ts.map +1 -1
  139. package/dist/integrations/sessions/conversation-search.js +305 -731
  140. package/dist/integrations/sessions/conversation-search.js.map +1 -1
  141. package/dist/integrations/sessions/evidence-page-validation.d.ts +4 -4
  142. package/dist/integrations/sessions/evidence-page-validation.d.ts.map +1 -1
  143. package/dist/integrations/sessions/evidence-page-validation.js +1 -1
  144. package/dist/integrations/sessions/evidence-page-validation.js.map +1 -1
  145. package/dist/integrations/sessions/evidence-recall.d.ts +40 -2
  146. package/dist/integrations/sessions/evidence-recall.d.ts.map +1 -1
  147. package/dist/integrations/sessions/evidence-recall.js +41 -97
  148. package/dist/integrations/sessions/evidence-recall.js.map +1 -1
  149. package/dist/integrations/sessions/store.d.ts +153 -85
  150. package/dist/integrations/sessions/store.d.ts.map +1 -1
  151. package/dist/integrations/sessions/store.js +414 -484
  152. package/dist/integrations/sessions/store.js.map +1 -1
  153. package/dist/integrations/sessions/task-context.d.ts +15 -2
  154. package/dist/integrations/sessions/task-context.d.ts.map +1 -1
  155. package/dist/integrations/sessions/task-context.js +34 -11
  156. package/dist/integrations/sessions/task-context.js.map +1 -1
  157. package/dist/integrations/sessions/transcript-export.d.ts +13 -6
  158. package/dist/integrations/sessions/transcript-export.d.ts.map +1 -1
  159. package/dist/integrations/sessions/transcript-export.js +148 -263
  160. package/dist/integrations/sessions/transcript-export.js.map +1 -1
  161. package/dist/integrations/state/home.d.ts +4 -16
  162. package/dist/integrations/state/home.d.ts.map +1 -1
  163. package/dist/integrations/state/home.js +6 -42
  164. package/dist/integrations/state/home.js.map +1 -1
  165. package/dist/integrations/state/project.d.ts +6 -7
  166. package/dist/integrations/state/project.d.ts.map +1 -1
  167. package/dist/integrations/state/project.js +7 -9
  168. package/dist/integrations/state/project.js.map +1 -1
  169. package/dist/integrations/state/report.d.ts +27 -41
  170. package/dist/integrations/state/report.d.ts.map +1 -1
  171. package/dist/integrations/state/report.js +172 -464
  172. package/dist/integrations/state/report.js.map +1 -1
  173. package/dist/integrations/state/retention.d.ts +18 -0
  174. package/dist/integrations/state/retention.d.ts.map +1 -0
  175. package/dist/integrations/state/retention.js +18 -0
  176. package/dist/integrations/state/retention.js.map +1 -0
  177. package/dist/integrations/subagents/activity.d.ts +36 -31
  178. package/dist/integrations/subagents/activity.d.ts.map +1 -1
  179. package/dist/integrations/subagents/activity.js +27 -23
  180. package/dist/integrations/subagents/activity.js.map +1 -1
  181. package/dist/integrations/subagents/batches.d.ts +91 -0
  182. package/dist/integrations/subagents/batches.d.ts.map +1 -0
  183. package/dist/integrations/subagents/batches.js +172 -0
  184. package/dist/integrations/subagents/batches.js.map +1 -0
  185. package/dist/integrations/subagents/parent.d.ts +26 -11
  186. package/dist/integrations/subagents/parent.d.ts.map +1 -1
  187. package/dist/integrations/subagents/parent.js +13 -28
  188. package/dist/integrations/subagents/parent.js.map +1 -1
  189. package/dist/integrations/subagents/policy.d.ts +2 -2
  190. package/dist/integrations/subagents/policy.d.ts.map +1 -1
  191. package/dist/integrations/subagents/policy.js +2 -2
  192. package/dist/integrations/subagents/policy.js.map +1 -1
  193. package/dist/integrations/subagents/replay.d.ts +91 -26
  194. package/dist/integrations/subagents/replay.d.ts.map +1 -1
  195. package/dist/integrations/subagents/replay.js +216 -114
  196. package/dist/integrations/subagents/replay.js.map +1 -1
  197. package/dist/integrations/subagents/runtime.d.ts +50 -26
  198. package/dist/integrations/subagents/runtime.d.ts.map +1 -1
  199. package/dist/integrations/subagents/runtime.js +132 -126
  200. package/dist/integrations/subagents/runtime.js.map +1 -1
  201. package/dist/integrations/subagents/saved-agents.d.ts +57 -0
  202. package/dist/integrations/subagents/saved-agents.d.ts.map +1 -0
  203. package/dist/integrations/subagents/saved-agents.js +102 -0
  204. package/dist/integrations/subagents/saved-agents.js.map +1 -0
  205. package/dist/integrations/subagents/slash.d.ts +55 -0
  206. package/dist/integrations/subagents/slash.d.ts.map +1 -0
  207. package/dist/integrations/subagents/slash.js +45 -0
  208. package/dist/integrations/subagents/slash.js.map +1 -0
  209. package/dist/integrations/telemetry/session-export.d.ts +6 -6
  210. package/dist/integrations/telemetry/session-export.d.ts.map +1 -1
  211. package/dist/integrations/telemetry/session-export.js +2 -2
  212. package/dist/memory/presentation.d.ts +11 -0
  213. package/dist/memory/presentation.d.ts.map +1 -1
  214. package/dist/memory/presentation.js +25 -0
  215. package/dist/memory/presentation.js.map +1 -1
  216. package/dist/memory/store.d.ts +13 -7
  217. package/dist/memory/store.d.ts.map +1 -1
  218. package/dist/memory/store.js +37 -11
  219. package/dist/memory/store.js.map +1 -1
  220. package/dist/memory/typed.d.ts +116 -0
  221. package/dist/memory/typed.d.ts.map +1 -0
  222. package/dist/memory/typed.js +336 -0
  223. package/dist/memory/typed.js.map +1 -0
  224. package/dist/permissions/checks.d.ts +1 -1
  225. package/dist/permissions/checks.js +1 -1
  226. package/dist/permissions/headless-trust.d.ts +2 -2
  227. package/dist/permissions/headless-trust.d.ts.map +1 -1
  228. package/dist/permissions/headless-trust.js +3 -3
  229. package/dist/permissions/headless-trust.js.map +1 -1
  230. package/dist/permissions/mode.d.ts +4 -4
  231. package/dist/permissions/mode.js +1 -1
  232. package/dist/permissions/rules.d.ts +1 -1
  233. package/dist/permissions/rules.js +1 -1
  234. package/dist/termination.d.ts +75 -0
  235. package/dist/termination.d.ts.map +1 -0
  236. package/dist/termination.js +143 -0
  237. package/dist/termination.js.map +1 -0
  238. package/dist/tui/AgentExplorer.d.ts +2 -2
  239. package/dist/tui/AgentExplorer.js +4 -4
  240. package/dist/tui/AgentExplorer.js.map +1 -1
  241. package/dist/tui/App.d.ts +9 -1
  242. package/dist/tui/App.d.ts.map +1 -1
  243. package/dist/tui/App.js +452 -303
  244. package/dist/tui/App.js.map +1 -1
  245. package/dist/tui/LiveActivity.d.ts +1 -1
  246. package/dist/tui/LiveActivity.d.ts.map +1 -1
  247. package/dist/tui/PermissionOverlay.d.ts +8 -0
  248. package/dist/tui/PermissionOverlay.d.ts.map +1 -1
  249. package/dist/tui/PermissionOverlay.js +25 -2
  250. package/dist/tui/PermissionOverlay.js.map +1 -1
  251. package/dist/tui/Picker.js +1 -1
  252. package/dist/tui/agent.d.ts +208 -132
  253. package/dist/tui/agent.d.ts.map +1 -1
  254. package/dist/tui/agent.js +523 -313
  255. package/dist/tui/agent.js.map +1 -1
  256. package/dist/tui/conversation-evidence-view.js +3 -3
  257. package/dist/tui/conversation-evidence-view.js.map +1 -1
  258. package/dist/tui/conversation-history.d.ts +4 -21
  259. package/dist/tui/conversation-history.d.ts.map +1 -1
  260. package/dist/tui/conversation-history.js +4 -28
  261. package/dist/tui/conversation-history.js.map +1 -1
  262. package/dist/tui/index.d.ts.map +1 -1
  263. package/dist/tui/index.js +27 -1
  264. package/dist/tui/index.js.map +1 -1
  265. package/dist/tui/log-pane.js +1 -1
  266. package/dist/tui/markdownParser.d.ts +1 -1
  267. package/dist/tui/markdownParser.js +1 -1
  268. package/dist/tui/permission-review.d.ts +16 -0
  269. package/dist/tui/permission-review.d.ts.map +1 -1
  270. package/dist/tui/permission-review.js +25 -2
  271. package/dist/tui/permission-review.js.map +1 -1
  272. package/dist/tui/slashCommands.d.ts +29 -40
  273. package/dist/tui/slashCommands.d.ts.map +1 -1
  274. package/dist/tui/slashCommands.js +70 -61
  275. package/dist/tui/slashCommands.js.map +1 -1
  276. package/dist/tui/{run-interruption.d.ts → turn-interruption.d.ts} +4 -4
  277. package/dist/tui/turn-interruption.d.ts.map +1 -0
  278. package/dist/tui/{run-interruption.js → turn-interruption.js} +20 -20
  279. package/dist/tui/turn-interruption.js.map +1 -0
  280. package/dist/tui/turn-limits-settings.d.ts +39 -0
  281. package/dist/tui/turn-limits-settings.d.ts.map +1 -0
  282. package/dist/tui/{run-limits-settings.js → turn-limits-settings.js} +18 -18
  283. package/dist/tui/turn-limits-settings.js.map +1 -0
  284. package/dist/tui/types.d.ts +3 -3
  285. package/dist/tui/types.d.ts.map +1 -1
  286. package/dist/user-commands/store.d.ts +1 -1
  287. package/dist/user-commands/store.js +1 -1
  288. package/package.json +7 -7
  289. package/dist/integrations/sessions/compaction-evidence.d.ts +0 -5
  290. package/dist/integrations/sessions/compaction-evidence.d.ts.map +0 -1
  291. package/dist/integrations/sessions/compaction-evidence.js +0 -59
  292. package/dist/integrations/sessions/compaction-evidence.js.map +0 -1
  293. package/dist/integrations/sessions/database.d.ts +0 -5
  294. package/dist/integrations/sessions/database.d.ts.map +0 -1
  295. package/dist/integrations/sessions/database.js +0 -34
  296. package/dist/integrations/sessions/database.js.map +0 -1
  297. package/dist/integrations/sessions/paths.d.ts +0 -7
  298. package/dist/integrations/sessions/paths.d.ts.map +0 -1
  299. package/dist/integrations/sessions/paths.js +0 -14
  300. package/dist/integrations/sessions/paths.js.map +0 -1
  301. package/dist/integrations/sessions/run-discovery.d.ts +0 -24
  302. package/dist/integrations/sessions/run-discovery.d.ts.map +0 -1
  303. package/dist/integrations/sessions/run-discovery.js +0 -142
  304. package/dist/integrations/sessions/run-discovery.js.map +0 -1
  305. package/dist/integrations/sessions/turn-evidence.d.ts +0 -129
  306. package/dist/integrations/sessions/turn-evidence.d.ts.map +0 -1
  307. package/dist/integrations/sessions/turn-evidence.js +0 -517
  308. package/dist/integrations/sessions/turn-evidence.js.map +0 -1
  309. package/dist/integrations/subagents/history.d.ts +0 -26
  310. package/dist/integrations/subagents/history.d.ts.map +0 -1
  311. package/dist/integrations/subagents/history.js +0 -76
  312. package/dist/integrations/subagents/history.js.map +0 -1
  313. package/dist/integrations/subagents/runs.d.ts +0 -72
  314. package/dist/integrations/subagents/runs.d.ts.map +0 -1
  315. package/dist/integrations/subagents/runs.js +0 -155
  316. package/dist/integrations/subagents/runs.js.map +0 -1
  317. package/dist/tui/run-interruption.d.ts.map +0 -1
  318. package/dist/tui/run-interruption.js.map +0 -1
  319. package/dist/tui/run-limits-settings.d.ts +0 -39
  320. package/dist/tui/run-limits-settings.d.ts.map +0 -1
  321. package/dist/tui/run-limits-settings.js.map +0 -1
@@ -1,15 +1,54 @@
1
- import { existsSync } from 'node:fs';
2
1
  import { lstatSync, readFileSync } from 'node:fs';
3
- import { realpath } from 'node:fs/promises';
2
+ import { readFile, realpath } from 'node:fs/promises';
4
3
  import { isAbsolute, join, relative, resolve, sep } from 'node:path';
5
- import { DiskResidentAgenda, ResidentConflictError, } from '@namzu/sdk';
6
- import { sessionDatabasePath, sessionStore } from '../sessions/database.js';
4
+ import { DiskResidentAgenda, ProjectDocumentSchema, ResidentConflictError, SessionPaths, hashedSlugForCwd, slugForCwd, } from '@namzu/sdk';
7
5
  import { resolveNamzuHome } from '../state/home.js';
8
6
  import { readIdentity } from '../state/identity.js';
9
7
  import { publishPrivateJsonIfAbsent } from '../state/immutable-json.js';
10
8
  import { ensurePrivateStateDirectory } from '../state/private-directory.js';
11
- import { cliProjectRoot, findCliProject } from '../state/project.js';
9
+ import { cliProjectRoot } from '../state/project.js';
12
10
  const MANDATE = 'Pursue only objectives explicitly added by this project’s operator. Respect project instructions and current tool permissions.';
11
+ /**
12
+ * Where one project's resident state lives: `<root>/projects/<slug>/residents`,
13
+ * with each agent's binding, runner state, attempts and learning database in
14
+ * `<agent-key>/` below it (the SDK's `SessionPaths.residentDir`).
15
+ */
16
+ export function residentsRootFor(root, slug) {
17
+ return join(new SessionPaths({ home: root, slug }).projectDir(), 'residents');
18
+ }
19
+ /** One agent's directory under {@link residentsRootFor}. */
20
+ export function residentDirectoryFor(root, slug, agentKey) {
21
+ return new SessionPaths({ home: root, slug }).residentDir(agentKey);
22
+ }
23
+ /**
24
+ * The project a checkout root is filed under, found WITHOUT creating one.
25
+ *
26
+ * The same two slugs `ensureProject` tries, in the same order: the plain
27
+ * slug, then the hashed one when the plain slug's `project.json` names a
28
+ * different directory. A status request must never mint a project, so a
29
+ * missing document ends the search.
30
+ */
31
+ export async function findResidentProject(root, projectRoot) {
32
+ for (const slug of [slugForCwd(projectRoot), hashedSlugForCwd(projectRoot)]) {
33
+ const file = new SessionPaths({ home: root, slug }).projectFile();
34
+ let raw;
35
+ try {
36
+ const entry = lstatSync(file);
37
+ if (!entry.isFile() || entry.isSymbolicLink())
38
+ throw new Error(`${file} must be a regular file, without a symbolic link.`);
39
+ raw = await readFile(file, 'utf8');
40
+ }
41
+ catch (error) {
42
+ if (error.code === 'ENOENT')
43
+ return null;
44
+ throw error;
45
+ }
46
+ const document = ProjectDocumentSchema.parse(JSON.parse(raw));
47
+ if (document.cwd === projectRoot)
48
+ return { slug, projectId: document.projectId };
49
+ }
50
+ return null;
51
+ }
13
52
  function validateAgentKey(agentKey) {
14
53
  if (!/^[a-z0-9][a-z0-9_-]{0,63}$/u.test(agentKey)) {
15
54
  throw new Error('Resident agent key must contain 1–64 lowercase letters, digits, underscores or hyphens, starting with a letter or digit.');
@@ -69,15 +108,16 @@ function readBinding(residentsRoot, expected, projectRoot) {
69
108
  throw new Error(`${path} is not a valid resident binding: ${error instanceof Error ? error.message : String(error)}. Refusing to replace it.`);
70
109
  }
71
110
  }
72
- function residentHandle(root, residentsRoot, binding) {
111
+ function residentHandle(root, slug, binding) {
73
112
  return {
74
- agenda: new DiskResidentAgenda(residentsRoot, binding),
113
+ agenda: new DiskResidentAgenda(residentsRootFor(root, slug), binding),
75
114
  cwd: binding.cwd,
76
115
  agentKey: binding.agentKey,
77
- artifactsRoot: join(residentsRoot, binding.agentKey, 'attempts'),
116
+ artifactsRoot: join(residentDirectoryFor(root, slug, binding.agentKey), 'attempts'),
78
117
  projectId: binding.projectId,
79
118
  tenantId: binding.tenantId,
80
119
  root,
120
+ slug,
81
121
  };
82
122
  }
83
123
  /** Resolve existing state only; a status request never mints identity or state. */
@@ -85,16 +125,15 @@ export async function lookupResident(cwd, agentKey) {
85
125
  validateAgentKey(agentKey);
86
126
  const root = resolveNamzuHome();
87
127
  const identity = readIdentity(root);
88
- if (!identity || !existsSync(sessionDatabasePath(root)))
128
+ if (!identity)
89
129
  return null;
90
130
  const workingDirectory = await realpath(resolve(cwd));
91
- const store = sessionStore(root, true);
92
- const project = await findCliProject(store, workingDirectory, identity.tenantId);
131
+ const projectRoot = cliProjectRoot(workingDirectory);
132
+ const project = await findResidentProject(root, projectRoot);
93
133
  if (!project)
94
134
  return null;
95
- const residentsRoot = join(root, 'residents', project.id);
96
- const binding = readBinding(residentsRoot, { tenantId: identity.tenantId, projectId: project.id, agentKey }, cliProjectRoot(workingDirectory));
97
- return binding ? residentHandle(root, residentsRoot, binding) : null;
135
+ const binding = readBinding(residentsRootFor(root, project.slug), { tenantId: identity.tenantId, projectId: project.projectId, agentKey }, projectRoot);
136
+ return binding ? residentHandle(root, project.slug, binding) : null;
98
137
  }
99
138
  /** Initialize an explicit operator mutation, reusing the first creator's cwd. */
100
139
  export async function createResident(cwd, agentKey) {
@@ -102,10 +141,14 @@ export async function createResident(cwd, agentKey) {
102
141
  const workingDirectory = await realpath(resolve(cwd));
103
142
  const { openSessions } = await import('../sessions/store.js');
104
143
  const sessions = await openSessions(workingDirectory);
105
- const residentsRoot = ensurePrivateStateDirectory(ensurePrivateStateDirectory(sessions.root, 'residents'), sessions.projectId);
144
+ const projectRoot = cliProjectRoot(workingDirectory);
145
+ // Opening the sessions files the project; the resident state goes beside it.
146
+ const project = await findResidentProject(sessions.root, projectRoot);
147
+ if (!project || project.projectId !== sessions.projectId)
148
+ throw new Error(`The project for ${projectRoot} is not filed under ${join(sessions.root, 'projects')}; refusing to place resident state elsewhere.`);
149
+ const residentsRoot = ensurePrivateStateDirectory(new SessionPaths({ home: sessions.root, slug: project.slug }).projectDir(), 'residents');
106
150
  const agentRoot = ensurePrivateStateDirectory(residentsRoot, agentKey);
107
151
  const expected = { tenantId: sessions.tenantId, projectId: sessions.projectId, agentKey };
108
- const projectRoot = cliProjectRoot(workingDirectory);
109
152
  let binding = readBinding(residentsRoot, expected, projectRoot);
110
153
  if (!binding) {
111
154
  publishPrivateJsonIfAbsent(join(agentRoot, 'binding.json'), {
@@ -117,7 +160,7 @@ export async function createResident(cwd, agentKey) {
117
160
  if (!binding)
118
161
  throw new Error('Resident binding disappeared while it was being initialized.');
119
162
  }
120
- const resident = residentHandle(sessions.root, residentsRoot, binding);
163
+ const resident = residentHandle(sessions.root, project.slug, binding);
121
164
  let agenda = await resident.agenda.read();
122
165
  if (!agenda) {
123
166
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/integrations/resident/storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/integrations/resident/storage.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import { type ResidentHistorySource } from '@namzu/sdk';
2
2
  import type { CliSessions } from '../sessions/store.js';
3
+ /** Pursuit and claim ids are UUIDs the resident agenda minted; they name no kernel entity. */
4
+ export declare function isResidentUuid(value: unknown): value is string;
3
5
  export declare function readResidentAttemptReceipt(root: string, path: string, signal?: AbortSignal): Promise<unknown>;
4
- /** CLI supplies attempt/Session authorization; SDK owns bounded retrieval and indexing. */
5
- export declare function residentToolEvidence(history: ResidentHistorySource, sessions: CliSessions, artifactsRoot: string): import("@namzu/sdk").ResidentToolEvidenceSource;
6
+ /** CLI supplies attempt/session authorization; SDK owns bounded retrieval and indexing. */
7
+ export declare function residentToolEvidence(history: ResidentHistorySource, sessions: Pick<CliSessions, 'root' | 'projectId' | 'tenantId'>, projectSlug: string, artifactsRoot: string): import("@namzu/sdk").ResidentToolEvidenceSource;
6
8
  //# sourceMappingURL=tool-evidence.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-evidence.d.ts","sourceRoot":"","sources":["../../../src/integrations/resident/tool-evidence.ts"],"names":[],"mappings":"AAGA,OAAO,EACN,KAAK,qBAAqB,EAM1B,MAAM,YAAY,CAAA;AAEnB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AA0BvD,wBAAsB,0BAA0B,CAC/C,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,OAAO,CAAC,CAiClB;AAED,2FAA2F;AAC3F,wBAAgB,oBAAoB,CACnC,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,WAAW,EACrB,aAAa,EAAE,MAAM,mDA4DrB"}
1
+ {"version":3,"file":"tool-evidence.d.ts","sourceRoot":"","sources":["../../../src/integrations/resident/tool-evidence.ts"],"names":[],"mappings":"AAGA,OAAO,EACN,KAAK,qBAAqB,EAO1B,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAOvD,8FAA8F;AAC9F,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAE9D;AAwBD,wBAAsB,0BAA0B,CAC/C,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,OAAO,CAAC,CAiClB;AAED,2FAA2F;AAC3F,wBAAgB,oBAAoB,CACnC,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC,EAC9D,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,mDA8DrB"}
@@ -1,24 +1,29 @@
1
1
  import { constants } from 'node:fs';
2
2
  import { lstat, open } from 'node:fs/promises';
3
3
  import { join, relative, resolve, sep } from 'node:path';
4
- import { asRunId, asSessionId, createDiskRunEvidenceSource, createResidentToolEvidenceSource, isEntityId, } from '@namzu/sdk';
5
- import { CliPathBuilder } from '../sessions/paths.js';
4
+ import { SessionPaths, asSessionId, asTurnId, createResidentToolEvidenceSource, createSessionEvidenceSource, isEntityId, } from '@namzu/sdk';
5
+ import { SESSION_HEAD_BYTES, readSessionStart } from './session-log-reads.js';
6
6
  const ATTEMPT_DOCUMENT_BYTES = 65_536;
7
+ const UUID = /^[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/iu;
8
+ /** Pursuit and claim ids are UUIDs the resident agenda minted; they name no kernel entity. */
9
+ export function isResidentUuid(value) {
10
+ return typeof value === 'string' && UUID.test(value);
11
+ }
7
12
  function identity(value) {
8
13
  if (!value || typeof value !== 'object')
9
14
  throw new Error('Invalid attempt receipt.');
10
15
  const v = value;
11
16
  if (v.version !== 1 ||
12
- !isEntityId(v.pursuitId, 'run') ||
13
- !isEntityId(v.claimId, 'run') ||
14
- typeof v.sessionId !== 'string' ||
15
- typeof v.runId !== 'string')
17
+ !isResidentUuid(v.pursuitId) ||
18
+ !isResidentUuid(v.claimId) ||
19
+ !isEntityId(v.sessionId, 'session') ||
20
+ !isEntityId(v.turnId, 'turn'))
16
21
  throw new Error('Invalid attempt identity.');
17
22
  return {
18
23
  pursuitId: v.pursuitId,
19
24
  claimId: v.claimId,
20
25
  sessionId: asSessionId(v.sessionId),
21
- runId: asRunId(v.runId),
26
+ turnId: asTurnId(v.turnId),
22
27
  startedAt: v.startedAt,
23
28
  finishedAt: v.finishedAt,
24
29
  cleanup: v.cleanup,
@@ -60,21 +65,22 @@ export async function readResidentAttemptReceipt(root, path, signal) {
60
65
  await file.close();
61
66
  }
62
67
  }
63
- /** CLI supplies attempt/Session authorization; SDK owns bounded retrieval and indexing. */
64
- export function residentToolEvidence(history, sessions, artifactsRoot) {
68
+ /** CLI supplies attempt/session authorization; SDK owns bounded retrieval and indexing. */
69
+ export function residentToolEvidence(history, sessions, projectSlug, artifactsRoot) {
65
70
  const root = resolve(artifactsRoot);
66
- const paths = new CliPathBuilder(sessions.root);
71
+ const paths = new SessionPaths({ home: sessions.root, slug: projectSlug });
67
72
  if (history.scope.tenantId !== sessions.tenantId)
68
73
  throw new Error('Resident history tenant mismatch.');
69
74
  return createResidentToolEvidenceSource({
70
75
  history,
71
76
  projectId: sessions.projectId,
72
- // Start and finish documents are size-checked before reading. Reserve
73
- // their upper bound, not a fabricated measurement of database/stat I/O.
74
- resolutionReadBytes: 2 * ATTEMPT_DOCUMENT_BYTES,
75
- async resolveRun(settled, signal) {
77
+ // Start and finish documents are size-checked before reading, and the
78
+ // log's first record is read to attribute it. Reserve their upper bound,
79
+ // not a fabricated measurement of stat I/O.
80
+ resolutionReadBytes: 2 * ATTEMPT_DOCUMENT_BYTES + SESSION_HEAD_BYTES,
81
+ async resolveTurn(settled, signal) {
76
82
  const claimId = settled.claimId;
77
- if (!isEntityId(claimId, 'run'))
83
+ if (!isResidentUuid(claimId))
78
84
  throw new Error('Invalid claim id.');
79
85
  const start = identity(await readResidentAttemptReceipt(root, join(root, claimId, 'start.json'), signal));
80
86
  const finish = identity(await readResidentAttemptReceipt(root, join(root, claimId, 'finish.json'), signal));
@@ -82,7 +88,7 @@ export function residentToolEvidence(history, sessions, artifactsRoot) {
82
88
  if (record.claimId !== claimId ||
83
89
  record.pursuitId !== history.scope.pursuitId ||
84
90
  record.sessionId !== start.sessionId ||
85
- record.runId !== start.runId)
91
+ record.turnId !== start.turnId)
86
92
  throw new Error('Attempt identity does not match its settled claim.');
87
93
  if (finish.cleanup !== 'confirmed' ||
88
94
  typeof start.startedAt !== 'number' ||
@@ -91,25 +97,25 @@ export function residentToolEvidence(history, sessions, artifactsRoot) {
91
97
  !Number.isFinite(finish.finishedAt) ||
92
98
  finish.finishedAt < start.startedAt)
93
99
  throw new Error('Invalid attempt receipt order.');
94
- const sessionId = asSessionId(start.sessionId);
95
- // Resident invocations persist their own Run ledger, without creating a
96
- // resumable conversation row. An existing row must agree; the SDK always
97
- // requires the explicit tenant/project/Session/run scope in run.json.
98
- const session = await sessions.store.getSession(sessionId, sessions.tenantId);
99
- if (session && session.projectId !== sessions.projectId)
100
- throw new Error('Attempt Session belongs to a different project.');
100
+ // A resident step is its own root session. Its log names the project
101
+ // and tenant it was opened under, and both must be this resident's.
102
+ const logPath = paths.sessionLog({ sessionId: start.sessionId });
103
+ const opened = await readSessionStart(sessions.root, logPath, signal);
104
+ if (!opened)
105
+ throw new Error('Attempt session log is missing.');
106
+ if (opened.sessionId !== start.sessionId ||
107
+ opened.projectId !== sessions.projectId ||
108
+ (opened.tenantId !== undefined && opened.tenantId !== sessions.tenantId))
109
+ throw new Error('Attempt session belongs to a different project.');
101
110
  signal?.throwIfAborted();
102
- const runDir = join(paths.sessionDir(sessions.projectId, sessionId), 'runs', start.runId);
103
- const indexDir = join(runDir, 'evidence-index');
104
- return createDiskRunEvidenceSource({
111
+ return createSessionEvidenceSource({
105
112
  scope: {
106
113
  tenantId: sessions.tenantId,
107
114
  projectId: sessions.projectId,
108
- sessionId,
109
- runId: start.runId,
115
+ sessionId: start.sessionId,
116
+ turnId: start.turnId,
110
117
  },
111
- runDir,
112
- indexDir,
118
+ logPath,
113
119
  });
114
120
  },
115
121
  });
@@ -1 +1 @@
1
- {"version":3,"file":"tool-evidence.js","sourceRoot":"","sources":["../../../src/integrations/resident/tool-evidence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-evidence.js","sourceRoot":"","sources":["../../../src/integrations/resident/tool-evidence.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type JsonClaimRequirement, type RunId } from '@namzu/sdk';
1
+ import { type JsonClaimRequirement, type TurnId } from '@namzu/sdk';
2
2
  export interface ResidentVerificationSpec {
3
3
  readonly version: 1;
4
4
  readonly claims: readonly JsonClaimRequirement[];
@@ -6,6 +6,6 @@ export interface ResidentVerificationSpec {
6
6
  /** Snapshot the explicitly selected manifest once; edits cannot expand a running worker's authority. */
7
7
  export declare function loadResidentVerification(path: string, cwd: string): Promise<ResidentVerificationSpec>;
8
8
  /** Explicit host reads, like --gate: no additional authority is granted to model tools. */
9
- export declare function residentClaimVerifier(spec: ResidentVerificationSpec, cwd: string, scope: string, runId: RunId): import("@namzu/sdk").JsonClaimVerifier;
9
+ export declare function residentClaimVerifier(spec: ResidentVerificationSpec, cwd: string, scope: string, turnId: TurnId): import("@namzu/sdk").JsonClaimVerifier;
10
10
  export declare function verificationInstructions(spec: ResidentVerificationSpec): string;
11
11
  //# sourceMappingURL=verification.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../../src/integrations/resident/verification.ts"],"names":[],"mappings":"AAGA,OAAO,EACN,KAAK,oBAAoB,EACzB,KAAK,KAAK,EAGV,MAAM,YAAY,CAAA;AAEnB,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,SAAS,oBAAoB,EAAE,CAAA;CAChD;AAsFD,wGAAwG;AACxG,wBAAsB,wBAAwB,CAC7C,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GACT,OAAO,CAAC,wBAAwB,CAAC,CAQnC;AAED,2FAA2F;AAC3F,wBAAgB,qBAAqB,CACpC,IAAI,EAAE,wBAAwB,EAC9B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,KAAK,0CAoBZ;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM,CAO/E"}
1
+ {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../../src/integrations/resident/verification.ts"],"names":[],"mappings":"AAGA,OAAO,EAEN,KAAK,oBAAoB,EACzB,KAAK,MAAM,EAGX,MAAM,YAAY,CAAA;AAEnB,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,SAAS,oBAAoB,EAAE,CAAA;CAChD;AAsFD,wGAAwG;AACxG,wBAAsB,wBAAwB,CAC7C,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GACT,OAAO,CAAC,wBAAwB,CAAC,CAQnC;AAED,2FAA2F;AAC3F,wBAAgB,qBAAqB,CACpC,IAAI,EAAE,wBAAwB,EAC9B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,0CAoBd;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM,CAO/E"}
@@ -1,7 +1,7 @@
1
1
  import { constants } from 'node:fs';
2
2
  import { open, realpath, stat } from 'node:fs/promises';
3
3
  import { isAbsolute, relative, resolve } from 'node:path';
4
- import { createJsonClaimVerifier, generateRunId, } from '@namzu/sdk';
4
+ import { createJsonClaimVerifier, generateTurnId, } from '@namzu/sdk';
5
5
  /** Bounded regular-file observation; checks changes during the read, never runs commands. */
6
6
  async function readDocument(path, maxBytes, signal) {
7
7
  signal?.throwIfAborted();
@@ -63,7 +63,7 @@ function validateSpec(value) {
63
63
  // Validate the shared pointer/value/size contract before admitting a model.
64
64
  createJsonClaimVerifier({
65
65
  scope: 'configuration',
66
- runId: generateRunId(),
66
+ turnId: generateTurnId(),
67
67
  requirements: spec.claims,
68
68
  observe: async () => {
69
69
  throw new Error('Configuration validation never observes sources.');
@@ -76,11 +76,11 @@ export async function loadResidentVerification(path, cwd) {
76
76
  return validateSpec(JSON.parse(new TextDecoder('utf-8', { fatal: true }).decode(await readDocument(resolve(cwd, path), 65_536))));
77
77
  }
78
78
  /** Explicit host reads, like --gate: no additional authority is granted to model tools. */
79
- export function residentClaimVerifier(spec, cwd, scope, runId) {
79
+ export function residentClaimVerifier(spec, cwd, scope, turnId) {
80
80
  const snapshot = validateSpec(spec);
81
81
  const verifier = createJsonClaimVerifier({
82
82
  scope,
83
- runId,
83
+ turnId,
84
84
  requirements: snapshot.claims,
85
85
  observe: async (source, request) => {
86
86
  request.signal.throwIfAborted();
@@ -1 +1 @@
1
- {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../../src/integrations/resident/verification.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../../src/integrations/resident/verification.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { CheckpointLogView, SessionLog } from '@namzu/sdk';
2
+ /**
3
+ * What a checkpoint store asks of the session log it protects, answered by
4
+ * reading that log strictly.
5
+ *
6
+ * The disk checkpoint store verifies a checkpoint against the log before a
7
+ * restore (the record at `throughSeq` still hashes the same, and the document
8
+ * hashes to its `checkpoint_written.docSha256`) and never prunes one an open
9
+ * decision names. A resume in this process builds the store over the same log
10
+ * the turn appends to.
11
+ */
12
+ export declare function sessionLogCheckpointView(log: Pick<SessionLog, 'read' | 'sessionId'>): CheckpointLogView;
13
+ //# sourceMappingURL=checkpoint-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkpoint-view.d.ts","sourceRoot":"","sources":["../../../src/integrations/sessions/checkpoint-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,iBAAiB,EAAmB,UAAU,EAAE,MAAM,YAAY,CAAA;AAE9F;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACvC,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,CAAC,GACzC,iBAAiB,CA+BnB"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * What a checkpoint store asks of the session log it protects, answered by
3
+ * reading that log strictly.
4
+ *
5
+ * The disk checkpoint store verifies a checkpoint against the log before a
6
+ * restore (the record at `throughSeq` still hashes the same, and the document
7
+ * hashes to its `checkpoint_written.docSha256`) and never prunes one an open
8
+ * decision names. A resume in this process builds the store over the same log
9
+ * the turn appends to.
10
+ */
11
+ export function sessionLogCheckpointView(log) {
12
+ const owns = (scope) => scope.sessionId === log.sessionId;
13
+ return {
14
+ async verifyThrough(scope, throughSeq, throughSha256) {
15
+ if (!owns(scope))
16
+ return false;
17
+ for await (const { pointer } of log.read({ mode: 'strict', throughSeq })) {
18
+ if (pointer.seq === throughSeq)
19
+ return pointer.sha256 === throughSha256;
20
+ }
21
+ return false;
22
+ },
23
+ async writtenDocSha256(scope, checkpointId) {
24
+ if (!owns(scope))
25
+ return null;
26
+ let found = null;
27
+ for await (const { record } of log.read({ mode: 'strict' })) {
28
+ if (record.type === 'checkpoint_written' && record.checkpointId === checkpointId) {
29
+ found = record.docSha256;
30
+ }
31
+ }
32
+ return found;
33
+ },
34
+ async openDecisionCheckpoints(scope) {
35
+ const open = new Map();
36
+ if (!owns(scope))
37
+ return [];
38
+ for await (const { record } of log.read({ mode: 'strict' })) {
39
+ if (record.type === 'decision_requested')
40
+ open.set(record.decisionId, record.checkpointId);
41
+ else if (record.type === 'decision_resolved' || record.type === 'decision_expired')
42
+ open.delete(record.decisionId);
43
+ }
44
+ return [...open.values()];
45
+ },
46
+ };
47
+ }
48
+ //# sourceMappingURL=checkpoint-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkpoint-view.js","sourceRoot":"","sources":["../../../src/integrations/sessions/checkpoint-view.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,UAAU,wBAAwB,CACvC,GAA2C;IAE3C,MAAM,IAAI,GAAG,CAAC,KAAsB,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS,CAAA;IAC1E,OAAO;QACN,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa;YACnD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAA;YAC9B,IAAI,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;gBAC1E,IAAI,OAAO,CAAC,GAAG,KAAK,UAAU;oBAAE,OAAO,OAAO,CAAC,MAAM,KAAK,aAAa,CAAA;YACxE,CAAC;YACD,OAAO,KAAK,CAAA;QACb,CAAC;QACD,KAAK,CAAC,gBAAgB,CAAC,KAAK,EAAE,YAAY;YACzC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAA;YAC7B,IAAI,KAAK,GAAkB,IAAI,CAAA;YAC/B,IAAI,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;gBAC7D,IAAI,MAAM,CAAC,IAAI,KAAK,oBAAoB,IAAI,MAAM,CAAC,YAAY,KAAK,YAAY,EAAE,CAAC;oBAClF,KAAK,GAAG,MAAM,CAAC,SAAS,CAAA;gBACzB,CAAC;YACF,CAAC;YACD,OAAO,KAAK,CAAA;QACb,CAAC;QACD,KAAK,CAAC,uBAAuB,CAAC,KAAK;YAClC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAwB,CAAA;YAC5C,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAA;YAC3B,IAAI,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;gBAC7D,IAAI,MAAM,CAAC,IAAI,KAAK,oBAAoB;oBAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAA;qBACrF,IAAI,MAAM,CAAC,IAAI,KAAK,mBAAmB,IAAI,MAAM,CAAC,IAAI,KAAK,kBAAkB;oBACjF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;YAChC,CAAC;YACD,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QAC1B,CAAC;KACD,CAAA;AACF,CAAC"}
@@ -36,7 +36,7 @@ export function createContextInventoryStep() {
36
36
  estimatedRemainingTokens: contextBudget?.remainingTokens,
37
37
  largestToolBlocks: blocks.sort((a, b) => b.chars - a.chars).slice(0, 6),
38
38
  };
39
- const text = 'Context inventory (current request only). Positions are temporary, not archive IDs. Sizes are UTF-16 text characters; non-text payloads are counted, not estimated as base64 text tokens. For earlier evidence use search_conversation, then read_conversation(runId, seq, part) for exact retained pages. Do not repeat a state-changing action to recover its output.\n' +
39
+ const text = 'Context inventory (current request only). Positions are temporary, not archive IDs. Sizes are UTF-16 text characters; non-text payloads are counted, not estimated as base64 text tokens. For earlier evidence use search_conversation, then read_conversation(seq, part) for exact retained pages. Do not repeat a state-changing action to recover its output.\n' +
40
40
  JSON.stringify(inventory);
41
41
  return { context: [prepared.context, text].filter(Boolean).join('\n\n') };
42
42
  };
@@ -1 +1 @@
1
- {"version":3,"file":"context-inventory.js","sourceRoot":"","sources":["../../../src/integrations/sessions/context-inventory.ts"],"names":[],"mappings":"AAEA,2FAA2F;AAC3F,MAAM,UAAU,0BAA0B;IACzC,OAAO,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;QACxD,MAAM,EAAE,cAAc,EAAE,CAAA;QACxB,MAAM,MAAM,GAA2E,EAAE,CAAA;QACzF,IAAI,UAAU,GAAG,CAAC,CAAA;QAClB,IAAI,UAAU,GAAG,CAAC,CAAA;QAClB,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;YACtD,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;gBAAE,SAAQ;YACrC,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,IAAI,MAAM,GAAG,CAAC,CAAA;YACd,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;gBAAE,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAA;iBAClE,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;gBACtC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACrC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;wBAAE,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAA;;wBAChD,MAAM,EAAE,CAAA;gBACd,CAAC;YACF,UAAU,IAAI,KAAK,CAAA;YACnB,UAAU,IAAI,MAAM,CAAA;YACpB,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAA;QAC1E,CAAC;QACD,MAAM,QAAQ,GAAG,aAAa,IAAI,aAAa,CAAC,eAAe,GAAG,aAAa,CAAC,YAAY,GAAG,CAAC,CAAA;QAChG,IAAI,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAA;QACtD,gFAAgF;QAChF,IAAI,aAAa,IAAI,aAAa,CAAC,eAAe,GAAG,KAAK;YAAE,OAAO,SAAS,CAAA;QAC5E,MAAM,SAAS,GAAG;YACjB,eAAe,EAAE,QAAQ,CAAC,MAAM;YAChC,oBAAoB,EAAE,UAAU;YAChC,oBAAoB,EAAE,UAAU;YAChC,wBAAwB,EAAE,aAAa,EAAE,eAAe;YACxD,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACvE,CAAA;QACD,MAAM,IAAI,GACT,2WAA2W;YAC3W,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;QAC1B,OAAO,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAA;IAC1E,CAAC,CAAA;AACF,CAAC"}
1
+ {"version":3,"file":"context-inventory.js","sourceRoot":"","sources":["../../../src/integrations/sessions/context-inventory.ts"],"names":[],"mappings":"AAEA,2FAA2F;AAC3F,MAAM,UAAU,0BAA0B;IACzC,OAAO,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;QACxD,MAAM,EAAE,cAAc,EAAE,CAAA;QACxB,MAAM,MAAM,GAA2E,EAAE,CAAA;QACzF,IAAI,UAAU,GAAG,CAAC,CAAA;QAClB,IAAI,UAAU,GAAG,CAAC,CAAA;QAClB,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;YACtD,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;gBAAE,SAAQ;YACrC,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,IAAI,MAAM,GAAG,CAAC,CAAA;YACd,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;gBAAE,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAA;iBAClE,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;gBACtC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACrC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;wBAAE,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAA;;wBAChD,MAAM,EAAE,CAAA;gBACd,CAAC;YACF,UAAU,IAAI,KAAK,CAAA;YACnB,UAAU,IAAI,MAAM,CAAA;YACpB,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC,CAAA;QAC1E,CAAC;QACD,MAAM,QAAQ,GAAG,aAAa,IAAI,aAAa,CAAC,eAAe,GAAG,aAAa,CAAC,YAAY,GAAG,CAAC,CAAA;QAChG,IAAI,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAA;QACtD,gFAAgF;QAChF,IAAI,aAAa,IAAI,aAAa,CAAC,eAAe,GAAG,KAAK;YAAE,OAAO,SAAS,CAAA;QAC5E,MAAM,SAAS,GAAG;YACjB,eAAe,EAAE,QAAQ,CAAC,MAAM;YAChC,oBAAoB,EAAE,UAAU;YAChC,oBAAoB,EAAE,UAAU;YAChC,wBAAwB,EAAE,aAAa,EAAE,eAAe;YACxD,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACvE,CAAA;QACD,MAAM,IAAI,GACT,oWAAoW;YACpW,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;QAC1B,OAAO,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAA;IAC1E,CAAC,CAAA;AACF,CAAC"}