@clien-ai/mcp 0.12.0 → 0.12.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +41 -1
- package/dist/auth/errors.js +10 -0
- package/dist/auth/errors.js.map +1 -0
- package/dist/auth/oauth.js +2 -8
- package/dist/auth/oauth.js.map +1 -1
- package/dist/auth/storage.js +1 -1
- package/dist/auth/storage.js.map +1 -1
- package/dist/server.js +4 -1
- package/dist/server.js.map +1 -1
- package/dist/tools/cancel-research.js +260 -0
- package/dist/tools/cancel-research.js.map +1 -0
- package/dist/tools/collections.js +183 -68
- package/dist/tools/collections.js.map +1 -1
- package/dist/tools/errors.js +2 -0
- package/dist/tools/errors.js.map +1 -1
- package/dist/tools/market-signals.js +121 -0
- package/dist/tools/market-signals.js.map +1 -0
- package/dist/tools/market-sizing-proof.js +9 -3
- package/dist/tools/market-sizing-proof.js.map +1 -1
- package/dist/tools/output-schemas.js +78 -11
- package/dist/tools/output-schemas.js.map +1 -1
- package/dist/tools/permanent-failure.js +75 -0
- package/dist/tools/permanent-failure.js.map +1 -0
- package/dist/tools/registry.js +102 -34
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/report-digest.js +355 -45
- package/dist/tools/report-digest.js.map +1 -1
- package/dist/tools/research.js +42 -3
- package/dist/tools/research.js.map +1 -1
- package/dist/tools/scoped-research.js +96 -55
- package/dist/tools/scoped-research.js.map +1 -1
- package/dist/types/report.js +385 -21
- package/dist/types/report.js.map +1 -1
- package/dist/types/semantic-theme.js +43 -0
- package/dist/types/semantic-theme.js.map +1 -0
- package/package.json +5 -1
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { resolveSupportedMarketSizing } from './market-sizing-proof.js';
|
|
2
|
+
function object(value) {
|
|
3
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value)
|
|
4
|
+
? value
|
|
5
|
+
: null;
|
|
6
|
+
}
|
|
7
|
+
function safeUrl(value) {
|
|
8
|
+
if (typeof value !== 'string')
|
|
9
|
+
return false;
|
|
10
|
+
try {
|
|
11
|
+
const url = new URL(value);
|
|
12
|
+
return (url.protocol === 'http:' || url.protocol === 'https:') && !url.username && !url.password;
|
|
13
|
+
}
|
|
14
|
+
catch {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
function normalizedQuote(value) {
|
|
19
|
+
return value
|
|
20
|
+
.replace(/[‘’‛]/g, "'")
|
|
21
|
+
.replace(/[“”]/g, '"')
|
|
22
|
+
.replace(/[‐‑‒–—―]/g, '-')
|
|
23
|
+
.replace(/…/g, '...')
|
|
24
|
+
.replace(/\s+/g, ' ')
|
|
25
|
+
.trim()
|
|
26
|
+
.toLowerCase();
|
|
27
|
+
}
|
|
28
|
+
function exactSource(sourceId, evidence) {
|
|
29
|
+
if (typeof sourceId !== 'string')
|
|
30
|
+
return null;
|
|
31
|
+
const match = /^RRCP-s(0|[1-9]\d*)$/.exec(sourceId);
|
|
32
|
+
const source = match ? object(evidence[Number(match[1])]) : null;
|
|
33
|
+
return source?.section === 'market' && safeUrl(source.url) &&
|
|
34
|
+
typeof source.quote === 'string' && source.quote.trim()
|
|
35
|
+
? source
|
|
36
|
+
: null;
|
|
37
|
+
}
|
|
38
|
+
/** Resolve only strict sizing or exact grounded claim selectors; never infer from raw scope. */
|
|
39
|
+
export function resolveMarketSignals(rawSignals, rawSizing, claims, evidence) {
|
|
40
|
+
if (!Array.isArray(rawSignals))
|
|
41
|
+
return [];
|
|
42
|
+
const sizing = resolveSupportedMarketSizing(rawSizing, claims, evidence);
|
|
43
|
+
const identities = rawSignals.slice(0, 3).map((raw) => {
|
|
44
|
+
const signal = object(raw);
|
|
45
|
+
if (signal?.kind === 'size' && typeof signal.scope === 'string')
|
|
46
|
+
return `size:${signal.scope}`;
|
|
47
|
+
return typeof signal?.claimId === 'string' ? `claim:${signal.claimId}` : null;
|
|
48
|
+
});
|
|
49
|
+
const identityCounts = new Map();
|
|
50
|
+
for (const identity of identities) {
|
|
51
|
+
if (identity)
|
|
52
|
+
identityCounts.set(identity, (identityCounts.get(identity) ?? 0) + 1);
|
|
53
|
+
}
|
|
54
|
+
return rawSignals.slice(0, 3).flatMap((raw, index) => {
|
|
55
|
+
const signal = object(raw);
|
|
56
|
+
const identity = identities[index];
|
|
57
|
+
if (!signal || !identity || identityCounts.get(identity) !== 1)
|
|
58
|
+
return [];
|
|
59
|
+
if (signal.kind === 'size') {
|
|
60
|
+
const matches = sizing.map(object).filter((entry) => entry?.scope === signal.scope);
|
|
61
|
+
if (matches.length !== 1)
|
|
62
|
+
return [];
|
|
63
|
+
const entry = matches[0];
|
|
64
|
+
if (typeof entry.value !== 'number' || typeof entry.currency !== 'string')
|
|
65
|
+
return [];
|
|
66
|
+
const derivation = object(entry.derivation);
|
|
67
|
+
const sourceIds = entry.evidenceState === 'derived' && Array.isArray(derivation?.inputs)
|
|
68
|
+
? derivation.inputs.flatMap((candidate) => {
|
|
69
|
+
const input = object(candidate);
|
|
70
|
+
return input?.kind !== 'ratio_assumption' && typeof input?.sourceId === 'string'
|
|
71
|
+
? [input.sourceId]
|
|
72
|
+
: [];
|
|
73
|
+
})
|
|
74
|
+
: typeof entry.sourceId === 'string' ? [entry.sourceId] : [];
|
|
75
|
+
const sources = [...new Set(sourceIds)].map((sourceId) => exactSource(sourceId, evidence));
|
|
76
|
+
if (sources.length === 0 || sources.some((source) => source === null))
|
|
77
|
+
return [];
|
|
78
|
+
return [{
|
|
79
|
+
kind: 'size',
|
|
80
|
+
label: String(entry.scope).toUpperCase(),
|
|
81
|
+
value: entry.value,
|
|
82
|
+
currency: entry.currency,
|
|
83
|
+
context: [entry.geography, entry.audience, entry.period].filter((part) => typeof part === 'string').join(' · '),
|
|
84
|
+
evidenceState: entry.evidenceState === 'derived' ? 'derived' : 'source_stated',
|
|
85
|
+
formula: typeof derivation?.formula === 'string' ? derivation.formula : undefined,
|
|
86
|
+
assumptions: Array.isArray(derivation?.assumptions)
|
|
87
|
+
? derivation.assumptions.filter((item) => typeof item === 'string')
|
|
88
|
+
: undefined,
|
|
89
|
+
sources: sources,
|
|
90
|
+
}];
|
|
91
|
+
}
|
|
92
|
+
if (signal.kind !== 'growth' && signal.kind !== 'buying_behavior' &&
|
|
93
|
+
signal.kind !== 'category_dynamics')
|
|
94
|
+
return [];
|
|
95
|
+
if (typeof signal.claimId !== 'string' || typeof signal.sourceId !== 'string')
|
|
96
|
+
return [];
|
|
97
|
+
const claimMatches = claims.map(object).filter((claim) => claim !== null && claim.id === signal.claimId && claim.section === 'market');
|
|
98
|
+
if (claimMatches.length !== 1)
|
|
99
|
+
return [];
|
|
100
|
+
const claim = claimMatches[0];
|
|
101
|
+
if (claim.state !== 'GROUNDED' || claim.sourceId !== signal.sourceId ||
|
|
102
|
+
(signal.kind === 'growth' && claim.marketScope !== 'growth_rate') ||
|
|
103
|
+
(signal.kind !== 'growth' && claim.marketScope === 'growth_rate') ||
|
|
104
|
+
(signal.kind !== 'growth' && ['tam', 'sam', 'som'].includes(String(claim.marketScope ?? ''))))
|
|
105
|
+
return [];
|
|
106
|
+
const source = exactSource(signal.sourceId, evidence);
|
|
107
|
+
if (!source || typeof claim.text !== 'string')
|
|
108
|
+
return [];
|
|
109
|
+
const quoteSpan = typeof claim.quoteSpan === 'string' ? claim.quoteSpan.trim() : '';
|
|
110
|
+
if (quoteSpan === '' ||
|
|
111
|
+
!normalizedQuote(String(source.quote)).includes(normalizedQuote(quoteSpan)))
|
|
112
|
+
return [];
|
|
113
|
+
const label = signal.kind === 'growth'
|
|
114
|
+
? 'Growth'
|
|
115
|
+
: signal.kind === 'buying_behavior'
|
|
116
|
+
? 'Buying behavior'
|
|
117
|
+
: 'Category dynamic';
|
|
118
|
+
return [{ kind: signal.kind, label, context: claim.text, source }];
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=market-signals.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"market-signals.js","sourceRoot":"","sources":["../../src/tools/market-signals.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,7 @@ const MAGNITUDES = {
|
|
|
18
18
|
trillion: 1e12,
|
|
19
19
|
};
|
|
20
20
|
const MONEY_RE = /(?:\b([A-Z]{3})\s*|([$€£])\s*)(\d{1,3}(?:,\d{3})*(?:\.\d+)?|\d+(?:\.\d+)?)\s*(trillion|billion|million|thousand|tn|bn|[TBMK])?\b/gi;
|
|
21
|
+
const SIGN_OR_RANGE_RE = /[-+−]\s*$/;
|
|
21
22
|
const ISO_CURRENCY_CODES = new Set(Intl.supportedValuesOf('currency'));
|
|
22
23
|
function object(value) {
|
|
23
24
|
return typeof value === 'object' && value !== null && !Array.isArray(value)
|
|
@@ -49,7 +50,7 @@ function money(text) {
|
|
|
49
50
|
const match = matches[0];
|
|
50
51
|
const before = text.slice(0, match.index ?? 0);
|
|
51
52
|
const after = text.slice((match.index ?? 0) + match[0].length);
|
|
52
|
-
if (
|
|
53
|
+
if (SIGN_OR_RANGE_RE.test(before) || /^\s*(?:-|–|—|to\b)/i.test(after))
|
|
53
54
|
return null;
|
|
54
55
|
const unit = match[4] ? (MAGNITUDES[match[4].toLowerCase()] ?? Number.NaN) : 1;
|
|
55
56
|
const parsed = Number(match[3].replaceAll(',', '')) * unit;
|
|
@@ -103,8 +104,13 @@ function amountMatches(text, value, expectedCurrency) {
|
|
|
103
104
|
}
|
|
104
105
|
function ratioMatches(text, value) {
|
|
105
106
|
const matches = [...text.matchAll(/(\d+(?:\.\d+)?)\s*%/g)];
|
|
106
|
-
|
|
107
|
-
|
|
107
|
+
if (matches.length !== 1 || value <= 0 || value > 1)
|
|
108
|
+
return false;
|
|
109
|
+
const match = matches[0];
|
|
110
|
+
const before = text.slice(0, match.index ?? 0);
|
|
111
|
+
const after = text.slice((match.index ?? 0) + match[0].length);
|
|
112
|
+
return !SIGN_OR_RANGE_RE.test(before) && !/^\s*(?:-|–|—|to\b)/i.test(after) &&
|
|
113
|
+
Math.abs(Number(match[1]) / 100 - value) <= 1e-9;
|
|
108
114
|
}
|
|
109
115
|
function exactProof(claimId, sourceId, claims, evidence) {
|
|
110
116
|
if (typeof claimId !== 'string' || typeof sourceId !== 'string')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-sizing-proof.js","sourceRoot":"","sources":["../../src/tools/market-sizing-proof.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,UAAU,GAA2B;IACzC,CAAC,EAAE,GAAG;IACN,QAAQ,EAAE,GAAG;IACb,CAAC,EAAE,GAAG;IACN,OAAO,EAAE,GAAG;IACZ,CAAC,EAAE,GAAG;IACN,EAAE,EAAE,GAAG;IACP,OAAO,EAAE,GAAG;IACZ,CAAC,EAAE,IAAI;IACP,EAAE,EAAE,IAAI;IACR,QAAQ,EAAE,IAAI;CACf,CAAA;AACD,MAAM,QAAQ,GAAG,oIAAoI,CAAA;AACrJ,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAA;AAEtE,SAAS,MAAM,CAAC,KAAc;IAC5B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACzE,CAAC,CAAC,KAAgC;QAClC,CAAC,CAAC,IAAI,CAAA;AACV,CAAC;AAED,SAAS,MAAM,CAAC,KAAc;IAC5B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AACxE,CAAC;AAED,SAAS,MAAM,CAAC,KAAc;IAC5B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AACxF,CAAC;AAED,SAAS,QAAQ,CAAC,IAAa,EAAE,MAAe;IAC9C,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QAClF,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAClC,CAAC;IACD,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,KAAK,CAAA;IAChC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,KAAK,CAAA;IAChC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,KAAK,CAAA;IAChC,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,KAAK,CAAC,IAAY;IACzB,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC5C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACrC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAE,CAAA;IACzB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAC9D,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC9E,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9E,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAA;IAC3D,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;QACpE,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAChC,OAAO,cAAc,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC;QAC5D,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE;QACrE,CAAC,CAAC,IAAI,CAAA;AACV,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;AAChE,CAAC;AAED,SAAS,cAAc,CAAC,IAAY,EAAE,KAAa;IACjD,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAChC,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1B,IAAI,KAAK,MAAM;QACf,IAAI,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC;QAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,MAAM,GAAG,CAAC,CAC7B,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CAAC,IAAY,EAAE,KAA8B;IACnE,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;IAC7B,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;IACtF,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;AAC/E,CAAC;AAED,MAAM,aAAa,GAAsC;IACvD,GAAG,EAAE,CAAC,KAAK,EAAE,0BAA0B,CAAC;IACxC,GAAG,EAAE,CAAC,KAAK,EAAE,gCAAgC,EAAE,8BAA8B,CAAC;IAC9E,GAAG,EAAE,CAAC,KAAK,EAAE,+BAA+B,CAAC;CAC9C,CAAA;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,KAAc;IAChD,MAAM,OAAO,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAC5E,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;IAC7B,OAAO,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA;AAClE,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,GAAG,MAAM,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,GAAG,CAAA;AACpD,CAAC;AAED,MAAM,qBAAqB,GAAG,yEAAyE,CAAA;AAEvG,SAAS,UAAU,CAAC,KAAc,EAAE,SAAS,GAAG,KAAK;IACnD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QACtE,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AACvD,CAAC;AAED,SAAS,WAAW,CAAC,MAAc,EAAE,QAAgB;IACnD,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAA;AACjF,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,KAAa,EAAE,gBAAwB;IAC1E,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;IAC1B,OAAO,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,gBAAgB;QACrD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC,CAAA;AAClE,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,KAAa;IAC/C,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAA;IAC1D,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QACvC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI,IAAI,CAAA;AAC1D,CAAC;AAED,SAAS,UAAU,CACjB,OAAgB,EAChB,QAAiB,EACjB,MAA0B,EAC1B,QAA4B;IAE5B,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IAC5E,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CACnD,KAAK,EAAE,EAAE,KAAK,OAAO,IAAI,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,KAAK,UAAU,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,CACjH,CAAA;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACtC,MAAM,SAAS,GAAG,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACvD,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACxE,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACnC,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC/B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAA;IACvF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;QAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,OAAO,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAA;IACtH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAA;AACpE,CAAC;AAED,SAAS,SAAS,CAChB,KAA8B,EAC9B,MAA0B,EAC1B,QAA4B;IAE5B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACjC,MAAM,cAAc,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC/C,IAAI,CAAC,KAAK,IAAI,CAAC,cAAc,IAAI,CAAC,eAAe,CAC/C,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,EAChG,KAAK,CACN;QAAE,OAAO,KAAK,CAAA;IAEf,IAAI,KAAK,CAAC,aAAa,KAAK,eAAe,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;QACzE,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QACxB,IAAI,KAAK,CAAC,WAAW,KAAK,KAAK,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QACnD,OAAO,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,cAAc,CAAC;YAC1D,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,cAAc,CAAC;YACjD,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC;YAC9E,YAAY,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;IACxF,CAAC;IACD,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IACnD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACrF,IACE,UAAU,EAAE,SAAS,KAAK,UAAU;QACpC,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC;QAC3B,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC;QACtC,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QACtE,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;QACxE,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC;QAChF,OAAO,KAAK,CAAA;IAEd,IAAI,cAAc,GAAG,CAAC,CAAA;IACtB,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,IAAI,UAAU,GAAG,CAAC,CAAA;IAClB,IAAI,WAAW,GAAG,CAAC,CAAA;IACnB,IAAI,gBAAgB,GAAG,CAAC,CAAA;IACxB,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,SAAU,CAAA;QACxB,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACtC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACjC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;QACvB,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC9C,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,kBAAkB,CAAC;YAAE,OAAO,KAAK,CAAA;QACnH,IAAI,IAAI,KAAK,kBAAkB,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YACvC,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACnC,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACnC,IACE,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,GAAG,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI;gBAC1E,GAAG,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC;gBAC3D,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;gBAC3F,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;gBAC3F,OAAO,KAAK,CAAA;YACd,gBAAgB,IAAI,CAAC,CAAA;YACrB,OAAO,IAAI,IAAI,CAAA;YACf,UAAU,IAAI,GAAG,CAAA;YACjB,WAAW,IAAI,IAAI,CAAA;YACnB,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAA;QAC3H,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,IAAI,aAAa,KAAK,cAAc;gBAAE,OAAO,KAAK,CAAA;YAClD,cAAc,IAAI,CAAC,CAAA;QACrB,CAAC;aAAM,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,UAAU,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;QACvE,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;QACzE,IAAI,CAAC,KAAK,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC;YAAE,OAAO,KAAK,CAAA;QAC5G,IAAI,IAAI,KAAK,UAAU,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,aAAa,IAAI,KAAK,CAAC,WAAW,KAAK,OAAO,CAAC;YAAE,OAAO,KAAK,CAAA;QAC/G,MAAM,OAAO,GAAG,IAAI,KAAK,UAAU;YACjC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,cAAc,CAAC;YACtH,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;QACtF,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAA;QAC1B,OAAO,IAAI,UAAU,CAAA;QACrB,UAAU,IAAI,UAAU,CAAA;QACxB,WAAW,IAAI,UAAU,CAAA;IAC3B,CAAC;IACD,IAAI,cAAc,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACnG,IAAI,gBAAgB,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACvC,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;IACtC,MAAM,QAAQ,GAAG,KAAK,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAA;IACxG,MAAM,SAAS,GAAG,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IAC5G,MAAM,SAAS,GAAG,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IAC5G,OAAO,QAAQ,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI;QAClE,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,WAAW,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;AAC/G,CAAC;AAED,SAAS,gBAAgB,CAAI,KAAQ,EAAE,MAA0B,EAAE,QAA4B;IAC7F,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAC5B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAC7C,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAA;IACnH,IAAI,YAAY,GAAG,CAAC,CAAA;IACpB,IAAI,gBAAgB,GAAG,KAAK,CAAA;IAC5B,IAAI,GAAG,GAAG,CAAC,CAAA;IACX,IAAI,IAAI,GAAG,CAAC,CAAA;IACZ,IAAI,IAAI,GAAG,CAAC,CAAA;IACZ,MAAM,WAAW,GAAa,EAAE,CAAA;IAChC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QACjD,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAA;QAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QAClC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAA;QACtC,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YAC5C,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACxC,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACxC,IAAI,QAAQ,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI;gBAAE,OAAO,SAAS,CAAA;YACnF,YAAY,IAAI,CAAC,CAAA;YACjB,GAAG,IAAI,QAAQ,CAAA;YACf,IAAI,IAAI,SAAS,CAAA;YACjB,IAAI,IAAI,SAAS,CAAA;YACjB,WAAW,CAAC,IAAI,CACd,iBAAiB,YAAY,KAAK,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,uBAAuB,GAAG;gBACvF,QAAQ,UAAU,CAAC,QAAQ,CAAC,UAAU,UAAU,CAAC,SAAS,CAAC,UAAU,UAAU,CAAC,SAAS,CAAC,IAAI,CAC/F,CAAA;YACD,OAAO,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,iBAAiB,YAAY,KAAK,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAA;QAC1G,CAAC;QACD,GAAG,IAAI,KAAK,CAAA;QACZ,IAAI,IAAI,KAAK,CAAA;QACb,IAAI,IAAI,KAAK,CAAA;QACb,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;QACzE,MAAM,WAAW,GAAG,OAAO,KAAK,EAAE,WAAW,KAAK,QAAQ,IAAI,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC;YAC5F,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE;YACjC,CAAC,CAAC,IAAI,CAAA;QACR,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO;YAClC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;YACnB,CAAC,CAAC,WAAW,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,UAAU,SAAS,CAAA;QACrE,gBAAgB,KAAK,KAAK,CAAC,IAAI,KAAK,OAAO,CAAA;QAC3C,OAAO,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAA;IAC5B,CAAC,CAAC,CAAA;IACF,IAAI,gBAAgB;QAAE,WAAW,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAA;IAChE,OAAO;QACL,GAAG,MAAM;QACT,KAAK,EAAE,IAAI;QACX,UAAU,EAAE;YACV,GAAG,UAAU;YACb,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YAC3F,WAAW;YACX,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;YAC1B,MAAM;SACP;KACG,CAAA;AACR,CAAC;AAED,SAAS,UAAU,CAAC,CAA0B,EAAE,CAA0B;IACxE,OAAO,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QACvD,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ,CAAA;AAC5D,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,4BAA4B,CAC1C,OAAqB,EACrB,MAA0B,EAC1B,QAA4B;IAE5B,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QAC5B,OAAO,MAAM,KAAK,IAAI,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC/D,CAAC,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAmB,CAAA;IACzC,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,CAAA;QAClC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IACjD,CAAC;IACD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;IACnF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAE,CAAC,KAAK,EAAE,KAAK,CAAU,CAAC,CAAC,CAAA;IACtF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAW,CAAA;IACjC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAU,EAAE,CAAC;QAC1F,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;QACrC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;QACtC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,IAAI,MAAM,IAAI,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,GAAG,MAAM,EAAE,CAAC;YACtE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YAClB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IACD,OAAO,MAAM;SACV,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;SACpD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;AAC9D,CAAC"}
|
|
1
|
+
{"version":3,"file":"market-sizing-proof.js","sourceRoot":"","sources":["../../src/tools/market-sizing-proof.ts"],"names":[],"mappings":"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"}
|
|
@@ -126,18 +126,27 @@ export const LIST_INTERVIEWS_OUTPUT_SCHEMA = listSchema('interviews');
|
|
|
126
126
|
export const LIST_COMPETITORS_OUTPUT_SCHEMA = listSchema('competitors');
|
|
127
127
|
export const LIST_COMMUNITY_SIGNALS_OUTPUT_SCHEMA = listSchema('communitySignals');
|
|
128
128
|
/**
|
|
129
|
-
* `get_market` → `{ market }` (FUL-511).
|
|
130
|
-
*
|
|
131
|
-
*
|
|
132
|
-
*
|
|
133
|
-
* "this project has no market snapshot" (`market:
|
|
134
|
-
*
|
|
135
|
-
*
|
|
136
|
-
*
|
|
137
|
-
* `
|
|
138
|
-
*
|
|
129
|
+
* `get_market` → `{ market, marketSizing, marketSignals }` (FUL-511 / FUL-769).
|
|
130
|
+
*
|
|
131
|
+
* All three keys are `required` because the handler computes and sets them on
|
|
132
|
+
* every successful branch. `market` PRESENCE remains load-bearing: it lets a
|
|
133
|
+
* structured consumer tell "this project has no market snapshot" (`market:
|
|
134
|
+
* null`) from "the tool did not answer". In that honest empty state, the two
|
|
135
|
+
* strict projections are present as empty arrays.
|
|
136
|
+
*
|
|
137
|
+
* `marketSignals` is the selected strict cited projection; `marketSizing` is
|
|
138
|
+
* its supporting resolved sizing structure; and `market` is the neutral legacy
|
|
139
|
+
* snapshot. Naming all three here makes that authority split discoverable to
|
|
140
|
+
* structured clients.
|
|
141
|
+
* `market` itself stays unconstrained because `null` is meaningful, while the
|
|
142
|
+
* locally normalized projections can safely promise arrays of permissive
|
|
143
|
+
* objects without constraining backend-sourced fields.
|
|
139
144
|
*/
|
|
140
|
-
export const GET_MARKET_OUTPUT_SCHEMA = objectSchema({
|
|
145
|
+
export const GET_MARKET_OUTPUT_SCHEMA = objectSchema({
|
|
146
|
+
market: ANYTHING,
|
|
147
|
+
marketSizing: ANY_OBJECT_ARRAY,
|
|
148
|
+
marketSignals: ANY_OBJECT_ARRAY,
|
|
149
|
+
}, ['market', 'marketSizing', 'marketSignals']);
|
|
141
150
|
/**
|
|
142
151
|
* `list_interview_scripts` → `{ interviewScripts, sourceRun }` (FUL-514).
|
|
143
152
|
*
|
|
@@ -174,4 +183,62 @@ export const LIST_REPORTS_OUTPUT_SCHEMA = listSchema('jobs', false);
|
|
|
174
183
|
export const GET_CREDIT_BALANCE_OUTPUT_SCHEMA = objectSchema({
|
|
175
184
|
credits: objectSchema({ balance: ANYTHING, spendable: ANYTHING, costs: ANY_OBJECT_ARRAY }, []),
|
|
176
185
|
}, ['credits']);
|
|
186
|
+
/**
|
|
187
|
+
* `cancel_research` → full cancel response from the app.
|
|
188
|
+
* All fields are handler-guaranteed from the server response.
|
|
189
|
+
* Money facts are nullable (unknown) — never boolean false or number 0.
|
|
190
|
+
*/
|
|
191
|
+
export const CANCEL_RESEARCH_OUTPUT_SCHEMA = {
|
|
192
|
+
type: 'object',
|
|
193
|
+
properties: {
|
|
194
|
+
job_id: { type: 'string', description: 'The job UUID that was cancelled' },
|
|
195
|
+
status: { type: 'string', description: 'The job status after cancellation' },
|
|
196
|
+
outcome: {
|
|
197
|
+
type: 'string',
|
|
198
|
+
description: 'The cancel outcome — one of the CANCEL_ROUTE_OUTCOMES'
|
|
199
|
+
},
|
|
200
|
+
terminal_status: {
|
|
201
|
+
type: ['string', 'null'],
|
|
202
|
+
description: 'The terminal status the job reached, if any'
|
|
203
|
+
},
|
|
204
|
+
prior_status: {
|
|
205
|
+
type: ['string', 'null'],
|
|
206
|
+
description: 'The phase the server observed at the moment it cancelled'
|
|
207
|
+
},
|
|
208
|
+
charged: {
|
|
209
|
+
type: ['boolean', 'null'],
|
|
210
|
+
description: 'Whether the run was ever charged (null = unknown)'
|
|
211
|
+
},
|
|
212
|
+
refunded: {
|
|
213
|
+
type: ['boolean', 'null'],
|
|
214
|
+
description: 'Whether credits were refunded (null = unknown)'
|
|
215
|
+
},
|
|
216
|
+
refunded_credits: {
|
|
217
|
+
type: ['number', 'null'],
|
|
218
|
+
description: 'Credits returned by this cancel, or null when unknown'
|
|
219
|
+
},
|
|
220
|
+
cleanup_status: {
|
|
221
|
+
type: 'string',
|
|
222
|
+
description: 'The cleanup status — one of CANCEL_CLEANUP_STATUS_WIRE'
|
|
223
|
+
},
|
|
224
|
+
receipt_recorded: {
|
|
225
|
+
type: 'boolean',
|
|
226
|
+
description: 'Whether a cancellation receipt was recorded'
|
|
227
|
+
},
|
|
228
|
+
cancelled_at: {
|
|
229
|
+
type: ['string', 'null'],
|
|
230
|
+
description: 'When the job was marked as cancelled'
|
|
231
|
+
},
|
|
232
|
+
error: {
|
|
233
|
+
type: ['string', 'null'],
|
|
234
|
+
description: 'Error message for 409 responses'
|
|
235
|
+
},
|
|
236
|
+
code: {
|
|
237
|
+
type: ['string', 'null'],
|
|
238
|
+
description: 'Error code for 409 responses'
|
|
239
|
+
},
|
|
240
|
+
},
|
|
241
|
+
required: ['job_id', 'status', 'outcome', 'cleanup_status', 'receipt_recorded'],
|
|
242
|
+
additionalProperties: true,
|
|
243
|
+
};
|
|
177
244
|
//# sourceMappingURL=output-schemas.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output-schemas.js","sourceRoot":"","sources":["../../src/tools/output-schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,sEAAsE;AACtE,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAW,CAAA;AAE1E;;;;;;;;;;;GAWG;AACH,MAAM,QAAQ,GAAG,EAAW,CAAA;AAE5B,2EAA2E;AAC3E,MAAM,gBAAgB,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAW,CAAA;AAEtE;;;;;;;;;;GAUG;AACH,MAAM,UAAU,GAAG;IACjB,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,EAAE;KACV;IACD,oBAAoB,EAAE,IAAI;CAClB,CAAA;AAEV,SAAS,YAAY,CACnB,UAAmC,EACnC,QAAkB;IAElB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAA;AAC7E,CAAC;AAED;;;;;;GAMG;AACH,SAAS,UAAU,CAAC,aAAqB,EAAE,cAAc,GAAG,IAAI;IAC9D,MAAM,UAAU,GAA4B,EAAE,CAAC,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAA;IACjF,IAAI,cAAc;QAAE,UAAU,CAAC,UAAU,GAAG,UAAU,CAAA;IACtD,OAAO,YAAY,CAAC,UAAU,EAAE,CAAC,aAAa,CAAC,CAAC,CAAA;AAClD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,YAAY,CACnD,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,EAC7C,CAAC,SAAS,CAAC,CACZ,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,YAAY,CAClD;IACE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC1B,WAAW,EAAE,QAAQ;CACtB,EACD,CAAC,QAAQ,EAAE,QAAQ,CAAC,CACrB,CAAA;AAED,yFAAyF;AACzF,MAAM,CAAC,MAAM,2BAA2B,GAAG,YAAY,CACrD,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,EAC/C,CAAC,WAAW,CAAC,CACd,CAAA;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;AACjE,MAAM,CAAC,MAAM,2BAA2B,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;AACjE,MAAM,CAAC,MAAM,6BAA6B,GAAG,UAAU,CAAC,YAAY,CAAC,CAAA;AACrE,MAAM,CAAC,MAAM,8BAA8B,GAAG,UAAU,CAAC,aAAa,CAAC,CAAA;AACvE,MAAM,CAAC,MAAM,oCAAoC,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAA;AAClF
|
|
1
|
+
{"version":3,"file":"output-schemas.js","sourceRoot":"","sources":["../../src/tools/output-schemas.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { safeInline } from './render-safety.js';
|
|
2
|
+
/**
|
|
3
|
+
* How much of the server's own prose survives into the agent-visible line.
|
|
4
|
+
*
|
|
5
|
+
* The live strings run to ~155 characters and are the whole substance of the
|
|
6
|
+
* refusal, so `safeInline`'s 120 default would clip them mid-sentence. 300 matches
|
|
7
|
+
* the bound the sibling 400 handlers already spend on a server body.
|
|
8
|
+
*/
|
|
9
|
+
const PERMANENT_MESSAGE_MAX = 300;
|
|
10
|
+
/** Codes are machine identifiers echoed for an operator; they are never prose. */
|
|
11
|
+
const PERMANENT_CODE_MAX = 60;
|
|
12
|
+
/**
|
|
13
|
+
* The agent-visible rendering of a permanent refusal, or `null` when the body did
|
|
14
|
+
* not claim to be one — in which case the caller's existing branches stand.
|
|
15
|
+
*
|
|
16
|
+
* ⚠️ THE INSTRUCTION IS THE POINT, not the prose. The bug this closes (FUL-851)
|
|
17
|
+
* was not that the server's message went missing; it was that the agent was told
|
|
18
|
+
* "Please try again in a few minutes" about a request that can never succeed, and
|
|
19
|
+
* an agent that obeys burns the user's credits on a paid endpoint that will refuse
|
|
20
|
+
* every call. So the do-not-retry sentence is appended UNCONDITIONALLY, including
|
|
21
|
+
* on the fallback where there is no server prose at all — a permanent failure we
|
|
22
|
+
* cannot describe is still a permanent failure the agent must stop calling.
|
|
23
|
+
*
|
|
24
|
+
* ⚠️ THIS FUNCTION ASSERTS NOTHING ABOUT MONEY. Every live refusal makes its own
|
|
25
|
+
* charge claim in its own `error` string — two sites say "was not charged", the
|
|
26
|
+
* other two "refused before any charge" — and that claim is theirs to make:
|
|
27
|
+
* `retryable: false` means "a retry cannot succeed", NOT "nothing was billed".
|
|
28
|
+
* Adding a charge claim here would put words in the server's mouth on a body that
|
|
29
|
+
* never made them — a trust assertion the client cannot back. It forwards, and
|
|
30
|
+
* stops.
|
|
31
|
+
*
|
|
32
|
+
* ⚠️ `safeInline`, not raw interpolation (FUL-247). `error` is server prose landing
|
|
33
|
+
* in a line-structured agent-visible render; a newline in it would end the line
|
|
34
|
+
* early and let the remainder pose as this tool's own output.
|
|
35
|
+
*/
|
|
36
|
+
export function permanentFailureMessage(parsed, status,
|
|
37
|
+
/**
|
|
38
|
+
* The project handle this attempt resolved, ALREADY VALIDATED BY THE CALLER —
|
|
39
|
+
* the two rails guard `project_id` differently (the hero one adds a uuid schema
|
|
40
|
+
* on top of `safeId`) and this helper does not get to pick. `null` when the body
|
|
41
|
+
* echoed none, or when the caller refused to render what it was sent.
|
|
42
|
+
*
|
|
43
|
+
* ⚠️ IT IS THE ONE VALUE HERE THAT DOES NOT PASS THROUGH `safeInline`, and it is
|
|
44
|
+
* interpolated TWICE. That made "validated by the caller" load-bearing rather
|
|
45
|
+
* than descriptive — and it was false on the scoped rail until FUL-851 round 2,
|
|
46
|
+
* which is how a `\n` in a server-supplied id forged a line that inverted this
|
|
47
|
+
* branch's own instruction. Both rails now run `safeId` (exact or nothing).
|
|
48
|
+
*/
|
|
49
|
+
projectId = null) {
|
|
50
|
+
if (parsed?.retryable !== false)
|
|
51
|
+
return null;
|
|
52
|
+
const stated = safeInline(parsed.error, PERMANENT_MESSAGE_MAX) ??
|
|
53
|
+
safeInline(parsed.message, PERMANENT_MESSAGE_MAX) ??
|
|
54
|
+
`Clien.ai refused this request permanently (HTTP ${status}).`;
|
|
55
|
+
const code = safeInline(parsed.code, PERMANENT_CODE_MAX);
|
|
56
|
+
// ⚠️ NOT the sibling `projectReuseHint` wording. That sentence says "when you
|
|
57
|
+
// retry", which on this branch contradicts the instruction the branch exists to
|
|
58
|
+
// give. The project is still real and still duplicable — an auto-create can land
|
|
59
|
+
// before the refusal — so the handle is worth stating; what changes is that it is
|
|
60
|
+
// for a call made AFTER someone fixes the server, not for a retry now.
|
|
61
|
+
const projectNote = projectId
|
|
62
|
+
? ` This attempt resolved project_id ${projectId} — pass project_id: "${projectId}"` +
|
|
63
|
+
` if you call again once this is fixed, so a duplicate project is not created.`
|
|
64
|
+
: '';
|
|
65
|
+
return (
|
|
66
|
+
// Kept deliberately short: the server's own `error` already explains WHY, and
|
|
67
|
+
// two clients-worth of "this needs a fix on our side" in one line reads as
|
|
68
|
+
// padding. What this adds is the one thing the body cannot say for itself —
|
|
69
|
+
// the instruction to the agent.
|
|
70
|
+
`${stated} Do not retry: the server marked this failure permanent` +
|
|
71
|
+
`${code ? ` (code ${code})` : ''}, so the same call will be refused again. ` +
|
|
72
|
+
`Report it instead of looping.` +
|
|
73
|
+
projectNote);
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=permanent-failure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"permanent-failure.js","sourceRoot":"","sources":["../../src/tools/permanent-failure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AA8C/C;;;;;;GAMG;AACH,MAAM,qBAAqB,GAAG,GAAG,CAAA;AAEjC,kFAAkF;AAClF,MAAM,kBAAkB,GAAG,EAAE,CAAA;AAE7B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,uBAAuB,CACrC,MAAiD,EACjD,MAAc;AACd;;;;;;;;;;;GAWG;AACH,YAA2B,IAAI;IAE/B,IAAI,MAAM,EAAE,SAAS,KAAK,KAAK;QAAE,OAAO,IAAI,CAAA;IAE5C,MAAM,MAAM,GACV,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,qBAAqB,CAAC;QAC/C,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,qBAAqB,CAAC;QACjD,mDAAmD,MAAM,IAAI,CAAA;IAC/D,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAA;IAExD,8EAA8E;IAC9E,gFAAgF;IAChF,iFAAiF;IACjF,kFAAkF;IAClF,uEAAuE;IACvE,MAAM,WAAW,GAAG,SAAS;QAC3B,CAAC,CAAC,qCAAqC,SAAS,wBAAwB,SAAS,GAAG;YAClF,+EAA+E;QACjF,CAAC,CAAC,EAAE,CAAA;IAEN,OAAO;IACL,8EAA8E;IAC9E,2EAA2E;IAC3E,4EAA4E;IAC5E,gCAAgC;IAChC,GAAG,MAAM,yDAAyD;QAClE,GAAG,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,4CAA4C;QAC5E,+BAA+B;QAC/B,WAAW,CACZ,CAAA;AACH,CAAC"}
|