@nyte-ai/core 0.0.18 → 0.0.19
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.
- package/README.md +1 -1
- package/THIRD-PARTY-NOTICES.md +66 -0
- package/dist/chunks/{compose-q1b0tppc.js → compose-0827b2k4.js} +4 -4
- package/dist/chunks/{compose-j3tkz0tb.js → compose-1g03zpvn.js} +6 -6
- package/dist/chunks/{compose-2g3enfv5.js → compose-31zqcfte.js} +4 -4
- package/dist/chunks/{compose-4b1zf3p0.js → compose-4770pb1s.js} +62 -46
- package/dist/chunks/{compose-madtxnp1.js → compose-47f47sgy.js} +7 -7
- package/dist/chunks/{compose-1z7q169s.js → compose-5489evqa.js} +67 -39
- package/dist/chunks/{compose-yk3y0jap.js → compose-54svedb8.js} +7 -7
- package/dist/chunks/{compose-9tqm6g18.js → compose-57j0pme0.js} +4 -4
- package/dist/chunks/{compose-k8aghhv2.js → compose-5cmp34zp.js} +16 -16
- package/dist/chunks/compose-5rg7askh.js +52 -0
- package/dist/chunks/{compose-mryw0674.js → compose-5z835ej2.js} +6 -1
- package/dist/chunks/{compose-7k6nsmtq.js → compose-6gt28900.js} +11 -14
- package/dist/chunks/{compose-q1n2dgrs.js → compose-6m60v1pk.js} +4 -4
- package/dist/chunks/{compose-2eg8w67t.js → compose-6r5ymwyr.js} +15 -4
- package/dist/chunks/{compose-q1ts0v6k.js → compose-767bb340.js} +1 -1
- package/dist/chunks/{compose-pgeemk2b.js → compose-a7k9h27z.js} +6 -5
- package/dist/chunks/{compose-wgphshsn.js → compose-azq5jxr2.js} +7 -7
- package/dist/chunks/compose-bd8c5n7k.js +32 -0
- package/dist/chunks/{compose-drdej9yt.js → compose-c2rnebv0.js} +3 -3
- package/dist/chunks/compose-c4238qkb.js +105 -0
- package/dist/chunks/{compose-djq2bt61.js → compose-ccrh32hd.js} +6 -6
- package/dist/chunks/{compose-kb22bkpt.js → compose-cqpjcx2t.js} +12 -1
- package/dist/chunks/{compose-dbx6ftbm.js → compose-csh5vv2t.js} +42 -4
- package/dist/chunks/{compose-jc22rsz4.js → compose-dbsn3bsy.js} +2 -2
- package/dist/chunks/{compose-rehp8epe.js → compose-eemt6sea.js} +7 -7
- package/dist/chunks/{compose-r7dx7rpz.js → compose-exfx5b4d.js} +72 -15
- package/dist/chunks/{compose-p3q14yt1.js → compose-g2a1f1yx.js} +5 -5
- package/dist/chunks/compose-gvm49f4b.js +155 -0
- package/dist/chunks/{compose-9m19b27b.js → compose-gvrqkyn4.js} +7 -7
- package/dist/chunks/{compose-1jz2j92f.js → compose-gxjc6vz9.js} +30 -2
- package/dist/chunks/{compose-s2aew2c9.js → compose-gxvetm0j.js} +5 -5
- package/dist/chunks/{compose-cq1zx4gp.js → compose-h14pmqv3.js} +1 -1
- package/dist/chunks/{compose-5w5bbakh.js → compose-h3pch7ch.js} +5 -5
- package/dist/chunks/{compose-r12cnkpc.js → compose-hf6xkwdw.js} +10 -10
- package/dist/chunks/{compose-aa73dbe8.js → compose-hms4hf6p.js} +92 -49
- package/dist/chunks/{compose-jjchxce6.js → compose-j42p9wfs.js} +1 -1
- package/dist/chunks/{compose-vmhv4e00.js → compose-jehg40ce.js} +13 -12
- package/dist/chunks/{compose-5tkyrzr0.js → compose-jhs91x01.js} +4 -4
- package/dist/chunks/{compose-xd0kdp3t.js → compose-jrqn6xhy.js} +8 -8
- package/dist/chunks/{compose-ef936rsa.js → compose-ks2rdteq.js} +27 -11
- package/dist/chunks/{compose-k35b75k9.js → compose-kwkna3cg.js} +2 -4
- package/dist/chunks/{compose-gaps3heh.js → compose-m1ecjzm2.js} +8 -8
- package/dist/chunks/{compose-xtkavyrw.js → compose-m6nsbnkk.js} +17 -9
- package/dist/chunks/{compose-y478gv6x.js → compose-mamr4qwf.js} +4 -4
- package/dist/chunks/{compose-j12n448k.js → compose-nj4nj5n9.js} +36 -3
- package/dist/chunks/{compose-cdy4q5mv.js → compose-pe0cgbv0.js} +17 -16
- package/dist/chunks/{compose-xpfr4wt3.js → compose-pnsvwd3m.js} +7 -4
- package/dist/chunks/{compose-52afaf3v.js → compose-prchdrqk.js} +7 -7
- package/dist/chunks/{compose-7pc3p5ex.js → compose-q1d09qpr.js} +8 -8
- package/dist/chunks/{compose-amr0k1m1.js → compose-q1rrtq3a.js} +2 -2
- package/dist/chunks/{compose-0bpspysf.js → compose-qknd62yj.js} +5 -5
- package/dist/chunks/{compose-b5xz0dj7.js → compose-qwbe95qs.js} +2 -2
- package/dist/chunks/{compose-064y3n82.js → compose-r1pxdxbw.js} +5 -5
- package/dist/chunks/{compose-7b8ajk7a.js → compose-rd5e5nxg.js} +8 -8
- package/dist/chunks/{compose-gg8b9b21.js → compose-s5522cth.js} +23 -18
- package/dist/chunks/{compose-t53j8yxv.js → compose-se7wwcq1.js} +1 -1
- package/dist/chunks/{compose-dc2ns6gd.js → compose-seyhq3fb.js} +10 -10
- package/dist/chunks/{compose-ffk8dnbh.js → compose-smsafpqe.js} +3 -3
- package/dist/chunks/{compose-eqr5qwp1.js → compose-tb5ywdfk.js} +56 -21
- package/dist/chunks/{compose-dckpgtks.js → compose-ts08bth2.js} +3 -3
- package/dist/chunks/{compose-1gd9vkye.js → compose-v9yf9mrh.js} +3 -3
- package/dist/chunks/{compose-n10w4nkk.js → compose-vn7b7fdj.js} +12 -3
- package/dist/chunks/{compose-kmzr06mw.js → compose-w2ac7xjx.js} +8 -5
- package/dist/chunks/{compose-rpq9n0nz.js → compose-xaegezm3.js} +84 -26
- package/dist/chunks/{compose-6vf6dkk2.js → compose-xhtgytrh.js} +2 -2
- package/dist/chunks/{compose-4tb2vn84.js → compose-y6xgbg2h.js} +1 -1
- package/dist/chunks/{compose-yn2et568.js → compose-y9c31w4e.js} +118 -9
- package/dist/chunks/{compose-h272znxk.js → compose-z6hbq6y0.js} +7 -7
- package/dist/chunks/{compose-d2s80zg2.js → compose-zch4zapc.js} +5 -5
- package/dist/src/agent/compaction.js +39 -37
- package/dist/src/agent/images.d.ts +7 -0
- package/dist/src/agent/images.js +8 -0
- package/dist/src/agent/request.js +28 -28
- package/dist/src/agent/tool-runner.d.ts +1 -7
- package/dist/src/agent/tool-runner.js +29 -28
- package/dist/src/agent/transcript.d.ts +0 -1
- package/dist/src/agent/transcript.js +35 -33
- package/dist/src/agent/turn.js +43 -41
- package/dist/src/api/connection.js +56 -53
- package/dist/src/api/head.js +39 -39
- package/dist/src/api/part.js +20 -20
- package/dist/src/api/server.js +45 -42
- package/dist/src/api/session.js +44 -44
- package/dist/src/builtins/environment.js +1 -1
- package/dist/src/compose.d.ts +6 -7
- package/dist/src/compose.js +68 -64
- package/dist/src/contract/fold.d.ts +1 -3
- package/dist/src/contract/host.d.ts +30 -1
- package/dist/src/contract/host.js +4 -2
- package/dist/src/contract/kernel.d.ts +6 -35
- package/dist/src/contract/records.d.ts +69 -3
- package/dist/src/contract/records.js +5 -1
- package/dist/src/contract/session.d.ts +2 -1
- package/dist/src/contract/workspace.d.ts +5 -3
- package/dist/src/drive/execution.js +43 -40
- package/dist/src/drive/interruptions.d.ts +7 -0
- package/dist/src/drive/interruptions.js +17 -0
- package/dist/src/engine/admission.js +22 -22
- package/dist/src/engine/batches.js +21 -21
- package/dist/src/engine/branch-summary.js +20 -20
- package/dist/src/engine/durable.d.ts +0 -2
- package/dist/src/engine/durable.js +19 -19
- package/dist/src/engine/fence.js +19 -19
- package/dist/src/engine/jobs.d.ts +1 -0
- package/dist/src/engine/jobs.js +27 -25
- package/dist/src/engine/move.js +22 -22
- package/dist/src/engine/presence.d.ts +39 -0
- package/dist/src/engine/presence.js +16 -0
- package/dist/src/engine/principals.js +16 -16
- package/dist/src/engine/receipts.js +20 -20
- package/dist/src/engine/runs.d.ts +1 -1
- package/dist/src/engine/runs.js +23 -23
- package/dist/src/engine/start.js +33 -33
- package/dist/src/engine/surface.d.ts +4 -0
- package/dist/src/engine/surface.js +13 -0
- package/dist/src/engine/waits.d.ts +5 -15
- package/dist/src/engine/waits.js +22 -18
- package/dist/src/env/browser.js +25 -25
- package/dist/src/env/environment.js +27 -27
- package/dist/src/env/mcp.js +29 -29
- package/dist/src/env/trust.js +28 -28
- package/dist/src/env/workspaces.js +31 -31
- package/dist/src/env/worktrees.js +32 -32
- package/dist/src/extend/activation.js +32 -32
- package/dist/src/extend/hooks.js +21 -21
- package/dist/src/extend/models.d.ts +2 -1
- package/dist/src/extend/models.js +30 -28
- package/dist/src/extend/plugin-api.js +17 -17
- package/dist/src/extend/plugin-runtime.js +38 -38
- package/dist/src/extend/registry.js +25 -25
- package/dist/src/extend/resources.js +29 -29
- package/dist/src/extend/setting-layers.js +4 -4
- package/dist/src/extend/settings.js +35 -35
- package/dist/src/extend/workspace-commands.js +39 -39
- package/dist/src/fold/calls.js +5 -5
- package/dist/src/fold/checkpoint.js +11 -11
- package/dist/src/fold/code.d.ts +1 -2
- package/dist/src/fold/code.js +1 -1
- package/dist/src/fold/commit.d.ts +0 -4
- package/dist/src/fold/commit.js +15 -15
- package/dist/src/fold/draft.js +4 -4
- package/dist/src/fold/fold.js +7 -7
- package/dist/src/fold/paths.js +5 -5
- package/dist/src/fold/project.d.ts +3 -1
- package/dist/src/fold/project.js +8 -6
- package/dist/src/fold/reads.js +5 -5
- package/dist/src/fold/seen.js +18 -18
- package/dist/src/fold/view.d.ts +1 -1
- package/dist/src/fold/view.js +19 -19
- package/dist/src/fold/watch.js +14 -14
- package/dist/src/harness.d.ts +2 -1
- package/dist/src/harness.js +71 -67
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.js +4 -2
- package/dist/src/server.js +66 -62
- package/dist/src/store/inspect.js +4 -4
- package/dist/src/store/log.d.ts +0 -2
- package/dist/src/store/log.js +2 -2
- package/dist/src/store/memory-store.js +5 -5
- package/dist/src/store/migrations.js +3 -3
- package/dist/src/store/model-state.d.ts +6 -1
- package/dist/src/store/model-state.js +14 -4
- package/dist/src/store/parts.js +4 -4
- package/dist/src/store/refs.d.ts +6 -5
- package/dist/src/store/refs.js +11 -1
- package/dist/src/store/session-index.js +2 -2
- package/dist/src/store/session.d.ts +3 -1
- package/dist/src/store/session.js +5 -3
- package/dist/src/store.d.ts +1 -1
- package/dist/src/store.js +11 -7
- package/dist/src/testing.d.ts +2 -0
- package/dist/src/testing.js +77 -65
- package/package.json +4 -4
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CORE_CONTEXT2
|
|
3
|
+
} from "./compose-5z835ej2.js";
|
|
1
4
|
import {
|
|
2
5
|
decodeSessionRecord2,
|
|
3
6
|
decodeSeenRecord2
|
|
4
|
-
} from "./compose-
|
|
7
|
+
} from "./compose-gxjc6vz9.js";
|
|
5
8
|
import {
|
|
6
9
|
objectId2
|
|
7
10
|
} from "./compose-q6c7wswc.js";
|
|
@@ -10,7 +13,7 @@ import {
|
|
|
10
13
|
headRef2,
|
|
11
14
|
seenRef2,
|
|
12
15
|
workspaceRef2
|
|
13
|
-
} from "./compose-
|
|
16
|
+
} from "./compose-cqpjcx2t.js";
|
|
14
17
|
import {
|
|
15
18
|
MAIN2,
|
|
16
19
|
STALE2,
|
|
@@ -24,7 +27,7 @@ import {
|
|
|
24
27
|
attempt2,
|
|
25
28
|
coversRecord2,
|
|
26
29
|
sessionEvent2
|
|
27
|
-
} from "./compose-
|
|
30
|
+
} from "./compose-vn7b7fdj.js";
|
|
28
31
|
import {
|
|
29
32
|
traced2,
|
|
30
33
|
followTrace2,
|
|
@@ -32,10 +35,10 @@ import {
|
|
|
32
35
|
} from "./compose-sd0stm97.js";
|
|
33
36
|
import {
|
|
34
37
|
commit2
|
|
35
|
-
} from "./compose-
|
|
38
|
+
} from "./compose-pnsvwd3m.js";
|
|
36
39
|
import {
|
|
37
40
|
stopRun2
|
|
38
|
-
} from "./compose-
|
|
41
|
+
} from "./compose-gvrqkyn4.js";
|
|
39
42
|
import {
|
|
40
43
|
refusalError2,
|
|
41
44
|
staticContributions2
|
|
@@ -44,17 +47,17 @@ import {
|
|
|
44
47
|
receiptHandle2,
|
|
45
48
|
sendReceipt2,
|
|
46
49
|
withdraw2
|
|
47
|
-
} from "./compose-
|
|
50
|
+
} from "./compose-prchdrqk.js";
|
|
48
51
|
import {
|
|
49
52
|
sendNow2,
|
|
50
53
|
admitDeciding2
|
|
51
|
-
} from "./compose-
|
|
54
|
+
} from "./compose-pe0cgbv0.js";
|
|
52
55
|
import {
|
|
53
56
|
recordAcquisition2
|
|
54
|
-
} from "./compose-
|
|
57
|
+
} from "./compose-eemt6sea.js";
|
|
55
58
|
import {
|
|
56
59
|
runHandle2
|
|
57
|
-
} from "./compose-
|
|
60
|
+
} from "./compose-jehg40ce.js";
|
|
58
61
|
import {
|
|
59
62
|
latest2,
|
|
60
63
|
closable2,
|
|
@@ -63,29 +66,29 @@ import {
|
|
|
63
66
|
import {
|
|
64
67
|
isolateWorkspace2,
|
|
65
68
|
releaseWorktree2
|
|
66
|
-
} from "./compose-
|
|
69
|
+
} from "./compose-gxvetm0j.js";
|
|
67
70
|
import {
|
|
68
71
|
releaseStart2,
|
|
69
72
|
stopStart2,
|
|
70
73
|
discardSession2
|
|
71
|
-
} from "./compose-
|
|
74
|
+
} from "./compose-seyhq3fb.js";
|
|
72
75
|
import {
|
|
73
76
|
runCommand2,
|
|
74
77
|
completeSessionCommand2
|
|
75
|
-
} from "./compose-
|
|
78
|
+
} from "./compose-r1pxdxbw.js";
|
|
76
79
|
import {
|
|
77
80
|
configure2
|
|
78
|
-
} from "./compose-
|
|
81
|
+
} from "./compose-jrqn6xhy.js";
|
|
79
82
|
import {
|
|
80
83
|
headHandle2,
|
|
81
84
|
createHead2,
|
|
82
85
|
mergeHead2,
|
|
83
86
|
removeHead2
|
|
84
|
-
} from "./compose-
|
|
87
|
+
} from "./compose-m6nsbnkk.js";
|
|
85
88
|
import {
|
|
86
89
|
createPart2,
|
|
87
90
|
partHandle2
|
|
88
|
-
} from "./compose-
|
|
91
|
+
} from "./compose-azq5jxr2.js";
|
|
89
92
|
|
|
90
93
|
// src/api/session.ts
|
|
91
94
|
import { asId, SdkError } from "@nyte-ai/schema";
|
|
@@ -301,11 +304,11 @@ async function start(kernel, context, input) {
|
|
|
301
304
|
const trace = (origin === null ? null : followedTrace2(origin.session)) ?? receipt;
|
|
302
305
|
followTrace2(id, trace);
|
|
303
306
|
return traced2("host.admit", trace, { session: id }, async () => {
|
|
304
|
-
await attempt2(`Starting ${id}`, async () => {
|
|
307
|
+
const chosen = await attempt2(`Starting ${id}`, async () => {
|
|
305
308
|
if (await readSession2(kernel.store, id) !== null) {
|
|
306
309
|
const started = (await readReceipt2(kernel.store, id, receipt))?.record;
|
|
307
310
|
if (started?.kind === "send" && started.digest === digest)
|
|
308
|
-
return
|
|
311
|
+
return null;
|
|
309
312
|
throw new SdkError("invalid", `Session ${id} already exists.`);
|
|
310
313
|
}
|
|
311
314
|
const parent = input.parent === undefined ? null : await requireSession2(kernel.store, input.parent);
|
|
@@ -356,9 +359,11 @@ async function start(kernel, context, input) {
|
|
|
356
359
|
principal: context.principal
|
|
357
360
|
})
|
|
358
361
|
]);
|
|
359
|
-
return outcome.kind === "set" ?
|
|
362
|
+
return outcome.kind === "set" ? selected : STALE2;
|
|
360
363
|
});
|
|
361
364
|
await releaseStart2(kernel, context, id);
|
|
365
|
+
if (chosen !== null && context !== CORE_CONTEXT2 && origin === null && context.authority.has("owner"))
|
|
366
|
+
await kernel.rememberChoice(chosen, "model");
|
|
362
367
|
return id;
|
|
363
368
|
});
|
|
364
369
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CORE_CONTEXT2,
|
|
3
3
|
PARTICIPANT_AUTHORITY2
|
|
4
|
-
} from "./compose-
|
|
4
|
+
} from "./compose-5z835ej2.js";
|
|
5
5
|
import {
|
|
6
6
|
sessionRef2,
|
|
7
7
|
inboxRef2
|
|
8
|
-
} from "./compose-
|
|
8
|
+
} from "./compose-cqpjcx2t.js";
|
|
9
9
|
import {
|
|
10
10
|
dev2
|
|
11
11
|
} from "./compose-n116fnmp.js";
|
|
@@ -17,28 +17,28 @@ import {
|
|
|
17
17
|
readInbox2,
|
|
18
18
|
attempt2,
|
|
19
19
|
sessionEvent2
|
|
20
|
-
} from "./compose-
|
|
20
|
+
} from "./compose-vn7b7fdj.js";
|
|
21
21
|
import {
|
|
22
22
|
releaseParts2
|
|
23
|
-
} from "./compose-
|
|
23
|
+
} from "./compose-c2rnebv0.js";
|
|
24
24
|
import {
|
|
25
25
|
commit2
|
|
26
|
-
} from "./compose-
|
|
26
|
+
} from "./compose-pnsvwd3m.js";
|
|
27
27
|
import {
|
|
28
28
|
withFold2
|
|
29
|
-
} from "./compose-
|
|
29
|
+
} from "./compose-xhtgytrh.js";
|
|
30
30
|
import {
|
|
31
31
|
listSessionWaits2
|
|
32
|
-
} from "./compose-
|
|
32
|
+
} from "./compose-ks2rdteq.js";
|
|
33
33
|
import {
|
|
34
34
|
readmitDeciding2
|
|
35
|
-
} from "./compose-
|
|
35
|
+
} from "./compose-pe0cgbv0.js";
|
|
36
36
|
import {
|
|
37
37
|
dropScans2
|
|
38
|
-
} from "./compose-
|
|
38
|
+
} from "./compose-mamr4qwf.js";
|
|
39
39
|
import {
|
|
40
40
|
releaseWorktree2
|
|
41
|
-
} from "./compose-
|
|
41
|
+
} from "./compose-gxvetm0j.js";
|
|
42
42
|
|
|
43
43
|
// src/engine/start.ts
|
|
44
44
|
import { SdkError } from "@nyte-ai/schema";
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
decodeCommitRecord2
|
|
3
|
-
} from "./compose-
|
|
3
|
+
} from "./compose-gxjc6vz9.js";
|
|
4
4
|
import {
|
|
5
5
|
sessionRef2
|
|
6
|
-
} from "./compose-
|
|
6
|
+
} from "./compose-cqpjcx2t.js";
|
|
7
7
|
import {
|
|
8
8
|
toCommitObjectId2,
|
|
9
9
|
readCommit2
|
|
10
|
-
} from "./compose-
|
|
10
|
+
} from "./compose-vn7b7fdj.js";
|
|
11
11
|
|
|
12
12
|
// src/store/inspect.ts
|
|
13
13
|
import { asId, isJsonObject } from "@nyte-ai/schema";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
decodeRunRecord2
|
|
3
|
-
} from "./compose-
|
|
3
|
+
} from "./compose-gxjc6vz9.js";
|
|
4
4
|
import {
|
|
5
5
|
objectId2
|
|
6
6
|
} from "./compose-q6c7wswc.js";
|
|
@@ -8,44 +8,45 @@ import {
|
|
|
8
8
|
runRef2,
|
|
9
9
|
endedRunRef2,
|
|
10
10
|
workspaceRef2
|
|
11
|
-
} from "./compose-
|
|
11
|
+
} from "./compose-cqpjcx2t.js";
|
|
12
12
|
import {
|
|
13
13
|
MAIN2,
|
|
14
14
|
STALE2,
|
|
15
15
|
load2,
|
|
16
16
|
readSession2,
|
|
17
17
|
liveRuns2,
|
|
18
|
+
threadStart2,
|
|
18
19
|
put2,
|
|
19
20
|
attempt2,
|
|
20
21
|
listSessionRecords2
|
|
21
|
-
} from "./compose-
|
|
22
|
+
} from "./compose-vn7b7fdj.js";
|
|
23
|
+
import {
|
|
24
|
+
commit2
|
|
25
|
+
} from "./compose-pnsvwd3m.js";
|
|
22
26
|
import {
|
|
23
27
|
latest2,
|
|
24
28
|
closable2,
|
|
25
29
|
coalesce2
|
|
26
30
|
} from "./compose-zfjxkavf.js";
|
|
27
|
-
import {
|
|
28
|
-
commit2
|
|
29
|
-
} from "./compose-xpfr4wt3.js";
|
|
30
31
|
import {
|
|
31
32
|
createJobs2,
|
|
32
33
|
jobHandle2
|
|
33
|
-
} from "./compose-
|
|
34
|
+
} from "./compose-y9c31w4e.js";
|
|
34
35
|
import {
|
|
35
36
|
inspectWorkspaceAvailability2,
|
|
36
37
|
readWorkspace2,
|
|
37
38
|
workspaceRecords2
|
|
38
|
-
} from "./compose-
|
|
39
|
+
} from "./compose-qknd62yj.js";
|
|
39
40
|
import {
|
|
40
41
|
readFolderTrust2,
|
|
41
42
|
decideTrust2
|
|
42
|
-
} from "./compose-
|
|
43
|
+
} from "./compose-h3pch7ch.js";
|
|
43
44
|
import {
|
|
44
45
|
dropScans2
|
|
45
|
-
} from "./compose-
|
|
46
|
+
} from "./compose-mamr4qwf.js";
|
|
46
47
|
import {
|
|
47
48
|
mcpApi2
|
|
48
|
-
} from "./compose-
|
|
49
|
+
} from "./compose-v9yf9mrh.js";
|
|
49
50
|
|
|
50
51
|
// src/env/workspaces.ts
|
|
51
52
|
import { asId, SdkError } from "@nyte-ai/schema";
|
|
@@ -264,13 +265,13 @@ function workspaceHandle2(kernel, context, id, client = null) {
|
|
|
264
265
|
},
|
|
265
266
|
jobs: createJobs2(kernel, context, id),
|
|
266
267
|
job: (job) => jobHandle2(kernel, job),
|
|
267
|
-
async changes(
|
|
268
|
+
async changes(source) {
|
|
268
269
|
const found = await snapshots();
|
|
269
|
-
const range = await
|
|
270
|
-
return found.diff(range
|
|
270
|
+
const range = await changeRange(kernel.store, id, source, found);
|
|
271
|
+
return found.diff(range.from, range.to);
|
|
271
272
|
},
|
|
272
|
-
patches(
|
|
273
|
-
return streamWorkspacePatches(kernel, { workspace: id,
|
|
273
|
+
patches(source, paths, options) {
|
|
274
|
+
return streamWorkspacePatches(kernel, { workspace: id, source, paths, options, snapshots });
|
|
274
275
|
},
|
|
275
276
|
files: async () => (await capabilities()).files,
|
|
276
277
|
git: async () => (await capabilities()).git,
|
|
@@ -314,14 +315,12 @@ function settle2(kernel, session, workspace, activation) {
|
|
|
314
315
|
changed2(kernel, workspace);
|
|
315
316
|
}
|
|
316
317
|
async function* streamWorkspacePatches(kernel, input) {
|
|
317
|
-
const {
|
|
318
|
+
const { source, options } = input;
|
|
318
319
|
const snapshots = await input.snapshots();
|
|
319
|
-
const
|
|
320
|
-
const from = range?.from ?? await snapshots.before(run);
|
|
321
|
-
const to = range?.to ?? await snapshots.after(run);
|
|
320
|
+
const { from, to } = await changeRange(kernel.store, input.workspace, source, snapshots);
|
|
322
321
|
let statuses = null;
|
|
323
322
|
const caches = kernel.workspaceState.patches;
|
|
324
|
-
const key = JSON.stringify([input.workspace,
|
|
323
|
+
const key = JSON.stringify([input.workspace, source, options?.ignoreWhitespace === true]);
|
|
325
324
|
const previous = caches.get(key);
|
|
326
325
|
const current = previous?.revision === to ? previous : { revision: to, slots: new Map };
|
|
327
326
|
caches.delete(key);
|
|
@@ -424,6 +423,42 @@ function limiter(size) {
|
|
|
424
423
|
queue.push(run);
|
|
425
424
|
});
|
|
426
425
|
}
|
|
426
|
+
async function changeRange(store, workspace, source, snapshots) {
|
|
427
|
+
switch (source.kind) {
|
|
428
|
+
case "run": {
|
|
429
|
+
const range = await runSnapshots(store, workspace, source.run);
|
|
430
|
+
return {
|
|
431
|
+
from: range?.from ?? await snapshots.before(source.run),
|
|
432
|
+
to: range?.to ?? await snapshots.after(source.run)
|
|
433
|
+
};
|
|
434
|
+
}
|
|
435
|
+
case "session":
|
|
436
|
+
return sessionSnapshots(store, source.session, snapshots);
|
|
437
|
+
default: {
|
|
438
|
+
const _exhaustive = source;
|
|
439
|
+
return _exhaustive;
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
}
|
|
443
|
+
async function sessionSnapshots(store, session, snapshots) {
|
|
444
|
+
const [found, from] = await Promise.all([
|
|
445
|
+
readSession2(store, session),
|
|
446
|
+
threadStart2(store, session)
|
|
447
|
+
]);
|
|
448
|
+
if (found === null || from === null)
|
|
449
|
+
throw new SdkError("unavailable", `No run of session ${session} has snapshotted its workspace.`);
|
|
450
|
+
const [live] = await liveRuns2(store, session);
|
|
451
|
+
if (live !== undefined)
|
|
452
|
+
return { from, to: await snapshots.after(live.record.view.id) };
|
|
453
|
+
const [last] = found.record.heads.flatMap((head) => head.lastRun === null ? [] : [head.lastRun]).toSorted((left, right) => right.endedAt - left.endedAt);
|
|
454
|
+
if (last === undefined)
|
|
455
|
+
return { from, to: from };
|
|
456
|
+
const ended = await load2(store, await store.refs.get(endedRunRef2(session, last.id)), decodeRunRecord2);
|
|
457
|
+
return {
|
|
458
|
+
from,
|
|
459
|
+
to: ended?.record.lastSnapshot ?? ended?.record.snapshot ?? await snapshots.after(last.id)
|
|
460
|
+
};
|
|
461
|
+
}
|
|
427
462
|
async function runSnapshots(store, workspace, run) {
|
|
428
463
|
for (const session of await sessionsOn2(store, workspace)) {
|
|
429
464
|
const live = await load2(store, await store.refs.get(runRef2(session, run)), decodeRunRecord2);
|
|
@@ -4,18 +4,18 @@ import {
|
|
|
4
4
|
} from "./compose-q6c7wswc.js";
|
|
5
5
|
import {
|
|
6
6
|
parseSessionRef2
|
|
7
|
-
} from "./compose-
|
|
7
|
+
} from "./compose-cqpjcx2t.js";
|
|
8
8
|
import {
|
|
9
9
|
admits2,
|
|
10
10
|
fenceNames2,
|
|
11
11
|
collectSessionEvents2,
|
|
12
12
|
loggedEvent2,
|
|
13
13
|
decodeObject2
|
|
14
|
-
} from "./compose-
|
|
14
|
+
} from "./compose-kwkna3cg.js";
|
|
15
15
|
import {
|
|
16
16
|
sessionIndexRef2,
|
|
17
17
|
projectSessionIndex2
|
|
18
|
-
} from "./compose-
|
|
18
|
+
} from "./compose-y6xgbg2h.js";
|
|
19
19
|
|
|
20
20
|
// src/store/memory-store.ts
|
|
21
21
|
import { asId, asSeq } from "@nyte-ai/schema";
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
requireSession2
|
|
3
|
-
} from "./compose-
|
|
3
|
+
} from "./compose-vn7b7fdj.js";
|
|
4
4
|
import {
|
|
5
5
|
forwarded2
|
|
6
6
|
} from "./compose-zfjxkavf.js";
|
|
7
7
|
import {
|
|
8
8
|
readWorkspace2
|
|
9
|
-
} from "./compose-
|
|
9
|
+
} from "./compose-qknd62yj.js";
|
|
10
10
|
import {
|
|
11
11
|
projectTrust2
|
|
12
|
-
} from "./compose-
|
|
12
|
+
} from "./compose-h3pch7ch.js";
|
|
13
13
|
|
|
14
14
|
// src/env/mcp.ts
|
|
15
15
|
import { SdkError } from "@nyte-ai/schema";
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
decodeReceiptRecord2,
|
|
8
8
|
decodeCallRecord2,
|
|
9
9
|
decodeKvValue2
|
|
10
|
-
} from "./compose-
|
|
10
|
+
} from "./compose-gxjc6vz9.js";
|
|
11
11
|
import {
|
|
12
12
|
dev2
|
|
13
13
|
} from "./compose-n116fnmp.js";
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
inboxRef2,
|
|
18
18
|
receiptRef2,
|
|
19
19
|
callRef2
|
|
20
|
-
} from "./compose-
|
|
20
|
+
} from "./compose-cqpjcx2t.js";
|
|
21
21
|
|
|
22
22
|
// src/store/session.ts
|
|
23
23
|
import { asId, SdkError } from "@nyte-ai/schema";
|
|
@@ -72,6 +72,15 @@ async function liveRuns2(store, session) {
|
|
|
72
72
|
const runs = await Promise.all(refs.map((ref) => load2(store, ref, decodeRunRecord2)));
|
|
73
73
|
return runs.flatMap((run) => run === null ? [] : [run]);
|
|
74
74
|
}
|
|
75
|
+
async function threadStart2(store, session) {
|
|
76
|
+
const refs = await Promise.all([
|
|
77
|
+
store.refs.list(`${sessionRef2(session)}/runs/`),
|
|
78
|
+
store.refs.list(`${sessionRef2(session)}/ended/`)
|
|
79
|
+
]);
|
|
80
|
+
const runs = await Promise.all(refs.flat().map((ref) => load2(store, ref, decodeRunRecord2)));
|
|
81
|
+
const [first] = runs.flatMap((run) => run === null || run.record.snapshot === null ? [] : [run.record]).toSorted((left, right) => left.view.startedAt - right.view.startedAt);
|
|
82
|
+
return first?.snapshot ?? null;
|
|
83
|
+
}
|
|
75
84
|
async function liveRun3(store, session, head) {
|
|
76
85
|
return (await liveRuns2(store, session)).find((run) => run.record.view.head === head) ?? null;
|
|
77
86
|
}
|
|
@@ -253,4 +262,4 @@ async function readKv2(store, name) {
|
|
|
253
262
|
return ref === null || ref.target === null ? undefined : decodeKvValue2(await store.objects.get(ref.target));
|
|
254
263
|
}
|
|
255
264
|
|
|
256
|
-
export { MAIN2, EMPTY_REVISION2, START2, STALE2, load2, readSession2, requireSession2, readReceipt2, readTip2, readInbox2, inboxWithout2, liveRuns2, liveRun3, readRefExpectation2, sameRevision2, staleHead2, put2, attempt2, walkCommitPath2, readPositionCommit2, createPosition2, toCommitObjectId2, readCommit2, readCall2, readCalls2, covers2, listSessionRecords2, coveredSessions2, coveredHere2, coversRecord2, sessionEvent2, guard2, readKv2 };
|
|
265
|
+
export { MAIN2, EMPTY_REVISION2, START2, STALE2, load2, readSession2, requireSession2, readReceipt2, readTip2, readInbox2, inboxWithout2, liveRuns2, threadStart2, liveRun3, readRefExpectation2, sameRevision2, staleHead2, put2, attempt2, walkCommitPath2, readPositionCommit2, createPosition2, toCommitObjectId2, readCommit2, readCall2, readCalls2, covers2, listSessionRecords2, coveredSessions2, coveredHere2, coversRecord2, sessionEvent2, guard2, readKv2 };
|
|
@@ -9,11 +9,12 @@ import {
|
|
|
9
9
|
} from "./compose-zfjxkavf.js";
|
|
10
10
|
import {
|
|
11
11
|
project2,
|
|
12
|
-
readSeenCommit2
|
|
13
|
-
|
|
12
|
+
readSeenCommit2,
|
|
13
|
+
findLeadingPrompt2
|
|
14
|
+
} from "./compose-6r5ymwyr.js";
|
|
14
15
|
import {
|
|
15
16
|
seenWriter2
|
|
16
|
-
} from "./compose-
|
|
17
|
+
} from "./compose-zch4zapc.js";
|
|
17
18
|
|
|
18
19
|
// src/fold/view.ts
|
|
19
20
|
function watchHead2(kernel, input) {
|
|
@@ -78,13 +79,15 @@ async function historyHead2(kernel, input) {
|
|
|
78
79
|
const messages = folded?.messages ?? [];
|
|
79
80
|
const end = messages.findIndex((message) => message.id === input.before);
|
|
80
81
|
if (folded === undefined || path === undefined || end < 0 || input.limit <= 0)
|
|
81
|
-
return { messages: [], turns: [] };
|
|
82
|
-
const
|
|
82
|
+
return { messages: [], leadingPrompt: null, turns: [] };
|
|
83
|
+
const start = Math.max(0, end - input.limit);
|
|
84
|
+
const page = messages.slice(start, end);
|
|
83
85
|
const positions = [
|
|
84
86
|
...new Set(page.flatMap((message) => path.turnAt.get(message.turn) ?? []))
|
|
85
87
|
].toSorted((left, right) => left - right);
|
|
86
88
|
return {
|
|
87
89
|
messages: page,
|
|
90
|
+
leadingPrompt: findLeadingPrompt2(path, start),
|
|
88
91
|
turns: positions.flatMap((position) => folded.turns[position] ?? [])
|
|
89
92
|
};
|
|
90
93
|
} finally {
|