instar 1.3.116 → 1.3.118
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/dist/memory/EmbeddingProvider.d.ts +41 -0
- package/dist/memory/EmbeddingProvider.d.ts.map +1 -1
- package/dist/memory/EmbeddingProvider.js +106 -22
- package/dist/memory/EmbeddingProvider.js.map +1 -1
- package/dist/threadline/ThreadlineMCPServer.js +1 -1
- package/dist/threadline/ThreadlineMCPServer.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +2 -2
- package/upgrades/1.3.117.md +52 -0
- package/upgrades/1.3.118.md +51 -0
- package/upgrades/side-effects/onnx-idle-unload.md +36 -0
- package/upgrades/side-effects/threadline-codex-send-timeout.md +111 -0
|
@@ -20,6 +20,23 @@ export interface EmbeddingProviderConfig {
|
|
|
20
20
|
dimensions?: number;
|
|
21
21
|
/** Maximum text length to embed in characters (default: 8192) */
|
|
22
22
|
maxTextLength?: number;
|
|
23
|
+
/**
|
|
24
|
+
* Idle-unload window in ms. After this long with no embed() call, the loaded
|
|
25
|
+
* ONNX pipeline is disposed to free its thread pool, which busy-spins even
|
|
26
|
+
* when idle (measured: ~3.6% of a core on a quiet box, up to ~44% on a
|
|
27
|
+
* contended one — pure waste while an agent isn't doing memory work). The
|
|
28
|
+
* next embed() lazily reloads (~1-3s, verified-identical output). Default
|
|
29
|
+
* 300000 (5 min). Set 0 to disable (keep the model resident forever — the
|
|
30
|
+
* prior behavior).
|
|
31
|
+
*/
|
|
32
|
+
idleUnloadMs?: number;
|
|
33
|
+
/**
|
|
34
|
+
* Test/advanced seam: factory that produces the feature-extraction pipeline.
|
|
35
|
+
* Defaults to the real `@huggingface/transformers` import. Tests inject a mock
|
|
36
|
+
* (a callable with a `dispose()`) to exercise the idle-unload lifecycle
|
|
37
|
+
* without loading the 80MB model.
|
|
38
|
+
*/
|
|
39
|
+
pipelineFactory?: (modelName: string) => Promise<any>;
|
|
23
40
|
}
|
|
24
41
|
export declare class EmbeddingProvider {
|
|
25
42
|
private pipeline;
|
|
@@ -27,7 +44,13 @@ export declare class EmbeddingProvider {
|
|
|
27
44
|
private readonly modelName;
|
|
28
45
|
readonly dimensions: number;
|
|
29
46
|
private readonly maxTextLength;
|
|
47
|
+
private readonly idleUnloadMs;
|
|
48
|
+
private readonly pipelineFactory?;
|
|
30
49
|
private vecExtensionLoaded;
|
|
50
|
+
/** In-flight embed() calls — the idle-unload timer never disposes while > 0. */
|
|
51
|
+
private inFlight;
|
|
52
|
+
/** Rolling idle-unload timer (reset on every embed); unref'd so it can't keep the process alive. */
|
|
53
|
+
private idleTimer;
|
|
31
54
|
constructor(config?: EmbeddingProviderConfig);
|
|
32
55
|
/**
|
|
33
56
|
* Ensure the model is loaded. Safe to call multiple times — only loads once.
|
|
@@ -38,6 +61,24 @@ export declare class EmbeddingProvider {
|
|
|
38
61
|
* Whether the model is loaded and ready for embedding.
|
|
39
62
|
*/
|
|
40
63
|
get isReady(): boolean;
|
|
64
|
+
/**
|
|
65
|
+
* Arm (or re-arm) the rolling idle-unload timer. Called after every embed so
|
|
66
|
+
* the window restarts on each use — an actively-embedding agent keeps the
|
|
67
|
+
* model resident; one that goes quiet for `idleUnloadMs` unloads it.
|
|
68
|
+
*/
|
|
69
|
+
private scheduleIdleUnload;
|
|
70
|
+
/**
|
|
71
|
+
* Dispose the loaded pipeline if it's idle — frees the ONNX thread pool that
|
|
72
|
+
* busy-spins even when no embedding is happening. Guarded on inFlight so a
|
|
73
|
+
* long-running batch that outlasts the window is never disposed mid-flight;
|
|
74
|
+
* its completion re-arms the timer.
|
|
75
|
+
*/
|
|
76
|
+
private maybeUnload;
|
|
77
|
+
/**
|
|
78
|
+
* Explicitly release the model + cancel the idle timer (shutdown / tests).
|
|
79
|
+
* Idempotent.
|
|
80
|
+
*/
|
|
81
|
+
dispose(): Promise<void>;
|
|
41
82
|
/**
|
|
42
83
|
* Generate a normalized embedding for a single text string.
|
|
43
84
|
* Lazy-initializes the model on first call.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmbeddingProvider.d.ts","sourceRoot":"","sources":["../../src/memory/EmbeddingProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,KAAK,QAAQ,GAAG,OAAO,gBAAgB,EAAE,QAAQ,CAAC;AAElD,MAAM,WAAW,uBAAuB;IACtC,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"EmbeddingProvider.d.ts","sourceRoot":"","sources":["../../src/memory/EmbeddingProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,KAAK,QAAQ,GAAG,OAAO,gBAAgB,EAAE,QAAQ,CAAC;AAElD,MAAM,WAAW,uBAAuB;IACtC,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CACvD;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAsC;IACvE,OAAO,CAAC,kBAAkB,CAAyB;IAEnD,gFAAgF;IAChF,OAAO,CAAC,QAAQ,CAAK;IACrB,oGAAoG;IACpG,OAAO,CAAC,SAAS,CAA8C;gBAEnD,MAAM,CAAC,EAAE,uBAAuB;IAU5C;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;YAWnB,SAAS;IAWvB;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAW1B;;;;;OAKG;YACW,WAAW;IAazB;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAiB9B;;;OAGG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAmBhD;;;OAGG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAmC1D;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO;IAgBvC,OAAO,CAAC,gBAAgB,CAA4C;IAEpE;;;;;OAKG;IACG,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAcvC;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,YAAY,GAAG,MAAM;IAIhD;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAO/C;;;OAGG;IACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,MAAM;CAUlE"}
|
|
@@ -18,11 +18,19 @@ export class EmbeddingProvider {
|
|
|
18
18
|
modelName;
|
|
19
19
|
dimensions;
|
|
20
20
|
maxTextLength;
|
|
21
|
+
idleUnloadMs;
|
|
22
|
+
pipelineFactory;
|
|
21
23
|
vecExtensionLoaded = new WeakSet();
|
|
24
|
+
/** In-flight embed() calls — the idle-unload timer never disposes while > 0. */
|
|
25
|
+
inFlight = 0;
|
|
26
|
+
/** Rolling idle-unload timer (reset on every embed); unref'd so it can't keep the process alive. */
|
|
27
|
+
idleTimer = null;
|
|
22
28
|
constructor(config) {
|
|
23
29
|
this.modelName = config?.modelName ?? 'Xenova/all-MiniLM-L6-v2';
|
|
24
30
|
this.dimensions = config?.dimensions ?? 384;
|
|
25
31
|
this.maxTextLength = config?.maxTextLength ?? 8192;
|
|
32
|
+
this.idleUnloadMs = config?.idleUnloadMs ?? 300_000;
|
|
33
|
+
this.pipelineFactory = config?.pipelineFactory;
|
|
26
34
|
}
|
|
27
35
|
// ─── Lifecycle ──────────────────────────────────────────────────
|
|
28
36
|
/**
|
|
@@ -39,6 +47,10 @@ export class EmbeddingProvider {
|
|
|
39
47
|
await this.loading;
|
|
40
48
|
}
|
|
41
49
|
async loadModel() {
|
|
50
|
+
if (this.pipelineFactory) {
|
|
51
|
+
this.pipeline = await this.pipelineFactory(this.modelName);
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
42
54
|
const { pipeline: createPipeline } = await import('@huggingface/transformers');
|
|
43
55
|
this.pipeline = await createPipeline('feature-extraction', this.modelName, {
|
|
44
56
|
dtype: 'fp32',
|
|
@@ -50,20 +62,83 @@ export class EmbeddingProvider {
|
|
|
50
62
|
get isReady() {
|
|
51
63
|
return this.pipeline !== null;
|
|
52
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Arm (or re-arm) the rolling idle-unload timer. Called after every embed so
|
|
67
|
+
* the window restarts on each use — an actively-embedding agent keeps the
|
|
68
|
+
* model resident; one that goes quiet for `idleUnloadMs` unloads it.
|
|
69
|
+
*/
|
|
70
|
+
scheduleIdleUnload() {
|
|
71
|
+
if (this.idleUnloadMs <= 0)
|
|
72
|
+
return; // disabled — keep resident
|
|
73
|
+
if (this.idleTimer)
|
|
74
|
+
clearTimeout(this.idleTimer);
|
|
75
|
+
this.idleTimer = setTimeout(() => {
|
|
76
|
+
this.idleTimer = null;
|
|
77
|
+
void this.maybeUnload();
|
|
78
|
+
}, this.idleUnloadMs);
|
|
79
|
+
// Never let the idle timer hold the process open on its own.
|
|
80
|
+
this.idleTimer.unref?.();
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Dispose the loaded pipeline if it's idle — frees the ONNX thread pool that
|
|
84
|
+
* busy-spins even when no embedding is happening. Guarded on inFlight so a
|
|
85
|
+
* long-running batch that outlasts the window is never disposed mid-flight;
|
|
86
|
+
* its completion re-arms the timer.
|
|
87
|
+
*/
|
|
88
|
+
async maybeUnload() {
|
|
89
|
+
if (this.inFlight > 0 || !this.pipeline)
|
|
90
|
+
return;
|
|
91
|
+
const p = this.pipeline;
|
|
92
|
+
this.pipeline = null;
|
|
93
|
+
this.loading = null;
|
|
94
|
+
try {
|
|
95
|
+
await p?.dispose?.();
|
|
96
|
+
}
|
|
97
|
+
catch {
|
|
98
|
+
// @silent-fallback-ok — dispose is best-effort cleanup; failing to free
|
|
99
|
+
// the session is not fatal (the next embed reloads a fresh pipeline).
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Explicitly release the model + cancel the idle timer (shutdown / tests).
|
|
104
|
+
* Idempotent.
|
|
105
|
+
*/
|
|
106
|
+
async dispose() {
|
|
107
|
+
if (this.idleTimer) {
|
|
108
|
+
clearTimeout(this.idleTimer);
|
|
109
|
+
this.idleTimer = null;
|
|
110
|
+
}
|
|
111
|
+
if (this.pipeline) {
|
|
112
|
+
const p = this.pipeline;
|
|
113
|
+
this.pipeline = null;
|
|
114
|
+
this.loading = null;
|
|
115
|
+
try {
|
|
116
|
+
await p?.dispose?.();
|
|
117
|
+
}
|
|
118
|
+
catch { /* @silent-fallback-ok — best-effort cleanup */ }
|
|
119
|
+
}
|
|
120
|
+
}
|
|
53
121
|
// ─── Embedding ──────────────────────────────────────────────────
|
|
54
122
|
/**
|
|
55
123
|
* Generate a normalized embedding for a single text string.
|
|
56
124
|
* Lazy-initializes the model on first call.
|
|
57
125
|
*/
|
|
58
126
|
async embed(text) {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
127
|
+
this.inFlight++;
|
|
128
|
+
try {
|
|
129
|
+
await this.initialize();
|
|
130
|
+
const truncated = text.slice(0, this.maxTextLength);
|
|
131
|
+
const output = await this.pipeline(truncated, {
|
|
132
|
+
pooling: 'mean',
|
|
133
|
+
normalize: true,
|
|
134
|
+
});
|
|
135
|
+
// output.data is a Float32Array from the ONNX model
|
|
136
|
+
return new Float32Array(output.data);
|
|
137
|
+
}
|
|
138
|
+
finally {
|
|
139
|
+
this.inFlight--;
|
|
140
|
+
this.scheduleIdleUnload();
|
|
141
|
+
}
|
|
67
142
|
}
|
|
68
143
|
/**
|
|
69
144
|
* Generate normalized embeddings for multiple texts.
|
|
@@ -72,24 +147,33 @@ export class EmbeddingProvider {
|
|
|
72
147
|
async embedBatch(texts) {
|
|
73
148
|
if (texts.length === 0)
|
|
74
149
|
return [];
|
|
150
|
+
// Single-text delegates to embed(), which owns its own inFlight + idle-timer
|
|
151
|
+
// bookkeeping — don't double-count here.
|
|
75
152
|
if (texts.length === 1)
|
|
76
153
|
return [await this.embed(texts[0])];
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
const
|
|
84
|
-
for (
|
|
85
|
-
const
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
154
|
+
this.inFlight++;
|
|
155
|
+
try {
|
|
156
|
+
await this.initialize();
|
|
157
|
+
const truncated = texts.map(t => t.slice(0, this.maxTextLength));
|
|
158
|
+
const results = [];
|
|
159
|
+
// Process in batches of 32 to avoid memory pressure
|
|
160
|
+
const batchSize = 32;
|
|
161
|
+
for (let i = 0; i < truncated.length; i += batchSize) {
|
|
162
|
+
const batch = truncated.slice(i, i + batchSize);
|
|
163
|
+
for (const text of batch) {
|
|
164
|
+
const output = await this.pipeline(text, {
|
|
165
|
+
pooling: 'mean',
|
|
166
|
+
normalize: true,
|
|
167
|
+
});
|
|
168
|
+
results.push(new Float32Array(output.data));
|
|
169
|
+
}
|
|
90
170
|
}
|
|
171
|
+
return results;
|
|
172
|
+
}
|
|
173
|
+
finally {
|
|
174
|
+
this.inFlight--;
|
|
175
|
+
this.scheduleIdleUnload();
|
|
91
176
|
}
|
|
92
|
-
return results;
|
|
93
177
|
}
|
|
94
178
|
// ─── sqlite-vec Extension ───────────────────────────────────────
|
|
95
179
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmbeddingProvider.js","sourceRoot":"","sources":["../../src/memory/EmbeddingProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;
|
|
1
|
+
{"version":3,"file":"EmbeddingProvider.js","sourceRoot":"","sources":["../../src/memory/EmbeddingProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -303,7 +303,7 @@ export class ThreadlineMCPServer {
|
|
|
303
303
|
agentId: z.string().describe('Target agent name or fingerprint (e.g. "AI Guy" or "fd9268c2...")'),
|
|
304
304
|
threadId: z.string().optional().describe('Thread ID to resume (omit for new conversation)'),
|
|
305
305
|
message: z.string().describe('Message content'),
|
|
306
|
-
waitForReply: z.boolean().default(
|
|
306
|
+
waitForReply: z.boolean().default(false).describe('Wait for the agent\'s response. Defaults to false so delivery acknowledgement returns promptly; set true only when the caller needs a synchronous reply.'),
|
|
307
307
|
timeoutSeconds: z.number().default(120).describe('Max seconds to wait for reply (only with waitForReply)'),
|
|
308
308
|
originTopicId: z.number().int().positive().optional().describe('Optional: Telegram topic ID this send originated from. When set, ' +
|
|
309
309
|
'the reply (when it arrives) is routed back to that topic session ' +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThreadlineMCPServer.js","sourceRoot":"","sources":["../../src/threadline/ThreadlineMCPServer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ThreadlineMCPServer.js","sourceRoot":"","sources":["../../src/threadline/ThreadlineMCPServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAK7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAgInD,wEAAwE;AAExE;;;;;;GAMG;AACH,SAAS,gBAAgB,CAAC,EAOzB;IACC,IAAI,MAA0B,CAAC;IAC/B,IAAI,EAAE,CAAC,SAAS,EAAE,CAAC;QACjB,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC;YACpC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC9B,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC;IACnB,CAAC;SAAM,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACtB,0EAA0E;QAC1E,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,OAAO;QACL,IAAI,EAAE,EAAE,CAAC,IAAI;QACb,IAAI,EAAE,CAAC;QACP,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,YAAY;QACpB,YAAY,EAAE,EAAE,CAAC,YAAY,IAAI,EAAE;QACnC,iBAAiB,EAAE,IAAI;QACvB,iBAAiB,EAAE,KAAK;QACxB,SAAS,EAAE,MAAM;QACjB,SAAS,EAAG,EAAE,CAAC,SAA8C,IAAI,QAAQ;QACzE,YAAY,EAAE,EAAE,CAAC,QAAQ;KAC1B,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACxD,CAAC;AAED,SAAS,UAAU,CAAC,IAAa;IAC/B,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACvF,CAAC;AAED,SAAS,WAAW,CAAC,OAAe;IAClC,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,OAAO,EAAE,EAAE,CAAC;QAC/D,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAkBD,wEAAwE;AAExE,MAAM,OAAO,mBAAmB;IACb,SAAS,CAAY;IACrB,MAAM,CAA4B;IAClC,IAAI,CAAoB;IACjC,cAAc,CAAiB;IAC/B,OAAO,GAAG,KAAK,CAAC;IAExB,YAAY,MAAiC,EAAE,IAAuB;QACpE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,mDAAmD;QACnD,IAAI,CAAC,cAAc,GAAG;YACpB,aAAa,EAAE,CAAC,MAAM,CAAC,WAAW;YAClC,OAAO,EAAE,MAAM,CAAC,SAAS,KAAK,OAAO;SACtC,CAAC;QAEF,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAC5B;YACE,IAAI,EAAE,cAAc,MAAM,CAAC,SAAS,EAAE;YACtC,OAAO,EAAE,MAAM,CAAC,eAAe;SAChC,EACD;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE,EAAE;aACV;SACF,CACF,CAAC;QAEF,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,sEAAsE;IAEtE;;;;OAIG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,KAAK,OAAO,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;YAC7C,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACxC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,yEAAyE;YACzE,+CAA+C;YAC/C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACtB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;;OAGG;IACH,iBAAiB,CAAC,GAAmB;QACnC,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,QAAgB;QACjC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QAElC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAI,CAAC,cAAc,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YAC/D,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,cAAc,GAAG;YACpB,aAAa,EAAE,IAAI;YACnB,SAAS;YACT,OAAO,EAAE,KAAK;SACf,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sEAAsE;IAE9D,SAAS,CAAC,aAA6B;QAC7C,iCAAiC;QACjC,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAE7C,iCAAiC;QACjC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC;YACvC,OAAO,wDAAwD,CAAC;QAClE,CAAC;QAED,0BAA0B;QAC1B,IAAI,aAAa,IAAI,IAAI,CAAC,cAAc,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACrE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,aAAa,CAAC,EAAE,CAAC;gBAC3E,OAAO,iCAAiC,aAAa,EAAE,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sEAAsE;IAE9D,aAAa;QACnB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,wDAAwD;QACxD,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvB,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAClC,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAClC,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAClC,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACjC,CAAC;IACH,CAAC;IAED,sEAAsE;IAE9D,oBAAoB;QAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,qBAAqB,EACrB,oEAAoE,EACpE;YACE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAC3D,8EAA8E,CAC/E;YACD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACxC,wDAAwD,CACzD;SACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;YACxD,IAAI,SAAS;gBAAE,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;YAE7C,IAAI,CAAC;gBACH,IAAI,MAA6B,CAAC;gBAClC,qEAAqE;gBACrE,qEAAqE;gBACrE,IAAI,MAAM,GAAgC,OAAO,CAAC;gBAClD,IAAI,WAA+B,CAAC;gBAEpC,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;oBAC3B,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;gBACrD,CAAC;qBAAM,CAAC;oBACN,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;oBACpC,IAAI,KAAK,IAAI,KAAK,CAAC,eAAe,KAAK,WAAW,EAAE,CAAC;wBACnD,IAAI,CAAC;4BACH,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,QAAQ,CACtC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAC9D,CAAC;4BACF,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC;4BACrD,MAAM,GAAG,OAAO,CAAC;wBACnB,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,kEAAkE;4BAClE,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;4BAC/C,MAAM,GAAG,OAAO,CAAC;4BACjB,WAAW,GAAG,uBAAuB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;wBACxF,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;wBAC/C,MAAM,GAAG,OAAO,CAAC;wBACjB,WAAW,GAAG,KAAK;4BACjB,CAAC,CAAC,8BAA8B,KAAK,CAAC,eAAe,GAAG;4BACxD,CAAC,CAAC,6BAA6B,CAAC;oBACpC,CAAC;gBACH,CAAC;gBAED,wEAAwE;gBACxE,oEAAoE;gBACpE,yCAAyC;gBACzC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;oBAC/C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACzB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAC7D,CAAC;gBACJ,CAAC;gBAED,2EAA2E;gBAC3E,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO;oBACjD,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CACxD,IAAI,CAAC,cAAc,CAAC,SAAS,EAC7B,kBAAkB,CACnB,CAAC,CAAC;gBAEL,4EAA4E;gBAC5E,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;oBAC/B,MAAM,KAAK,GAA4B;wBACrC,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,MAAM,EAAE,CAAC,CAAC,MAAM;wBAChB,YAAY,EAAE,CAAC,CAAC,YAAY;wBAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;wBAC1B,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;wBACtC,SAAS,EAAE,CAAC,CAAC,SAAS;qBACvB,CAAC;oBACF,qEAAqE;oBACrE,0EAA0E;oBAC1E,kEAAkE;oBAClE,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;wBAChB,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAClD,CAAC;oBACD,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;wBACd,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;oBAC5B,CAAC;oBAED,uEAAuE;oBACvE,oEAAoE;oBACpE,oCAAoC;oBACpC,IAAI,eAAe,EAAE,CAAC;wBACpB,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC7C,MAAM,YAAY,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;+BACrE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;wBAC/C,IAAI,YAAY,EAAE,CAAC;4BACjB,KAAK,CAAC,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC;4BACtC,KAAK,CAAC,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC;wBAC1C,CAAC;oBACH,CAAC;oBACD,OAAO,KAAK,CAAC;gBACf,CAAC,CAAC,CAAC;gBAEH,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC3B,OAAO,UAAU,CACf,IAAI,CAAC,UAAU;wBACb,CAAC,CAAC,oCAAoC,IAAI,CAAC,UAAU,QAAQ,IAAI,CAAC,KAAK,SAAS;wBAChF,CAAC,CAAC,yCAAyC,IAAI,CAAC,KAAK,SAAS,CACjE,CAAC;gBACJ,CAAC;gBAED,MAAM,QAAQ,GAA4B;oBACxC,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,SAAS,CAAC,MAAM;oBACvB,MAAM,EAAE,SAAS;iBAClB,CAAC;gBACF,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC7B,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;oBACzB,IAAI,WAAW;wBAAE,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;gBACtD,CAAC;gBACD,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC;YAC9B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,WAAW,CAAC,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;YAClG,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,sEAAsE;IAE9D,gBAAgB;QACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,iBAAiB,EACjB,2FAA2F,EAC3F;YACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mEAAmE,CAAC;YACjG,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACtC,iDAAiD,CAClD;YACD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YAC/C,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAC/C,0JAA0J,CAC3J;YACD,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAC9C,wDAAwD,CACzD;YACD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC5D,mEAAmE;gBACnE,mEAAmE;gBACnE,iEAAiE;gBACjE,mCAAmC,CACpC;YACD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC/C,mEAAmE;gBACnE,+DAA+D;gBAC/D,iEAAiE;gBACjE,oCAAoC,CACrC;SACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;YACpD,IAAI,SAAS;gBAAE,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;YAE7C,yBAAyB;YACzB,IAAI,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,IAAI,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC;gBACzD,OAAO,WAAW,CAAC,0CAA0C,CAAC,CAAC;YACjE,CAAC;YAED,gCAAgC;YAChC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;gBACzB,OAAO,WAAW,CAAC,yBAAyB,CAAC,CAAC;YAChD,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;oBACzC,WAAW,EAAE,IAAI,CAAC,OAAO;oBACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,YAAY,EAAE,IAAI,CAAC,YAAY;oBAC/B,cAAc,EAAE,IAAI,CAAC,cAAc;oBACnC,aAAa,EAAE,IAAI,CAAC,aAAa;oBACjC,OAAO,EAAE,IAAI,CAAC,OAAO;iBACtB,CAAC,CAAC;gBAEH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,IAAI,yBAAyB,CAAC,CAAC;gBAChE,CAAC;gBAED,kEAAkE;gBAClE,oEAAoE;gBACpE,kEAAkE;gBAClE,kEAAkE;gBAClE,iEAAiE;gBAEjE,MAAM,QAAQ,GAA4B;oBACxC,+DAA+D;oBAC/D,0DAA0D;oBAC1D,8DAA8D;oBAC9D,oEAAoE;oBACpE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;oBACzD,OAAO,EAAE,MAAM,CAAC,eAAe,IAAI,UAAU;oBAC7C,YAAY,EAAE,MAAM,CAAC,YAAY;oBACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B,CAAC;gBAEF,IAAI,IAAI,CAAC,YAAY,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACtC,QAAQ,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;oBAC9B,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;gBACxC,CAAC;qBAAM,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;oBAC9C,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC;oBACtB,QAAQ,CAAC,IAAI,GAAG,kCAAkC,CAAC;gBACrD,CAAC;gBAED,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC;YAC9B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,WAAW,CAAC,gBAAgB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,sEAAsE;IAE9D,mBAAmB;QACzB,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,oBAAoB,EACpB,wDAAwD,EACxD;YACE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YAClE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CACpC,sCAAsC,CACvC;YACD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACpC,kDAAkD,CACnD;SACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;YACpD,IAAI,SAAS;gBAAE,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;YAE7C,uBAAuB;YACvB,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,GAAG,EAAE,CAAC;gBACvC,OAAO,WAAW,CAAC,iCAAiC,CAAC,CAAC;YACxD,CAAC;YAED,uBAAuB;YACvB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjE,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO,WAAW,CAAC,WAAW,IAAI,CAAC,QAAQ,wBAAwB,CAAC,CAAC;YACvE,CAAC;YAED,mDAAmD;YACnD,8CAA8C;YAC9C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;gBAClE,mDAAmD;gBACnD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;gBAC5F,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,6DAA6D;oBAC7D,kEAAkE;oBAClE,iEAAiE;oBACjE,kEAAkE;oBAClE,sBAAsB;gBACxB,CAAC;YACH,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAC9C,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,CACZ,CAAC;gBAEF,OAAO,UAAU,CAAC;oBAChB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;oBACrC,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBACnC,EAAE,EAAE,CAAC,CAAC,EAAE;wBACR,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,SAAS,EAAE,CAAC,CAAC,SAAS;qBACvB,CAAC,CAAC;iBACJ,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,WAAW,CAAC,6BAA6B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;YAC1G,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,sEAAsE;IAE9D,kBAAkB;QACxB,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,mBAAmB,EACnB,oCAAoC,EACpC;YACE,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CACjD,2CAA2C,CAC5C;SACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;YACxD,IAAI,SAAS;gBAAE,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;YAE7C,IAAI,CAAC;gBACH,IAAI,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;gBAEnD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;oBACzB,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;gBACrD,CAAC;gBAED,+DAA+D;gBAC/D,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO;oBACjD,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CACxD,IAAI,CAAC,cAAc,CAAC,SAAS,EAC7B,kBAAkB,CACnB,CAAC,CAAC;gBAEL,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;oBAC/B,MAAM,KAAK,GAA4B;wBACrC,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,MAAM,EAAE,CAAC,CAAC,MAAM;wBAChB,YAAY,EAAE,CAAC,CAAC,YAAY;wBAC5B,SAAS,EAAE,CAAC,CAAC,SAAS;wBACtB,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;qBACvC,CAAC;oBACF,yDAAyD;oBACzD,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;wBAChB,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAClD,CAAC;oBACD,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;wBACd,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;oBAC5B,CAAC;oBAED,6DAA6D;oBAC7D,IAAI,eAAe,EAAE,CAAC;wBACpB,wDAAwD;wBACxD,MAAM,WAAW,GAAG,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAClD,MAAM,YAAY,GAAG,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;+BAC/E,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;wBAC/C,IAAI,YAAY,EAAE,CAAC;4BACjB,KAAK,CAAC,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC;4BACtC,KAAK,CAAC,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC;wBAC1C,CAAC;oBACH,CAAC;oBAED,iCAAiC;oBACjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBACnE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAClC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ,CAChC,CAAC,MAAM,CAAC;oBAET,OAAO,KAAK,CAAC;gBACf,CAAC,CAAC,CAAC;gBAEH,OAAO,UAAU,CAAC;oBAChB,KAAK,EAAE,SAAS,CAAC,MAAM;oBACvB,cAAc,EAAE,IAAI,CAAC,cAAc;oBACnC,MAAM,EAAE,SAAS;iBAClB,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,WAAW,CAAC,yBAAyB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;YACtG,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,sEAAsE;IAE9D,kBAAkB;QACxB,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,mBAAmB,EACnB,+FAA+F,EAC/F;YACE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YACpD,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAC1C,kCAAkC,CACnC;SACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,6DAA6D;YAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;YACrD,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC9C,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;YAChC,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClB,OAAO,WAAW,CAChB,6FAA6F,CAC9F,CAAC;YACJ,CAAC;YAED,uBAAuB;YACvB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjE,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO,WAAW,CAAC,WAAW,IAAI,CAAC,QAAQ,gCAAgC,CAAC,CAAC;YAC/E,CAAC;YAED,IAAI,CAAC;gBACH,+BAA+B;gBAC/B,MAAM,IAAI,GAAG;oBACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,WAAW,EAAE,WAAW,CAAC,WAAW;oBACpC,OAAO,EAAE,WAAW,CAAC,OAAO;oBAC5B,YAAY,EAAE,WAAW,CAAC,YAAY;oBACtC,KAAK,EAAE,WAAW,CAAC,KAAK;iBACzB,CAAC;gBAEF,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAEhD,OAAO,UAAU,CAAC;oBAChB,OAAO,EAAE,IAAI;oBACb,GAAG,IAAI;iBACR,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,WAAW,CAAC,oBAAoB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;YACjG,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,qEAAqE;IAE7D,iBAAiB;QACvB,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,kBAAkB,EAClB,6EAA6E;YAC7E,uEAAuE;YACvE,oEAAoE;YACpE,kDAAkD,EAClD;YACE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAClE,6FAA6F,CAC9F;YACD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACnC,kDAAkD,CACnD;YACD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACzC,qEAAqE,CACtE;YACD,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACnF,kDAAkD,CACnD;YACD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACpC,uDAAuD,CACxD;SACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,iCAAiC;YACjC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;YACrD,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC9C,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;YAChC,CAAC;YAED,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;YAEnC,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;gBACpB,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;wBAChB,OAAO,WAAW,CAAC,oCAAoC,CAAC,CAAC;oBAC3D,CAAC;oBACD,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;wBACrC,OAAO,WAAW,CAAC,mDAAmD,CAAC,CAAC;oBAC1E,CAAC;oBAED,IAAI,OAAgB,CAAC;oBACrB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;wBACrB,OAAO,GAAG,YAAY,CAAC,0BAA0B,CAC/C,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,KAAwB,EAC7B,cAAc,EACd,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,KAAK,CACX,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,OAAO,GAAG,YAAY,CAAC,aAAa,CAClC,IAAI,CAAC,KAAM,EACX,IAAI,CAAC,KAAwB,EAC7B,cAAc,EACd,IAAI,CAAC,MAAM,CACZ,CAAC;oBACJ,CAAC;oBAED,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,OAAO,WAAW,CAAC,2BAA2B,CAAC,CAAC;oBAClD,CAAC;oBAED,OAAO,UAAU,CAAC;wBAChB,MAAM,EAAE,OAAO;wBACf,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,WAAW;wBACrC,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,mBAAmB;wBAC1C,MAAM,EAAE,cAAc;qBACvB,CAAC,CAAC;gBACL,CAAC;gBAED,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACd,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;wBACrC,OAAO,WAAW,CAAC,oDAAoD,CAAC,CAAC;oBAC3E,CAAC;oBAED,IAAI,OAAgB,CAAC;oBACrB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;wBACrB,OAAO,GAAG,YAAY,CAAC,0BAA0B,CAC/C,IAAI,CAAC,WAAW,EAChB,WAAW,EACX,cAAc,EACd,IAAI,CAAC,MAAM,IAAI,eAAe,EAC9B,IAAI,CAAC,KAAK,CACX,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,OAAO,GAAG,YAAY,CAAC,aAAa,CAClC,IAAI,CAAC,KAAM,EACX,WAAW,EACX,cAAc,EACd,IAAI,CAAC,MAAM,IAAI,eAAe,CAC/B,CAAC;oBACJ,CAAC;oBAED,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,OAAO,WAAW,CAAC,wBAAwB,CAAC,CAAC;oBAC/C,CAAC;oBAED,OAAO,UAAU,CAAC;wBAChB,MAAM,EAAE,QAAQ;wBAChB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,WAAW;wBACrC,aAAa,EAAE,SAAS;wBACxB,QAAQ,EAAE,WAAW;wBACrB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,eAAe;qBACvC,CAAC,CAAC;gBACL,CAAC;gBAED,KAAK,MAAM,CAAC,CAAC,CAAC;oBACZ,MAAM,QAAQ,GAAG,YAAY,CAAC,YAAY,EAAE,CAAC;oBAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBACjC,IAAI,EAAE,CAAC,CAAC,KAAK;wBACb,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,IAAI;wBAClC,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,MAAM,EAAE,CAAC,CAAC,MAAM;wBAChB,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe;wBAC1C,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB;qBACzC,CAAC,CAAC,CAAC;oBAEJ,OAAO,UAAU,CAAC;wBAChB,KAAK,EAAE,OAAO,CAAC,MAAM;wBACrB,QAAQ,EAAE,OAAO;qBAClB,CAAC,CAAC;gBACL,CAAC;gBAED,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;wBACrC,OAAO,WAAW,CAAC,mDAAmD,CAAC,CAAC;oBAC1E,CAAC;oBAED,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW;wBAC9B,CAAC,CAAC,YAAY,CAAC,uBAAuB,CAAC,IAAI,CAAC,WAAW,CAAC;wBACxD,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,KAAM,CAAC,CAAC;oBAEzC,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,OAAO,WAAW,CAAC,+BAA+B,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;oBACvF,CAAC;oBAED,OAAO,UAAU,CAAC;wBAChB,KAAK,EAAE,OAAO,CAAC,KAAK;wBACpB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI;wBACxC,YAAY,EAAE,OAAO,CAAC,KAAK;wBAC3B,MAAM,EAAE,OAAO,CAAC,MAAM;wBACtB,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;qBAC7B,CAAC,CAAC;gBACL,CAAC;gBAED,KAAK,KAAK,CAAC,CAAC,CAAC;oBACX,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;wBACrC,OAAO,WAAW,CAAC,iDAAiD,CAAC,CAAC;oBACxE,CAAC;oBAED,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW;wBAC9B,CAAC,CAAC,YAAY,CAAC,uBAAuB,CAAC,IAAI,CAAC,WAAW,CAAC;wBACxD,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,KAAM,CAAC,CAAC;oBAEzC,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,OAAO,UAAU,CAAC;4BAChB,KAAK,EAAE,KAAK;4BACZ,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,WAAW;4BACrC,KAAK,EAAE,WAAW;4BAClB,IAAI,EAAE,0CAA0C;yBACjD,CAAC,CAAC;oBACL,CAAC;oBAED,OAAO,UAAU,CAAC;wBAChB,KAAK,EAAE,IAAI;wBACX,KAAK,EAAE,OAAO,CAAC,KAAK;wBACpB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI;wBACxC,KAAK,EAAE,OAAO,CAAC,KAAK;wBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;wBACtB,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,eAAe;qBACjD,CAAC,CAAC;gBACL,CAAC;gBAED;oBACE,OAAO,WAAW,CAAC,mBAAmB,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACzD,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,qEAAqE;IAE7D,iBAAiB;QACvB,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,kBAAkB,EAClB,mEAAmE;YACnE,wGAAwG;YACxG,0FAA0F;YAC1F,mGAAmG;YACnG,2CAA2C,EAC3C;YACE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CACjE,4GAA4G,CAC7G;YACD,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC5D,wGAAwG,CACzG;SACF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,iCAAiC;YACjC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;YACrD,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC9C,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;YAChC,CAAC;YAED,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;gBACpB,KAAK,SAAS,CAAC,CAAC,CAAC;oBACf,OAAO,UAAU,CACf,oGAAoG;wBACpG,iBAAiB;wBACjB,kEAAkE;wBAClE,oEAAoE;wBACpE,sKAAsK;wBACtK,qGAAqG;wBACrG,2FAA2F;wBAC3F,YAAY;wBACZ,oDAAoD;wBACpD,8EAA8E;wBAC9E,iFAAiF;wBACjF,oCAAoC;wBACpC,yFAAyF;wBACzF,aAAa;wBACb,uFAAuF;wBACvF,mFAAmF;wBACnF,mFAAmF;wBACnF,mFAAmF;wBACnF,6EAA6E;wBAC7E,kFAAkF,CACnF,CAAC;gBACJ,CAAC;gBAED,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACd,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;oBAC3C,MAAM,gBAAgB,GAAG,MAAM,EAAE,UAAU,CAAC;oBAC5C,MAAM,YAAY,GAAG,gBAAgB,EAAE,YAAY,KAAK,IAAI;2BACvD,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,MAAM,CAAC;oBACrD,MAAM,QAAQ,GAAG,gBAAgB,EAAE,QAAQ;2BACtC,OAAO,CAAC,GAAG,CAAC,oBAAoB;2BAChC,iBAAiB,CAAC;oBACvB,MAAM,UAAU,GAAG,gBAAgB,EAAE,UAAU,IAAI,QAAQ,CAAC;oBAE5D,4BAA4B;oBAC5B,IAAI,WAAW,GAAmC,IAAI,CAAC;oBACvD,IAAI,CAAC;wBACH,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;wBACvH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;wBACnC,IAAI,GAAG,CAAC,EAAE;4BAAE,WAAW,GAAG,MAAM,GAAG,CAAC,IAAI,EAA6B,CAAC;oBACxE,CAAC;oBAAC,MAAM,CAAC,CAAC,+BAA+B,CAAC,CAAC;oBAE3C,OAAO,UAAU,CAAC;wBAChB,OAAO,EAAE,YAAY;wBACrB,QAAQ;wBACR,UAAU;wBACV,YAAY,EAAE,gBAAgB,EAAE,YAAY,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC;wBACtE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;4BACzB,MAAM,EAAE,WAAW,CAAC,MAAM;4BAC1B,gBAAgB,EAAG,WAAW,CAAC,QAAoC,EAAE,WAAW,IAAI,WAAW,CAAC,MAAM;4BACtG,YAAY,EAAE,WAAW,CAAC,WAAW;yBACtC,CAAC,CAAC,CAAC,aAAa;wBACjB,IAAI,EAAE,YAAY;4BAChB,CAAC,CAAC,iEAAiE;4BACnE,CAAC,CAAC,8DAA8D;qBACnE,CAAC,CAAC;gBACL,CAAC;gBAED,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACd,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;oBAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,OAAO,WAAW,CAAC,8DAA8D,CAAC,CAAC;oBACrF,CAAC;oBAED,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,QAAQ,CAAC;oBAE/C,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;wBACvB,MAAM,CAAC,UAAU,GAAG;4BAClB,YAAY,EAAE,IAAI;4BAClB,UAAU;yBACX,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC;wBACtC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;4BACpB,MAAM,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC;wBAC5C,CAAC;oBACH,CAAC;oBAED,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;oBAErC,OAAO,UAAU,CAAC;wBAChB,MAAM,EAAE,SAAS;wBACjB,UAAU;wBACV,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,QAAQ,IAAI,iBAAiB;wBACzD,IAAI,EAAE,yDAAyD;wBAC/D,WAAW,EAAE,6FAA6F;4BACxG,yBAAyB,UAAU,MAAM;4BACzC,CAAC,UAAU,KAAK,QAAQ;gCACtB,CAAC,CAAC,6CAA6C;gCAC/C,CAAC,CAAC,+CAA+C,CAAC;qBACvD,CAAC,CAAC;gBACL,CAAC;gBAED,KAAK,SAAS,CAAC,CAAC,CAAC;oBACf,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;oBAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,OAAO,WAAW,CAAC,8DAA8D,CAAC,CAAC;oBACrF,CAAC;oBAED,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;wBACtB,MAAM,CAAC,UAAU,CAAC,YAAY,GAAG,KAAK,CAAC;oBACzC,CAAC;oBAED,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;oBAErC,OAAO,UAAU,CAAC;wBAChB,MAAM,EAAE,UAAU;wBAClB,IAAI,EAAE,6DAA6D;wBACnE,WAAW,EAAE,kFAAkF;qBAChG,CAAC,CAAC;gBACL,CAAC;gBAED;oBACE,OAAO,WAAW,CAAC,mBAAmB,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACzD,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,oEAAoE;IAC5D,iBAAiB;QACvB,gDAAgD;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QACpC,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAC5C,CAAC;QACD,0CAA0C;QAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;QACjD,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IAC5D,CAAC;IAED,iCAAiC;IACzB,UAAU,CAAC,UAAkB;QACnC,IAAI,CAAC;YACH,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mCAAmC;IAC3B,WAAW,CAAC,UAAkB,EAAE,MAA0B;QAChE,MAAM,OAAO,GAAG,GAAG,UAAU,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC;QACnD,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3D,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACrC,CAAC;IAED,uEAAuE;IAE/D,kBAAkB,CAAC,KAA8B;QACvD,MAAM,KAAK,GAAG;YACZ,qDAAqD;YACrD,4DAA4D;YAC5D,2FAA2F;YAC3F,EAAE;SACH,CAAC;QACF,IAAI,KAAK,CAAC,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAClD,IAAI,KAAK,CAAC,GAAG;YAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QAC/C,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;YAChG,KAAK,CAAC,IAAI,CAAC,cAAc,SAAS,EAAE,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;YACpG,KAAK,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,KAAK,CAAC,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;QACjE,IAAI,KAAK,CAAC,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9D,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,qCAAqC,CAAC,CAAC;QACtD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,qEAAqE;IAE7D,0BAA0B;QAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,4BAA4B,EAC5B,oFAAoF;YACpF,yEAAyE;YACzE,qFAAqF;YACrF,6CAA6C,EAC7C;YACE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;YACrF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;YACzF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;YAClE,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YACpF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,oCAAoC,CAAC;SAC7E,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;YACxD,IAAI,SAAS;gBAAE,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;YAE7C,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACtD,OAAO,WAAW,CAAC,yEAAyE,CAAC,CAAC;YAChG,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAS,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACzB,OAAO,WAAW,CAAC,+DAA+D,CAAC,CAAC;YACtF,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;gBACrC,IAAI,IAAI,CAAC,KAAK;oBAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC5C,IAAI,IAAI,CAAC,UAAU;oBAAE,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC/D,IAAI,IAAI,CAAC,QAAQ;oBAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACzD,IAAI,IAAI,CAAC,UAAU;oBAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAClD,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;gBAEtD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,uBAAuB,MAAM,EAAE,CAAC,CAAC;gBAE/E,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;oBACnB,OAAO,WAAW,CAAC,2BAA2B,MAAM,GAAG,CAAC,CAAC;gBAC3D,CAAC;gBAED,MAAM,MAAM,GAAG,IAAgG,CAAC;gBAEhH,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC/C,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,aAAa,EAAE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;oBAC7C,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,YAAY,EAAE,KAAK,CAAC,YAAY;iBACjC,CAAC,CAAC,CAAC;gBAEJ,OAAO,UAAU,CAAC;oBAChB,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,MAAM,EAAE,YAAY;oBACpB,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,GAAG,EAAE,2GAA2G;iBACjH,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,WAAW,CAAC,2BAA2B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;YACxG,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,qEAAqE;IAE7D,0BAA0B;QAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,4BAA4B,EAC5B,wDAAwD;YACxD,2FAA2F;YAC3F,oFAAoF,EACpF;YACE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;YAC/F,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YACnF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YACrE,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;SAChH,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;YACpD,IAAI,SAAS;gBAAE,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;YAE7C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAS,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACzB,OAAO,WAAW,CAAC,+DAA+D,CAAC,CAAC;YACtF,CAAC;YAED,IAAI,CAAC;gBACH,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;oBACzB,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;oBACpE,MAAM,EAAE,GAAG,SAA2C,CAAC;oBACvD,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,CAAC;wBACpB,OAAO,UAAU,CAAC;4BAChB,IAAI,EAAE,gEAAgE;gCACpE,0DAA0D;4BAC5D,aAAa,EAAE,gBAAgB;yBAChC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAED,MAAM,IAAI,GAA4B,EAAE,CAAC;gBACzC,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS;oBAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;gBACrE,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;oBAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAC/D,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS;oBAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;gBAEvF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,iBAAiB,EAAE;oBAC/D,MAAM,EAAE,KAAK;oBACb,IAAI;iBACL,CAAC,CAAC;gBAEH,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;oBACnB,OAAO,WAAW,CAAC,gDAAgD,CAAC,CAAC;gBACvE,CAAC;gBAED,OAAO,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACpD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,WAAW,CAAC,2BAA2B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;YACxG,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,qEAAqE;IAE7D,0BAA0B;QAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,4BAA4B,EAC5B,2EAA2E;YAC3E,gGAAgG,EAChG,EAAE,EACF,KAAK,IAAI,EAAE;YACT,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;YACxD,IAAI,SAAS;gBAAE,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;YAE7C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAS,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACzB,OAAO,UAAU,CAAC;oBAChB,UAAU,EAAE,KAAK;oBACjB,IAAI,EAAE,+DAA+D;iBACtE,CAAC,CAAC;YACL,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBAEjE,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;oBACnB,OAAO,WAAW,CAAC,oCAAoC,MAAM,GAAG,CAAC,CAAC;gBACpE,CAAC;gBAED,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,WAAW,CAAC,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;YAC9G,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,qEAAqE;IAE7D,uBAAuB;QAC7B,IAAI,CAAC,SAAS,CAAC,IAAI,CACjB,yBAAyB,EACzB,+DAA+D;YAC/D,uFAAuF,EACvF;YACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;SAC9F,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;YACb,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;YACxD,IAAI,SAAS;gBAAE,OAAO,WAAW,CAAC,SAAS,CAAC,CAAC;YAE7C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAS,CAAC;YAErC,IAAI,CAAC;gBACH,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,KAAK,CAC3C,sBAAsB,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CACzD,CAAC;gBAEF,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;oBACnB,OAAO,UAAU,CAAC;wBAChB,KAAK,EAAE,KAAK;wBACZ,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,GAAG,EAAE,yFAAyF;qBAC/F,CAAC,CAAC;gBACL,CAAC;gBAED,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;oBACnB,OAAO,WAAW,CAAC,2BAA2B,MAAM,GAAG,CAAC,CAAC;gBAC3D,CAAC;gBAED,MAAM,KAAK,GAAG,IAA+B,CAAC;gBAC9C,OAAO,UAAU,CAAC;oBAChB,KAAK,EAAE,IAAI;oBACX,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,aAAa,EAAE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;oBAC7C,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,YAAY,EAAE,KAAK,CAAC,YAAY;oBAChC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK;iBAClC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,WAAW,CAAC,2BAA2B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;YACxG,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./builtin-manifest.schema.json",
|
|
3
3
|
"schemaVersion": 1,
|
|
4
|
-
"generatedAt": "2026-05-30T11:
|
|
5
|
-
"instarVersion": "1.3.
|
|
4
|
+
"generatedAt": "2026-05-30T11:54:17.258Z",
|
|
5
|
+
"instarVersion": "1.3.118",
|
|
6
6
|
"entryCount": 193,
|
|
7
7
|
"entries": {
|
|
8
8
|
"hook:session-start": {
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- bump: patch -->
|
|
4
|
+
|
|
5
|
+
## What Changed
|
|
6
|
+
|
|
7
|
+
**Threadline sends from Codex no longer duplicate after the delivery succeeds.**
|
|
8
|
+
|
|
9
|
+
The MCP `threadline_send` tool used to default `waitForReply` to `true`, which
|
|
10
|
+
meant a send could be accepted locally and then keep the MCP tool call open while
|
|
11
|
+
waiting for a peer reply. Codex's tool layer times out long-running MCP calls at
|
|
12
|
+
about 30 seconds, so an already-delivered send could be retried as if it had
|
|
13
|
+
failed. That produced identical Threadline replies 2-3 times, and each duplicate
|
|
14
|
+
also surfaced into the mirrored Telegram topic.
|
|
15
|
+
|
|
16
|
+
The MCP default now matches the HTTP relay behavior: omitted `waitForReply`
|
|
17
|
+
returns after delivery is accepted. Callers that intentionally need a synchronous
|
|
18
|
+
request/response flow can still set `waitForReply: true`; the existing reply
|
|
19
|
+
waiter and timeout semantics remain available for that explicit mode. The
|
|
20
|
+
Threadline interop spec now documents the same default so downstream
|
|
21
|
+
implementations do not preserve the old synchronous behavior accidentally.
|
|
22
|
+
|
|
23
|
+
## What to Tell Your User
|
|
24
|
+
|
|
25
|
+
When I message another agent through Threadline, my reply should now show up once
|
|
26
|
+
instead of sometimes repeating after a short delay. The underlying send path now
|
|
27
|
+
confirms delivery promptly by default, so the system no longer mistakes a slow
|
|
28
|
+
wait for a failed send and tries the same message again. Direct back-and-forth
|
|
29
|
+
agent collaboration should be quieter and less spammy in mirrored Telegram
|
|
30
|
+
topics.
|
|
31
|
+
|
|
32
|
+
## Summary of New Capabilities
|
|
33
|
+
|
|
34
|
+
| Capability | How to Use |
|
|
35
|
+
|-----------|-----------|
|
|
36
|
+
| Threadline delivery acknowledgement by default | Automatic for MCP `threadline_send` calls that omit `waitForReply` |
|
|
37
|
+
| Explicit synchronous Threadline replies | Set `waitForReply: true` when the caller really needs to wait for a reply |
|
|
38
|
+
|
|
39
|
+
## Evidence
|
|
40
|
+
|
|
41
|
+
- **Live reproduction:** Codey's own Threadline ACK to Echo was accepted by the
|
|
42
|
+
local relay, then the MCP tool call stayed open and timed out at about 30
|
|
43
|
+
seconds because the tool default waited for a reply. Prior log samples on the
|
|
44
|
+
same Threadline path showed identical accepted sends separated by roughly the
|
|
45
|
+
same retry-sized gap.
|
|
46
|
+
- **Verified fix shape:** the MCP schema default now passes `waitForReply:
|
|
47
|
+
false` into the send dependency when the caller omits it, while tests that
|
|
48
|
+
explicitly set `waitForReply: true` still exercise the synchronous reply path.
|
|
49
|
+
- **Tests:** `npm test -- tests/unit/threadline/ThreadlineMCPServer.test.ts`,
|
|
50
|
+
`npm test -- tests/e2e/threadline/ThreadlineMCPE2E.test.ts`,
|
|
51
|
+
`npm run lint`, and `npm run build` passed. Side-effects review:
|
|
52
|
+
`upgrades/side-effects/threadline-codex-send-timeout.md`.
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Instar Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- bump: patch -->
|
|
4
|
+
|
|
5
|
+
## What Changed
|
|
6
|
+
|
|
7
|
+
**The shared local embedding model now unloads when idle, freeing the CPU its
|
|
8
|
+
ONNX thread pool was busy-spinning on.**
|
|
9
|
+
|
|
10
|
+
`EmbeddingProvider` (backing SemanticMemory / MemoryIndex / TopicMemory) loaded the
|
|
11
|
+
all-MiniLM-L6-v2 ONNX model lazily and then kept it resident forever. onnxruntime's
|
|
12
|
+
thread pool busy-spins even when idle — measured live via `process.cpuUsage()` at
|
|
13
|
+
~3.6% of a core on a quiet box, and previously ~44% on a contended agent that was
|
|
14
|
+
supposedly paused. With several agents per box each holding an idle, spinning
|
|
15
|
+
model, that's a real multiplied load source.
|
|
16
|
+
|
|
17
|
+
Fix: after `idleUnloadMs` (default 300000 = 5 min) with no `embed()`, the pipeline
|
|
18
|
+
is disposed (thread pool freed) and lazily reloaded on the next embed. A rolling
|
|
19
|
+
timer resets on every embed (active agents stay resident), an `inFlight` guard
|
|
20
|
+
prevents disposing mid-batch, and the timer is `unref()`'d. Set `idleUnloadMs: 0`
|
|
21
|
+
to keep the prior keep-resident behavior. Verified live: idle CPU 3.6% → 0.0% after
|
|
22
|
+
dispose, and dispose→reload→embed produces an identical vector.
|
|
23
|
+
|
|
24
|
+
## What to Tell Your User
|
|
25
|
+
|
|
26
|
+
Each agent keeps a small local AI model loaded to search its own memories, and the
|
|
27
|
+
engine running that model was quietly burning CPU even when the agent was idle —
|
|
28
|
+
its worker threads spin in a tight loop instead of sleeping. On a machine running
|
|
29
|
+
several agents, that added up to real wasted CPU. I changed it so the model unloads
|
|
30
|
+
after a few minutes of not being used and reloads in about a second the next time
|
|
31
|
+
it's needed. Active memory work is unaffected (the timer resets every time it's
|
|
32
|
+
used); only genuinely idle agents stop wasting CPU. I confirmed the model produces
|
|
33
|
+
the exact same results after an unload-and-reload, so nothing is lost.
|
|
34
|
+
|
|
35
|
+
## Summary of New Capabilities
|
|
36
|
+
|
|
37
|
+
| Capability | How to Use |
|
|
38
|
+
|-----------|-----------|
|
|
39
|
+
| Idle-unload of the embedding model | Automatic — frees the ONNX thread pool after ~5 min idle, reloads on next use |
|
|
40
|
+
| Keep the model resident | Construct the embedding provider with the idle window set to zero |
|
|
41
|
+
|
|
42
|
+
## Evidence
|
|
43
|
+
|
|
44
|
+
- **Live measurement:** loaded-but-idle model used ~3.6% of a core (3s window,
|
|
45
|
+
`process.cpuUsage()`); ~44% previously observed on a contended agent. After
|
|
46
|
+
dispose: 0.0%. dispose→reload→embed produced an identical embedding.
|
|
47
|
+
- **Tests:** `tests/unit/EmbeddingProvider-idle-unload.test.ts` (5, mock pipeline +
|
|
48
|
+
fake timers) — dispose-after-idle + lazy reload, resident-while-active,
|
|
49
|
+
disable-via-zero, inFlight guard, explicit dispose. `tsc` clean.
|
|
50
|
+
- Spec: `docs/specs/onnx-idle-unload.md`. Side-effects:
|
|
51
|
+
`upgrades/side-effects/onnx-idle-unload.md`.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Side-effects — EmbeddingProvider idle-unload
|
|
2
|
+
|
|
3
|
+
**Change:** `EmbeddingProvider` disposes its loaded ONNX pipeline after
|
|
4
|
+
`idleUnloadMs` (default 5 min) of no `embed()` call, lazily reloading on the next
|
|
5
|
+
embed. New `inFlight` guard, rolling idle timer, and a public `dispose()`.
|
|
6
|
+
|
|
7
|
+
## Behavioral side-effects
|
|
8
|
+
|
|
9
|
+
- **First embed after a long idle costs ~1-3s more** (a model reload). All
|
|
10
|
+
subsequent embeds during active use are unaffected — the idle timer resets on
|
|
11
|
+
every embed, so a busy agent keeps the model resident. Memory search/index are
|
|
12
|
+
not latency-critical, so the occasional reload is an acceptable trade for
|
|
13
|
+
eliminating the idle thread-pool spin (~3.6%-44% of a core).
|
|
14
|
+
- **`isReady` is now dynamic.** Previously it returned true forever once loaded;
|
|
15
|
+
now it returns false while the model is unloaded between idle periods. No caller
|
|
16
|
+
uses `isReady` to gate embeds (verified) — `embed()` lazily re-initializes
|
|
17
|
+
regardless — so this is observational only.
|
|
18
|
+
- **Embeddings are unchanged.** Verified live: dispose→reload→embed produces a
|
|
19
|
+
byte-identical vector. Unloading/reloading never alters output.
|
|
20
|
+
- **Default-ON.** The production singleton constructs with defaults, so all agents
|
|
21
|
+
get 5-min idle-unload on update. Set `idleUnloadMs: 0` (constructor config) to
|
|
22
|
+
restore the prior keep-resident behavior.
|
|
23
|
+
|
|
24
|
+
## Blast radius
|
|
25
|
+
|
|
26
|
+
- Scoped to `src/memory/EmbeddingProvider.ts`. SemanticMemory / MemoryIndex /
|
|
27
|
+
TopicMemory consume it transparently (they call `embed()`/`embedBatch()`, which
|
|
28
|
+
handle reload internally). No call-site changes.
|
|
29
|
+
- The idle timer is `unref()`'d — it can never keep the process alive.
|
|
30
|
+
- No config schema, hook, or HTTP changes. No new dependencies.
|
|
31
|
+
|
|
32
|
+
## Migration parity
|
|
33
|
+
|
|
34
|
+
None required — internal runtime logic in `src/`. No agent-installed file
|
|
35
|
+
(`.claude/settings.json`, `.instar/config.json`, CLAUDE.md template, hook, skill)
|
|
36
|
+
changes. Existing agents receive it on their normal version update.
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
# Side-Effects Review — Threadline Codex send timeout duplicate fix
|
|
2
|
+
|
|
3
|
+
**Version / slug:** `threadline-codex-send-timeout`
|
|
4
|
+
**Date:** `2026-05-30`
|
|
5
|
+
**Author:** `instar-codey`
|
|
6
|
+
**Second-pass reviewer:** `Darwin`
|
|
7
|
+
|
|
8
|
+
## Summary of the change
|
|
9
|
+
|
|
10
|
+
This change makes the MCP `threadline_send` tool default to fire-and-forget delivery acknowledgement instead of waiting synchronously for a peer reply. The root cause came from live Codey evidence: local delivery to Echo succeeded, but the MCP tool call stayed open because `waitForReply` defaulted to `true`; Codex's tool layer timed out at about 30 seconds and retry-shaped duplicate sends followed. The changed runtime file is `src/threadline/ThreadlineMCPServer.ts`, with regression coverage in `tests/unit/threadline/ThreadlineMCPServer.test.ts`, explicit synchronous-reply e2e coverage in `tests/e2e/threadline/ThreadlineMCPE2E.test.ts`, an interop contract update in `docs/specs/THREADLINE-NETWORK-INTEROP-SPEC.md`, and regenerated manifest metadata in `src/data/builtin-manifest.json`.
|
|
11
|
+
|
|
12
|
+
## Decision-point inventory
|
|
13
|
+
|
|
14
|
+
- `threadline_send` MCP schema default — modify — omitted `waitForReply` now means "ack delivery and return" rather than "hold the tool call open for a synchronous reply."
|
|
15
|
+
- `threadline_send` explicit synchronous mode — pass-through — callers that set `waitForReply: true` still use the existing reply waiter and timeout semantics.
|
|
16
|
+
- Threadline interop documentation — modify — the documented MCP schema now matches the runtime default so downstream implementations do not preserve the old synchronous default accidentally.
|
|
17
|
+
- Threadline MCP e2e tests — modify — scenarios that assert reply messages in history now request `waitForReply: true` explicitly.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## 1. Over-block
|
|
22
|
+
|
|
23
|
+
No block/allow surface — over-block not applicable. This change does not reject any message or caller; it changes only the default waiting behavior when the caller omits an optional boolean.
|
|
24
|
+
|
|
25
|
+
The closest compatibility risk is behavioral: a caller that omitted `waitForReply` while implicitly depending on the old default will no longer receive a synchronous `reply` field. That caller can restore prior behavior by sending `waitForReply: true`. Existing tests that require replies already set `waitForReply: true`, and the tool description now states the default explicitly.
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## 2. Under-block
|
|
30
|
+
|
|
31
|
+
This does not add a duplicate-send idempotency layer. It fixes the observed Codex retry trigger by returning promptly after accepted delivery. Duplicate sends caused by a caller explicitly setting `waitForReply: true` with a tool harness timeout shorter than the requested wait can still occur. That is intentional: explicit synchronous waits remain available for workflows that truly need request/response behavior.
|
|
32
|
+
|
|
33
|
+
This also does not protect non-MCP direct HTTP callers that implement their own retry loop without idempotency. The `/threadline/relay-send` API already treats omitted `waitForReply` as false; the bad default lived at the MCP schema boundary.
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## 3. Level-of-abstraction fit
|
|
38
|
+
|
|
39
|
+
The fix is at the right layer: the wrong behavior was an MCP tool default, not local delivery, SpawnLedger, the relay, or the reply waiter itself. Adding dedup deeper in transport would help a broader class later, but it would not remove the immediate Codex-specific timeout trigger. Changing only the MCP default preserves explicit synchronous reply semantics while making reply-worker sends safe by default.
|
|
40
|
+
|
|
41
|
+
This is not a detector or a new authority. It is API-default hygiene at the boundary where model tool calls become HTTP sends.
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## 4. Signal vs authority compliance
|
|
46
|
+
|
|
47
|
+
**Required reference:** [docs/signal-vs-authority.md](../../docs/signal-vs-authority.md)
|
|
48
|
+
|
|
49
|
+
**Does this change hold blocking authority with brittle logic?**
|
|
50
|
+
|
|
51
|
+
- [ ] No — this change produces a signal consumed by an existing smart gate.
|
|
52
|
+
- [x] No — this change has no block/allow surface.
|
|
53
|
+
- [ ] Yes — but the logic is a smart gate with full conversational context (LLM-backed with recent history or equivalent).
|
|
54
|
+
- [ ] Yes, with brittle logic — STOP. Reshape the design. Brittle detectors must not own block authority.
|
|
55
|
+
|
|
56
|
+
No brittle detector or blocking path is added. The change removes an accidental synchronous wait from the default send path; it does not decide whether content should be sent, surfaced, suppressed, or trusted.
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## 5. Interactions
|
|
61
|
+
|
|
62
|
+
- **Shadowing:** The MCP default feeds `deps.sendMessage`, which posts to `/threadline/relay-send`. The HTTP route already waits only on truthy `waitForReply`, so the changed default aligns the MCP layer with route behavior instead of shadowing it.
|
|
63
|
+
- **Double-fire:** The prior default created a double-fire risk by holding the tool call open past Codex's MCP timeout after delivery had already succeeded. The new default removes that retry pressure for omitted `waitForReply`.
|
|
64
|
+
- **Races:** No shared state is introduced. Existing reply waiters, pending wait maps, and inbound reply resolution remain used only when the caller explicitly asks to wait.
|
|
65
|
+
- **Feedback loops:** The change reduces the retry loop where a timed-out tool call led the model/harness to issue the same `threadline_send` again.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## 6. External surfaces
|
|
70
|
+
|
|
71
|
+
- **Other agents:** Agents receiving Codex-origin Threadline replies should see fewer duplicate identical messages. Agents that rely on a synchronous response from `threadline_send` must set `waitForReply: true`.
|
|
72
|
+
- **Interop readers:** The Threadline network interop spec now documents the new default. Implementers reading the spec should see the same default the MCP server enforces.
|
|
73
|
+
- **Users:** Telegram topics that mirror agent chatter should see less duplicate inter-agent spam.
|
|
74
|
+
- **External systems:** No relay protocol, Telegram, Slack, GitHub, or Cloudflare surface changes.
|
|
75
|
+
- **Persistent state:** No migration or state write shape changes. Existing conversation, outbox, and Threadline stores keep the same schema.
|
|
76
|
+
- **Timing:** The default tool call now returns as soon as delivery is accepted instead of waiting up to `timeoutSeconds`; explicit waits retain the old timing.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## 7. Rollback cost
|
|
81
|
+
|
|
82
|
+
Rollback is a small code revert: restore `waitForReply` default to `true` and ship a patch. No data migration or agent state repair is needed. The rollback risk is reintroducing Codex duplicate sends when the tool harness times out before the reply waiter returns.
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## Conclusion
|
|
87
|
+
|
|
88
|
+
This is clear to ship as a targeted default correction. It addresses the live Codey duplicate-send root cause without weakening transport validation, changing the relay protocol, or removing explicit synchronous request/response capability.
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Second-pass review (if required)
|
|
93
|
+
|
|
94
|
+
**Reviewer:** Darwin
|
|
95
|
+
**Independent read of the artifact: concern raised, then resolved**
|
|
96
|
+
|
|
97
|
+
Darwin's second-pass concern was that `docs/specs/THREADLINE-NETWORK-INTEROP-SPEC.md` still documented `threadline_send.waitForReply` with `"default": true`, which would let downstream agents or implementers continue relying on the old synchronous default. Resolved by updating that interop schema to default `false` with an explicit note that callers should set `true` only when a synchronous reply is required.
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
## Evidence pointers
|
|
102
|
+
|
|
103
|
+
- `npm test -- tests/unit/threadline/ThreadlineMCPServer.test.ts` — 45 tests passed, including the new omitted-`waitForReply` regression.
|
|
104
|
+
- `npm test -- tests/e2e/threadline/ThreadlineMCPE2E.test.ts` — 15 tests passed after making synchronous-reply scenarios explicit.
|
|
105
|
+
- `npm run test:smoke` via pre-push — passed the affected smoke set before the Threadline-scoped e2e gate exposed implicit synchronous-wait test assumptions.
|
|
106
|
+
- `npm run lint` — passed.
|
|
107
|
+
- `npm run build` — passed; `sign-lockfile` warned that no local signing key is configured, which is the documented transitional local-dev state.
|
|
108
|
+
|
|
109
|
+
## Post-main-merge verification
|
|
110
|
+
|
|
111
|
+
After `origin/main` advanced to `1.3.116`, this branch merged main cleanly and regenerated `src/data/builtin-manifest.json` so the manifest version matches the release base. Re-verification after that merge: `npm test -- tests/unit/threadline/ThreadlineMCPServer.test.ts tests/e2e/threadline/ThreadlineMCPE2E.test.ts` passed 60/60, and `npm run build` passed with the same local signing-key warning described above.
|