@multiplayer-app/agent 0.1.8 → 0.1.10

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 (232) hide show
  1. package/README.md +106 -0
  2. package/dist/agent/definition.d.ts +22 -0
  3. package/dist/agent/definition.d.ts.map +1 -0
  4. package/dist/agent/definition.js +3 -0
  5. package/dist/agent/definition.js.map +1 -0
  6. package/dist/agent/definition.test.d.ts +2 -0
  7. package/dist/agent/definition.test.d.ts.map +1 -0
  8. package/dist/agent/definition.test.js +40 -0
  9. package/dist/agent/definition.test.js.map +1 -0
  10. package/dist/agent/profiles/coding.d.ts +4 -0
  11. package/dist/agent/profiles/coding.d.ts.map +1 -0
  12. package/dist/agent/profiles/coding.js +17 -0
  13. package/dist/agent/profiles/coding.js.map +1 -0
  14. package/dist/agent/profiles/index.d.ts +4 -0
  15. package/dist/agent/profiles/index.d.ts.map +1 -0
  16. package/dist/agent/profiles/index.js +9 -0
  17. package/dist/agent/profiles/index.js.map +1 -0
  18. package/dist/agent/profiles/research.d.ts +4 -0
  19. package/dist/agent/profiles/research.d.ts.map +1 -0
  20. package/dist/agent/profiles/research.js +43 -0
  21. package/dist/agent/profiles/research.js.map +1 -0
  22. package/dist/agent/turn-runner.d.ts +37 -0
  23. package/dist/agent/turn-runner.d.ts.map +1 -0
  24. package/dist/agent/turn-runner.js +94 -0
  25. package/dist/agent/turn-runner.js.map +1 -0
  26. package/dist/agent/turn-runner.test.d.ts +2 -0
  27. package/dist/agent/turn-runner.test.d.ts.map +1 -0
  28. package/dist/agent/turn-runner.test.js +181 -0
  29. package/dist/agent/turn-runner.test.js.map +1 -0
  30. package/dist/index.d.ts +11 -6
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +18 -10
  33. package/dist/index.js.map +1 -1
  34. package/dist/models/attribution.d.ts.map +1 -0
  35. package/dist/models/attribution.js.map +1 -0
  36. package/dist/{model.d.ts → models/resolve-model.d.ts} +2 -2
  37. package/dist/models/resolve-model.d.ts.map +1 -0
  38. package/dist/{model.js → models/resolve-model.js} +1 -1
  39. package/dist/models/resolve-model.js.map +1 -0
  40. package/dist/models/usage.d.ts +7 -0
  41. package/dist/models/usage.d.ts.map +1 -0
  42. package/dist/models/usage.js +13 -0
  43. package/dist/models/usage.js.map +1 -0
  44. package/dist/{git-sync.d.ts → persistence/git-sync.d.ts} +1 -1
  45. package/dist/persistence/git-sync.d.ts.map +1 -0
  46. package/dist/persistence/git-sync.js.map +1 -0
  47. package/dist/persistence/git-sync.test.d.ts.map +1 -0
  48. package/dist/{git-sync.test.js → persistence/git-sync.test.js} +2 -2
  49. package/dist/persistence/git-sync.test.js.map +1 -0
  50. package/dist/{session-storage-sync.d.ts → persistence/snapshot-sync.d.ts} +2 -2
  51. package/dist/persistence/snapshot-sync.d.ts.map +1 -0
  52. package/dist/{session-storage-sync.js → persistence/snapshot-sync.js} +1 -1
  53. package/dist/persistence/snapshot-sync.js.map +1 -0
  54. package/dist/persistence/snapshot-sync.test.d.ts +2 -0
  55. package/dist/persistence/snapshot-sync.test.d.ts.map +1 -0
  56. package/dist/{session-storage-sync.test.js → persistence/snapshot-sync.test.js} +3 -3
  57. package/dist/persistence/snapshot-sync.test.js.map +1 -0
  58. package/dist/persistence/workspace.d.ts +17 -0
  59. package/dist/persistence/workspace.d.ts.map +1 -0
  60. package/dist/persistence/workspace.js +26 -0
  61. package/dist/persistence/workspace.js.map +1 -0
  62. package/dist/persistence/workspace.test.d.ts +2 -0
  63. package/dist/persistence/workspace.test.d.ts.map +1 -0
  64. package/dist/persistence/workspace.test.js +38 -0
  65. package/dist/persistence/workspace.test.js.map +1 -0
  66. package/dist/research/extraction-tool.d.ts +6 -0
  67. package/dist/research/extraction-tool.d.ts.map +1 -0
  68. package/dist/research/extraction-tool.js +67 -0
  69. package/dist/research/extraction-tool.js.map +1 -0
  70. package/dist/research/extraction-tool.test.d.ts +2 -0
  71. package/dist/research/extraction-tool.test.d.ts.map +1 -0
  72. package/dist/research/extraction-tool.test.js +100 -0
  73. package/dist/research/extraction-tool.test.js.map +1 -0
  74. package/dist/research/filingramp/attachment-tools.d.ts +4 -0
  75. package/dist/research/filingramp/attachment-tools.d.ts.map +1 -0
  76. package/dist/research/filingramp/attachment-tools.js +99 -0
  77. package/dist/research/filingramp/attachment-tools.js.map +1 -0
  78. package/dist/research/filingramp/document-search-tool.d.ts +4 -0
  79. package/dist/research/filingramp/document-search-tool.d.ts.map +1 -0
  80. package/dist/research/filingramp/document-search-tool.js +173 -0
  81. package/dist/research/filingramp/document-search-tool.js.map +1 -0
  82. package/dist/research/filingramp/filing-detail-tool.d.ts +4 -0
  83. package/dist/research/filingramp/filing-detail-tool.d.ts.map +1 -0
  84. package/dist/research/filingramp/filing-detail-tool.js +114 -0
  85. package/dist/research/filingramp/filing-detail-tool.js.map +1 -0
  86. package/dist/research/filingramp/filing-search-tools.d.ts +4 -0
  87. package/dist/research/filingramp/filing-search-tools.d.ts.map +1 -0
  88. package/dist/research/filingramp/filing-search-tools.js +207 -0
  89. package/dist/research/filingramp/filing-search-tools.js.map +1 -0
  90. package/dist/research/filingramp/shared.d.ts +48 -0
  91. package/dist/research/filingramp/shared.d.ts.map +1 -0
  92. package/dist/research/filingramp/shared.js +58 -0
  93. package/dist/research/filingramp/shared.js.map +1 -0
  94. package/dist/research/filingramp-client.d.ts +1 -1
  95. package/dist/research/filingramp-client.d.ts.map +1 -1
  96. package/dist/research/filingramp-tools.d.ts +3 -8
  97. package/dist/research/filingramp-tools.d.ts.map +1 -1
  98. package/dist/research/filingramp-tools.js +14 -565
  99. package/dist/research/filingramp-tools.js.map +1 -1
  100. package/dist/research/filingramp-tools.test.js +45 -2
  101. package/dist/research/filingramp-tools.test.js.map +1 -1
  102. package/dist/research/prompt.d.ts +1 -1
  103. package/dist/research/prompt.d.ts.map +1 -1
  104. package/dist/research/scope.d.ts +1 -1
  105. package/dist/research/scope.d.ts.map +1 -1
  106. package/dist/runtime/cli.d.ts.map +1 -0
  107. package/dist/{cli.js → runtime/cli.js} +3 -3
  108. package/dist/runtime/cli.js.map +1 -0
  109. package/dist/{config.d.ts → runtime/config.d.ts} +1 -1
  110. package/dist/runtime/config.d.ts.map +1 -0
  111. package/dist/{config.js → runtime/config.js} +1 -1
  112. package/dist/runtime/config.js.map +1 -0
  113. package/dist/{runtime.d.ts → runtime/index.d.ts} +2 -2
  114. package/dist/runtime/index.d.ts.map +1 -0
  115. package/dist/{runtime.js → runtime/index.js} +7 -7
  116. package/dist/runtime/index.js.map +1 -0
  117. package/dist/runtime/lambda-microvm.d.ts +3 -0
  118. package/dist/runtime/lambda-microvm.d.ts.map +1 -0
  119. package/dist/{lambda-microvm-entrypoint.js → runtime/lambda-microvm.js} +4 -4
  120. package/dist/runtime/lambda-microvm.js.map +1 -0
  121. package/dist/runtime/lifecycle.test.d.ts.map +1 -0
  122. package/dist/{lifecycle.test.js → runtime/lifecycle.test.js} +5 -5
  123. package/dist/runtime/lifecycle.test.js.map +1 -0
  124. package/dist/session/checkpoint-timer.test.d.ts.map +1 -0
  125. package/dist/{checkpoint-timer.test.js → session/checkpoint-timer.test.js} +8 -8
  126. package/dist/session/checkpoint-timer.test.js.map +1 -0
  127. package/dist/session/conversation.d.ts +15 -0
  128. package/dist/session/conversation.d.ts.map +1 -0
  129. package/dist/session/conversation.js +61 -0
  130. package/dist/session/conversation.js.map +1 -0
  131. package/dist/session/conversation.test.d.ts +2 -0
  132. package/dist/session/conversation.test.d.ts.map +1 -0
  133. package/dist/session/conversation.test.js +53 -0
  134. package/dist/session/conversation.test.js.map +1 -0
  135. package/dist/session/idle-checkpoint.test.d.ts.map +1 -0
  136. package/dist/{idle-checkpoint.test.js → session/idle-checkpoint.test.js} +8 -4
  137. package/dist/session/idle-checkpoint.test.js.map +1 -0
  138. package/dist/session/index.d.ts +7 -0
  139. package/dist/session/index.d.ts.map +1 -0
  140. package/dist/session/index.js +16 -0
  141. package/dist/session/index.js.map +1 -0
  142. package/dist/{session.d.ts → session/runtime.d.ts} +20 -16
  143. package/dist/session/runtime.d.ts.map +1 -0
  144. package/dist/session/runtime.js +251 -0
  145. package/dist/session/runtime.js.map +1 -0
  146. package/dist/session/runtime.test.d.ts +2 -0
  147. package/dist/session/runtime.test.d.ts.map +1 -0
  148. package/dist/session/runtime.test.js +201 -0
  149. package/dist/session/runtime.test.js.map +1 -0
  150. package/dist/session/tool-context.d.ts +12 -0
  151. package/dist/session/tool-context.d.ts.map +1 -0
  152. package/dist/session/tool-context.js +3 -0
  153. package/dist/session/tool-context.js.map +1 -0
  154. package/dist/session/tools.d.ts +6 -0
  155. package/dist/session/tools.d.ts.map +1 -0
  156. package/dist/session/tools.js +97 -0
  157. package/dist/session/tools.js.map +1 -0
  158. package/dist/session/tools.test.d.ts +2 -0
  159. package/dist/session/tools.test.d.ts.map +1 -0
  160. package/dist/session/tools.test.js +55 -0
  161. package/dist/session/tools.test.js.map +1 -0
  162. package/dist/task/loop.d.ts +6 -0
  163. package/dist/task/loop.d.ts.map +1 -0
  164. package/dist/{loop.js → task/loop.js} +6 -6
  165. package/dist/task/loop.js.map +1 -0
  166. package/dist/transport/link.d.ts.map +1 -0
  167. package/dist/transport/link.js.map +1 -0
  168. package/dist/transport/protocol.d.ts.map +1 -0
  169. package/dist/transport/protocol.js.map +1 -0
  170. package/dist/transport/protocol.test.d.ts.map +1 -0
  171. package/dist/transport/protocol.test.js.map +1 -0
  172. package/dist/{report.d.ts → transport/reporter.d.ts} +1 -1
  173. package/dist/transport/reporter.d.ts.map +1 -0
  174. package/dist/{report.js → transport/reporter.js} +1 -1
  175. package/dist/transport/reporter.js.map +1 -0
  176. package/package.json +11 -11
  177. package/dist/attribution.d.ts.map +0 -1
  178. package/dist/attribution.js.map +0 -1
  179. package/dist/checkpoint-timer.test.d.ts.map +0 -1
  180. package/dist/checkpoint-timer.test.js.map +0 -1
  181. package/dist/cli.d.ts.map +0 -1
  182. package/dist/cli.js.map +0 -1
  183. package/dist/config.d.ts.map +0 -1
  184. package/dist/config.js.map +0 -1
  185. package/dist/git-sync.d.ts.map +0 -1
  186. package/dist/git-sync.js.map +0 -1
  187. package/dist/git-sync.test.d.ts.map +0 -1
  188. package/dist/git-sync.test.js.map +0 -1
  189. package/dist/idle-checkpoint.test.d.ts.map +0 -1
  190. package/dist/idle-checkpoint.test.js.map +0 -1
  191. package/dist/lambda-microvm-entrypoint.d.ts +0 -3
  192. package/dist/lambda-microvm-entrypoint.d.ts.map +0 -1
  193. package/dist/lambda-microvm-entrypoint.js.map +0 -1
  194. package/dist/lifecycle.test.d.ts.map +0 -1
  195. package/dist/lifecycle.test.js.map +0 -1
  196. package/dist/link.d.ts.map +0 -1
  197. package/dist/link.js.map +0 -1
  198. package/dist/loop.d.ts +0 -6
  199. package/dist/loop.d.ts.map +0 -1
  200. package/dist/loop.js.map +0 -1
  201. package/dist/model.d.ts.map +0 -1
  202. package/dist/model.js.map +0 -1
  203. package/dist/protocol.d.ts.map +0 -1
  204. package/dist/protocol.js.map +0 -1
  205. package/dist/protocol.test.d.ts.map +0 -1
  206. package/dist/protocol.test.js.map +0 -1
  207. package/dist/report.d.ts.map +0 -1
  208. package/dist/report.js.map +0 -1
  209. package/dist/runtime.d.ts.map +0 -1
  210. package/dist/runtime.js.map +0 -1
  211. package/dist/session-storage-sync.d.ts.map +0 -1
  212. package/dist/session-storage-sync.js.map +0 -1
  213. package/dist/session-storage-sync.test.d.ts +0 -2
  214. package/dist/session-storage-sync.test.d.ts.map +0 -1
  215. package/dist/session-storage-sync.test.js.map +0 -1
  216. package/dist/session.d.ts.map +0 -1
  217. package/dist/session.js +0 -512
  218. package/dist/session.js.map +0 -1
  219. /package/dist/{attribution.d.ts → models/attribution.d.ts} +0 -0
  220. /package/dist/{attribution.js → models/attribution.js} +0 -0
  221. /package/dist/{git-sync.js → persistence/git-sync.js} +0 -0
  222. /package/dist/{git-sync.test.d.ts → persistence/git-sync.test.d.ts} +0 -0
  223. /package/dist/{cli.d.ts → runtime/cli.d.ts} +0 -0
  224. /package/dist/{lifecycle.test.d.ts → runtime/lifecycle.test.d.ts} +0 -0
  225. /package/dist/{checkpoint-timer.test.d.ts → session/checkpoint-timer.test.d.ts} +0 -0
  226. /package/dist/{idle-checkpoint.test.d.ts → session/idle-checkpoint.test.d.ts} +0 -0
  227. /package/dist/{link.d.ts → transport/link.d.ts} +0 -0
  228. /package/dist/{link.js → transport/link.js} +0 -0
  229. /package/dist/{protocol.d.ts → transport/protocol.d.ts} +0 -0
  230. /package/dist/{protocol.js → transport/protocol.js} +0 -0
  231. /package/dist/{protocol.test.d.ts → transport/protocol.test.d.ts} +0 -0
  232. /package/dist/{protocol.test.js → transport/protocol.test.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"filingramp-tools.js","sourceRoot":"","sources":["../../src/research/filingramp-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filingramp-tools.js","sourceRoot":"","sources":["../../src/research/filingramp-tools.ts"],"names":[],"mappings":";;AAWA,sDAaC;AArBD,oEAAqE;AACrE,4EAA4E;AAC5E,wEAAwE;AACxE,0EAA0E;AAK1E,SAAgB,qBAAqB,CAAC,OAA+B;IACnE,MAAM,OAAO,GAAG,IAAA,6CAAuB,EAAC,OAAO,CAAC,CAAA;IAChD,MAAM,WAAW,GAAG,IAAA,wCAAqB,EAAC,OAAO,CAAC,CAAA;IAClD,OAAO;QACL,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,UAAU,EAAE,IAAA,2CAAsB,EAAC,OAAO,CAAC;QAC3C,gBAAgB,EAAE,IAAA,+CAAwB,EAAC,OAAO,CAAC;QACnD,mBAAmB,EAAE,WAAW,CAAC,mBAAmB;QACpD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAA;AACH,CAAC"}
@@ -4,17 +4,60 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const strict_1 = __importDefault(require("node:assert/strict"));
7
+ const node_fs_1 = require("node:fs");
8
+ const node_os_1 = __importDefault(require("node:os"));
9
+ const node_path_1 = __importDefault(require("node:path"));
7
10
  const node_test_1 = require("node:test");
8
11
  const filingramp_client_1 = require("./filingramp-client");
9
12
  const filingramp_tools_1 = require("./filingramp-tools");
10
- function tools() {
13
+ function tools(workspaceDir = '/unused') {
11
14
  return (0, filingramp_tools_1.createFilingRampTools)({
12
15
  client: new filingramp_client_1.FilingRampClient({ baseUrl: 'https://example.test', authToken: 'test', industryData: false }),
13
- workspaceDir: '/unused',
16
+ workspaceDir,
14
17
  scope: { states: ['TX', 'AZ'], lines: ['04.0'] },
15
18
  });
16
19
  }
17
20
  (0, node_test_1.describe)('research filing requests', () => {
21
+ (0, node_test_1.it)('resolves tracking numbers within the session scope before reading filing details', async (t) => {
22
+ var _a;
23
+ const calls = [];
24
+ t.mock.method(globalThis, 'fetch', async (url, init) => {
25
+ calls.push({ url: String(url), body: init.body ? JSON.parse(String(init.body)) : undefined });
26
+ if (String(url).endsWith('/v2/search/filings')) {
27
+ return Response.json({ items: [{ _id: '0123456789abcdef01234567' }] });
28
+ }
29
+ return Response.json({
30
+ _id: '0123456789abcdef01234567', trackingNumber: 'TRK-1',
31
+ forms: [{ _id: 'form-1', formNumber: 'HO3', attachments: [{ key: 'forms/ho3.pdf', name: 'HO3.pdf' }] }],
32
+ });
33
+ });
34
+ const result = await tools().get_filing.execute({ id: 'TRK-1', include: ['forms', 'attachments'] }, { toolCallId: 'details', messages: [] });
35
+ strict_1.default.deepEqual((_a = calls[0].body) === null || _a === void 0 ? void 0 : _a.filters, [
36
+ { field: 'states', comparisonOperator: 'in', value: ['TX', 'AZ'] },
37
+ { field: 'typeOfInsurances', comparisonOperator: 'cn', value: ['04.0'] },
38
+ { field: 'trackingNumbers', comparisonOperator: 'in', value: ['TRK-1'] },
39
+ ]);
40
+ strict_1.default.ok(calls[1].url.endsWith('/v1/filings/0123456789abcdef01234567'));
41
+ strict_1.default.deepEqual(result.filing.forms, [{ _id: 'form-1', formNumber: 'HO3' }]);
42
+ strict_1.default.equal(result.filing.attachments[0].key, 'forms/ho3.pdf');
43
+ });
44
+ (0, node_test_1.it)('downloads attachments to the workspace and reads only the requested text range', async (t) => {
45
+ const dir = await node_fs_1.promises.mkdtemp(node_path_1.default.join(node_os_1.default.tmpdir(), 'agent-attachment-'));
46
+ t.after(() => node_fs_1.promises.rm(dir, { recursive: true, force: true }));
47
+ t.mock.method(filingramp_client_1.FilingRampClient.prototype, 'downloadAttachment', async (key) => {
48
+ strict_1.default.equal(key, 'filings/notes.txt');
49
+ return Buffer.from('first\nsecond\nthird');
50
+ });
51
+ const researchTools = tools(dir);
52
+ const downloaded = await researchTools.download_attachment.execute({
53
+ key: 'filings/notes.txt', trackingNumber: 'TRK-1',
54
+ }, { toolCallId: 'download', messages: [] });
55
+ strict_1.default.equal(downloaded.path, 'data/attachments/TRK-1/notes.txt');
56
+ strict_1.default.equal(downloaded.bytes, Buffer.byteLength('first\nsecond\nthird'));
57
+ const text = await researchTools.read_text.execute({ path: downloaded.path, startLine: 2, endLine: 2 }, { toolCallId: 'read', messages: [] });
58
+ strict_1.default.deepEqual(text, { path: downloaded.path, totalLines: 3, startLine: 2, endLine: 2, text: 'second' });
59
+ await strict_1.default.rejects(async () => researchTools.read_text.execute({ path: '../outside' }, { toolCallId: 'read', messages: [] }), /path escapes/);
60
+ });
18
61
  for (const name of ['count_filings', 'summarize_filings']) {
19
62
  (0, node_test_1.it)(`${name} sends plural filters and keeps singular summary groups`, async (t) => {
20
63
  let body;
@@ -1 +1 @@
1
- {"version":3,"file":"filingramp-tools.test.js","sourceRoot":"","sources":["../../src/research/filingramp-tools.test.ts"],"names":[],"mappings":";;;;;AAAA,gEAAuC;AACvC,yCAAwC;AACxC,2DAA2E;AAC3E,yDAA0D;AAE1D,SAAS,KAAK;IACZ,OAAO,IAAA,wCAAqB,EAAC;QAC3B,MAAM,EAAE,IAAI,oCAAgB,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;QACzG,YAAY,EAAE,SAAS;QACvB,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE;KACjD,CAAC,CAAA;AACJ,CAAC;AAED,IAAA,oBAAQ,EAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,KAAK,MAAM,IAAI,IAAI,CAAC,eAAe,EAAE,mBAAmB,CAAC,EAAE,CAAC;QAC1D,IAAA,cAAE,EAAC,GAAG,IAAI,yDAAyD,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC/E,IAAI,IAAyC,CAAA;YAC7C,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,IAAa,EAAE,IAAiB,EAAE,EAAE;gBAC5E,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;gBACpC,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;YACjI,CAAC,CAAC,CAAA;YACF,MAAM,MAAM,GAAG,MAAM,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,OAAQ,CAAC;gBAC1C,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;oBACjE,EAAE,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE;iBACxE;gBACD,GAAG,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1E,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;YACxC,gBAAM,CAAC,SAAS,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAE;gBAC9B,EAAE,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;gBAClE,EAAE,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE;aACzE,CAAC,CAAA;YACF,IAAI,IAAI,KAAK,mBAAmB;gBAAE,gBAAM,CAAC,SAAS,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAA;YACtF,gBAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;QACnB,CAAC,CAAC,CAAA;QAEF,IAAA,cAAE,EAAC,GAAG,IAAI,0DAA0D,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAChF,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;YACnH,MAAM,gBAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,OAAQ,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EAC/F,CAAC,KAAc,EAAE,EAAE,CAAC,KAAK,YAAY,uCAAmB,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,CAAC,CAAA;QACrF,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,IAAA,cAAE,EAAC,sFAAsF,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACrG,MAAM,KAAK,GAA0D,EAAE,CAAA;QACvE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,GAAY,EAAE,IAAiB,EAAE,EAAE;YAC3E,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;YAC1C,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;YACtC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE,CAAC;gBACvD,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,eAAe,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,6BAA6B,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YACnJ,CAAC;YACD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAI,IAAI,CAAC,UAAuB,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,EAAG,IAAI,CAAC,UAAuB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;QACpO,CAAC,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,CAAC,MAAM,KAAK,EAAE,CAAC,gBAAgB,CAAC,OAAQ,CACrD,EAAE,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,EAC3H,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CACrC,CAA8I,CAAA;QAE/I,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC,CAAA;QACvF,gBAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAChC,gBAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAA;QACxE,gBAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE;YACzC,EAAE,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;YAClE,EAAE,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,iBAAiB,CAAC,EAAE;YAClF,EAAE,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE;SACpE,CAAC,CAAA;QACF,gBAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,6BAA6B,CAAC,CAAC,CAAA;QAC9E,gBAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;QAC9C,gBAAM,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;QAClE,gBAAM,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;QACnE,gBAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,iCAAiC,EAAE,2BAA2B,CAAC,CAAC,CAAA;IACtH,CAAC,CAAC,CAAA;IAEF,IAAA,cAAE,EAAC,uFAAuF,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;;QACtG,MAAM,IAAI,GAAa,EAAE,CAAA;QACzB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,GAAY,EAAE,EAAE;YACxD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;YACtB,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA;QACrC,CAAC,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,CAAC,MAAM,KAAK,EAAE,CAAC,gBAAgB,CAAC,OAAQ,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAGzH,CAAA;QACD,gBAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;QACjC,gBAAM,CAAC,KAAK,CAAC,MAAA,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,mCAAI,EAAE,EAAE,oBAAoB,CAAC,CAAA;QACpE,gBAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAA;IAC3E,CAAC,CAAC,CAAA;IAEF,IAAA,cAAE,EAAC,uEAAuE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACtF,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,GAAY,EAAE,EAAE;YACxD,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC;gBAAE,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,eAAe,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YACtJ,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,iDAAiD,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;QACvG,CAAC,CAAC,CAAA;QACF,MAAM,gBAAM,CAAC,OAAO,CAClB,KAAK,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,gBAAgB,CAAC,OAAQ,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EACnG,oFAAoF,CACrF,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,IAAA,cAAE,EAAC,iFAAiF,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAChG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,GAAY,EAAE,EAAE;YACxD,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC;gBAAE,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,eAAe,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YACtJ,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,4CAA4C,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;QAClG,CAAC,CAAC,CAAA;QACF,MAAM,gBAAM,CAAC,OAAO,CAClB,KAAK,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,gBAAgB,CAAC,OAAQ,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EACtH,sGAAsG,CACvG,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"filingramp-tools.test.js","sourceRoot":"","sources":["../../src/research/filingramp-tools.test.ts"],"names":[],"mappings":";;;;;AAAA,gEAAuC;AACvC,qCAAwC;AACxC,sDAAwB;AACxB,0DAA4B;AAC5B,yCAAwC;AACxC,2DAA2E;AAC3E,yDAA0D;AAE1D,SAAS,KAAK,CAAC,YAAY,GAAG,SAAS;IACrC,OAAO,IAAA,wCAAqB,EAAC;QAC3B,MAAM,EAAE,IAAI,oCAAgB,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;QACzG,YAAY;QACZ,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE;KACjD,CAAC,CAAA;AACJ,CAAC;AAED,IAAA,oBAAQ,EAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,IAAA,cAAE,EAAC,kFAAkF,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;;QACjG,MAAM,KAAK,GAA2D,EAAE,CAAA;QACxE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,GAAY,EAAE,IAAiB,EAAE,EAAE;YAC3E,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAA;YAC7F,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBAC/C,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,0BAA0B,EAAE,CAAC,EAAE,CAAC,CAAA;YACxE,CAAC;YACD,OAAO,QAAQ,CAAC,IAAI,CAAC;gBACnB,GAAG,EAAE,0BAA0B,EAAE,cAAc,EAAE,OAAO;gBACxD,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;aACxG,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,MAAM,KAAK,EAAE,CAAC,UAAU,CAAC,OAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,CAE3I,CAAA;QACD,gBAAM,CAAC,SAAS,CAAC,MAAA,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,0CAAE,OAAO,EAAE;YACvC,EAAE,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;YAClE,EAAE,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE;YACxE,EAAE,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE;SACzE,CAAC,CAAA;QACF,gBAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,sCAAsC,CAAC,CAAC,CAAA;QACxE,gBAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;QAC7E,gBAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,eAAe,CAAC,CAAA;IACjE,CAAC,CAAC,CAAA;IAEF,IAAA,cAAE,EAAC,gFAAgF,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/F,MAAM,GAAG,GAAG,MAAM,kBAAE,CAAC,OAAO,CAAC,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,MAAM,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAA;QACzE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,kBAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QAC3D,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,oCAAgB,CAAC,SAAS,EAAE,oBAAoB,EAAE,KAAK,EAAE,GAAW,EAAE,EAAE;YACpF,gBAAM,CAAC,KAAK,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAA;YACtC,OAAO,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;QAC5C,CAAC,CAAC,CAAA;QACF,MAAM,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,CAAA;QAChC,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,mBAAmB,CAAC,OAAQ,CAAC;YAClE,GAAG,EAAE,mBAAmB,EAAE,cAAc,EAAE,OAAO;SAClD,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAoC,CAAA;QAC/E,gBAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,kCAAkC,CAAC,CAAA;QACjE,gBAAM,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC,CAAA;QACzE,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,OAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;QAC9I,gBAAM,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC1G,MAAM,gBAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,OAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,cAAc,CAAC,CAAA;IAClJ,CAAC,CAAC,CAAA;IAEF,KAAK,MAAM,IAAI,IAAI,CAAC,eAAe,EAAE,mBAAmB,CAAC,EAAE,CAAC;QAC1D,IAAA,cAAE,EAAC,GAAG,IAAI,yDAAyD,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC/E,IAAI,IAAyC,CAAA;YAC7C,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,IAAa,EAAE,IAAiB,EAAE,EAAE;gBAC5E,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;gBACpC,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;YACjI,CAAC,CAAC,CAAA;YACF,MAAM,MAAM,GAAG,MAAM,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,OAAQ,CAAC;gBAC1C,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;oBACjE,EAAE,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE;iBACxE;gBACD,GAAG,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1E,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;YACxC,gBAAM,CAAC,SAAS,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAE;gBAC9B,EAAE,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;gBAClE,EAAE,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE;aACzE,CAAC,CAAA;YACF,IAAI,IAAI,KAAK,mBAAmB;gBAAE,gBAAM,CAAC,SAAS,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAA;YACtF,gBAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;QACnB,CAAC,CAAC,CAAA;QAEF,IAAA,cAAE,EAAC,GAAG,IAAI,0DAA0D,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAChF,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;YACnH,MAAM,gBAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,OAAQ,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EAC/F,CAAC,KAAc,EAAE,EAAE,CAAC,KAAK,YAAY,uCAAmB,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,CAAC,CAAA;QACrF,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,IAAA,cAAE,EAAC,sFAAsF,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACrG,MAAM,KAAK,GAA0D,EAAE,CAAA;QACvE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,GAAY,EAAE,IAAiB,EAAE,EAAE;YAC3E,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;YAC1C,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;YACtC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE,CAAC;gBACvD,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,eAAe,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,6BAA6B,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YACnJ,CAAC;YACD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,GAAI,IAAI,CAAC,UAAuB,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,EAAG,IAAI,CAAC,UAAuB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;QACpO,CAAC,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,CAAC,MAAM,KAAK,EAAE,CAAC,gBAAgB,CAAC,OAAQ,CACrD,EAAE,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,EAC3H,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CACrC,CAA8I,CAAA;QAE/I,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC,CAAA;QACvF,gBAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAChC,gBAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAA;QACxE,gBAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE;YACzC,EAAE,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;YAClE,EAAE,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,iBAAiB,CAAC,EAAE;YAClF,EAAE,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE;SACpE,CAAC,CAAA;QACF,gBAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,6BAA6B,CAAC,CAAC,CAAA;QAC9E,gBAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;QAC9C,gBAAM,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;QAClE,gBAAM,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;QACnE,gBAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,iCAAiC,EAAE,2BAA2B,CAAC,CAAC,CAAA;IACtH,CAAC,CAAC,CAAA;IAEF,IAAA,cAAE,EAAC,uFAAuF,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;;QACtG,MAAM,IAAI,GAAa,EAAE,CAAA;QACzB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,GAAY,EAAE,EAAE;YACxD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;YACtB,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA;QACrC,CAAC,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,CAAC,MAAM,KAAK,EAAE,CAAC,gBAAgB,CAAC,OAAQ,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAGzH,CAAA;QACD,gBAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;QACjC,gBAAM,CAAC,KAAK,CAAC,MAAA,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,mCAAI,EAAE,EAAE,oBAAoB,CAAC,CAAA;QACpE,gBAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAA;IAC3E,CAAC,CAAC,CAAA;IAEF,IAAA,cAAE,EAAC,uEAAuE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACtF,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,GAAY,EAAE,EAAE;YACxD,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC;gBAAE,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,eAAe,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YACtJ,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,iDAAiD,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;QACvG,CAAC,CAAC,CAAA;QACF,MAAM,gBAAM,CAAC,OAAO,CAClB,KAAK,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,gBAAgB,CAAC,OAAQ,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EACnG,oFAAoF,CACrF,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,IAAA,cAAE,EAAC,iFAAiF,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAChG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,GAAY,EAAE,EAAE;YACxD,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC;gBAAE,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,eAAe,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YACtJ,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,4CAA4C,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;QAClG,CAAC,CAAC,CAAA;QACF,MAAM,gBAAM,CAAC,OAAO,CAClB,KAAK,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,gBAAgB,CAAC,OAAQ,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EACtH,sGAAsG,CACvG,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { ResearchScope } from '../config';
1
+ import type { ResearchScope } from '../runtime/config';
2
2
  export declare const RESEARCH_OUTPUT_FILES: {
3
3
  readonly findings: "research/findings.md";
4
4
  readonly results: "research/results.csv";
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/research/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAG9C,eAAO,MAAM,qBAAqB;;;;;CAKxB,CAAA;AAEV,gGAAgG;AAChG,eAAO,MAAM,uBAAuB,4CAA6C,CAAA;AAEjF,wBAAgB,yBAAyB,CAAC,OAAO,EAAE;IACjD,KAAK,CAAC,EAAE,aAAa,CAAA;IACrB,YAAY,EAAE,OAAO,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,wGAAwG;IACxG,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,GAAG,MAAM,CAuCT"}
1
+ {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/research/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAGtD,eAAO,MAAM,qBAAqB;;;;;CAKxB,CAAA;AAEV,gGAAgG;AAChG,eAAO,MAAM,uBAAuB,4CAA6C,CAAA;AAEjF,wBAAgB,yBAAyB,CAAC,OAAO,EAAE;IACjD,KAAK,CAAC,EAAE,aAAa,CAAA;IACrB,YAAY,EAAE,OAAO,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,wGAAwG;IACxG,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,GAAG,MAAM,CAuCT"}
@@ -1,4 +1,4 @@
1
- import type { ResearchScope } from '../config';
1
+ import type { ResearchScope } from '../runtime/config';
2
2
  import { type FilingsFilter } from './filingramp-contract';
3
3
  export type { FilingsFilter } from './filingramp-contract';
4
4
  /** Four-decimal codes ("17.0001") are sub-lines; anything else is a broad line or a name. */
@@ -1 +1 @@
1
- {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../src/research/scope.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAEjF,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAE1D,6FAA6F;AAC7F,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,EAAE,SAAS,GAAE,aAAa,EAAO,GAAG,aAAa,EAAE,CAsCtH;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,aAAa,EAAE,CAAA;IACxB,iGAAiG;IACjG,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,8FAA8F;IAC9F,YAAY,EAAE,OAAO,CAAA;CACtB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,SAAS,EAAE,aAAa,EAAE,EAC1B,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,UAAU,CAAC,EAAE,eAAe,GAC3B,qBAAqB,CAyCvB;AAED,yGAAyG;AACzG,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,YAAY,EAAE,OAAO,EACrB,SAAS,CAAC,EAAE,SAAS,GAAG,UAAU,GACjC,SAAS,GAAG,UAAU,CAMxB;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM,CAUtE"}
1
+ {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../src/research/scope.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAEjF,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAE1D,6FAA6F;AAC7F,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,EAAE,SAAS,GAAE,aAAa,EAAO,GAAG,aAAa,EAAE,CAsCtH;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,aAAa,EAAE,CAAA;IACxB,iGAAiG;IACjG,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,8FAA8F;IAC9F,YAAY,EAAE,OAAO,CAAA;CACtB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,SAAS,EAAE,aAAa,EAAE,EAC1B,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,UAAU,CAAC,EAAE,eAAe,GAC3B,qBAAqB,CAyCvB;AAED,yGAAyG;AACzG,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,YAAY,EAAE,OAAO,EACrB,SAAS,CAAC,EAAE,SAAS,GAAG,UAAU,GACjC,SAAS,GAAG,UAAU,CAMxB;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM,CAUtE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/runtime/cli.ts"],"names":[],"mappings":""}
@@ -4,12 +4,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  // Generic entrypoint — reads its whole config from real process.env (already materialized by
5
5
  // the time this runs: QEMU's init script exports ENV_B64 before launching the entrypoint, and
6
6
  // Docker/Fargate pass env directly). Lambda MicroVM's own entrypoint
7
- // (lambda-microvm-entrypoint.ts) has to materialize env from the /run lifecycle hook payload
7
+ // (lambda-microvm.ts) has to materialize env from the /run lifecycle hook payload
8
8
  // first, then calls the same startAgent — this file's job is intentionally just "trust
9
9
  // process.env and go".
10
- const runtime_1 = require("./runtime");
10
+ const index_1 = require("./index");
11
11
  async function main() {
12
- const starting = (0, runtime_1.startAgent)();
12
+ const starting = (0, index_1.startAgent)();
13
13
  let shuttingDown = false;
14
14
  const shutdown = async (signal) => {
15
15
  if (shuttingDown)
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/runtime/cli.ts"],"names":[],"mappings":";;;AACA,6FAA6F;AAC7F,8FAA8F;AAC9F,qEAAqE;AACrE,kFAAkF;AAClF,uFAAuF;AACvF,uBAAuB;AACvB,mCAAoC;AAEpC,KAAK,UAAU,IAAI;IACjB,MAAM,QAAQ,GAAG,IAAA,kBAAU,GAAE,CAAA;IAC7B,IAAI,YAAY,GAAG,KAAK,CAAA;IACxB,MAAM,QAAQ,GAAG,KAAK,EAAE,MAAc,EAAE,EAAE;QACxC,IAAI,YAAY;YAAE,OAAM;QACxB,YAAY,GAAG,IAAI,CAAA;QACnB,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,0BAA0B,CAAC,CAAA;QACxD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAA;QAC9B,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAA;IACD,KAAK,MAAM,MAAM,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC3C,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACtE,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAA;YACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC,CAAC,CAAC,CAAA;IACL,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAA;IAC9B,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,YAAY;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACxD,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { McpConnectionRecord } from './mcp/mcp-connection';
1
+ import type { McpConnectionRecord } from '../mcp/mcp-connection';
2
2
  export type AgentMode = 'task' | 'session';
3
3
  export type AgentProfile = 'coding' | 'research';
4
4
  export interface FilingRampConfig {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/runtime/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAGhE,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;AAC1C,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,UAAU,CAAA;AAEhD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,mGAAmG;IACnG,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,6GAA6G;IAC7G,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,4DAA4D;IAC5D,YAAY,EAAE,OAAO,CAAA;CACtB;AAED,+FAA+F;AAC/F,MAAM,WAAW,aAAa;IAC5B,UAAU,CAAC,EAAE,SAAS,GAAG,UAAU,CAAA;IACnC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,0EAA0E;IAC1E,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,mBAAmB;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,SAAS,CAAA;IACf,OAAO,EAAE,YAAY,CAAA;IACrB,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,8DAA8D;IAC9D,eAAe,EAAE,MAAM,CAAA;IACvB,qFAAqF;IACrF,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,mBAAmB,EAAE,CAAA;IACrC,oGAAoG;IACpG,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,mBAAmB,CAAA;IAC7B,UAAU,CAAC,EAAE,gBAAgB,CAAA;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,GAAG,CAAC,EAAE,aAAa,CAAA;IACnB,cAAc,CAAC,EAAE,oBAAoB,CAAA;CACtC;AA+DD,2GAA2G;AAC3G,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,kBAAkB,CAoC1F"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.loadConfigFromEnv = loadConfigFromEnv;
4
- const protocol_1 = require("./protocol");
4
+ const protocol_1 = require("../transport/protocol");
5
5
  const DEFAULT_MODEL = 'anthropic/claude-sonnet-5.5';
6
6
  const DEFAULT_WORKSPACE_DIR = '/workspace';
7
7
  function decodeMcpConnections(raw) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/runtime/config.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type AgentRuntimeConfig } from './config';
2
- import { type SessionAgent } from './session';
2
+ import { type SessionAgent } from '../session';
3
3
  export interface RunningAgent {
4
4
  config: AgentRuntimeConfig;
5
5
  /** Present in session mode only. */
@@ -9,4 +9,4 @@ export interface RunningAgent {
9
9
  /** A lifecycle request can race startup; never acknowledge a freeze before restore finishes. */
10
10
  export declare function checkpointBeforeFreeze(starting: Promise<RunningAgent> | undefined, reason: string): Promise<void>;
11
11
  export declare function startAgent(env?: NodeJS.ProcessEnv): Promise<RunningAgent>;
12
- //# sourceMappingURL=runtime.d.ts.map
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAqB,KAAK,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAIrE,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,YAAY,CAAA;AAE/D,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,kBAAkB,CAAA;IAC1B,oCAAoC;IACpC,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACvB;AAED,gGAAgG;AAChG,wBAAsB,sBAAsB,CAAC,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIvH;AAED,wBAAsB,UAAU,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAAC,YAAY,CAAC,CA6B5F"}
@@ -3,13 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.checkpointBeforeFreeze = checkpointBeforeFreeze;
4
4
  exports.startAgent = startAgent;
5
5
  // Mode dispatch shared by both entrypoints (cli.ts for engines that materialize env before
6
- // start, lambda-microvm-entrypoint.ts for the /run hook): task mode runs once and resolves;
6
+ // start, lambda-microvm.ts for the /run hook): task mode runs once and resolves;
7
7
  // session mode stays up and resolves with the running agent so lifecycle hooks can reach it.
8
8
  const config_1 = require("./config");
9
- const link_1 = require("./link");
10
- const loop_1 = require("./loop");
11
- const report_1 = require("./report");
12
- const session_1 = require("./session");
9
+ const link_1 = require("../transport/link");
10
+ const loop_1 = require("../task/loop");
11
+ const reporter_1 = require("../transport/reporter");
12
+ const session_1 = require("../session");
13
13
  /** A lifecycle request can race startup; never acknowledge a freeze before restore finishes. */
14
14
  async function checkpointBeforeFreeze(starting, reason) {
15
15
  var _a;
@@ -40,7 +40,7 @@ async function startAgent(env = process.env) {
40
40
  },
41
41
  };
42
42
  }
43
- const reporter = (0, report_1.createReporter)(config.socketUrl, config.socketToken, config.sessionId);
43
+ const reporter = (0, reporter_1.createReporter)(config.socketUrl, config.socketToken, config.sessionId);
44
44
  try {
45
45
  await (0, loop_1.runAgentLoop)(config, reporter);
46
46
  }
@@ -49,4 +49,4 @@ async function startAgent(env = process.env) {
49
49
  }
50
50
  return { config, async close() { } };
51
51
  }
52
- //# sourceMappingURL=runtime.js.map
52
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":";;AAiBA,wDAIC;AAED,gCA6BC;AApDD,2FAA2F;AAC3F,iFAAiF;AACjF,6FAA6F;AAC7F,qCAAqE;AACrE,4CAAqD;AACrD,uCAA2C;AAC3C,oDAAsD;AACtD,wCAA+D;AAS/D,gGAAgG;AACzF,KAAK,UAAU,sBAAsB,CAAC,QAA2C,EAAE,MAAc;;IACtG,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;IAC1F,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAA;IAC5B,MAAM,CAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,UAAU,CAAC,MAAM,CAAC,CAAA,CAAA;AACzC,CAAC;AAEM,KAAK,UAAU,UAAU,CAAC,MAAyB,OAAO,CAAC,GAAG;IACnE,MAAM,MAAM,GAAG,IAAA,0BAAiB,EAAC,GAAG,CAAC,CAAA;IACrC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,IAAA,wBAAiB,EAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,CAAA;QACtF,MAAM,OAAO,GAAG,MAAM,IAAA,yBAAe,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,KAAc,EAAE,EAAE;YACjF,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,6BAA6B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAA;YAC5H,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;YAClB,MAAM,KAAK,CAAA;QACb,CAAC,CAAC,CAAA;QACF,OAAO;YACL,MAAM;YACN,OAAO;YACP,KAAK,CAAC,KAAK;gBACT,IAAI,CAAC;oBACH,MAAM,OAAO,CAAC,IAAI,EAAE,CAAA;gBACtB,CAAC;wBAAS,CAAC;oBACT,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;gBACpB,CAAC;YACH,CAAC;SACF,CAAA;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,yBAAc,EAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,CAAA;IACvF,IAAI,CAAC;QACH,MAAM,IAAA,mBAAY,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACtC,CAAC;YAAS,CAAC;QACT,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAA;IACxB,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,KAAI,CAAC,EAAE,CAAA;AACrC,CAAC"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=lambda-microvm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lambda-microvm.d.ts","sourceRoot":"","sources":["../../src/runtime/lambda-microvm.ts"],"names":[],"mappings":""}
@@ -17,7 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  // hook caller (Docker, Fargate) set SESSION_ID in the real env at boot, which starts the agent
18
18
  // directly.
19
19
  const http_1 = __importDefault(require("http"));
20
- const runtime_1 = require("./runtime");
20
+ const index_1 = require("./index");
21
21
  const HOOK_PREFIX = '/aws/lambda-microvms/runtime/v1/';
22
22
  const PORT = 8080;
23
23
  let running;
@@ -41,7 +41,7 @@ function materializeEnv(runHookPayload) {
41
41
  }
42
42
  function start() {
43
43
  if (!starting) {
44
- starting = (0, runtime_1.startAgent)()
44
+ starting = (0, index_1.startAgent)()
45
45
  .then((agent) => {
46
46
  running = agent;
47
47
  return agent;
@@ -69,7 +69,7 @@ async function onHook(hook, body) {
69
69
  }
70
70
  case 'suspend':
71
71
  case 'terminate':
72
- await (0, runtime_1.checkpointBeforeFreeze)(starting, hook);
72
+ await (0, index_1.checkpointBeforeFreeze)(starting, hook);
73
73
  return;
74
74
  case 'resume':
75
75
  // Memory and disk survived; the socket reconnects on its own. Nothing to restore.
@@ -134,4 +134,4 @@ for (const signal of ['SIGTERM', 'SIGINT']) {
134
134
  });
135
135
  });
136
136
  }
137
- //# sourceMappingURL=lambda-microvm-entrypoint.js.map
137
+ //# sourceMappingURL=lambda-microvm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lambda-microvm.js","sourceRoot":"","sources":["../../src/runtime/lambda-microvm.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle.test.d.ts","sourceRoot":"","sources":["../../src/runtime/lifecycle.test.ts"],"names":[],"mappings":""}
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const strict_1 = __importDefault(require("node:assert/strict"));
7
7
  const node_test_1 = require("node:test");
8
- const runtime_1 = require("./runtime");
8
+ const index_1 = require("./index");
9
9
  (0, node_test_1.describe)('Lambda suspend/terminate checkpoint', () => {
10
10
  for (const hook of ['suspend', 'terminate']) {
11
11
  (0, node_test_1.it)(`waits for both startup and Git before completing ${hook}`, async () => {
@@ -18,7 +18,7 @@ const runtime_1 = require("./runtime");
18
18
  const push = new Promise((resolve) => {
19
19
  pushed = resolve;
20
20
  });
21
- const request = (0, runtime_1.checkpointBeforeFreeze)(startup, hook).then(() => {
21
+ const request = (0, index_1.checkpointBeforeFreeze)(startup, hook).then(() => {
22
22
  finished = true;
23
23
  });
24
24
  await Promise.resolve();
@@ -35,12 +35,12 @@ const runtime_1 = require("./runtime");
35
35
  });
36
36
  }
37
37
  (0, node_test_1.it)('rejects the lifecycle request if startup or the Git push fails', async () => {
38
- await strict_1.default.rejects((0, runtime_1.checkpointBeforeFreeze)(undefined, 'suspend'), /has not started/);
39
- await strict_1.default.rejects((0, runtime_1.checkpointBeforeFreeze)(Promise.reject(new Error('restore failed')), 'suspend'), /restore failed/);
38
+ await strict_1.default.rejects((0, index_1.checkpointBeforeFreeze)(undefined, 'suspend'), /has not started/);
39
+ await strict_1.default.rejects((0, index_1.checkpointBeforeFreeze)(Promise.reject(new Error('restore failed')), 'suspend'), /restore failed/);
40
40
  const agent = { session: { checkpoint: async () => {
41
41
  throw new Error('push failed');
42
42
  } } };
43
- await strict_1.default.rejects((0, runtime_1.checkpointBeforeFreeze)(Promise.resolve(agent), 'terminate'), /push failed/);
43
+ await strict_1.default.rejects((0, index_1.checkpointBeforeFreeze)(Promise.resolve(agent), 'terminate'), /push failed/);
44
44
  });
45
45
  });
46
46
  //# sourceMappingURL=lifecycle.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle.test.js","sourceRoot":"","sources":["../../src/runtime/lifecycle.test.ts"],"names":[],"mappings":";;;;;AAAA,gEAAuC;AACvC,yCAAwC;AACxC,mCAAmE;AAEnE,IAAA,oBAAQ,EAAC,qCAAqC,EAAE,GAAG,EAAE;IACnD,KAAK,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC;QAC5C,IAAA,cAAE,EAAC,oDAAoD,IAAI,EAAE,EAAE,KAAK,IAAI,EAAE;YACxE,IAAI,OAAuC,CAAA;YAC3C,IAAI,MAAmB,CAAA;YACvB,IAAI,QAAQ,GAAG,KAAK,CAAA;YACpB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,EAAE;gBACpD,OAAO,GAAG,OAAO,CAAA;YACnB,CAAC,CAAC,CAAA;YACF,MAAM,IAAI,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBACzC,MAAM,GAAG,OAAO,CAAA;YAClB,CAAC,CAAC,CAAA;YACF,MAAM,OAAO,GAAG,IAAA,8BAAsB,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC9D,QAAQ,GAAG,IAAI,CAAA;YACjB,CAAC,CAAC,CAAA;YACF,MAAM,OAAO,CAAC,OAAO,EAAE,CAAA;YACvB,gBAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;YAC7B,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,MAAc,EAAE,EAAE;wBACxD,gBAAM,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;wBAC1B,MAAM,IAAI,CAAA;oBACZ,CAAC,EAAE,EAA6B,CAAC,CAAA;YACjC,MAAM,OAAO,CAAC,OAAO,EAAE,CAAA;YACvB,gBAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;YAC7B,MAAM,EAAE,CAAA;YACR,MAAM,OAAO,CAAA;YACb,gBAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QAC9B,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,IAAA,cAAE,EAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;QAC9E,MAAM,gBAAM,CAAC,OAAO,CAAC,IAAA,8BAAsB,EAAC,SAAS,EAAE,SAAS,CAAC,EAAE,iBAAiB,CAAC,CAAA;QACrF,MAAM,gBAAM,CAAC,OAAO,CAAC,IAAA,8BAAsB,EAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,gBAAgB,CAAC,CAAA;QACtH,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE;oBAChD,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAA;gBAChC,CAAC,EAAE,EAA6B,CAAA;QAChC,MAAM,gBAAM,CAAC,OAAO,CAAC,IAAA,8BAAsB,EAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,EAAE,aAAa,CAAC,CAAA;IAClG,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkpoint-timer.test.d.ts","sourceRoot":"","sources":["../../src/session/checkpoint-timer.test.ts"],"names":[],"mappings":""}
@@ -9,13 +9,13 @@ const node_os_1 = __importDefault(require("node:os"));
9
9
  const node_path_1 = __importDefault(require("node:path"));
10
10
  const promises_1 = require("node:timers/promises");
11
11
  const node_test_1 = require("node:test");
12
- const session_1 = require("./session");
13
- const git_sync_1 = require("./git-sync");
12
+ const index_1 = require("./index");
13
+ const git_sync_1 = require("../persistence/git-sync");
14
14
  (0, node_test_1.it)('checkpoints idle sessions every five minutes without overlapping slow pushes, and stops the timer on shutdown', async (t) => {
15
15
  const dir = await node_fs_1.promises.mkdtemp(node_path_1.default.join(node_os_1.default.tmpdir(), 'agent-checkpoint-timer-'));
16
16
  t.after(() => node_fs_1.promises.rm(dir, { recursive: true, force: true }));
17
17
  t.mock.timers.enable({ apis: ['setTimeout', 'Date'], now: 1000000 });
18
- const agent = new session_1.SessionAgent({
18
+ const agent = new index_1.SessionAgent({
19
19
  sessionId: 's', mode: 'session', profile: 'coding', workspaceDir: dir,
20
20
  model: 'unused', extractionModel: 'unused', mcpConnections: [], provider: {},
21
21
  }, { send() { }, onCommand() { }, async ready() { }, async close() { } });
@@ -25,21 +25,21 @@ const git_sync_1 = require("./git-sync");
25
25
  });
26
26
  const checkpoint = t.mock.method(agent, 'checkpoint', async () => push);
27
27
  await agent.start();
28
- t.mock.timers.tick(session_1.PERIODIC_CHECKPOINT_MS - 1);
28
+ t.mock.timers.tick(index_1.PERIODIC_CHECKPOINT_MS - 1);
29
29
  strict_1.default.equal(checkpoint.mock.callCount(), 0);
30
30
  t.mock.timers.tick(1);
31
31
  strict_1.default.equal(checkpoint.mock.callCount(), 1);
32
32
  strict_1.default.deepEqual(checkpoint.mock.calls[0].arguments, ['periodic']);
33
- t.mock.timers.tick(session_1.PERIODIC_CHECKPOINT_MS * 3);
33
+ t.mock.timers.tick(index_1.PERIODIC_CHECKPOINT_MS * 3);
34
34
  strict_1.default.equal(checkpoint.mock.callCount(), 1);
35
35
  release();
36
36
  await (0, promises_1.setImmediate)();
37
- t.mock.timers.tick(session_1.PERIODIC_CHECKPOINT_MS);
37
+ t.mock.timers.tick(index_1.PERIODIC_CHECKPOINT_MS);
38
38
  strict_1.default.equal(checkpoint.mock.callCount(), 2);
39
39
  await (0, promises_1.setImmediate)();
40
40
  await agent.stop();
41
41
  const count = checkpoint.mock.callCount();
42
- t.mock.timers.tick(session_1.PERIODIC_CHECKPOINT_MS * 3);
42
+ t.mock.timers.tick(index_1.PERIODIC_CHECKPOINT_MS * 3);
43
43
  strict_1.default.equal(checkpoint.mock.callCount(), count);
44
44
  });
45
45
  (0, node_test_1.it)('defers periodic work until five minutes after a successful turn/lifecycle checkpoint', async (t) => {
@@ -49,7 +49,7 @@ const git_sync_1 = require("./git-sync");
49
49
  t.mock.method(git_sync_1.GitSync.prototype, 'restore', async () => false);
50
50
  const commit = t.mock.method(git_sync_1.GitSync.prototype, 'commit', async () => 'sha');
51
51
  let checkpointed;
52
- const agent = new session_1.SessionAgent({
52
+ const agent = new index_1.SessionAgent({
53
53
  sessionId: 's', mode: 'session', profile: 'coding', workspaceDir: dir,
54
54
  model: 'unused', extractionModel: 'unused', mcpConnections: [], provider: {},
55
55
  git: { dir, serverUrl: 'unused', repository: 'unused', branch: 'session/s', token: 'unused' },
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkpoint-timer.test.js","sourceRoot":"","sources":["../../src/session/checkpoint-timer.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { ModelMessage } from 'ai';
2
+ export interface PersistedConversation {
3
+ version: 1;
4
+ messages: ModelMessage[];
5
+ usedTokens: number;
6
+ budget?: number;
7
+ budgetPaused?: boolean;
8
+ }
9
+ /** Drops the oldest turns (user message + everything up to the next user message) past the cap, keeping the first one. */
10
+ export declare function limitConversation(messages: ModelMessage[], charBudget?: number): ModelMessage[];
11
+ /** Missing conversation means a new session; corrupt state must fail startup. */
12
+ export declare function readConversation(workspaceDir: string): Promise<PersistedConversation | undefined>;
13
+ /** Replace atomically so recovery never reads half of a conversation. The caller serializes writes. */
14
+ export declare function writeConversation(workspaceDir: string, getConversation: () => PersistedConversation): Promise<void>;
15
+ //# sourceMappingURL=conversation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../src/session/conversation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAMtC,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,CAAC,CAAA;IACV,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAMD,0HAA0H;AAC1H,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,UAAU,SAAsB,GAAG,YAAY,EAAE,CAa5G;AAED,iFAAiF;AACjF,wBAAsB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAavG;AAED,uGAAuG;AACvG,wBAAsB,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAOzH"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.limitConversation = limitConversation;
7
+ exports.readConversation = readConversation;
8
+ exports.writeConversation = writeConversation;
9
+ const node_fs_1 = require("node:fs");
10
+ const node_path_1 = __importDefault(require("node:path"));
11
+ const CONVERSATION_FILE = '.builder/conversation.json';
12
+ /** Rough context cap (chars ≈ tokens × 4): older turns are dropped, the first question is kept. */
13
+ const CONTEXT_CHAR_BUDGET = 480000;
14
+ function approxChars(message) {
15
+ return JSON.stringify(message).length;
16
+ }
17
+ /** Drops the oldest turns (user message + everything up to the next user message) past the cap, keeping the first one. */
18
+ function limitConversation(messages, charBudget = CONTEXT_CHAR_BUDGET) {
19
+ var _a;
20
+ let total = messages.reduce((sum, message) => sum + approxChars(message), 0);
21
+ if (total <= charBudget)
22
+ return messages;
23
+ const result = [...messages];
24
+ while (total > charBudget) {
25
+ const userIndexes = result.map((m, i) => (m.role === 'user' ? i : -1)).filter((i) => i >= 0);
26
+ if (userIndexes.length < 2)
27
+ break;
28
+ const start = userIndexes[1];
29
+ const end = (_a = userIndexes[2]) !== null && _a !== void 0 ? _a : result.length;
30
+ const removed = result.splice(start, end - start);
31
+ total -= removed.reduce((sum, message) => sum + approxChars(message), 0);
32
+ }
33
+ return result;
34
+ }
35
+ /** Missing conversation means a new session; corrupt state must fail startup. */
36
+ async function readConversation(workspaceDir) {
37
+ let raw;
38
+ try {
39
+ raw = await node_fs_1.promises.readFile(node_path_1.default.join(workspaceDir, CONVERSATION_FILE), 'utf8');
40
+ }
41
+ catch (error) {
42
+ if (error.code === 'ENOENT')
43
+ return undefined;
44
+ throw error;
45
+ }
46
+ const parsed = JSON.parse(raw);
47
+ if (parsed.version !== 1 || !Array.isArray(parsed.messages)) {
48
+ throw new Error('Invalid saved session conversation');
49
+ }
50
+ return parsed;
51
+ }
52
+ /** Replace atomically so recovery never reads half of a conversation. The caller serializes writes. */
53
+ async function writeConversation(workspaceDir, getConversation) {
54
+ const target = node_path_1.default.join(workspaceDir, CONVERSATION_FILE);
55
+ await node_fs_1.promises.mkdir(node_path_1.default.dirname(target), { recursive: true });
56
+ // Read messages and token counters together after the directory is ready. A model step
57
+ // may finish during mkdir; capturing counters earlier would pair them with newer messages.
58
+ await node_fs_1.promises.writeFile(`${target}.tmp`, JSON.stringify(getConversation()));
59
+ await node_fs_1.promises.rename(`${target}.tmp`, target);
60
+ }
61
+ //# sourceMappingURL=conversation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../src/session/conversation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=conversation.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation.test.d.ts","sourceRoot":"","sources":["../../src/session/conversation.test.ts"],"names":[],"mappings":""}