pi-harness-runtime 0.9.14 → 0.9.16

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 (175) hide show
  1. package/harness/auto-quota-resume.ts +129 -0
  2. package/harness/e2e/minimax-quota-scraper.ts +10 -4
  3. package/harness/index.ts +8 -0
  4. package/harness/loop-runtime.ts +57 -0
  5. package/index.ts +47 -11
  6. package/mirror.ts +40 -18
  7. package/package.json +1 -1
  8. package/packages/a2a-adapter/package.json +1 -1
  9. package/packages/auth/package.json +1 -1
  10. package/packages/autonomous-refactor/package.json +1 -1
  11. package/packages/autonomous-runtime/README.md +48 -0
  12. package/packages/autonomous-runtime/dist/inbox.d.ts +75 -0
  13. package/packages/autonomous-runtime/dist/inbox.d.ts.map +1 -0
  14. package/packages/autonomous-runtime/dist/inbox.js +212 -0
  15. package/packages/autonomous-runtime/dist/inbox.js.map +1 -0
  16. package/packages/autonomous-runtime/dist/index.d.ts +17 -0
  17. package/packages/autonomous-runtime/dist/index.d.ts.map +1 -0
  18. package/packages/autonomous-runtime/dist/index.js +17 -0
  19. package/packages/autonomous-runtime/dist/index.js.map +1 -0
  20. package/packages/autonomous-runtime/dist/lease.d.ts +78 -0
  21. package/packages/autonomous-runtime/dist/lease.d.ts.map +1 -0
  22. package/packages/autonomous-runtime/dist/lease.js +273 -0
  23. package/packages/autonomous-runtime/dist/lease.js.map +1 -0
  24. package/packages/autonomous-runtime/dist/types.d.ts +160 -0
  25. package/packages/autonomous-runtime/dist/types.d.ts.map +1 -0
  26. package/packages/autonomous-runtime/dist/types.js +31 -0
  27. package/packages/autonomous-runtime/dist/types.js.map +1 -0
  28. package/packages/autonomous-runtime/dist/worker.d.ts +63 -0
  29. package/packages/autonomous-runtime/dist/worker.d.ts.map +1 -0
  30. package/packages/autonomous-runtime/dist/worker.js +133 -0
  31. package/packages/autonomous-runtime/dist/worker.js.map +1 -0
  32. package/packages/autonomous-runtime/package.json +34 -0
  33. package/packages/autonomous-runtime/src/inbox.ts +266 -0
  34. package/packages/autonomous-runtime/src/index.ts +22 -0
  35. package/packages/autonomous-runtime/src/lease.ts +318 -0
  36. package/packages/autonomous-runtime/src/types.ts +257 -0
  37. package/packages/autonomous-runtime/test/autonomous-runtime.test.ts +194 -0
  38. package/packages/autonomous-runtime/test/inbox.test.mjs +266 -0
  39. package/packages/autonomous-runtime/test/inbox.test.ts +80 -0
  40. package/packages/autonomous-runtime/test/types.test.ts +68 -0
  41. package/packages/autonomous-runtime/tsconfig.json +22 -0
  42. package/packages/autonomous-runtime/tsconfig.tsbuildinfo +1 -0
  43. package/packages/cache-strategy/package.json +1 -1
  44. package/packages/capability-registry/package.json +1 -1
  45. package/packages/checkpoint/package.json +1 -1
  46. package/packages/cli-plugin-sdk/package.json +1 -1
  47. package/packages/code-generation/package.json +1 -1
  48. package/packages/code-review/package.json +1 -1
  49. package/packages/codex-adapter/package.json +1 -1
  50. package/packages/context-compiler/package.json +1 -1
  51. package/packages/context-manager/package.json +1 -1
  52. package/packages/cookie-sanitizer/package.json +1 -1
  53. package/packages/cost-optimizer/package.json +1 -1
  54. package/packages/django-plugin/package.json +1 -1
  55. package/packages/doc-generator/package.json +1 -1
  56. package/packages/evaluation-engine/package.json +1 -1
  57. package/packages/evaluation-runner/package.json +1 -1
  58. package/packages/experience-replay/package.json +1 -1
  59. package/packages/feedback-collector/package.json +1 -1
  60. package/packages/framework-detector/package.json +1 -1
  61. package/packages/framework-plugin-sdk/package.json +1 -1
  62. package/packages/frappe-plugin/package.json +1 -1
  63. package/packages/generic-web-plugin/package.json +1 -1
  64. package/packages/health-monitor/package.json +1 -1
  65. package/packages/laravel-plugin/package.json +1 -1
  66. package/packages/learning-engine/package.json +1 -1
  67. package/packages/mcp-adapter/package.json +1 -1
  68. package/packages/memory-engine/package.json +1 -1
  69. package/packages/model-registry/package.json +1 -1
  70. package/packages/nextjs-plugin/package.json +1 -1
  71. package/packages/notification/package.json +1 -1
  72. package/packages/observability/package.json +1 -1
  73. package/packages/performance-optimizer/package.json +1 -1
  74. package/packages/privilege-broker/README.md +45 -0
  75. package/packages/privilege-broker/config/privileges.yaml.example +172 -0
  76. package/packages/privilege-broker/dist/approval.d.ts +23 -0
  77. package/packages/privilege-broker/dist/approval.d.ts.map +1 -0
  78. package/packages/privilege-broker/dist/approval.js +45 -0
  79. package/packages/privilege-broker/dist/approval.js.map +1 -0
  80. package/packages/privilege-broker/dist/audit.d.ts +38 -0
  81. package/packages/privilege-broker/dist/audit.d.ts.map +1 -0
  82. package/packages/privilege-broker/dist/audit.js +125 -0
  83. package/packages/privilege-broker/dist/audit.js.map +1 -0
  84. package/packages/privilege-broker/dist/executor.d.ts +25 -0
  85. package/packages/privilege-broker/dist/executor.d.ts.map +1 -0
  86. package/packages/privilege-broker/dist/executor.js +83 -0
  87. package/packages/privilege-broker/dist/executor.js.map +1 -0
  88. package/packages/privilege-broker/dist/index.d.ts +30 -0
  89. package/packages/privilege-broker/dist/index.d.ts.map +1 -0
  90. package/packages/privilege-broker/dist/index.js +5 -0
  91. package/packages/privilege-broker/dist/index.js.map +1 -0
  92. package/packages/privilege-broker/dist/registry.d.ts +15 -0
  93. package/packages/privilege-broker/dist/registry.d.ts.map +1 -0
  94. package/packages/privilege-broker/dist/registry.js +76 -0
  95. package/packages/privilege-broker/dist/registry.js.map +1 -0
  96. package/packages/privilege-broker/dist/types.d.ts +77 -0
  97. package/packages/privilege-broker/dist/types.d.ts.map +1 -0
  98. package/packages/privilege-broker/dist/types.js +11 -0
  99. package/packages/privilege-broker/dist/types.js.map +1 -0
  100. package/packages/privilege-broker/package.json +35 -0
  101. package/packages/privilege-broker/src/approval.ts +70 -0
  102. package/packages/privilege-broker/src/audit.ts +142 -0
  103. package/packages/privilege-broker/src/executor.ts +110 -0
  104. package/packages/privilege-broker/src/index.ts +46 -0
  105. package/packages/privilege-broker/src/registry.ts +98 -0
  106. package/packages/privilege-broker/src/types.ts +105 -0
  107. package/packages/privilege-broker/tsconfig.json +22 -0
  108. package/packages/privilege-broker/tsconfig.tsbuildinfo +1 -0
  109. package/packages/project-analyzer/package.json +1 -1
  110. package/packages/prompt-compiler/package.json +1 -1
  111. package/packages/prompt-versioning/package.json +1 -1
  112. package/packages/provider-adapter-sdk/package.json +1 -1
  113. package/packages/provider-router/package.json +1 -1
  114. package/packages/provider-selector/package.json +1 -1
  115. package/packages/providers/dist/provider-id.d.ts +2 -0
  116. package/packages/providers/dist/provider-id.d.ts.map +1 -1
  117. package/packages/providers/dist/provider-id.js +9 -0
  118. package/packages/providers/dist/provider-id.js.map +1 -1
  119. package/packages/providers/package.json +1 -1
  120. package/packages/providers/src/provider-id.ts +12 -0
  121. package/packages/quota-manager/package.json +1 -1
  122. package/packages/rate-limiter/package.json +1 -1
  123. package/packages/react-vite-plugin/package.json +1 -1
  124. package/packages/release-manager/package.json +1 -1
  125. package/packages/requirement-compiler/package.json +1 -1
  126. package/packages/runtime/package.json +1 -1
  127. package/packages/scheduler/package.json +1 -1
  128. package/packages/scheduler-adapter/README.md +36 -0
  129. package/packages/scheduler-adapter/dist/cron.d.ts +21 -0
  130. package/packages/scheduler-adapter/dist/cron.d.ts.map +1 -0
  131. package/packages/scheduler-adapter/dist/cron.js +116 -0
  132. package/packages/scheduler-adapter/dist/cron.js.map +1 -0
  133. package/packages/scheduler-adapter/dist/index.d.ts +9 -0
  134. package/packages/scheduler-adapter/dist/index.d.ts.map +1 -0
  135. package/packages/scheduler-adapter/dist/index.js +8 -0
  136. package/packages/scheduler-adapter/dist/index.js.map +1 -0
  137. package/packages/scheduler-adapter/dist/interface.d.ts +61 -0
  138. package/packages/scheduler-adapter/dist/interface.d.ts.map +1 -0
  139. package/packages/scheduler-adapter/dist/interface.js +2 -0
  140. package/packages/scheduler-adapter/dist/interface.js.map +1 -0
  141. package/packages/scheduler-adapter/dist/internal.d.ts +30 -0
  142. package/packages/scheduler-adapter/dist/internal.d.ts.map +1 -0
  143. package/packages/scheduler-adapter/dist/internal.js +82 -0
  144. package/packages/scheduler-adapter/dist/internal.js.map +1 -0
  145. package/packages/scheduler-adapter/dist/systemd.d.ts +31 -0
  146. package/packages/scheduler-adapter/dist/systemd.d.ts.map +1 -0
  147. package/packages/scheduler-adapter/dist/systemd.js +203 -0
  148. package/packages/scheduler-adapter/dist/systemd.js.map +1 -0
  149. package/packages/scheduler-adapter/package.json +32 -0
  150. package/packages/scheduler-adapter/src/cron.ts +123 -0
  151. package/packages/scheduler-adapter/src/index.ts +9 -0
  152. package/packages/scheduler-adapter/src/interface.ts +61 -0
  153. package/packages/scheduler-adapter/src/internal.ts +99 -0
  154. package/packages/scheduler-adapter/src/systemd.ts +221 -0
  155. package/packages/scheduler-adapter/tsconfig.json +22 -0
  156. package/packages/scheduler-adapter/tsconfig.tsbuildinfo +1 -0
  157. package/packages/session/package.json +1 -1
  158. package/packages/shared-context/package.json +1 -1
  159. package/packages/skill-registry/package.json +1 -1
  160. package/packages/sprint-planner/package.json +1 -1
  161. package/packages/task-compiler/package.json +1 -1
  162. package/packages/test-data-generator/package.json +1 -1
  163. package/packages/test-generator/package.json +1 -1
  164. package/packages/token-estimation/package.json +1 -1
  165. package/packages/token-optimizer/package.json +1 -1
  166. package/packages/tui/package.json +1 -1
  167. package/packages/types/dist/runtime-types.d.ts +6 -0
  168. package/packages/types/dist/runtime-types.d.ts.map +1 -1
  169. package/packages/types/dist/runtime-types.js +2 -1
  170. package/packages/types/dist/runtime-types.js.map +1 -1
  171. package/packages/types/package.json +1 -1
  172. package/packages/types/src/ai-providers.ts +73 -0
  173. package/packages/types/src/runtime-types.ts +15 -0
  174. package/packages/types/tsconfig.tsbuildinfo +1 -1
  175. package/packages/worktree/package.json +1 -1
@@ -0,0 +1,266 @@
1
+ /**
2
+ * Autonomous Runtime — tests for Phase 1 (RFC-0101 §1-4)
3
+ * Plain JS (bun native test globals)
4
+ */
5
+ import { mkdirSync, rmSync, readFileSync } from "node:fs";
6
+ import { join } from "node:path";
7
+ import { tmpdir } from "node:os";
8
+ import { TaskInbox } from "../src/index.js";
9
+ import { LeaseManager } from "../src/index.js";
10
+
11
+ let testDir;
12
+
13
+ function makeTask(overrides = {}) {
14
+ const id = `task-${Date.now()}-${Math.random().toString(36).slice(2, 7)}`;
15
+ const now = new Date().toISOString();
16
+ return {
17
+ id,
18
+ objective: `Test task ${id}`,
19
+ acceptanceCriteria: ["criterion 1"],
20
+ source: { kind: "manual", createdBy: "test" },
21
+ priority: 2,
22
+ capabilities: ["llm.invoke"],
23
+ approvalClass: "automatic_read_only",
24
+ status: "queued",
25
+ attempts: 0,
26
+ maxAttempts: 3,
27
+ createdAt: now,
28
+ updatedAt: now,
29
+ history: [],
30
+ ...overrides,
31
+ };
32
+ }
33
+
34
+ beforeEach(() => {
35
+ testDir = join(
36
+ tmpdir(),
37
+ `pi-harness-test-${Date.now()}-${Math.random().toString(36).slice(2)}`,
38
+ );
39
+ mkdirSync(testDir, { recursive: true });
40
+ });
41
+
42
+ afterEach(() => {
43
+ try {
44
+ rmSync(testDir, { recursive: true, force: true });
45
+ } catch {
46
+ /* ignore */
47
+ }
48
+ });
49
+
50
+ const tasksPath = () => join(testDir, "tasks.jsonl");
51
+ const leasesDir = () => join(testDir, "claimed");
52
+
53
+ // ─── TaskInbox ────────────────────────────────────────────────────────────────
54
+
55
+ describe("TaskInbox", () => {
56
+ it("append writes one JSONL line", () => {
57
+ const inbox = new TaskInbox({ tasksPath: tasksPath() });
58
+ inbox.append(makeTask());
59
+ const content = readFileSync(tasksPath(), "utf8");
60
+ const lines = content.trim().split("\n").filter(Boolean);
61
+ expect(lines).toHaveLength(1);
62
+ expect(() => JSON.parse(lines[0])).not.toThrow();
63
+ });
64
+
65
+ it("append rejects duplicate ids", () => {
66
+ const inbox = new TaskInbox({ tasksPath: tasksPath() });
67
+ const task = makeTask();
68
+ inbox.append(task);
69
+ expect(() => inbox.append(task)).toThrow();
70
+ });
71
+
72
+ it("list returns tasks sorted by priority then createdAt", () => {
73
+ const inbox = new TaskInbox({ tasksPath: tasksPath() });
74
+ inbox.append(makeTask({ id: "a", priority: 1 }));
75
+ inbox.append(makeTask({ id: "b", priority: 2 }));
76
+ inbox.append(
77
+ makeTask({
78
+ id: "c",
79
+ priority: 1,
80
+ createdAt: new Date(Date.now() + 1000).toISOString(),
81
+ }),
82
+ );
83
+ expect(inbox.list().map((t) => t.id)).toEqual(["a", "c", "b"]);
84
+ });
85
+
86
+ it("list filters by status", () => {
87
+ const inbox = new TaskInbox({ tasksPath: tasksPath() });
88
+ inbox.append(makeTask({ id: "queued-1", status: "queued" }));
89
+ inbox.append(makeTask({ id: "running-1", status: "running" }));
90
+ inbox.append(makeTask({ id: "completed-1", status: "completed" }));
91
+ expect(inbox.list({ status: "queued" }).map((t) => t.id)).toEqual([
92
+ "queued-1",
93
+ ]);
94
+ });
95
+
96
+ it("get returns a task by id", () => {
97
+ const inbox = new TaskInbox({ tasksPath: tasksPath() });
98
+ const task = makeTask({ id: "find-me" });
99
+ inbox.append(task);
100
+ expect(inbox.get("find-me")?.id).toBe("find-me");
101
+ expect(inbox.get("not-found")).toBeNull();
102
+ });
103
+
104
+ it("transition updates status and appends history", () => {
105
+ const inbox = new TaskInbox({ tasksPath: tasksPath() });
106
+ const task = makeTask();
107
+ inbox.append(task);
108
+ const updated = inbox.transition(task.id, "running");
109
+ expect(updated.status).toBe("running");
110
+ expect(updated.history).toHaveLength(1);
111
+ expect(updated.history[0].kind).toBe("transitioned");
112
+ });
113
+
114
+ it("transition throws for unknown tasks", () => {
115
+ const inbox = new TaskInbox({ tasksPath: tasksPath() });
116
+ expect(() => inbox.transition("does-not-exist", "running")).toThrow();
117
+ });
118
+
119
+ it("complete marks status and sets result", () => {
120
+ const inbox = new TaskInbox({ tasksPath: tasksPath() });
121
+ const task = makeTask();
122
+ inbox.append(task);
123
+ const result = {
124
+ taskId: task.id,
125
+ status: "completed",
126
+ acceptanceCriteriaMet: [],
127
+ durationMs: 1000,
128
+ };
129
+ const updated = inbox.complete(task.id, result);
130
+ expect(updated.status).toBe("completed");
131
+ expect(updated.result).toEqual(result);
132
+ });
133
+
134
+ it("fail increments attempts", () => {
135
+ const inbox = new TaskInbox({ tasksPath: tasksPath() });
136
+ const task = makeTask();
137
+ inbox.append(task);
138
+ const updated = inbox.fail(task.id, "Something went wrong");
139
+ expect(updated.status).toBe("retrying");
140
+ expect(updated.failureReason).toBe("Something went wrong");
141
+ expect(updated.attempts).toBe(1);
142
+ });
143
+
144
+ it("fail promotes to dead_letter when maxAttempts reached", () => {
145
+ const inbox = new TaskInbox({ tasksPath: tasksPath() });
146
+ const task = makeTask({ attempts: 2, maxAttempts: 3 });
147
+ inbox.append(task);
148
+ const updated = inbox.fail(task.id, "Final failure");
149
+ expect(updated.status).toBe("dead_letter");
150
+ expect(updated.failureReason).toBe("Final failure");
151
+ });
152
+
153
+ it("stats returns counts by status", () => {
154
+ const inbox = new TaskInbox({ tasksPath: tasksPath() });
155
+ inbox.append(makeTask({ id: "a", status: "queued" }));
156
+ inbox.append(makeTask({ id: "b", status: "queued" }));
157
+ inbox.append(makeTask({ id: "c", status: "running" }));
158
+ inbox.append(makeTask({ id: "d", status: "completed" }));
159
+ const stats = inbox.stats();
160
+ expect(stats["queued"]).toBe(2);
161
+ expect(stats["running"]).toBe(1);
162
+ expect(stats["completed"]).toBe(1);
163
+ });
164
+ });
165
+
166
+ // ─── LeaseManager ─────────────────────────────────────────────────────────────
167
+
168
+ describe("LeaseManager", () => {
169
+ it("claim writes a lease file atomically", () => {
170
+ const lm = new LeaseManager({ leasesDir: leasesDir() });
171
+ const lease = lm.claim("task-1", "worker-1");
172
+ expect(lease).not.toBeNull();
173
+ expect(lease.taskId).toBe("task-1");
174
+ expect(lease.workerId).toBe("worker-1");
175
+ expect(lease.attempt).toBe(1);
176
+ expect(lease.acquiredAt).toBeTruthy();
177
+ expect(lease.expiresAt).toBeTruthy();
178
+ });
179
+
180
+ it("claim returns null when already claimed by another worker", () => {
181
+ const lm = new LeaseManager({ leasesDir: leasesDir() });
182
+ // Worker-1 claims first, worker-2 tries immediately after.
183
+ // Atomic rename guarantees only one succeeds.
184
+ const first = lm.claim("task-1", "worker-1");
185
+ expect(first).not.toBeNull();
186
+ const second = lm.claim("task-1", "worker-2");
187
+ expect(second).toBeNull();
188
+ });
189
+
190
+ it("heartbeat extends expiry", async () => {
191
+ const lm = new LeaseManager({ leasesDir: leasesDir() });
192
+ lm.claim("task-1", "worker-1");
193
+ const before = new Date(lm.get("task-1").expiresAt).getTime();
194
+ await new Promise((r) => setTimeout(r, 50));
195
+ const refreshed = lm.heartbeat("task-1", "worker-1");
196
+ expect(refreshed).not.toBeNull();
197
+ const after = new Date(refreshed.expiresAt).getTime();
198
+ expect(after).toBeGreaterThan(before - 500);
199
+ });
200
+
201
+ it("heartbeat rejects wrong worker", () => {
202
+ const lm = new LeaseManager({ leasesDir: leasesDir() });
203
+ lm.claim("task-1", "worker-1");
204
+ expect(() => lm.heartbeat("task-1", "wrong-worker")).toThrow();
205
+ });
206
+
207
+ it("release removes the lease file", () => {
208
+ const lm = new LeaseManager({ leasesDir: leasesDir() });
209
+ lm.claim("task-1", "worker-1");
210
+ lm.release("task-1", "worker-1");
211
+ expect(lm.get("task-1")).toBeNull();
212
+ });
213
+
214
+ it("reapAndRelease removes expired leases", async () => {
215
+ const lm = new LeaseManager({ leasesDir: leasesDir(), leaseTtlMs: 50 });
216
+ lm.claim("task-1", "worker-1");
217
+ lm.claim("task-2", "worker-2");
218
+ await new Promise((r) => setTimeout(r, 80));
219
+ const released = lm.reapAndRelease();
220
+ expect(released).toContain("task-1");
221
+ expect(lm.get("task-1")).toBeNull();
222
+ });
223
+
224
+ it("isExpired returns false for fresh leases", () => {
225
+ const lm = new LeaseManager({ leasesDir: leasesDir() });
226
+ const lease = lm.claim("task-1", "worker-1");
227
+ expect(lm.isExpired(lease)).toBe(false);
228
+ });
229
+
230
+ it("isExpired returns true for expired leases", async () => {
231
+ const lm = new LeaseManager({ leasesDir: leasesDir(), leaseTtlMs: 1 });
232
+ lm.claim("task-1", "worker-1");
233
+ await new Promise((r) => setTimeout(r, 20));
234
+ expect(lm.isExpired(lm.get("task-1"))).toBe(true);
235
+ });
236
+
237
+ it("listActive returns only non-expired leases", async () => {
238
+ const lm = new LeaseManager({ leasesDir: leasesDir(), leaseTtlMs: 50 });
239
+ lm.claim("task-1", "worker-1");
240
+ await new Promise((r) => setTimeout(r, 80));
241
+ expect(lm.listActive()).toHaveLength(0);
242
+ });
243
+
244
+ it("recoverOnStartup releases orphan leases", async () => {
245
+ const lm = new LeaseManager({ leasesDir: leasesDir(), leaseTtlMs: 50 });
246
+ lm.claim("task-1", "worker-1");
247
+ await new Promise((r) => setTimeout(r, 80));
248
+ const released = lm.recoverOnStartup();
249
+ expect(released).toContain("task-1");
250
+ });
251
+ });
252
+
253
+ // ─── Storage paths ────────────────────────────────────────────────────────────
254
+
255
+ describe("Storage paths", () => {
256
+ it("getInboxDir returns a path under the runtime root", async () => {
257
+ const { getRuntimeRoot, getInboxDir } = await import("../src/types.js");
258
+ expect(getInboxDir()).toContain(".pi/harness/inbox");
259
+ expect(getInboxDir()).toContain(getRuntimeRoot());
260
+ });
261
+
262
+ it("getLeasesDir returns claimed/ subdirectory", async () => {
263
+ const { getLeasesDir } = await import("../src/types.js");
264
+ expect(getLeasesDir()).toContain("claimed");
265
+ });
266
+ });
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Tests for TaskInbox (filesystem-backed).
3
+ */
4
+
5
+ import { describe, it, expect, beforeEach, afterEach } from "bun:test";
6
+ import { mkdtempSync, rmSync, existsSync } from "node:fs";
7
+ import { join } from "node:path";
8
+ import { tmpdir } from "node:os";
9
+ import { TaskInbox } from "../src/inbox.js";
10
+
11
+ const DIR = mkdtempSync(join(tmpdir(), "pi-inbox-test-"));
12
+
13
+ // Set env so inbox uses our temp dir
14
+ process.env.PI_HARNESS_RUNTIME_ROOT = DIR;
15
+
16
+ const inbox = new TaskInbox({ rootDir: DIR });
17
+
18
+ afterEach(async () => {
19
+ await inbox.clear?.();
20
+ });
21
+
22
+ afterAll(() => {
23
+ try { rmSync(DIR, { recursive: true }); } catch { /* ignore */ }
24
+ });
25
+
26
+ describe("TaskInbox.submit", () => {
27
+ it("accepts and returns a pending task", async () => {
28
+ const spec = {
29
+ id: "test-1",
30
+ kind: "once" as const,
31
+ priority: 5,
32
+ spec: {},
33
+ };
34
+ const record = await inbox.submit(spec);
35
+ expect(record.id).toBe("test-1");
36
+ expect(record.status).toBe("pending");
37
+ expect(record.submittedAt).toBeDefined();
38
+ });
39
+
40
+ it("rejects duplicate ids", async () => {
41
+ const spec = {
42
+ id: "dup-test",
43
+ kind: "once" as const,
44
+ priority: 5,
45
+ spec: {},
46
+ };
47
+ await inbox.submit(spec);
48
+ await expect(inbox.submit(spec)).rejects.toThrow();
49
+ });
50
+ });
51
+
52
+ describe("TaskInbox.list", () => {
53
+ it("returns all submitted tasks", async () => {
54
+ await inbox.submit({ id: "l1", kind: "once", priority: 1, spec: {} });
55
+ await inbox.submit({ id: "l2", kind: "once", priority: 2, spec: {} });
56
+ const records = await inbox.list();
57
+ expect(records.length).toBeGreaterThanOrEqual(2);
58
+ });
59
+
60
+ it("filters by status", async () => {
61
+ await inbox.submit({ id: "f1", kind: "once", priority: 1, spec: {} });
62
+ const pending = await inbox.list({ status: "pending" });
63
+ expect(pending.every((r) => r.status === "pending")).toBe(true);
64
+ });
65
+ });
66
+
67
+ describe("TaskInbox.claim", () => {
68
+ it("returns null when nothing is pending", async () => {
69
+ const lease = await inbox.claim({ workerId: "w1", heartbeatIntervalMs: 30_000 });
70
+ expect(lease).toBeNull();
71
+ });
72
+
73
+ it("returns a lease for a pending task", async () => {
74
+ await inbox.submit({ id: "claim-1", kind: "once", priority: 5, spec: {} });
75
+ const lease = await inbox.claim({ workerId: "w1", heartbeatIntervalMs: 30_000 });
76
+ expect(lease).not.toBeNull();
77
+ expect(lease!.taskId).toBe("claim-1");
78
+ expect(lease!.status).toBe("active");
79
+ });
80
+ });
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Tests for autonomous-runtime types.
3
+ */
4
+
5
+ import { describe, it, expect } from "bun:test";
6
+ import type {
7
+ TaskSpec,
8
+ TaskStatus,
9
+ TaskEvent,
10
+ TaskRecord,
11
+ LeaseStatus,
12
+ WorkerStatus,
13
+ } from "../src/types.js";
14
+
15
+ describe("TaskStatus enum", () => {
16
+ it("has all expected values", () => {
17
+ const values: TaskStatus[] = [
18
+ "pending",
19
+ "claimed",
20
+ "running",
21
+ "completed",
22
+ "failed",
23
+ "cancelled",
24
+ ];
25
+ for (const v of values) {
26
+ expect(typeof v).toBe("string");
27
+ }
28
+ });
29
+ });
30
+
31
+ describe("LeaseStatus enum", () => {
32
+ it("has all expected values", () => {
33
+ const values: LeaseStatus[] = [
34
+ "active",
35
+ "renewed",
36
+ "released",
37
+ "expired",
38
+ ];
39
+ for (const v of values) {
40
+ expect(typeof v).toBe("string");
41
+ }
42
+ });
43
+ });
44
+
45
+ describe("TaskSpec", () => {
46
+ it("accepts a minimal valid spec", () => {
47
+ const spec: TaskSpec = {
48
+ id: "task-1",
49
+ kind: "once",
50
+ priority: 5,
51
+ spec: {},
52
+ };
53
+ expect(spec.id).toBe("task-1");
54
+ expect(spec.kind).toBe("once");
55
+ expect(spec.priority).toBe(5);
56
+ });
57
+ });
58
+
59
+ describe("WorkerStatus", () => {
60
+ it("accepts a valid status", () => {
61
+ const status: WorkerStatus = {
62
+ workerId: "worker-1",
63
+ running: true,
64
+ heartbeatIntervalMs: 30_000,
65
+ };
66
+ expect(status.running).toBe(true);
67
+ });
68
+ });
@@ -0,0 +1,22 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2022",
4
+ "module": "ES2022",
5
+ "moduleResolution": "bundler",
6
+ "lib": ["ES2022", "DOM"],
7
+ "outDir": "./dist",
8
+ "rootDir": "./src",
9
+ "declaration": true,
10
+ "declarationMap": true,
11
+ "sourceMap": true,
12
+ "strict": true,
13
+ "esModuleInterop": true,
14
+ "skipLibCheck": true,
15
+ "forceConsistentCasingInFileNames": true,
16
+ "resolveJsonModule": true,
17
+ "composite": true,
18
+ "types": ["node"]
19
+ },
20
+ "include": ["src/**/*"],
21
+ "exclude": ["node_modules", "dist", "test"]
22
+ }
@@ -0,0 +1 @@
1
+ {"version":"7.0.2","root":[[59,62]],"packageJsons":["../../node_modules/string_decoder/package.json","./node_modules/@types/node/node_modules/undici-types/package.json","./node_modules/@types/node/package.json","./package.json"],"missingPackageJsons":["../../node_modules/@types/assert/package.json","../../node_modules/@types/assert/strict/package.json","../../node_modules/@types/async_hooks/package.json","../../node_modules/@types/buffer/package.json","../../node_modules/@types/child_process/package.json","../../node_modules/@types/cluster/package.json","../../node_modules/@types/console/package.json","../../node_modules/@types/constants/package.json","../../node_modules/@types/crypto/package.json","../../node_modules/@types/dgram/package.json","../../node_modules/@types/diagnostics_channel/package.json","../../node_modules/@types/dns/package.json","../../node_modules/@types/dns/promises/package.json","../../node_modules/@types/domain/package.json","../../node_modules/@types/events/package.json","../../node_modules/@types/fs/package.json","../../node_modules/@types/fs/promises/package.json","../../node_modules/@types/http/package.json","../../node_modules/@types/http2/package.json","../../node_modules/@types/https/package.json","../../node_modules/@types/inspector/package.json","../../node_modules/@types/inspector/promises/package.json","../../node_modules/@types/module/package.json","../../node_modules/@types/net/package.json","../../node_modules/@types/os/package.json","../../node_modules/@types/path/package.json","../../node_modules/@types/path/posix/package.json","../../node_modules/@types/path/win32/package.json","../../node_modules/@types/perf_hooks/package.json","../../node_modules/@types/process/package.json","../../node_modules/@types/punycode/package.json","../../node_modules/@types/querystring/package.json","../../node_modules/@types/readline/package.json","../../node_modules/@types/readline/promises/package.json","../../node_modules/@types/repl/package.json","../../node_modules/@types/stream/consumers/package.json","../../node_modules/@types/stream/package.json","../../node_modules/@types/stream/promises/package.json","../../node_modules/@types/stream/web/package.json","../../node_modules/@types/string_decoder/package.json","../../node_modules/@types/timers/package.json","../../node_modules/@types/timers/promises/package.json","../../node_modules/@types/tls/package.json","../../node_modules/@types/trace_events/package.json","../../node_modules/@types/tty/package.json","../../node_modules/@types/url/package.json","../../node_modules/@types/util/package.json","../../node_modules/@types/util/types/package.json","../../node_modules/@types/v8/package.json","../../node_modules/@types/vm/package.json","../../node_modules/@types/wasi/package.json","../../node_modules/@types/worker_threads/package.json","../../node_modules/@types/zlib/package.json","../../node_modules/assert/package.json","../../node_modules/assert/strict/package.json","../../node_modules/async_hooks/package.json","../../node_modules/buffer/package.json","../../node_modules/child_process/package.json","../../node_modules/cluster/package.json","../../node_modules/console/package.json","../../node_modules/constants/package.json","../../node_modules/crypto/package.json","../../node_modules/dgram/package.json","../../node_modules/diagnostics_channel/package.json","../../node_modules/dns/package.json","../../node_modules/dns/promises/package.json","../../node_modules/domain/package.json","../../node_modules/events/package.json","../../node_modules/fs/package.json","../../node_modules/fs/promises/package.json","../../node_modules/http/package.json","../../node_modules/http2/package.json","../../node_modules/https/package.json","../../node_modules/inspector/package.json","../../node_modules/inspector/promises/package.json","../../node_modules/module/package.json","../../node_modules/net/package.json","../../node_modules/os/package.json","../../node_modules/path/package.json","../../node_modules/path/posix/package.json","../../node_modules/path/win32/package.json","../../node_modules/perf_hooks/package.json","../../node_modules/process/package.json","../../node_modules/punycode/package.json","../../node_modules/querystring/package.json","../../node_modules/readline/package.json","../../node_modules/readline/promises/package.json","../../node_modules/repl/package.json","../../node_modules/stream/consumers/package.json","../../node_modules/stream/package.json","../../node_modules/stream/promises/package.json","../../node_modules/stream/web/package.json","../../node_modules/timers/package.json","../../node_modules/timers/promises/package.json","../../node_modules/tls/package.json","../../node_modules/trace_events/package.json","../../node_modules/tty/package.json","../../node_modules/url/package.json","../../node_modules/util/package.json","../../node_modules/util/types/package.json","../../node_modules/v8/package.json","../../node_modules/vm/package.json","../../node_modules/wasi/package.json","../../node_modules/worker_threads/package.json","../../node_modules/zlib/package.json","./node_modules/@types/assert/package.json","./node_modules/@types/assert/strict/package.json","./node_modules/@types/async_hooks/package.json","./node_modules/@types/buffer/package.json","./node_modules/@types/child_process/package.json","./node_modules/@types/cluster/package.json","./node_modules/@types/console/package.json","./node_modules/@types/constants/package.json","./node_modules/@types/crypto/package.json","./node_modules/@types/dgram/package.json","./node_modules/@types/diagnostics_channel/package.json","./node_modules/@types/dns/package.json","./node_modules/@types/dns/promises/package.json","./node_modules/@types/domain/package.json","./node_modules/@types/events/package.json","./node_modules/@types/fs/package.json","./node_modules/@types/fs/promises/package.json","./node_modules/@types/http/package.json","./node_modules/@types/http2/package.json","./node_modules/@types/https/package.json","./node_modules/@types/inspector/package.json","./node_modules/@types/inspector/promises/package.json","./node_modules/@types/module/package.json","./node_modules/@types/net/package.json","./node_modules/@types/node/assert/package.json","./node_modules/@types/node/compatibility/package.json","./node_modules/@types/node/dns/package.json","./node_modules/@types/node/fs/package.json","./node_modules/@types/node/node_modules/assert/package.json","./node_modules/@types/node/node_modules/assert/strict/package.json","./node_modules/@types/node/node_modules/async_hooks/package.json","./node_modules/@types/node/node_modules/buffer/package.json","./node_modules/@types/node/node_modules/child_process/package.json","./node_modules/@types/node/node_modules/cluster/package.json","./node_modules/@types/node/node_modules/console/package.json","./node_modules/@types/node/node_modules/constants/package.json","./node_modules/@types/node/node_modules/crypto/package.json","./node_modules/@types/node/node_modules/dgram/package.json","./node_modules/@types/node/node_modules/diagnostics_channel/package.json","./node_modules/@types/node/node_modules/dns/package.json","./node_modules/@types/node/node_modules/dns/promises/package.json","./node_modules/@types/node/node_modules/domain/package.json","./node_modules/@types/node/node_modules/events/package.json","./node_modules/@types/node/node_modules/fs/package.json","./node_modules/@types/node/node_modules/fs/promises/package.json","./node_modules/@types/node/node_modules/http/package.json","./node_modules/@types/node/node_modules/http2/package.json","./node_modules/@types/node/node_modules/https/package.json","./node_modules/@types/node/node_modules/inspector/package.json","./node_modules/@types/node/node_modules/inspector/promises/package.json","./node_modules/@types/node/node_modules/module/package.json","./node_modules/@types/node/node_modules/net/package.json","./node_modules/@types/node/node_modules/os/package.json","./node_modules/@types/node/node_modules/path/package.json","./node_modules/@types/node/node_modules/path/posix/package.json","./node_modules/@types/node/node_modules/path/win32/package.json","./node_modules/@types/node/node_modules/perf_hooks/package.json","./node_modules/@types/node/node_modules/process/package.json","./node_modules/@types/node/node_modules/punycode/package.json","./node_modules/@types/node/node_modules/querystring/package.json","./node_modules/@types/node/node_modules/readline/package.json","./node_modules/@types/node/node_modules/readline/promises/package.json","./node_modules/@types/node/node_modules/repl/package.json","./node_modules/@types/node/node_modules/stream/consumers/package.json","./node_modules/@types/node/node_modules/stream/package.json","./node_modules/@types/node/node_modules/stream/promises/package.json","./node_modules/@types/node/node_modules/stream/web/package.json","./node_modules/@types/node/node_modules/string_decoder/package.json","./node_modules/@types/node/node_modules/timers/package.json","./node_modules/@types/node/node_modules/timers/promises/package.json","./node_modules/@types/node/node_modules/tls/package.json","./node_modules/@types/node/node_modules/trace_events/package.json","./node_modules/@types/node/node_modules/tty/package.json","./node_modules/@types/node/node_modules/url/package.json","./node_modules/@types/node/node_modules/util/package.json","./node_modules/@types/node/node_modules/util/types/package.json","./node_modules/@types/node/node_modules/v8/package.json","./node_modules/@types/node/node_modules/vm/package.json","./node_modules/@types/node/node_modules/wasi/package.json","./node_modules/@types/node/node_modules/worker_threads/package.json","./node_modules/@types/node/node_modules/zlib/package.json","./node_modules/@types/node/readline/package.json","./node_modules/@types/node/stream/package.json","./node_modules/@types/node/timers/package.json","./node_modules/@types/node/web-globals/package.json","./node_modules/@types/os/package.json","./node_modules/@types/path/package.json","./node_modules/@types/path/posix/package.json","./node_modules/@types/path/win32/package.json","./node_modules/@types/perf_hooks/package.json","./node_modules/@types/process/package.json","./node_modules/@types/punycode/package.json","./node_modules/@types/querystring/package.json","./node_modules/@types/readline/package.json","./node_modules/@types/readline/promises/package.json","./node_modules/@types/repl/package.json","./node_modules/@types/stream/consumers/package.json","./node_modules/@types/stream/package.json","./node_modules/@types/stream/promises/package.json","./node_modules/@types/stream/web/package.json","./node_modules/@types/string_decoder/package.json","./node_modules/@types/timers/package.json","./node_modules/@types/timers/promises/package.json","./node_modules/@types/tls/package.json","./node_modules/@types/trace_events/package.json","./node_modules/@types/tty/package.json","./node_modules/@types/url/package.json","./node_modules/@types/util/package.json","./node_modules/@types/util/types/package.json","./node_modules/@types/v8/package.json","./node_modules/@types/vm/package.json","./node_modules/@types/wasi/package.json","./node_modules/@types/worker_threads/package.json","./node_modules/@types/zlib/package.json","./node_modules/assert/package.json","./node_modules/assert/strict/package.json","./node_modules/async_hooks/package.json","./node_modules/buffer/package.json","./node_modules/child_process/package.json","./node_modules/cluster/package.json","./node_modules/console/package.json","./node_modules/constants/package.json","./node_modules/crypto/package.json","./node_modules/dgram/package.json","./node_modules/diagnostics_channel/package.json","./node_modules/dns/package.json","./node_modules/dns/promises/package.json","./node_modules/domain/package.json","./node_modules/events/package.json","./node_modules/fs/package.json","./node_modules/fs/promises/package.json","./node_modules/http/package.json","./node_modules/http2/package.json","./node_modules/https/package.json","./node_modules/inspector/package.json","./node_modules/inspector/promises/package.json","./node_modules/module/package.json","./node_modules/net/package.json","./node_modules/os/package.json","./node_modules/path/package.json","./node_modules/path/posix/package.json","./node_modules/path/win32/package.json","./node_modules/perf_hooks/package.json","./node_modules/process/package.json","./node_modules/punycode/package.json","./node_modules/querystring/package.json","./node_modules/readline/package.json","./node_modules/readline/promises/package.json","./node_modules/repl/package.json","./node_modules/stream/consumers/package.json","./node_modules/stream/package.json","./node_modules/stream/promises/package.json","./node_modules/stream/web/package.json","./node_modules/string_decoder/package.json","./node_modules/timers/package.json","./node_modules/timers/promises/package.json","./node_modules/tls/package.json","./node_modules/trace_events/package.json","./node_modules/tty/package.json","./node_modules/url/package.json","./node_modules/util/package.json","./node_modules/util/types/package.json","./node_modules/v8/package.json","./node_modules/vm/package.json","./node_modules/wasi/package.json","./node_modules/worker_threads/package.json","./node_modules/zlib/package.json"],"fileNames":["lib.es5.d.ts","lib.es2015.d.ts","lib.es2016.d.ts","lib.es2017.d.ts","lib.es2018.d.ts","lib.es2019.d.ts","lib.es2020.d.ts","lib.es2021.d.ts","lib.es2022.d.ts","lib.dom.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2016.intl.d.ts","lib.es2017.arraybuffer.d.ts","lib.es2017.date.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.es2022.array.d.ts","lib.es2022.error.d.ts","lib.es2022.intl.d.ts","lib.es2022.object.d.ts","lib.es2022.string.d.ts","lib.es2022.regexp.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","./src/types.ts","./src/inbox.ts","./src/lease.ts","./src/index.ts","./node_modules/@types/node/compatibility/disposable.d.ts","./node_modules/@types/node/compatibility/indexable.d.ts","./node_modules/@types/node/compatibility/iterators.d.ts","./node_modules/@types/node/compatibility/index.d.ts","./node_modules/@types/node/globals.typedarray.d.ts","./node_modules/@types/node/buffer.buffer.d.ts","./node_modules/@types/node/globals.d.ts","./node_modules/@types/node/web-globals/abortcontroller.d.ts","./node_modules/@types/node/web-globals/domexception.d.ts","./node_modules/@types/node/web-globals/events.d.ts","./node_modules/@types/node/node_modules/undici-types/header.d.ts","./node_modules/@types/node/node_modules/undici-types/readable.d.ts","./node_modules/@types/node/node_modules/undici-types/file.d.ts","./node_modules/@types/node/node_modules/undici-types/fetch.d.ts","./node_modules/@types/node/node_modules/undici-types/formdata.d.ts","./node_modules/@types/node/node_modules/undici-types/connector.d.ts","./node_modules/@types/node/node_modules/undici-types/client.d.ts","./node_modules/@types/node/node_modules/undici-types/errors.d.ts","./node_modules/@types/node/node_modules/undici-types/dispatcher.d.ts","./node_modules/@types/node/node_modules/undici-types/global-dispatcher.d.ts","./node_modules/@types/node/node_modules/undici-types/global-origin.d.ts","./node_modules/@types/node/node_modules/undici-types/pool-stats.d.ts","./node_modules/@types/node/node_modules/undici-types/pool.d.ts","./node_modules/@types/node/node_modules/undici-types/handlers.d.ts","./node_modules/@types/node/node_modules/undici-types/balanced-pool.d.ts","./node_modules/@types/node/node_modules/undici-types/agent.d.ts","./node_modules/@types/node/node_modules/undici-types/mock-interceptor.d.ts","./node_modules/@types/node/node_modules/undici-types/mock-agent.d.ts","./node_modules/@types/node/node_modules/undici-types/mock-client.d.ts","./node_modules/@types/node/node_modules/undici-types/mock-pool.d.ts","./node_modules/@types/node/node_modules/undici-types/mock-errors.d.ts","./node_modules/@types/node/node_modules/undici-types/proxy-agent.d.ts","./node_modules/@types/node/node_modules/undici-types/env-http-proxy-agent.d.ts","./node_modules/@types/node/node_modules/undici-types/retry-handler.d.ts","./node_modules/@types/node/node_modules/undici-types/retry-agent.d.ts","./node_modules/@types/node/node_modules/undici-types/api.d.ts","./node_modules/@types/node/node_modules/undici-types/interceptors.d.ts","./node_modules/@types/node/node_modules/undici-types/util.d.ts","./node_modules/@types/node/node_modules/undici-types/cookies.d.ts","./node_modules/@types/node/node_modules/undici-types/patch.d.ts","./node_modules/@types/node/node_modules/undici-types/websocket.d.ts","./node_modules/@types/node/node_modules/undici-types/eventsource.d.ts","./node_modules/@types/node/node_modules/undici-types/filereader.d.ts","./node_modules/@types/node/node_modules/undici-types/diagnostics-channel.d.ts","./node_modules/@types/node/node_modules/undici-types/content-type.d.ts","./node_modules/@types/node/node_modules/undici-types/cache.d.ts","./node_modules/@types/node/node_modules/undici-types/index.d.ts","./node_modules/@types/node/web-globals/fetch.d.ts","./node_modules/@types/node/assert.d.ts","./node_modules/@types/node/assert/strict.d.ts","./node_modules/@types/node/async_hooks.d.ts","./node_modules/@types/node/buffer.d.ts","./node_modules/@types/node/child_process.d.ts","./node_modules/@types/node/cluster.d.ts","./node_modules/@types/node/console.d.ts","./node_modules/@types/node/constants.d.ts","./node_modules/@types/node/crypto.d.ts","./node_modules/@types/node/dgram.d.ts","./node_modules/@types/node/diagnostics_channel.d.ts","./node_modules/@types/node/dns.d.ts","./node_modules/@types/node/dns/promises.d.ts","./node_modules/@types/node/domain.d.ts","./node_modules/@types/node/events.d.ts","./node_modules/@types/node/fs.d.ts","./node_modules/@types/node/fs/promises.d.ts","./node_modules/@types/node/http.d.ts","./node_modules/@types/node/http2.d.ts","./node_modules/@types/node/https.d.ts","./node_modules/@types/node/inspector.generated.d.ts","./node_modules/@types/node/module.d.ts","./node_modules/@types/node/net.d.ts","./node_modules/@types/node/os.d.ts","./node_modules/@types/node/path.d.ts","./node_modules/@types/node/perf_hooks.d.ts","./node_modules/@types/node/process.d.ts","./node_modules/@types/node/punycode.d.ts","./node_modules/@types/node/querystring.d.ts","./node_modules/@types/node/readline.d.ts","./node_modules/@types/node/readline/promises.d.ts","./node_modules/@types/node/repl.d.ts","./node_modules/@types/node/sea.d.ts","./node_modules/@types/node/stream.d.ts","./node_modules/@types/node/stream/promises.d.ts","./node_modules/@types/node/stream/consumers.d.ts","./node_modules/@types/node/stream/web.d.ts","./node_modules/@types/node/string_decoder.d.ts","./node_modules/@types/node/test.d.ts","./node_modules/@types/node/timers.d.ts","./node_modules/@types/node/timers/promises.d.ts","./node_modules/@types/node/tls.d.ts","./node_modules/@types/node/trace_events.d.ts","./node_modules/@types/node/tty.d.ts","./node_modules/@types/node/url.d.ts","./node_modules/@types/node/util.d.ts","./node_modules/@types/node/v8.d.ts","./node_modules/@types/node/vm.d.ts","./node_modules/@types/node/wasi.d.ts","./node_modules/@types/node/worker_threads.d.ts","./node_modules/@types/node/zlib.d.ts","./node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"16934abaab7026ac114da441aabea1a0","affectsGlobalScope":true,"impliedNodeFormat":1},"d4306fb2e47f74835e8674ffac07d76f","e437c5c1302869326c3bb93da85bbbcf","e4324975a566567b21d350615f1fc6ac","333b1b9a2a9ac3b8497dba5c63b5ba50","6cffacd662b6eb5fa7a36aa2ea366bfa","b4c34f9c23304dbef2d23698637ed638","e5cb86a5fc491796ecd1d2dd348d208f","feb6c6fb19cdb246a5d8acb36a6901c7",{"version":"aae8996e8b5684814785a42cbbefcd79","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"926204c28cd3d073865348473ae28d2e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f25e42c801b2cb3cf2b39792006a9beb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6344b55f26a4e81d9608777dbfb877dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3c0ed28e53d3695b363e256ec1c023fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4c2761daba7f17141c25baa0821ac5da","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b87656acabd63e69379ff6ffcfe52fc7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"597469522da047a5af5222cc6989f405","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1708ea4d34dc37fadadc63ca01127e80","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"55d97a8c6fbf34a30450a7b1e5f7a298","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0ee05eb59426d33e374226d8dcfa708b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e347c14030993906efcfbb88915b6a05","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b0231263857c9b6a03641acdc9280ceb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3b15c4a83b598cacb4067676e6f0abed","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b417d97b7934cef63b1889abec0bbfbf","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"09a6cf4032ebba60ce22a501e663f881","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2b056277dd138e8f5650fc04e20eaa8d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e22cc07e3f3cc242ba52fa3f8ea1fc58","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2c45da767a1bfbb220848df1bc4029e4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b44c3e0fbaf2130cdcf6ac38b120ffa1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b612fb5cf8e5d964b92063a75207632a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"02705151a5e1551b9162a9ed8ab763f7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"41025e398be9215d32e4337335da8f0b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"52684c2b1f353a5538e4f275182a54cd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6dedb6a4f90d1df3a6fbe5693e44886c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ca3f36fe3562c07e0f0d71c2bebd3f6d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"409974d6129befbb8226ddd1c6558568","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4d9cfde2a1ae1b4925f1f9bc10848e5d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7e1daecc66dd564144e3bb1a0266b5fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a8e1d9bb35fd0637f2f9fd2b2a54f2ec","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4f168501772a6543182765bfd5f2fbfe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a19c80aad1b2162103496f5ba293a732","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b69afa63cd5d059851c78adb2856ee09","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ae2fc5d954e9b0f5feee3d481b953c27","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1cfd3091a071d8b6feec15277643bafe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1da2c1f258970fd3cc91184f69e91a9d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a0d87491913d843139e0c993650a3235","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4ef72aa378127e7b7abba915b0110b1e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3ec74c6a7d4463f0254db3a74cf75646","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"84c2bdfa470d075526cce6322d81b0b6","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0b3844c2b8c73e4e1ab91431411cad11","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4fc71cf4a15b8d99675a31df77f26e07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d1b49564ddaeca3df5b6dbae925d2242","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6a25be566d60ccfc2d6e8b7bfdeefa83","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8a20e27646985dfd58c57ca6566553dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9969f02ad3cdcbf4f709405cda44167f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9c9be4792a7a4f42c15ae7360bf28779","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f64453cbf9671f28158677fa5c43967a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"33f317af5428801f944a478d2c1e38e5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"db3d9d19cd91358571605ef2d58f3ed4","signature":"8ed6e3ce9499e38da236fd3c9c34aca7","impliedNodeFormat":1},{"version":"c4a8b5d81180bd5645f4868d465976cb","signature":"cf29baf9abcc3015c6dab7b6eedfe320","impliedNodeFormat":1},{"version":"9e1558bff6b9d17343abecd0ed112f1f","signature":"667b11f914f374faa50b92a5ebcd9c6a","impliedNodeFormat":1},{"version":"7db411290d282475c8604700c2bbc748","signature":"6e2fe660a0d70a18d6e3c957260f7d45","impliedNodeFormat":1},{"version":"90630acdc4134173bcf216f187bd3010","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"913b52a39743d1c11984e4e124b1f3a8","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2514e9a2749c0fc18d2f478e9e1e641e","affectsGlobalScope":true,"impliedNodeFormat":1},"fe51d7a9bcdbcce1e65bbcf39b212298",{"version":"849a1873c4e917b0887368c1be897faa","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"c46c3108bde06d3b1fc6f802eb09eeeb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1332add604574cf529fb33b23304b296","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9af0a7e3ef1c42cd066b9f8d365cc1ba","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9eca652586205dc5b07f9ba57b1c8500","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ec5f75939754ce94652189ec7d0d3058","affectsGlobalScope":true,"impliedNodeFormat":1},"628b774b54637325e286752c79c12432","bb1f9e3091b88e9d0e93b7198c736af3","514fd35e5eb35bb2e5cbb908af0a0aa2","ed57ae88565308729f2327f26d684976","dcd932d6b0038f2e250e30dc10125b22","9508c917bd7e458745e222a82dd24ef0","fabf86f455f96b90538cc26320ab2765","14550b4cd9f433e0addd8b6d67614d23","cf0ac6aebc25cb780674653aaeee688e","35fef7bac8048f583e4ce6eaa0c2a4c0","6752dc653fc7a333027249fd851fdb62","b9ad7e689b46dfba362c1bf174e69018","8b0a2930dfabdf27c69c6bb1eeabcdc8","4513b1ed15523d247040689f37fa9db2","5c0c499eed773a750903d9497beafacd","2377da227d1bac82ff7b3f2081ddf8d3","beef985b474fefeb80d27fb2c8778371","c79fc9d9f09ae598a374ae7c0b5284a4","f2caa3cebb1e6be855519004830a6be0","8ebc9f2a77c900e710801214c5cb994c","ec617a0e0577dd6a3210c3b067ecb325","1db5d06e485bd82d6d5f6e36925a8714","24b864518967840216c779b5e5f00975","8719cd8047700bfb6046798390053823","f2840afb502c94db92dab0fb8d27812f","a7e7d08b372210c203745d3eac61a411","531183cc80535e0e94226d720e5eb038","f627eb958ca52c85e42f04dce4661f86","9a43fc665bce9012a3d5fe1b574ff4dc","13f4b4da6546a34719fd6bde15fb63dd","a589216508844bfc00e62fc2d97fda45","865aea1c3209e31b076cb6fe780e769e","12e64aaf26af0f5c8f1b263dd66e3feb","928971ebbcdf5b093ef37669b33bddf6","b744265d8ad12b7d4d5c5dc35d18d44e","eff32168b8348b822afeed9cbf61afa7","9aafd1f29b4d8861c1c6c34bf83c0721",{"version":"a127795c4dad633990c87aa0b86831e5","affectsGlobalScope":true,"impliedNodeFormat":1},"4ef82d390af85e719a46d566e229dd83","7deced3ef46e082f97d49bb71622526a","fa7acb320bbf7da8f76e431437143034",{"version":"ee57e9bfec6167b488ced231a7bf233d","affectsGlobalScope":true,"impliedNodeFormat":1},"7aa99080b86233d5b21416907d7a75a6","7d6a8df1becce5c270da2093e7835920",{"version":"c37fea1584ced70492ff5748ed570abd","affectsGlobalScope":true,"impliedNodeFormat":1},"b2b472cd0bf0f8d5f022e00ca1c401f4",{"version":"e22c8fb0fc65df14299c6c94cf729b3c","affectsGlobalScope":true,"impliedNodeFormat":1},"a84efb87b57f78ea0b0577edaacd8b33","814e0c2cc2a92531b6dc5d2a1767a6e1","79ac55b2d493df83277d681e4d64a992","7ab3b7243211fa08af307609be231d6c","7fd0f028e135bdf15ff757781a2f4ba9",{"version":"cab5b406d3defff17c931e41fa98aeb1","affectsGlobalScope":true,"impliedNodeFormat":1},"aa7dc1db3d208fb91418794a18539d4c","e9b8fc3c9291fc5701e219c0407e973d","b8f5d7bb61117f48a99b0cecaa75d186","4eee02126a80c6573103e22b942b0386","1d3b57f542db6054f952f8076b3c6a3a","4e0ba29e69c1176d4b909ad8a85a2695",{"version":"e5d25a206975fb43b72d246ed86fd7fe","affectsGlobalScope":true,"impliedNodeFormat":1},"a5525d047b8b84dac8b2e21fa393f465","86308ea691fd06825dd9a3ce0f1e901a","44782881f424302151e0de8fdaa39575",{"version":"f0ef68e9c53d126a7b3bfc1ae9f2c7c4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"71259a408a4178e5f0795188b4d802f1","affectsGlobalScope":true,"impliedNodeFormat":1},"eb80d821e5e931dcccee2697f3e249e2","961969874f5ee12ed3429d3d0c82de02","9a62058bc2d476e807cc6594eed72adb","40cbc4bb3b225b03c54255154dada07d","6534825a8bda3eeecde9bca9e3a99712","09a582ab2a73806ab5887ea413b3d55a","17bf20c066f28d82e59096464112bc39","c8206d568b54e5ea06131963eecd576a","15878f4f50c2e562c0768eb735c2aed5",{"version":"2939c9bf76087f5c43b7ed44aeab6853","affectsGlobalScope":true,"impliedNodeFormat":1},"7b844f3801adf7e09ea25ec5f39f9a86","46c937d243665015f13587ac0db55909",{"version":"1f29cf27395029939dd41fce4f0c5653","affectsGlobalScope":true,"impliedNodeFormat":1},"f026c594d60114f10583261f6499df38","1ac553606580aeec204cce24c38b2e3f","3c29bf7066a67e7151f563fc1c4e56cb","00d49834780046c2d6a7da3e50d83cca",{"version":"377c78771ee061f2b4e59d5eb5a28782","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7293552290431bff8ef5f13e6f7fcbfc","affectsGlobalScope":true,"impliedNodeFormat":1},"9453ee3aca6a51ae747057fbc6388cf2","6c491c1508bd3e1df0f45f38b07243c2","1f99b8445612afcfaae0f8591d8d18ac",{"version":"bbd4e0ea8a847a4b60ba7d5741985c9d","affectsGlobalScope":true,"impliedNodeFormat":1},"f57ef54941c62bf28f3beafb86025735","7b6c16d46b33570aaef9d0fdc4f02f14"],"fileIdsList":[[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[63,64,65,68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[66,67,68,69,70,71,72,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,85,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,76,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,78,81,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162],[68,76,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162],[68,73,74,77,80,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,88,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,73,79,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,102,103,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,77,81,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162],[68,102,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162],[68,75,76,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162],[68,75,76,77,78,79,80,81,82,83,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,103,104,105,106,107,108,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,96,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,88,89,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,79,81,89,90,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,80,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,73,76,81,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,85,89,90,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,85,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,79,81,84,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,73,78,81,88,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,76,81,102,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,160,161],[68,109,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,109,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160],[59,68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[59,60,61,68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161]],"options":{"composite":true,"declaration":true,"declarationMap":true,"module":7,"outDir":"./dist","rootDir":"./src","skipLibCheck":true,"strict":true,"sourceMap":true,"target":9,"esModuleInterop":true},"referencedMap":[[57,1],[58,1],[10,1],[12,1],[11,1],[2,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[20,1],[3,1],[21,1],[22,1],[4,1],[23,1],[27,1],[24,1],[25,1],[26,1],[28,1],[29,1],[30,1],[5,1],[31,1],[32,1],[33,1],[34,1],[6,1],[38,1],[35,1],[36,1],[37,1],[39,1],[7,1],[40,1],[45,1],[46,1],[41,1],[42,1],[43,1],[44,1],[8,1],[50,1],[47,1],[48,1],[49,1],[51,1],[9,1],[52,1],[53,1],[54,1],[56,1],[55,1],[1,1],[111,2],[112,3],[113,4],[68,5],[114,6],[115,7],[116,8],[63,1],[66,9],[64,1],[65,1],[117,10],[118,11],[119,12],[120,13],[121,14],[122,15],[123,16],[124,17],[125,18],[126,19],[127,20],[69,1],[67,1],[128,21],[129,22],[130,23],[162,24],[131,25],[132,26],[133,27],[88,28],[98,29],[87,28],[108,30],[79,31],[78,1],[107,32],[101,33],[106,31],[81,34],[95,35],[80,36],[104,37],[76,38],[75,32],[105,39],[77,40],[82,29],[83,1],[86,29],[73,1],[109,41],[99,42],[90,43],[91,44],[93,45],[89,46],[92,47],[102,32],[84,48],[85,49],[94,50],[74,1],[97,42],[96,29],[100,1],[103,51],[134,52],[135,53],[136,54],[137,55],[138,56],[139,57],[140,58],[141,59],[142,60],[143,61],[144,62],[146,63],[145,64],[147,65],[148,66],[149,67],[150,68],[151,69],[152,70],[153,71],[154,72],[155,73],[156,74],[157,75],[158,76],[159,77],[70,1],[71,1],[72,1],[110,78],[160,79],[161,80],[60,81],[62,82],[61,81],[59,1]],"latestChangedDtsFile":"./dist/worker.d.ts"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/cache-strategy",
3
- "version": "0.9.11",
3
+ "version": "0.9.15",
4
4
  "type": "module",
5
5
  "description": "Smart caching with TTL and invalidation strategies (RFC-0022)",
6
6
  "main": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/capability-registry",
3
- "version": "0.9.11",
3
+ "version": "0.9.15",
4
4
  "description": "Capability Registry for pi-harness-runtime — tracks model capabilities and enables capability-based routing",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/checkpoint",
3
- "version": "0.9.11",
3
+ "version": "0.9.15",
4
4
  "description": "Enhanced checkpoint system with incremental snapshots, diff-based storage, and recovery strategies",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/cli-plugin-sdk",
3
- "version": "0.9.11",
3
+ "version": "0.9.15",
4
4
  "type": "module",
5
5
  "description": "CLI Plugin SDK for pi-harness — install, list, remove, update, invoke plugins",
6
6
  "main": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/code-generation",
3
- "version": "0.9.11",
3
+ "version": "0.9.15",
4
4
  "description": "Code generation pipeline for pi-harness-runtime",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/code-review",
3
- "version": "0.9.11",
3
+ "version": "0.9.15",
4
4
  "description": "Automated code review engine for pi-harness-runtime",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/codex-adapter",
3
- "version": "0.9.11",
3
+ "version": "0.9.15",
4
4
  "type": "module",
5
5
  "description": "OpenAI Codex provider adapter for pi-harness",
6
6
  "main": "dist/index.js",