@plurnk/plurnk-service 1.0.4 → 1.0.6
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/.env.defaults +55 -31
- package/INSTALL.md +3 -3
- package/README.md +4 -4
- package/SPEC.md +205 -193
- package/dist/Paths.js +1 -1
- package/dist/Paths.js.map +1 -1
- package/dist/core/ChannelWrite.d.ts +18 -18
- package/dist/core/ChannelWrite.d.ts.map +1 -1
- package/dist/core/ChannelWrite.js +17 -17
- package/dist/core/ChannelWrite.js.map +1 -1
- package/dist/core/ChannelWrite.sql +11 -11
- package/dist/core/Dispatcher.d.ts +11 -16
- package/dist/core/Dispatcher.d.ts.map +1 -1
- package/dist/core/Dispatcher.js +122 -125
- package/dist/core/Dispatcher.js.map +1 -1
- package/dist/core/Engine.d.ts +20 -23
- package/dist/core/Engine.d.ts.map +1 -1
- package/dist/core/Engine.js +213 -210
- package/dist/core/Engine.js.map +1 -1
- package/dist/core/Engine.sql +108 -130
- package/dist/core/PacketBuilder.d.ts +10 -11
- package/dist/core/PacketBuilder.d.ts.map +1 -1
- package/dist/core/PacketBuilder.js +204 -128
- package/dist/core/PacketBuilder.js.map +1 -1
- package/dist/core/ProposalLifecycle.d.ts +8 -8
- package/dist/core/ProposalLifecycle.d.ts.map +1 -1
- package/dist/core/ProposalLifecycle.js +10 -10
- package/dist/core/ProposalLifecycle.js.map +1 -1
- package/dist/core/ProviderInstantiate.d.ts +1 -0
- package/dist/core/ProviderInstantiate.d.ts.map +1 -1
- package/dist/core/ProviderInstantiate.js +9 -3
- package/dist/core/ProviderInstantiate.js.map +1 -1
- package/dist/core/SchemeRegistry.d.ts +4 -1
- package/dist/core/SchemeRegistry.d.ts.map +1 -1
- package/dist/core/SchemeRegistry.js +18 -9
- package/dist/core/SchemeRegistry.js.map +1 -1
- package/dist/core/TelemetryChannel.d.ts +5 -5
- package/dist/core/TelemetryChannel.d.ts.map +1 -1
- package/dist/core/TelemetryChannel.js +9 -9
- package/dist/core/TelemetryChannel.js.map +1 -1
- package/dist/core/caps/CapsResolve.js +2 -2
- package/dist/core/caps/CapsResolve.js.map +1 -1
- package/dist/core/caps/DbNotifyCaps.js +2 -2
- package/dist/core/caps/DbNotifyCaps.js.map +1 -1
- package/dist/core/caps/DbSubscriptionCaps.js +7 -7
- package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
- package/dist/core/caps/SchemeCtxImpl.d.ts +2 -2
- package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
- package/dist/core/caps/SchemeCtxImpl.js +4 -4
- package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
- package/dist/core/content-hash.d.ts +2 -0
- package/dist/core/content-hash.d.ts.map +1 -0
- package/dist/core/content-hash.js +6 -0
- package/dist/core/content-hash.js.map +1 -0
- package/dist/core/fork.d.ts +1 -1
- package/dist/core/fork.d.ts.map +1 -1
- package/dist/core/fork.js +31 -26
- package/dist/core/fork.js.map +1 -1
- package/dist/core/fork.sql +41 -32
- package/dist/core/git-env.d.ts.map +1 -1
- package/dist/core/git-env.js +23 -7
- package/dist/core/git-env.js.map +1 -1
- package/dist/core/git-iso.d.ts +9 -0
- package/dist/core/git-iso.d.ts.map +1 -0
- package/dist/core/git-iso.js +227 -0
- package/dist/core/git-iso.js.map +1 -0
- package/dist/core/git-membership.d.ts +2 -2
- package/dist/core/git-membership.d.ts.map +1 -1
- package/dist/core/git-membership.js +70 -50
- package/dist/core/git-membership.js.map +1 -1
- package/dist/core/git-state.d.ts +1 -1
- package/dist/core/git-state.d.ts.map +1 -1
- package/dist/core/git-state.js +21 -11
- package/dist/core/git-state.js.map +1 -1
- package/dist/core/packet-wire.d.ts.map +1 -1
- package/dist/core/packet-wire.js +81 -22
- package/dist/core/packet-wire.js.map +1 -1
- package/dist/core/plurnk-uri.d.ts +2 -2
- package/dist/core/plurnk-uri.d.ts.map +1 -1
- package/dist/core/plurnk-uri.js +19 -12
- package/dist/core/plurnk-uri.js.map +1 -1
- package/dist/core/run-ops.sql +26 -26
- package/dist/core/scheme-types.d.ts +6 -11
- package/dist/core/scheme-types.d.ts.map +1 -1
- package/dist/core/search-gate.js +0 -0
- package/dist/core/search-gate.js.map +1 -1
- package/dist/core/token-ruler.d.ts +2 -0
- package/dist/core/token-ruler.d.ts.map +1 -0
- package/dist/core/token-ruler.js +18 -0
- package/dist/core/token-ruler.js.map +1 -0
- package/dist/core/worker-cap.d.ts +8 -0
- package/dist/core/worker-cap.d.ts.map +1 -0
- package/dist/core/worker-cap.js +20 -0
- package/dist/core/worker-cap.js.map +1 -0
- package/dist/core/{session-settings.d.ts → workspace-settings.d.ts} +5 -5
- package/dist/core/workspace-settings.d.ts.map +1 -0
- package/dist/core/{session-settings.js → workspace-settings.js} +13 -13
- package/dist/core/workspace-settings.js.map +1 -0
- package/dist/digest/Digest.d.ts +3 -3
- package/dist/digest/Digest.d.ts.map +1 -1
- package/dist/digest/Digest.js +79 -73
- package/dist/digest/Digest.js.map +1 -1
- package/dist/digest/digest.sql +18 -18
- package/dist/schemes/Exec.d.ts +9 -2
- package/dist/schemes/Exec.d.ts.map +1 -1
- package/dist/schemes/Exec.js +121 -68
- package/dist/schemes/Exec.js.map +1 -1
- package/dist/schemes/ExecOutputScheme.js +3 -3
- package/dist/schemes/ExecOutputScheme.js.map +1 -1
- package/dist/schemes/File.js +23 -23
- package/dist/schemes/File.js.map +1 -1
- package/dist/schemes/Known.js +5 -5
- package/dist/schemes/Known.js.map +1 -1
- package/dist/schemes/Log.d.ts.map +1 -1
- package/dist/schemes/Log.js +63 -14
- package/dist/schemes/Log.js.map +1 -1
- package/dist/schemes/Log.sql +49 -8
- package/dist/schemes/Plurnk.js +5 -5
- package/dist/schemes/Plurnk.js.map +1 -1
- package/dist/schemes/Skill.js +5 -5
- package/dist/schemes/Skill.js.map +1 -1
- package/dist/schemes/Unknown.js +5 -5
- package/dist/schemes/Unknown.js.map +1 -1
- package/dist/schemes/{Run.d.ts → Worker.d.ts} +2 -2
- package/dist/schemes/Worker.d.ts.map +1 -0
- package/dist/schemes/{Run.js → Worker.js} +67 -67
- package/dist/schemes/Worker.js.map +1 -0
- package/dist/schemes/_entry-crud.js +11 -11
- package/dist/schemes/_entry-crud.js.map +1 -1
- package/dist/schemes/_entry-crud.sql +29 -29
- package/dist/schemes/_entry-find.d.ts +2 -1
- package/dist/schemes/_entry-find.d.ts.map +1 -1
- package/dist/schemes/_entry-find.js +31 -19
- package/dist/schemes/_entry-find.js.map +1 -1
- package/dist/schemes/_entry-find.sql +9 -9
- package/dist/schemes/_entry-graph.d.ts +2 -2
- package/dist/schemes/_entry-graph.d.ts.map +1 -1
- package/dist/schemes/_entry-graph.js +18 -18
- package/dist/schemes/_entry-graph.js.map +1 -1
- package/dist/schemes/_entry-graph.sql +8 -8
- package/dist/schemes/_entry-manifest.d.ts +1 -1
- package/dist/schemes/_entry-manifest.d.ts.map +1 -1
- package/dist/schemes/_entry-manifest.js +74 -50
- package/dist/schemes/_entry-manifest.js.map +1 -1
- package/dist/schemes/_entry-ops.d.ts +4 -4
- package/dist/schemes/_entry-ops.d.ts.map +1 -1
- package/dist/schemes/_entry-ops.js +25 -25
- package/dist/schemes/_entry-ops.js.map +1 -1
- package/dist/schemes/_entry-ops.sql +9 -9
- package/dist/schemes/_entry-semantic.d.ts +2 -1
- package/dist/schemes/_entry-semantic.d.ts.map +1 -1
- package/dist/schemes/_entry-semantic.js +23 -4
- package/dist/schemes/_entry-semantic.js.map +1 -1
- package/dist/schemes/_entry-semantic.sql +18 -4
- package/dist/schemes/_entry-send.d.ts +1 -1
- package/dist/schemes/_entry-send.d.ts.map +1 -1
- package/dist/schemes/_entry-send.js +6 -6
- package/dist/schemes/_entry-send.js.map +1 -1
- package/dist/schemes/exec-abort.js +1 -1
- package/dist/schemes/exec-abort.js.map +1 -1
- package/dist/server/Daemon.d.ts +50 -48
- package/dist/server/Daemon.d.ts.map +1 -1
- package/dist/server/Daemon.js +307 -297
- package/dist/server/Daemon.js.map +1 -1
- package/dist/server/client-input.js +20 -20
- package/dist/server/client-input.js.map +1 -1
- package/dist/server/dispatch-as-plurnk.d.ts +1 -1
- package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
- package/dist/server/dispatch-as-plurnk.js +7 -7
- package/dist/server/dispatch-as-plurnk.js.map +1 -1
- package/dist/server/drain.sql +27 -27
- package/dist/server/envelope.d.ts +20 -20
- package/dist/server/envelope.d.ts.map +1 -1
- package/dist/server/envelope.js +86 -86
- package/dist/server/envelope.js.map +1 -1
- package/dist/server/envelope.sql +39 -39
- package/dist/server/logEntry.d.ts +1 -1
- package/dist/server/logEntry.d.ts.map +1 -1
- package/dist/server/logEntry.js +1 -1
- package/dist/server/logEntry.js.map +1 -1
- package/dist/server/loop-model.d.ts +3 -0
- package/dist/server/loop-model.d.ts.map +1 -0
- package/dist/server/loop-model.js +26 -0
- package/dist/server/loop-model.js.map +1 -0
- package/dist/server/loopDocs.d.ts +1 -1
- package/dist/server/loopDocs.d.ts.map +1 -1
- package/dist/server/loopDocs.js +6 -6
- package/dist/server/loopDocs.js.map +1 -1
- package/dist/server/seam-entry-read.sql +2 -2
- package/dist/server/seam-log-read.sql +3 -3
- package/dist/server/seam-loop.sql +3 -3
- package/dist/server/seam-proposal-list.sql +4 -4
- package/dist/server/yolo.js +2 -2
- package/dist/server/yolo.js.map +1 -1
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +21 -6
- package/dist/service.js.map +1 -1
- package/migrations/0000-00-00.01_schema.sql +84 -85
- package/package.json +17 -14
- package/dist/core/TokenGauge.d.ts +0 -16
- package/dist/core/TokenGauge.d.ts.map +0 -1
- package/dist/core/TokenGauge.js +0 -58
- package/dist/core/TokenGauge.js.map +0 -1
- package/dist/core/run-cap.d.ts +0 -8
- package/dist/core/run-cap.d.ts.map +0 -1
- package/dist/core/run-cap.js +0 -20
- package/dist/core/run-cap.js.map +0 -1
- package/dist/core/search-prefetch.d.ts +0 -17
- package/dist/core/search-prefetch.d.ts.map +0 -1
- package/dist/core/search-prefetch.js +0 -164
- package/dist/core/search-prefetch.js.map +0 -1
- package/dist/core/session-settings.d.ts.map +0 -1
- package/dist/core/session-settings.js.map +0 -1
- package/dist/schemes/Run.d.ts.map +0 -1
- package/dist/schemes/Run.js.map +0 -1
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
// rank over embedding vectors — the precise half — lands when the embedding
|
|
4
4
|
// channel does (a daughter projection, per the §mimetype boundary). Called from the
|
|
5
5
|
// gated manifest-add hook, so only when body content actually changed.
|
|
6
|
+
import { contentHash } from "../core/content-hash.js";
|
|
6
7
|
import EntryChunk from "./_entry-chunk.js";
|
|
7
8
|
export default class EntrySemantic {
|
|
8
9
|
// Replace an entry's FTS row with its current body content (rowid = entryId).
|
|
@@ -44,6 +45,24 @@ export default class EntrySemantic {
|
|
|
44
45
|
});
|
|
45
46
|
}
|
|
46
47
|
}
|
|
48
|
+
// §semantic-embed-dedup (#416) — before the expensive embed, reuse an existing embedding for
|
|
49
|
+
// IDENTICAL body content (any other entry, same active model): the metaproject's 15×
|
|
50
|
+
// tokenizer.json embeds ONCE, the rest copy. Returns the model on a hit, undefined on a miss
|
|
51
|
+
// (caller embeds). content_hash is the stamped body identity (content-hash.ts).
|
|
52
|
+
static async tryReuseEmbeddings(db, entryId, bodyContent, mimetypes) {
|
|
53
|
+
const info = await EntrySemantic.#embedderInfo(mimetypes);
|
|
54
|
+
if (info === null || info.model === undefined)
|
|
55
|
+
return undefined;
|
|
56
|
+
const hash = contentHash(bodyContent);
|
|
57
|
+
const rows = await db.embedding_by_content_hash.all({ content_hash: hash, embedding_model: info.model, entry_id: entryId });
|
|
58
|
+
if (rows.length === 0)
|
|
59
|
+
return undefined;
|
|
60
|
+
await db.embedding_delete.run({ entry_id: entryId });
|
|
61
|
+
for (const c of rows) {
|
|
62
|
+
await db.embedding_set.run({ entry_id: entryId, chunk_seq: c.chunk_seq, line_start: c.line_start, line_end: c.line_end, vector: c.vector, embedding_model: info.model });
|
|
63
|
+
}
|
|
64
|
+
return info.model;
|
|
65
|
+
}
|
|
47
66
|
// Project Semantics — derive an entry's chunk embeddings. Probes the embedder
|
|
48
67
|
// capability (the daughter's window + tokenizer, surfaced via the Mimetypes
|
|
49
68
|
// handle): ABSENT → one whole-entry chunk from the fallback vector (today's
|
|
@@ -154,7 +173,7 @@ export default class EntrySemantic {
|
|
|
154
173
|
// its terms, cosine-rank the narrowed set, top-K. Each result carries its best-matching
|
|
155
174
|
// chunk's line span (the Finding extent). No embedder → the top-K <K> form degrades to an
|
|
156
175
|
// FTS-only keyword rank (whole-entry findings); the <0.x> threshold form stays 501.
|
|
157
|
-
static async rankSemantic(db,
|
|
176
|
+
static async rankSemantic(db, workspaceId, scheme, mimetypes, queryText, marker) {
|
|
158
177
|
const ftsQuery = EntrySemantic.ftsQueryFor(queryText);
|
|
159
178
|
if (ftsQuery.length === 0)
|
|
160
179
|
return { status: 200, results: [] };
|
|
@@ -180,13 +199,13 @@ export default class EntrySemantic {
|
|
|
180
199
|
if (!Number.isInteger(first))
|
|
181
200
|
return { status: 501, results: [] };
|
|
182
201
|
const rows = await db.semantic_rank_fts.all({
|
|
183
|
-
fts_query: ftsQuery,
|
|
202
|
+
fts_query: ftsQuery, workspace_id: workspaceId, scheme, k: first,
|
|
184
203
|
});
|
|
185
204
|
return { status: 200, results: rows.map(toResult) };
|
|
186
205
|
}
|
|
187
206
|
if (Number.isInteger(first)) {
|
|
188
207
|
const rows = await db.semantic_rank.all({
|
|
189
|
-
fts_query: ftsQuery,
|
|
208
|
+
fts_query: ftsQuery, workspace_id: workspaceId, scheme, query_vector: r.embedding, embedding_model: r.embeddingModel, k: first,
|
|
190
209
|
});
|
|
191
210
|
return { status: 200, results: rows.map(toResult) };
|
|
192
211
|
}
|
|
@@ -194,7 +213,7 @@ export default class EntrySemantic {
|
|
|
194
213
|
return { status: 416, results: [] };
|
|
195
214
|
const cap = (last !== null && Number.isInteger(last) && last > 0) ? last : -1;
|
|
196
215
|
const rows = await db.semantic_rank_threshold.all({
|
|
197
|
-
fts_query: ftsQuery,
|
|
216
|
+
fts_query: ftsQuery, workspace_id: workspaceId, scheme, query_vector: r.embedding, embedding_model: r.embeddingModel, threshold: first, cap,
|
|
198
217
|
});
|
|
199
218
|
return { status: 200, results: rows.map(toResult) };
|
|
200
219
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_entry-semantic.js","sourceRoot":"","sources":["../../src/schemes/_entry-semantic.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,gFAAgF;AAChF,4EAA4E;AAC5E,oFAAoF;AACpF,uEAAuE;
|
|
1
|
+
{"version":3,"file":"_entry-semantic.js","sourceRoot":"","sources":["../../src/schemes/_entry-semantic.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,7 +35,7 @@ WITH ranked AS (
|
|
|
35
35
|
JOIN entries e ON e.id = f.rowid
|
|
36
36
|
JOIN entry_embeddings em ON em.entry_id = e.id AND em.embedding_model = $embedding_model
|
|
37
37
|
WHERE f.content MATCH $fts_query
|
|
38
|
-
AND e.
|
|
38
|
+
AND e.workspace_id = $workspace_id
|
|
39
39
|
AND e.scheme IS $scheme
|
|
40
40
|
)
|
|
41
41
|
SELECT pathname, line_start, line_end FROM ranked
|
|
@@ -55,7 +55,7 @@ WITH ranked AS (
|
|
|
55
55
|
JOIN entries e ON e.id = f.rowid
|
|
56
56
|
JOIN entry_embeddings em ON em.entry_id = e.id AND em.embedding_model = $embedding_model
|
|
57
57
|
WHERE f.content MATCH $fts_query
|
|
58
|
-
AND e.
|
|
58
|
+
AND e.workspace_id = $workspace_id
|
|
59
59
|
AND e.scheme IS $scheme
|
|
60
60
|
)
|
|
61
61
|
SELECT pathname, line_start, line_end FROM ranked
|
|
@@ -74,7 +74,7 @@ SELECT e.pathname,
|
|
|
74
74
|
FROM entry_fts f
|
|
75
75
|
JOIN entries e ON e.id = f.rowid
|
|
76
76
|
WHERE f.content MATCH $fts_query
|
|
77
|
-
AND e.
|
|
77
|
+
AND e.workspace_id = $workspace_id
|
|
78
78
|
AND e.scheme IS $scheme
|
|
79
79
|
ORDER BY rank
|
|
80
80
|
LIMIT $k;
|
|
@@ -89,7 +89,21 @@ FROM entry_fts f
|
|
|
89
89
|
JOIN entries e ON e.id = f.rowid
|
|
90
90
|
JOIN entry_channels ec ON ec.entry_id = e.id AND ec.name = 'body'
|
|
91
91
|
WHERE f.content MATCH $fts_query
|
|
92
|
-
AND e.
|
|
92
|
+
AND e.workspace_id = $workspace_id
|
|
93
93
|
AND e.scheme IS $scheme
|
|
94
94
|
ORDER BY bm25(entry_fts)
|
|
95
95
|
LIMIT $cap;
|
|
96
|
+
|
|
97
|
+
-- PREP: embedding_by_content_hash
|
|
98
|
+
-- §semantic-embed-dedup (#416) — the chunk rows of ONE OTHER entry whose body content_hash
|
|
99
|
+
-- matches, already embedded under the active model. Identical content → identical embeddings, so
|
|
100
|
+
-- a duplicate (the metaproject's 15× tokenizer.json) copies instead of re-embedding. Picks the
|
|
101
|
+
-- newest such source entry; returns its chunks in seq order.
|
|
102
|
+
SELECT em.chunk_seq, em.line_start, em.line_end, em.vector
|
|
103
|
+
FROM entry_embeddings em
|
|
104
|
+
WHERE em.embedding_model = $embedding_model AND em.entry_id = (
|
|
105
|
+
SELECT ec.entry_id FROM entry_channels ec
|
|
106
|
+
JOIN entry_embeddings e2 ON e2.entry_id = ec.entry_id AND e2.embedding_model = $embedding_model
|
|
107
|
+
WHERE ec.name = 'body' AND ec.content_hash = $content_hash AND ec.entry_id != $entry_id
|
|
108
|
+
ORDER BY ec.entry_id DESC LIMIT 1)
|
|
109
|
+
ORDER BY em.chunk_seq ASC;
|
|
@@ -6,6 +6,6 @@ export interface SendResult {
|
|
|
6
6
|
}
|
|
7
7
|
export default class EntrySend {
|
|
8
8
|
#private;
|
|
9
|
-
static
|
|
9
|
+
static sendToWorkspaceEntry(statement: SendStatement, ctx: PlurnkSchemeContext, scheme: string): Promise<SendResult>;
|
|
10
10
|
}
|
|
11
11
|
//# sourceMappingURL=_entry-send.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_entry-send.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-send.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAG5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAInE,MAAM,WAAW,UAAU;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,MAAM,CAAC,OAAO,OAAO,SAAS;;IAc1B,OAAa,
|
|
1
|
+
{"version":3,"file":"_entry-send.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-send.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAG5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAInE,MAAM,WAAW,UAAU;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,MAAM,CAAC,OAAO,OAAO,SAAS;;IAc1B,OAAa,oBAAoB,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAuCzH;CACJ"}
|
|
@@ -19,7 +19,7 @@ export default class EntrySend {
|
|
|
19
19
|
return null;
|
|
20
20
|
return path.fragment;
|
|
21
21
|
}
|
|
22
|
-
static async
|
|
22
|
+
static async sendToWorkspaceEntry(statement, ctx, scheme) {
|
|
23
23
|
if (statement.target === null)
|
|
24
24
|
return { status: 400, error: "directed SEND requires a path" };
|
|
25
25
|
const status = statement.signal;
|
|
@@ -33,8 +33,8 @@ export default class EntrySend {
|
|
|
33
33
|
return { status: 400 };
|
|
34
34
|
const fragment = EntrySend.#fragmentOf(statement);
|
|
35
35
|
if (fragment !== null) {
|
|
36
|
-
const { db,
|
|
37
|
-
const entry = await db.
|
|
36
|
+
const { db, workspaceId } = ctx;
|
|
37
|
+
const entry = await db.crud_find_workspace_entry.get({ workspace_id: workspaceId, scheme, pathname });
|
|
38
38
|
if (entry === undefined)
|
|
39
39
|
return { status: 404 };
|
|
40
40
|
const deleted = await db.crud_delete_channel.get({ entry_id: entry.id, name: fragment });
|
|
@@ -51,11 +51,11 @@ export default class EntrySend {
|
|
|
51
51
|
const pathname = EntrySend.#pathnameOf(statement);
|
|
52
52
|
if (pathname === null)
|
|
53
53
|
return { status: 400 };
|
|
54
|
-
const { db,
|
|
55
|
-
const entry = await db.
|
|
54
|
+
const { db, workspaceId, workerId } = ctx;
|
|
55
|
+
const entry = await db.crud_find_workspace_entry.get({ workspace_id: workspaceId, scheme, pathname });
|
|
56
56
|
if (entry === undefined)
|
|
57
57
|
return { status: 404, error: "no entry at path" };
|
|
58
|
-
const subscription = await ChannelWrite.findActiveSubscription(db, {
|
|
58
|
+
const subscription = await ChannelWrite.findActiveSubscription(db, { workerId, entryId: entry.id });
|
|
59
59
|
if (subscription === null)
|
|
60
60
|
return { status: 404, error: "no active subscription to cancel" };
|
|
61
61
|
return { status: 501, error: `entry scheme does not own subscription cancellation; subscription owned by scheme '${subscription.scheme}'` };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_entry-send.js","sourceRoot":"","sources":["../../src/schemes/_entry-send.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,mFAAmF;AACnF,+DAA+D;AAI/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,SAAS,MAAM,kBAAkB,CAAC;AACzC,OAAO,YAAY,MAAM,yBAAyB,CAAC;AAOnD,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,MAAM,CAAC,WAAW,CAAC,SAAwB;QACvC,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC;QAC9B,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC/B,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,kDAAkD;QAC9F,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc;IAC3F,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,SAAwB;QACvC,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC;QAC9B,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK;YAAE,OAAO,IAAI,CAAC;QACtD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"_entry-send.js","sourceRoot":"","sources":["../../src/schemes/_entry-send.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
export default class ExecAbort {
|
|
7
7
|
// The grace a teardown straggler gets before the hard SIGKILL. The executor refuses to bake a
|
|
8
8
|
// number (it'd be a magic literal there); the consumer owns it — env-tunable, 2s default. A
|
|
9
|
-
// getter, not a static field, so a test can set the env at runtime. §
|
|
9
|
+
// getter, not a static field, so a test can set the env at runtime. §worker-lifecycle-total-reap
|
|
10
10
|
static get graceMs() {
|
|
11
11
|
return Number(process.env.PLURNK_SERVICE_EXEC_KILL_GRACE_MS ?? "2000");
|
|
12
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exec-abort.js","sourceRoot":"","sources":["../../src/schemes/exec-abort.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,8FAA8F;AAC9F,yGAAyG;AACzG,+FAA+F;AAC/F,uFAAuF;AACvF,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,8FAA8F;IAC9F,4FAA4F;IAC5F,
|
|
1
|
+
{"version":3,"file":"exec-abort.js","sourceRoot":"","sources":["../../src/schemes/exec-abort.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,8FAA8F;AAC9F,yGAAyG;AACzG,+FAA+F;AAC/F,uFAAuF;AACvF,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,8FAA8F;IAC9F,4FAA4F;IAC5F,iGAAiG;IACjG,MAAM,KAAK,OAAO;QACd,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iCAAiC,IAAI,MAAM,CAAC,CAAC;IAC3E,CAAC;IAED,6FAA6F;IAC7F,MAAM,CAAC,cAAc;QACjB,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC;IAC9D,CAAC;IAED,mGAAmG;IACnG,mGAAmG;IACnG,MAAM,CAAC,UAAU,CAAC,MAAqB;QACnC,OAAO,EAAE,MAAM,EAAE,CAAC;IACtB,CAAC;IAED,8FAA8F;IAC9F,6FAA6F;IAC7F,mGAAmG;IACnG,MAAM,CAAC,aAAa;QAChB,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC;IAC9D,CAAC;CACJ"}
|
package/dist/server/Daemon.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import SchemeRegistry from "../core/SchemeRegistry.ts";
|
|
|
5
5
|
import { Mimetypes } from "@plurnk/plurnk-mimetypes";
|
|
6
6
|
import type { Provider } from "@plurnk/plurnk-providers";
|
|
7
7
|
export type NotifyTarget = "all" | {
|
|
8
|
-
|
|
8
|
+
workspaceId: number;
|
|
9
9
|
};
|
|
10
10
|
export interface DrainLoopResult {
|
|
11
11
|
loopId: number;
|
|
@@ -27,7 +27,7 @@ import type { RuntimeDecl, RuntimeAvailability } from "@plurnk/plurnk-execs";
|
|
|
27
27
|
import type { LoopFlags } from "../core/types.ts";
|
|
28
28
|
export interface PendingProposal {
|
|
29
29
|
logEntryId: number;
|
|
30
|
-
|
|
30
|
+
workerId: number;
|
|
31
31
|
loopId: number;
|
|
32
32
|
turnId: number;
|
|
33
33
|
op: string;
|
|
@@ -49,7 +49,7 @@ export interface ChannelShape {
|
|
|
49
49
|
export interface EntryShape {
|
|
50
50
|
id: number;
|
|
51
51
|
scope: string;
|
|
52
|
-
|
|
52
|
+
workspaceId: number;
|
|
53
53
|
scheme: string;
|
|
54
54
|
pathname: string;
|
|
55
55
|
channels: Record<string, ChannelShape>;
|
|
@@ -64,41 +64,43 @@ export default class Daemon {
|
|
|
64
64
|
provider?: Provider | null;
|
|
65
65
|
nodeModulesPath?: string;
|
|
66
66
|
});
|
|
67
|
-
subscribeToEvents(handler: (
|
|
68
|
-
pendingProposals(
|
|
67
|
+
subscribeToEvents(handler: (workspaceId: number | null, method: string, params: unknown) => void): () => void;
|
|
68
|
+
pendingProposals(workspaceId: number): Promise<PendingProposal[]>;
|
|
69
69
|
resolveProposal(logEntryId: number, resolution: ProposalResolution): void;
|
|
70
70
|
runLoop(args: {
|
|
71
|
-
|
|
72
|
-
|
|
71
|
+
workspaceId: number;
|
|
72
|
+
workerId: number;
|
|
73
73
|
prompt: string;
|
|
74
74
|
maxTurns?: number;
|
|
75
75
|
flags?: Partial<LoopFlags>;
|
|
76
76
|
openPaths?: string[];
|
|
77
|
+
alias?: string;
|
|
78
|
+
model?: string;
|
|
77
79
|
}): Promise<{
|
|
78
80
|
action: "injected_next_turn" | "enqueued_new_loop";
|
|
79
81
|
loopId: number;
|
|
80
82
|
turnSeq?: number;
|
|
81
83
|
}>;
|
|
82
|
-
|
|
84
|
+
ensureModelWorker(workspaceId: number): Promise<number>;
|
|
83
85
|
dispatchAsClient(args: {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
+
workspaceId: number;
|
|
87
|
+
workerId: number;
|
|
86
88
|
statement: PlurnkStatement;
|
|
87
89
|
}): Promise<{
|
|
88
90
|
status: number;
|
|
89
91
|
[key: string]: unknown;
|
|
90
92
|
}>;
|
|
91
93
|
look(args: {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
+
workspaceId: number;
|
|
95
|
+
workerId: number;
|
|
94
96
|
statement: PlurnkStatement;
|
|
95
97
|
}): Promise<{
|
|
96
98
|
status: number;
|
|
97
99
|
[key: string]: unknown;
|
|
98
100
|
}>;
|
|
99
101
|
readLog(args: {
|
|
100
|
-
|
|
101
|
-
|
|
102
|
+
workspaceId: number;
|
|
103
|
+
workerId: number;
|
|
102
104
|
loopId?: number;
|
|
103
105
|
turnId?: number;
|
|
104
106
|
sinceId?: number;
|
|
@@ -113,24 +115,24 @@ export default class Daemon {
|
|
|
113
115
|
provider: string;
|
|
114
116
|
model: string;
|
|
115
117
|
active: boolean;
|
|
116
|
-
|
|
118
|
+
promptBudget: number | null;
|
|
117
119
|
}>;
|
|
118
120
|
};
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
listPrompts(
|
|
122
|
-
listMembers(
|
|
121
|
+
listWorkspaces(): Promise<import("./envelope.ts").WorkspaceRow[]>;
|
|
122
|
+
listWorkers(workspaceId: number): Promise<import("./envelope.ts").WorkerRow[]>;
|
|
123
|
+
listPrompts(workspaceId: number, limit?: number): Promise<string[]>;
|
|
124
|
+
listMembers(workspaceId: number): Promise<{
|
|
123
125
|
members: Array<{
|
|
124
126
|
path: string;
|
|
125
127
|
effect: "member" | "view";
|
|
126
128
|
}>;
|
|
127
129
|
hidden: string[];
|
|
128
130
|
}>;
|
|
129
|
-
listConstraints(
|
|
131
|
+
listConstraints(workspaceId: number): Promise<{
|
|
130
132
|
effect: string;
|
|
131
133
|
glob: string;
|
|
132
134
|
}[]>;
|
|
133
|
-
|
|
135
|
+
createWorkspace(args: {
|
|
134
136
|
name?: string;
|
|
135
137
|
projectRoot?: string | null;
|
|
136
138
|
settings?: string | object;
|
|
@@ -139,25 +141,25 @@ export default class Daemon {
|
|
|
139
141
|
glob: string;
|
|
140
142
|
}>;
|
|
141
143
|
}): Promise<ClientEnvelope>;
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
144
|
+
attachWorkspace(args: {
|
|
145
|
+
workspaceId: number;
|
|
146
|
+
workerId?: number;
|
|
147
|
+
workerName?: string;
|
|
146
148
|
}): Promise<ClientEnvelope>;
|
|
147
|
-
|
|
149
|
+
renameWorkspace(workspaceId: number, name: string): Promise<{
|
|
148
150
|
id: number;
|
|
149
151
|
name: string;
|
|
150
152
|
}>;
|
|
151
|
-
constrain(
|
|
153
|
+
constrain(workspaceId: number, effect: string, glob: string): Promise<{
|
|
152
154
|
effect: string;
|
|
153
155
|
glob: string;
|
|
154
156
|
}>;
|
|
155
|
-
unconstrain(
|
|
157
|
+
unconstrain(workspaceId: number, effect: string, glob: string): Promise<{
|
|
156
158
|
effect: string;
|
|
157
159
|
glob: string;
|
|
158
160
|
}>;
|
|
159
161
|
readEntry(args: {
|
|
160
|
-
|
|
162
|
+
workspaceId: number;
|
|
161
163
|
target: string;
|
|
162
164
|
channel?: string;
|
|
163
165
|
offset?: number;
|
|
@@ -165,21 +167,21 @@ export default class Daemon {
|
|
|
165
167
|
status: number;
|
|
166
168
|
entry: EntryShape | null;
|
|
167
169
|
}>;
|
|
168
|
-
|
|
169
|
-
|
|
170
|
+
createConversationWorker(args: {
|
|
171
|
+
workspaceId: number;
|
|
170
172
|
name?: string;
|
|
171
173
|
}): Promise<{
|
|
172
|
-
|
|
173
|
-
|
|
174
|
+
workerId: number;
|
|
175
|
+
workerName: string;
|
|
174
176
|
}>;
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
177
|
+
forkWorker(args: {
|
|
178
|
+
workspaceId: number;
|
|
179
|
+
workerId: number;
|
|
178
180
|
name?: string;
|
|
179
181
|
}): Promise<{
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
182
|
+
workerId: number;
|
|
183
|
+
workerName: string | null;
|
|
184
|
+
parentWorkerId: number;
|
|
183
185
|
}>;
|
|
184
186
|
hotloadRuntime(reg: {
|
|
185
187
|
decl: RuntimeDecl;
|
|
@@ -194,30 +196,30 @@ export default class Daemon {
|
|
|
194
196
|
start(): Promise<void>;
|
|
195
197
|
stop(): Promise<void>;
|
|
196
198
|
/**
|
|
197
|
-
* Emit a stream/event notification scoped to the
|
|
199
|
+
* Emit a stream/event notification scoped to the workspace containing the
|
|
198
200
|
* entry. ChannelWrite helpers (src/core/ChannelWrite.ts) invoke this when
|
|
199
201
|
* they update channel content or state. SPEC §notifications.
|
|
200
202
|
*/
|
|
201
|
-
notifyStreamEvent(
|
|
203
|
+
notifyStreamEvent(workspaceId: number, event: {
|
|
202
204
|
entryId: number;
|
|
203
205
|
channel: string;
|
|
204
206
|
state: string;
|
|
205
207
|
contentLength: number;
|
|
206
208
|
}): void;
|
|
207
209
|
/**
|
|
208
|
-
* Emit a telemetry/event notification scoped to the
|
|
210
|
+
* Emit a telemetry/event notification scoped to the workspace containing
|
|
209
211
|
* the loop. TelemetryChannel.push invokes this for every TelemetryEvent
|
|
210
212
|
* (parse_error, strike, cycle, sudden_death, no_ops, max_commands_exceeded,
|
|
211
213
|
* action_failure) the moment it lands in the loop's telemetry buffer.
|
|
212
214
|
* SPEC §telemetry.
|
|
213
215
|
*/
|
|
214
|
-
notifyTelemetryEvent(
|
|
216
|
+
notifyTelemetryEvent(workspaceId: number, payload: {
|
|
215
217
|
loopId: number;
|
|
216
218
|
event: object;
|
|
217
219
|
}): void;
|
|
218
220
|
inject(args: {
|
|
219
|
-
|
|
220
|
-
|
|
221
|
+
workspaceId: number;
|
|
222
|
+
workerId: number;
|
|
221
223
|
prompt: string;
|
|
222
224
|
provider: Provider;
|
|
223
225
|
systemPrompt: string;
|
|
@@ -232,13 +234,13 @@ export default class Daemon {
|
|
|
232
234
|
drainPromise?: Promise<unknown>;
|
|
233
235
|
}>;
|
|
234
236
|
/**
|
|
235
|
-
* Cancel the
|
|
237
|
+
* Cancel the worker's in-flight work (loop.cancel). One abort, one scope: the
|
|
236
238
|
* run signal stops the running loop's turn generation AND tears down every
|
|
237
239
|
* stream linked to it — a background exec that outlived its loop, or even a
|
|
238
240
|
* spawn that registers after this abort (it self-aborts against the aborted
|
|
239
241
|
* signal). Returns cancelled iff there was work. Queued loops stay enqueued.
|
|
240
242
|
*/
|
|
241
|
-
cancelDrain(
|
|
243
|
+
cancelDrain(workerId: number, reason?: string): boolean;
|
|
242
244
|
}
|
|
243
|
-
export type CoreSeam = Pick<Daemon, "subscribeToEvents" | "pendingProposals" | "resolveProposal" | "runLoop" | "cancelDrain" | "dispatchAsClient" | "
|
|
245
|
+
export type CoreSeam = Pick<Daemon, "subscribeToEvents" | "pendingProposals" | "resolveProposal" | "runLoop" | "cancelDrain" | "dispatchAsClient" | "ensureModelWorker" | "readLog" | "readEntry" | "look" | "listProviders" | "listWorkspaces" | "listWorkers" | "listPrompts" | "listMembers" | "listConstraints" | "createWorkspace" | "attachWorkspace" | "createConversationWorker" | "renameWorkspace" | "constrain" | "unconstrain" | "forkWorker" | "hotloadRuntime">;
|
|
244
246
|
//# sourceMappingURL=Daemon.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Daemon.d.ts","sourceRoot":"","sources":["../../src/server/Daemon.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,EAAE,EAAc,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAGvE,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,cAAc,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGzD,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG;IAAE,
|
|
1
|
+
{"version":3,"file":"Daemon.d.ts","sourceRoot":"","sources":["../../src/server/Daemon.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,EAAE,EAAc,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAGvE,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,cAAc,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGzD,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D,MAAM,WAAW,eAAe;IAAG,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE;AAChN,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAOpD,OAAO,KAAK,EAAE,QAAQ,EAAiB,MAAM,6BAA6B,CAAC;AAC3E,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAO7E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAKlD,MAAM,WAAW,eAAe;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAGD,MAAM,WAAW,YAAY;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;CAAE;AAC1H,MAAM,WAAW,UAAU;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACvC,IAAI,EAAE,MAAM,EAAE,CAAC;CAClB;AAGD,MAAM,CAAC,OAAO,OAAO,MAAM;;IA2CvB,YAAY,EACR,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,GACpD,EAAE;QACC,EAAE,EAAE,EAAE,CAAC;QACP,OAAO,CAAC,EAAE,cAAc,CAAC;QACzB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;QAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;KAC5B,EAmEA;IAQD,iBAAiB,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI,CAG5G;IAMK,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAEtE;IAED,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,IAAI,CAExE;IAMK,OAAO,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,oBAAoB,GAAG,mBAAmB,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAyBrR;IAaD,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAEtD;IAOK,gBAAgB,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,eAAe,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC,CAcvJ;IAOK,IAAI,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,eAAe,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC,CAI3I;IAMK,OAAO,CAAC,IAAI,EAAE;QAChB,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QACtC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QACnE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;KACzD,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAc1B;IAID,aAAa,IAAI;QAAE,OAAO,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,OAAO,CAAC;YAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,CAAC,CAAA;KAAE,CAapI;IAED,cAAc,oDAAgD;IAC9D,WAAW,CAAC,WAAW,EAAE,MAAM,gDAAqE;IACpG,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,GAAE,MAAY,qBAA4E;IAChI,WAAW,CAAC,WAAW,EAAE,MAAM;;;;;;OAAsF;IACrH,eAAe,CAAC,WAAW,EAAE,MAAM;gBAC+C,MAAM;cAAQ,MAAM;SACrG;IAOK,eAAe,CAAC,IAAI,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAetL;IAEK,eAAe,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAKpH;IAEK,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAK9F;IAEK,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAgB5G;IAEK,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAK9G;IAKK,SAAS,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAA;KAAE,CAAC,CAmBvJ;IASK,wBAAwB,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAY9H;IAGK,UAAU,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CAcjK;IAQD,cAAc,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAC;QAAC,YAAY,EAAE,mBAAmB,CAAA;KAAE,GAAG,IAAI,CAUtG;IACD,IAAI,MAAM,IAAI,MAAM,CAAyB;IAC7C,IAAI,QAAQ,IAAI,QAAQ,GAAG,IAAI,CAA2B;IAC1D,IAAI,OAAO,IAAI,cAAc,CAA0B;IACvD,IAAI,SAAS,IAAI,SAAS,CAA4B;IAOtD,cAAc,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,GAAG,IAAI,CAEtD;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAuB3B;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA8B1B;IAWD;;;;OAIG;IACH,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAE9H;IAED;;;;;;OAMG;IACH,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAE1F;IA+BK,MAAM,CAAC,IAAI,EAAE;QACf,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QACtD,QAAQ,EAAE,QAAQ,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QACzC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;KACvE,GAAG,OAAO,CAAC;QACR,MAAM,EAAE,oBAAoB,GAAG,mBAAmB,CAAC;QACnD,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;QAC5C,YAAY,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;KACnC,CAAC,CAmED;IA+RD;;;;;;OAMG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,MAAyB,GAAG,OAAO,CA2CxE;CAoMJ;AAMD,MAAM,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAC5B,mBAAmB,GACnB,kBAAkB,GAAG,iBAAiB,GACtC,SAAS,GAAG,aAAa,GAAG,kBAAkB,GAAG,mBAAmB,GACpE,SAAS,GAAG,WAAW,GAAG,MAAM,GAChC,eAAe,GAAG,gBAAgB,GAAG,aAAa,GAAG,aAAa,GAAG,aAAa,GAAG,iBAAiB,GACtG,iBAAiB,GAAG,iBAAiB,GAAG,0BAA0B,GAAG,iBAAiB,GAAG,WAAW,GAAG,aAAa,GACpH,YAAY,GACZ,gBAAgB,CACrB,CAAC"}
|