instar 0.28.41 → 0.28.42
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/core/OutboundDedupGate.d.ts +56 -0
- package/dist/core/OutboundDedupGate.d.ts.map +1 -0
- package/dist/core/OutboundDedupGate.js +90 -0
- package/dist/core/OutboundDedupGate.js.map +1 -0
- package/dist/core/UpdateChecker.d.ts.map +1 -1
- package/dist/core/UpdateChecker.js +6 -2
- package/dist/core/UpdateChecker.js.map +1 -1
- package/dist/core/junk-payload.d.ts +14 -0
- package/dist/core/junk-payload.d.ts.map +1 -0
- package/dist/core/junk-payload.js +32 -0
- package/dist/core/junk-payload.js.map +1 -0
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +2 -2
- package/upgrades/0.28.42.md +25 -0
- package/upgrades/0.28.41.md +0 -41
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OutboundDedupGate — catches agent messages that near-duplicate a recent
|
|
3
|
+
* outbound message in the same conversation.
|
|
4
|
+
*
|
|
5
|
+
* Problem it solves: when session lifecycle events cause two independent
|
|
6
|
+
* attempts to answer the same user question (e.g., context-exhaustion
|
|
7
|
+
* respawn racing with an in-flight reply), the user sees the same answer
|
|
8
|
+
* twice. This gate is the structural safety net that catches duplication
|
|
9
|
+
* from ANY cause, not just a specific bug.
|
|
10
|
+
*
|
|
11
|
+
* Algorithm: Jaccard similarity over word 3-grams between the candidate
|
|
12
|
+
* message and each recent agent message in the same conversation. If any
|
|
13
|
+
* pair exceeds the configured threshold, the gate reports a duplicate.
|
|
14
|
+
*
|
|
15
|
+
* Deterministic, no LLM call, ~sub-millisecond. Sized to run on every
|
|
16
|
+
* outbound message without user-visible latency.
|
|
17
|
+
*/
|
|
18
|
+
export interface RecentOutboundMessage {
|
|
19
|
+
text: string;
|
|
20
|
+
/** Unix ms — used to filter to a recent time window. */
|
|
21
|
+
timestamp: number;
|
|
22
|
+
}
|
|
23
|
+
export interface DedupCheckInput {
|
|
24
|
+
/** The candidate message text being sent. */
|
|
25
|
+
text: string;
|
|
26
|
+
/** Recent outbound agent messages in the same conversation. */
|
|
27
|
+
recent: RecentOutboundMessage[];
|
|
28
|
+
}
|
|
29
|
+
export interface DedupCheckResult {
|
|
30
|
+
/** True if the candidate is a near-duplicate of a recent message. */
|
|
31
|
+
duplicate: boolean;
|
|
32
|
+
/** The similar recent message text (truncated to 200 chars for logging). */
|
|
33
|
+
matchedText?: string;
|
|
34
|
+
/** The Jaccard similarity score that triggered the match [0, 1]. */
|
|
35
|
+
similarity?: number;
|
|
36
|
+
}
|
|
37
|
+
export interface OutboundDedupGateConfig {
|
|
38
|
+
/** Jaccard similarity threshold for declaring a duplicate. Default 0.7. */
|
|
39
|
+
threshold?: number;
|
|
40
|
+
/** Time window for recent messages to consider, in ms. Default 5 minutes. */
|
|
41
|
+
windowMs?: number;
|
|
42
|
+
/**
|
|
43
|
+
* Minimum length for the candidate text to be considered at all. Very
|
|
44
|
+
* short messages ("ok", "on it") naturally duplicate across turns and
|
|
45
|
+
* shouldn't be blocked. Default 40 characters.
|
|
46
|
+
*/
|
|
47
|
+
minLength?: number;
|
|
48
|
+
}
|
|
49
|
+
export declare class OutboundDedupGate {
|
|
50
|
+
private readonly threshold;
|
|
51
|
+
private readonly windowMs;
|
|
52
|
+
private readonly minLength;
|
|
53
|
+
constructor(config?: OutboundDedupGateConfig);
|
|
54
|
+
check(input: DedupCheckInput): DedupCheckResult;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=OutboundDedupGate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OutboundDedupGate.d.ts","sourceRoot":"","sources":["../../src/core/OutboundDedupGate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,MAAM,EAAE,qBAAqB,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC/B,qEAAqE;IACrE,SAAS,EAAE,OAAO,CAAC;IACnB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,MAAM,GAAE,uBAA4B;IAMhD,KAAK,CAAC,KAAK,EAAE,eAAe,GAAG,gBAAgB;CAiChD"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OutboundDedupGate — catches agent messages that near-duplicate a recent
|
|
3
|
+
* outbound message in the same conversation.
|
|
4
|
+
*
|
|
5
|
+
* Problem it solves: when session lifecycle events cause two independent
|
|
6
|
+
* attempts to answer the same user question (e.g., context-exhaustion
|
|
7
|
+
* respawn racing with an in-flight reply), the user sees the same answer
|
|
8
|
+
* twice. This gate is the structural safety net that catches duplication
|
|
9
|
+
* from ANY cause, not just a specific bug.
|
|
10
|
+
*
|
|
11
|
+
* Algorithm: Jaccard similarity over word 3-grams between the candidate
|
|
12
|
+
* message and each recent agent message in the same conversation. If any
|
|
13
|
+
* pair exceeds the configured threshold, the gate reports a duplicate.
|
|
14
|
+
*
|
|
15
|
+
* Deterministic, no LLM call, ~sub-millisecond. Sized to run on every
|
|
16
|
+
* outbound message without user-visible latency.
|
|
17
|
+
*/
|
|
18
|
+
export class OutboundDedupGate {
|
|
19
|
+
threshold;
|
|
20
|
+
windowMs;
|
|
21
|
+
minLength;
|
|
22
|
+
constructor(config = {}) {
|
|
23
|
+
this.threshold = config.threshold ?? 0.7;
|
|
24
|
+
this.windowMs = config.windowMs ?? 5 * 60 * 1000;
|
|
25
|
+
this.minLength = config.minLength ?? 40;
|
|
26
|
+
}
|
|
27
|
+
check(input) {
|
|
28
|
+
const candidate = input.text.trim();
|
|
29
|
+
if (candidate.length < this.minLength) {
|
|
30
|
+
return { duplicate: false };
|
|
31
|
+
}
|
|
32
|
+
const cutoff = Date.now() - this.windowMs;
|
|
33
|
+
const candidateGrams = wordNgrams(candidate, 3);
|
|
34
|
+
if (candidateGrams.size === 0) {
|
|
35
|
+
return { duplicate: false };
|
|
36
|
+
}
|
|
37
|
+
let best = null;
|
|
38
|
+
for (const msg of input.recent) {
|
|
39
|
+
if (msg.timestamp < cutoff)
|
|
40
|
+
continue;
|
|
41
|
+
if (!msg.text || msg.text.trim().length < this.minLength)
|
|
42
|
+
continue;
|
|
43
|
+
const priorGrams = wordNgrams(msg.text, 3);
|
|
44
|
+
if (priorGrams.size === 0)
|
|
45
|
+
continue;
|
|
46
|
+
const sim = jaccard(candidateGrams, priorGrams);
|
|
47
|
+
if (!best || sim > best.similarity) {
|
|
48
|
+
best = { similarity: sim, text: msg.text };
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
if (best && best.similarity >= this.threshold) {
|
|
52
|
+
return {
|
|
53
|
+
duplicate: true,
|
|
54
|
+
matchedText: best.text.slice(0, 200),
|
|
55
|
+
similarity: best.similarity,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
return { duplicate: false, similarity: best?.similarity };
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
function wordNgrams(text, n) {
|
|
62
|
+
const normalized = text
|
|
63
|
+
.toLowerCase()
|
|
64
|
+
.replace(/[^\p{L}\p{N}\s]/gu, ' ')
|
|
65
|
+
.split(/\s+/)
|
|
66
|
+
.filter(Boolean);
|
|
67
|
+
const out = new Set();
|
|
68
|
+
if (normalized.length < n) {
|
|
69
|
+
// Short text — use single tokens as "grams" so two short similar messages
|
|
70
|
+
// can still match. Without this, a 2-word message produces zero 3-grams.
|
|
71
|
+
for (const w of normalized)
|
|
72
|
+
out.add(w);
|
|
73
|
+
return out;
|
|
74
|
+
}
|
|
75
|
+
for (let i = 0; i <= normalized.length - n; i++) {
|
|
76
|
+
out.add(normalized.slice(i, i + n).join(' '));
|
|
77
|
+
}
|
|
78
|
+
return out;
|
|
79
|
+
}
|
|
80
|
+
function jaccard(a, b) {
|
|
81
|
+
if (a.size === 0 && b.size === 0)
|
|
82
|
+
return 1;
|
|
83
|
+
let intersection = 0;
|
|
84
|
+
for (const x of a)
|
|
85
|
+
if (b.has(x))
|
|
86
|
+
intersection++;
|
|
87
|
+
const union = a.size + b.size - intersection;
|
|
88
|
+
return union === 0 ? 0 : intersection / union;
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=OutboundDedupGate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OutboundDedupGate.js","sourceRoot":"","sources":["../../src/core/OutboundDedupGate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpdateChecker.d.ts","sourceRoot":"","sources":["../../src/core/UpdateChecker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAO3D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,cAAc,CAAwB;IAC9C;;;;+DAI2D;IAC3D,OAAO,CAAC,sBAAsB,CAAuB;gBAEzC,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAmBhD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,UAAU,CAAC;IA0ClC;;;;;;;;;;OAUG;IACG,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"UpdateChecker.d.ts","sourceRoot":"","sources":["../../src/core/UpdateChecker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAO3D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,cAAc,CAAwB;IAC9C;;;;+DAI2D;IAC3D,OAAO,CAAC,sBAAsB,CAAuB;gBAEzC,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAmBhD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,UAAU,CAAC;IA0ClC;;;;;;;;;;OAUG;IACG,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC;IAoP1C;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;IAoEzC;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,eAAe,IAAI;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAUhG;;;OAGG;IACG,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAyDlE;;OAEG;IACH,YAAY,IAAI,UAAU,GAAG,IAAI;IAUjC;;;;;;;;;OASG;IACH,mBAAmB,IAAI,MAAM;IAuB7B;;OAEG;IACH,OAAO,CAAC,SAAS;IAmBjB;;OAEG;IACH,OAAO,CAAC,OAAO;IAgBf,OAAO,CAAC,SAAS;IAcjB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,iBAAiB;CAK1B"}
|
|
@@ -238,8 +238,12 @@ export class UpdateChecker {
|
|
|
238
238
|
let baseArgs = [];
|
|
239
239
|
const shadowCliJs = path.join(shadowDir, 'node_modules', 'instar', 'dist', 'cli.js');
|
|
240
240
|
if (fs.existsSync(shadowCliJs)) {
|
|
241
|
-
// Run the exact installed cli.js with the current Node.js runtime
|
|
242
|
-
|
|
241
|
+
// Run the exact installed cli.js with the current Node.js runtime.
|
|
242
|
+
// Guard: process.execPath can point at a deleted binary when Node was
|
|
243
|
+
// upgraded while this process was still running (common on Homebrew —
|
|
244
|
+
// Cellar/node@22/22.22.2/bin/node vanishes after `brew upgrade node`).
|
|
245
|
+
// Fall back to 'node' on PATH when the resolved execPath is gone.
|
|
246
|
+
cmd = fs.existsSync(process.execPath) ? process.execPath : 'node';
|
|
243
247
|
baseArgs = [shadowCliJs];
|
|
244
248
|
}
|
|
245
249
|
let output;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpdateChecker.js","sourceRoot":"","sources":["../../src/core/UpdateChecker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAE3E,MAAM,mBAAmB,GAAG,wDAAwD,CAAC;AAqBrF,MAAM,OAAO,aAAa;IAChB,QAAQ,CAAS;IACjB,SAAS,CAAS;IAClB,YAAY,CAAS;IACrB,cAAc,CAAwB;IAC9C;;;;+DAI2D;IACnD,sBAAsB,GAAkB,IAAI,CAAC;IAErD,YAAY,MAAoC;QAC9C,wEAAwE;QACxE,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;YAChC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;gBACxC,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI;gBACzB,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,KAAK;gBACxC,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,OAAO;aAC3C,CAAC,CAAC,CAAC,IAAI,CAAC;QACX,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACxE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAClD,IAAI,aAAqB,CAAC;QAE1B,IAAI,CAAC;YACH,aAAa,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;QACpF,CAAC;QAAC,MAAM,CAAC;YACP,sDAAsD;YACtD,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACtC,IAAI,SAAS;gBAAE,OAAO,SAAS,CAAC;YAEhC,OAAO;gBACL,cAAc;gBACd,aAAa,EAAE,cAAc;gBAC7B,eAAe,EAAE,KAAK;gBACtB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC,CAAC;QACJ,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QAEpE,MAAM,IAAI,GAAe;YACvB,cAAc;YACd,aAAa;YACb,eAAe;YACf,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,YAAY,EAAE,8CAA8C;SAC7D,CAAC;QAEF,yCAAyC;QACzC,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,IAAI,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;YAChE,CAAC;YAAC,MAAM,CAAC;gBACP,iDAAiD;YACnD,CAAC;QACH,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,WAAW;QACf,MAAM,eAAe,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAEnD,2EAA2E;QAC3E,sEAAsE;QACtE,2EAA2E;QAC3E,+DAA+D;QAC/D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,oEAAoE;YACpE,yEAAyE;YACzE,wEAAwE;YACxE,MAAM,YAAY,GAAG,eAAe,KAAK,IAAI,CAAC,aAAa,CAAC;YAC5D,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,eAAe;gBACf,UAAU,EAAE,IAAI,CAAC,aAAa;gBAC9B,OAAO,EAAE,YAAY;oBACnB,CAAC,CAAC,qBAAqB,IAAI,CAAC,aAAa,cAAc,eAAe,oBAAoB;oBAC1F,CAAC,CAAC,wBAAwB,eAAe,IAAI;gBAC/C,aAAa,EAAE,YAAY;gBAC3B,WAAW,EAAE,SAAS;aACvB,CAAC;QACJ,CAAC;QAED,qEAAqE;QACrE,kEAAkE;QAClE,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QACzC,MAAM,WAAW,GAAG,CAAC,CAAC;QACtB,MAAM,YAAY,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,qBAAqB;QAE5D,IAAI,SAAS,GAAkB,IAAI,CAAC;QACpC,IAAI,UAAU,GAAG,SAAS,CAAC;QAE3B,kEAAkE;QAClE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAC7D,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE7C,iEAAiE;QACjE,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QAC3D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAClC,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACrG,CAAC;QAED,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;YACvD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,yBAAyB,OAAO,IAAI,WAAW,GAAG,CAAC,UAAU,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACvG,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC/D,CAAC;YAED,IAAI,CAAC;gBACH,uDAAuD;gBACvD,2EAA2E;gBAC3E,6EAA6E;gBAC7E,6EAA6E;gBAC7E,oFAAoF;gBACpF,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;oBAC1B,SAAS,EAAE,UAAU,aAAa,EAAE;oBACpC,kBAAkB;oBAClB,UAAU,EAAE,SAAS;iBACtB,EAAE,MAAM,CAAC,CAAC;gBAEX,8DAA8D;gBAC9D,iFAAiF;gBACjF,iFAAiF;gBACjF,2EAA2E;gBAC3E,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;wBAC1B,SAAS,EAAE,gBAAgB;wBAC3B,UAAU,EAAE,SAAS;qBACtB,EAAE,KAAK,CAAC,CAAC;oBACV,OAAO,CAAC,GAAG,CAAC,0EAA0E,CAAC,CAAC;gBAC1F,CAAC;gBAAC,OAAO,UAAU,EAAE,CAAC;oBACpB,sEAAsE;oBACtE,OAAO,CAAC,IAAI,CAAC,2EAA2E,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBACnK,CAAC;gBAED,kFAAkF;gBAClF,iFAAiF;gBACjF,qFAAqF;gBACrF,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,QAAQ,EAAE,CAAC;oBAC/B,KAAK,MAAM,IAAI,IAAI,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,EAAE,CAAC;wBACpE,IAAI,CAAC;4BACH,YAAY,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;wBACvE,CAAC;wBAAC,MAAM,CAAC;4BACP,gEAAgE;wBAClE,CAAC;oBACH,CAAC;oBACD,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;gBAC3E,CAAC;gBAED,qEAAqE;gBACrE,qEAAqE;gBACrE,8EAA8E;gBAC9E,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACpF,IAAI,CAAC;oBACH,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,8BAA8B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;wBAClG,KAAK,EAAE,QAAQ;wBACf,OAAO,EAAE,KAAK;qBACf,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,SAAS,EAAE,CAAC;oBACnB,OAAO,CAAC,KAAK,CAAC,uCAAuC,UAAU,+BAA+B,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;oBACpK,OAAO,CAAC,KAAK,CAAC,uHAAuH,CAAC,CAAC;gBACzI,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,SAAS,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7D,SAAS;YACX,CAAC;YAED,6DAA6D;YAC7D,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;gBACpF,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;oBAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;oBAC/D,UAAU,GAAG,GAAG,CAAC,OAAO,IAAI,SAAS,CAAC;gBACxC,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,UAAU,GAAG,SAAS,CAAC;YACzB,CAAC;YAED,IAAI,UAAU,KAAK,aAAa,EAAE,CAAC;gBACjC,MAAM,CAAC,UAAU;YACnB,CAAC;YAED,SAAS,GAAG,wBAAwB,UAAU,cAAc,aAAa,EAAE,CAAC;YAC5E,OAAO,CAAC,GAAG,CAAC,2BAA2B,OAAO,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,OAAO,GAAG,UAAU,KAAK,aAAa,CAAC;QAE7C,0CAA0C;QAC1C,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QACrD,CAAC;QAED,8DAA8D;QAC9D,mEAAmE;QACnE,gEAAgE;QAChE,2EAA2E;QAC3E,EAAE;QACF,kFAAkF;QAClF,IAAI,gBAAgB,GAAG,EAAE,CAAC;QAC1B,IAAI,gBAAgB,GAAG,EAAE,CAAC;QAC1B,IAAI,OAAO,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACnC,IAAI,CAAC;gBACH,6DAA6D;gBAC7D,IAAI,GAAG,GAAG,QAAQ,CAAC;gBACnB,IAAI,QAAQ,GAAa,EAAE,CAAC;gBAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACrF,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC/B,kEAAkE;oBAClE,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;oBACvB,QAAQ,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC3B,CAAC;gBAED,IAAI,MAAc,CAAC;gBACnB,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,CAAC,GAAG,QAAQ,EAAE,SAAS,CAAC,CAAC;oBACtC,IAAI,IAAI,CAAC,cAAc,CAAC,UAAU;wBAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;oBACvF,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;gBAClD,CAAC;gBAAC,OAAO,MAAM,EAAE,CAAC;oBAChB,MAAM,SAAS,GAAG,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC5E,MAAM,YAAY,GAAI,MAAsC,CAAC,MAAM,IAAI,EAAE,CAAC;oBAC1E,IAAI,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;wBACxE,mCAAmC;wBACnC,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,QAAQ,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;oBACtE,CAAC;yBAAM,IAAI,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;wBACpD,2EAA2E;wBAC3E,uEAAuE;wBACvE,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;oBACxD,CAAC;yBAAM,CAAC;wBACN,MAAM,MAAM,CAAC;oBACf,CAAC;gBACH,CAAC;gBACD,gFAAgF;gBAChF,4EAA4E;gBAC5E,+EAA+E;gBAC/E,8DAA8D;gBAC9D,IAAI,SAAc,CAAC;gBACnB,IAAI,CAAC;oBACH,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACjC,CAAC;gBAAC,MAAM,CAAC,CAAC,oFAAoF;oBAC5F,SAAS,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;gBAC3C,CAAC;gBACD,IAAI,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxD,gBAAgB,GAAG,2BAA2B,SAAS,CAAC,QAAQ,CAAC,MAAM,oBAAoB,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC/H,CAAC;gBACD,IAAI,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpD,gBAAgB,IAAI,wBAAwB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;gBAC7E,CAAC;gBACD,yBAAyB;gBACzB,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC;oBAC3B,MAAM,QAAQ,GAAG,SAAS,CAAC,YAAY,CAAC,QAAoB,CAAC;oBAC7D,gBAAgB,GAAG,oCAAoC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;wBAC5E,4GAA4G,CAAC;gBACjH,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChE,MAAM,SAAS,GAAI,GAAmC,CAAC,MAAM,IAAI,EAAE,CAAC;gBACpE,+EAA+E;gBAC/E,4EAA4E;gBAC5E,uEAAuE;gBACvE,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;gBAC/H,MAAM,gBAAgB,GAAG,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,eAAe,CAAC;gBACxH,0EAA0E;gBAC1E,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,aAAa,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxE,mBAAmB,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC;wBACvC,OAAO,EAAE,mCAAmC;wBAC5C,OAAO,EAAE,4BAA4B;wBACrC,QAAQ,EAAE,8CAA8C;wBACxD,MAAM,EAAE,QAAQ,MAAM,GAAG,MAAM,EAAE;wBACjC,MAAM,EAAE,+CAA+C;qBACxD,CAAC,CAAC;gBACL,CAAC;gBACD,yDAAyD;gBACzD,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBAC7D,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACrC,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAClC,gBAAgB,GAAG,sCAAsC,SAAS,CAAC,QAAQ,CAAC,MAAM,oBAAoB,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC1I,CAAC;gBACH,CAAC;gBAAC,OAAO,WAAW,EAAE,CAAC;oBACrB,gBAAgB,GAAG,kCAAkC,MAAM,GAAG,CAAC;gBACjE,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO;YACP,eAAe;YACf,UAAU;YACV,OAAO,EAAE,OAAO;gBACd,CAAC,CAAC,iBAAiB,eAAe,QAAQ,UAAU,IAAI,gBAAgB,GAAG,gBAAgB,IAAI,IAAI,CAAC,aAAa,IAAI,iCAAiC,EAAE;gBACxJ,CAAC,CAAC,wDAAwD,eAAe,kCAAkC;YAC7G,aAAa,EAAE,OAAO;YACtB,WAAW,EAAE,SAAS,EAAE,yCAAyC;SAClE,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC5C,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,eAAe,EAAE,IAAI,CAAC,mBAAmB,EAAE;gBAC3C,eAAe,EAAE,IAAI,CAAC,mBAAmB,EAAE;gBAC3C,OAAO,EAAE,2EAA2E;aACrF,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAElD,+CAA+C;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAC7D,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE7C,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QAC3D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAClC,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACrG,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;gBAC1B,SAAS,EAAE,UAAU,YAAY,CAAC,eAAe,EAAE;gBACnD,kBAAkB;gBAClB,UAAU,EAAE,SAAS;aACtB,EAAE,MAAM,CAAC,CAAC;QACb,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,eAAe,EAAE,cAAc;gBAC/B,eAAe,EAAE,cAAc;gBAC/B,OAAO,EAAE,oBAAoB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;aAChF,CAAC;QACJ,CAAC;QAED,0CAA0C;QAC1C,IAAI,eAAuB,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;YACpF,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC/D,eAAe,GAAG,GAAG,CAAC,OAAO,IAAI,SAAS,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,eAAe,GAAG,SAAS,CAAC;YAC9B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,eAAe,GAAG,SAAS,CAAC;QAC9B,CAAC;QAED,MAAM,OAAO,GAAG,eAAe,KAAK,YAAY,CAAC,eAAe,CAAC;QAEjE,IAAI,OAAO,EAAE,CAAC;YACZ,gDAAgD;YAChD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC;QAED,OAAO;YACL,OAAO;YACP,eAAe,EAAE,cAAc;YAC/B,eAAe;YACf,OAAO,EAAE,OAAO;gBACd,CAAC,CAAC,qBAAqB,cAAc,QAAQ,eAAe,GAAG;gBAC/D,CAAC,CAAC,uCAAuC,eAAe,cAAc,YAAY,CAAC,eAAe,IAAI;SACzG,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;YAAE,OAAO,IAAI,CAAC;QACnD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;QACjE,CAAC;QAAC,MAAM,CAAC;YACP,+CAA+C;YAC/C,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,cAAc,CAAC,OAAe;QAClC,2BAA2B;QAC3B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC;YAC9D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,mBAAmB,SAAS,GAAG,EAAE,EAAE;gBACjE,OAAO,EAAE;oBACP,QAAQ,EAAE,gCAAgC;oBAC1C,YAAY,EAAE,uBAAuB;iBACtC;gBACD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;aACnC,CAAC,CAAC;YAEH,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAChB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAsC,CAAC;gBAC1E,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACjB,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;oBAC3C,OAAO,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC1E,CAAC;gBACD,IAAI,OAAO,CAAC,IAAI;oBAAE,OAAO,OAAO,CAAC,IAAI,CAAC;YACxC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,iDAAiD;QACnD,CAAC;QAED,6CAA6C;QAC7C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,kEAAkE,EAClE;gBACE,OAAO,EAAE;oBACP,QAAQ,EAAE,gCAAgC;oBAC1C,YAAY,EAAE,uBAAuB;iBACtC;gBACD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;aACnC,CACF,CAAC;YAEF,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAChB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA4C,CAAC;gBAChF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,MAAM,KAAK,GAAG,OAAO;yBAClB,GAAG,CAAC,CAAC,CAAC,EAAE;wBACP,yCAAyC;wBACzC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;wBAClD,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,CAAC,CAAC;yBACD,IAAI,CAAC,IAAI,CAAC,CAAC;oBACd,OAAO,oBAAoB,KAAK,EAAE,CAAC;gBACrC,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,oDAAoD;QACtD,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,YAAY;QACV,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QAChD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAC9D,CAAC;QAAC,MAAM,CAAC;YACP,wDAAwD;YACxD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,mBAAmB;QACjB,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC,sBAAsB,CAAC;QACrC,CAAC;QAED,IAAI,CAAC;YACH,4DAA4D;YAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAC1B,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EACjC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CACjC,CAAC;YACF,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC1D,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC;gBACvC,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC;gBACtC,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,0DAA0D,CAAC,CAAC;QAEtE,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC;QACtC,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED;;OAEG;IACK,SAAS,CAAC,GAAW,EAAE,IAAc,EAAE,SAAiB;QAC9D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE;gBAChC,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,SAAS;aACnB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;gBACzB,IAAI,GAAG,EAAE,CAAC;oBACR,yDAAyD;oBACxD,GAAmC,CAAC,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC;oBAC3D,MAAM,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBACjC,CAAC;YACH,CAAC,CAAC,CAAC;YACH,sDAAsD;YACtD,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,OAAO,CAAC,CAAS,EAAE,CAAS;QAClC,2DAA2D;QAC3D,MAAM,QAAQ,GAAG,sBAAsB,CAAC;QACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAErC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,EAAE,GAAG,EAAE;gBAAE,OAAO,IAAI,CAAC;YACzB,IAAI,EAAE,GAAG,EAAE;gBAAE,OAAO,KAAK,CAAC;QAC5B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,SAAS,CAAC,IAAgB;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,sEAAsE;QACtE,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC9F,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACzD,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC;gBAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;YACtD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAC,eAAuB,EAAE,cAAsB;QACtE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5C,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC;YACjD,eAAe;YACf,cAAc;YACd,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACf,CAAC;IAEO,iBAAiB;QACvB,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YACrC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"UpdateChecker.js","sourceRoot":"","sources":["../../src/core/UpdateChecker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* junk-payload — classifier for debug/sanity-check strings that shouldn't
|
|
3
|
+
* reach the user (e.g., a stray "test" leaked from a reply-pipe validation).
|
|
4
|
+
*
|
|
5
|
+
* Keep the list conservative. False positives are painful (blocking a real
|
|
6
|
+
* short reply); false negatives only leak the exact string that was tried,
|
|
7
|
+
* and the agent will notice and not repeat.
|
|
8
|
+
*/
|
|
9
|
+
export interface JunkCheckResult {
|
|
10
|
+
junk: boolean;
|
|
11
|
+
reason?: string;
|
|
12
|
+
}
|
|
13
|
+
export declare function isJunkPayload(text: string): JunkCheckResult;
|
|
14
|
+
//# sourceMappingURL=junk-payload.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"junk-payload.d.ts","sourceRoot":"","sources":["../../src/core/junk-payload.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAYH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAa3D"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* junk-payload — classifier for debug/sanity-check strings that shouldn't
|
|
3
|
+
* reach the user (e.g., a stray "test" leaked from a reply-pipe validation).
|
|
4
|
+
*
|
|
5
|
+
* Keep the list conservative. False positives are painful (blocking a real
|
|
6
|
+
* short reply); false negatives only leak the exact string that was tried,
|
|
7
|
+
* and the agent will notice and not repeat.
|
|
8
|
+
*/
|
|
9
|
+
const JUNK_WORDS = new Set([
|
|
10
|
+
'test', 'testing', 'testmsg', 'tst',
|
|
11
|
+
'asdf', 'asdfasdf', 'qwerty',
|
|
12
|
+
'foo', 'foobar', 'bar', 'baz', 'qux',
|
|
13
|
+
'ping', 'pong', 'debug', 'trace', 'log',
|
|
14
|
+
'hi', 'hello', 'hey', 'yo',
|
|
15
|
+
'x', 'y', 'z', 'a', 'b', 'c',
|
|
16
|
+
'abc', '123', 'xxx', 'zzz',
|
|
17
|
+
]);
|
|
18
|
+
export function isJunkPayload(text) {
|
|
19
|
+
const trimmed = text.trim();
|
|
20
|
+
if (trimmed.length === 0) {
|
|
21
|
+
return { junk: true, reason: 'empty or whitespace-only' };
|
|
22
|
+
}
|
|
23
|
+
const words = trimmed.split(/\s+/);
|
|
24
|
+
if (words.length === 1 && trimmed.length < 16) {
|
|
25
|
+
const normalized = trimmed.toLowerCase().replace(/[^\p{L}\p{N}]/gu, '');
|
|
26
|
+
if (JUNK_WORDS.has(normalized)) {
|
|
27
|
+
return { junk: true, reason: `matches known debug token "${normalized}"` };
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return { junk: false };
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=junk-payload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"junk-payload.js","sourceRoot":"","sources":["../../src/core/junk-payload.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,UAAU,GAAG,IAAI,GAAG,CAAS;IACjC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK;IACnC,MAAM,EAAE,UAAU,EAAE,QAAQ;IAC5B,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;IACpC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK;IACvC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI;IAC1B,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;IAC5B,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;CAC3B,CAAC,CAAC;AAOH,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,EAAE,CAAC;IAC5D,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;QACxE,IAAI,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,8BAA8B,UAAU,GAAG,EAAE,CAAC;QAC7E,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACzB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./builtin-manifest.schema.json",
|
|
3
3
|
"schemaVersion": 1,
|
|
4
|
-
"generatedAt": "2026-04-
|
|
5
|
-
"instarVersion": "0.28.
|
|
4
|
+
"generatedAt": "2026-04-15T16:15:05.626Z",
|
|
5
|
+
"instarVersion": "0.28.42",
|
|
6
6
|
"entryCount": 186,
|
|
7
7
|
"entries": {
|
|
8
8
|
"hook:session-start": {
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Upgrade Guide — v0.28.42
|
|
2
|
+
|
|
3
|
+
<!-- bump: patch -->
|
|
4
|
+
|
|
5
|
+
## What Changed
|
|
6
|
+
|
|
7
|
+
Fixed a silent failure in post-update migration: when Node.js is upgraded in place (e.g., via `brew upgrade node`) while an Instar server is still running, `process.execPath` can point at a binary path that no longer exists on disk. The subsequent spawn fails with ENOENT and post-update migration skips silently, leaving agent configuration stale after auto-updates.
|
|
8
|
+
|
|
9
|
+
`UpdateChecker.postUpdateMigration` now guards `process.execPath` with an `existsSync` check and falls back to `node` on PATH when the resolved exec path has been deleted.
|
|
10
|
+
|
|
11
|
+
## What to Tell Your User
|
|
12
|
+
|
|
13
|
+
- **More reliable self-updates**: "If your system's Node was upgraded while I was running, my next auto-update will still apply its migrations correctly instead of silently skipping them."
|
|
14
|
+
|
|
15
|
+
## Summary of New Capabilities
|
|
16
|
+
|
|
17
|
+
| Capability | How to Use |
|
|
18
|
+
|-----------|-----------|
|
|
19
|
+
| Resilient post-update migration across in-place Node upgrades | automatic |
|
|
20
|
+
|
|
21
|
+
## Evidence
|
|
22
|
+
|
|
23
|
+
Reproduction: Homebrew users who ran `brew upgrade node` between Instar server starts reported repeated `UpdateChecker.postUpdateMigration` degradation events with reason `spawn /opt/homebrew/Cellar/node@22/22.22.2/bin/node ENOENT`. Root cause traced to `src/core/UpdateChecker.ts:282` where `cmd = process.execPath` was spawned unconditionally.
|
|
24
|
+
|
|
25
|
+
Verified fix: Before — `execFile(process.execPath, [shadowCliJs, 'migrate'])` rejects with ENOENT when the Cellar path is gone; degradation reporter fires; migration skipped. After — `fs.existsSync(process.execPath)` returns false, `cmd` falls back to `'node'`, spawn resolves via PATH, migration runs. Unit tests for UpdateChecker (13) continue to pass.
|
package/upgrades/0.28.41.md
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
# Upgrade Guide — v0.28.41
|
|
2
|
-
|
|
3
|
-
<!-- bump: patch -->
|
|
4
|
-
|
|
5
|
-
## What Changed
|
|
6
|
-
|
|
7
|
-
Two fixes for volatile state that didn't survive restarts in the Threadline REST adapter and relay offline queue:
|
|
8
|
-
|
|
9
|
-
1. **REST thread history now persists to disk.** `ThreadlineRESTServer` previously held thread history in memory only, so restarts lost all conversation history even when the client-side MessageStore had messages on disk. The server now hydrates from `~/.threadline/thread-history.json` on startup and persists debounced (1s) on incoming messages and thread deletions. Writes are atomic (temp file + rename) and size-bounded by the existing `maxMessageHistoryPerThread` cap. New config: `historyPath` (default `~/.threadline/thread-history.json`) and `persistHistory` (default `true`, set `false` for tests/ephemeral servers).
|
|
10
|
-
|
|
11
|
-
2. **Offline queue default TTL extended from 1h to 24h.** `InMemoryOfflineQueue`'s 1-hour default was shorter than typical offline/restart windows for agents, so messages to offline recipients expired before reconnection. Configurable via `OfflineQueueConfig.defaultTtlMs` if you need different behavior.
|
|
12
|
-
|
|
13
|
-
No API breakage. Existing servers/queues using defaults just get more durable behavior.
|
|
14
|
-
|
|
15
|
-
## What to Tell Your User
|
|
16
|
-
|
|
17
|
-
- **Conversation history survives restarts**: "Your thread history will stick around now even if I get restarted — no more losing context from earlier in our conversation."
|
|
18
|
-
- **Messages wait longer for offline agents**: "If you message another agent who's offline, the message will wait up to a day for them to come back online instead of expiring after an hour."
|
|
19
|
-
|
|
20
|
-
## Summary of New Capabilities
|
|
21
|
-
|
|
22
|
-
| Capability | How to Use |
|
|
23
|
-
|-----------|-----------|
|
|
24
|
-
| Persistent REST thread history | Automatic (opt-out via `persistHistory: false`) |
|
|
25
|
-
| 24h offline message retention | Automatic (override via `defaultTtlMs`) |
|
|
26
|
-
|
|
27
|
-
## Evidence
|
|
28
|
-
|
|
29
|
-
Reproduction before fix:
|
|
30
|
-
1. Start `npx @anthropic-ai/threadline serve --port 18800`
|
|
31
|
-
2. Receive messages on a thread → `GET /threads/{id}` returns them
|
|
32
|
-
3. Restart the server
|
|
33
|
-
4. `GET /threads/{id}` returns 404 — history lost
|
|
34
|
-
|
|
35
|
-
After fix:
|
|
36
|
-
1. Same steps 1–2
|
|
37
|
-
2. Within 1s, `~/.threadline/thread-history.json` contains the thread
|
|
38
|
-
3. Restart the server
|
|
39
|
-
4. `GET /threads/{id}` returns the same messages — hydrated from disk
|
|
40
|
-
|
|
41
|
-
Unit tests (40/40 passing in `OfflineQueue.test.ts` and `RESTServerE2E.test.ts`) cover the default config values and existing REST flows; persistence is best-effort (wrapped in try/catch) so disk failures don't crash the server.
|