@clien-ai/mcp 0.5.0 → 0.5.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/CHANGELOG.md +60 -0
- package/dist/tools/collections.js +13 -5
- package/dist/tools/collections.js.map +1 -1
- package/dist/tools/interview.js +41 -10
- package/dist/tools/interview.js.map +1 -1
- package/dist/tools/personas.js +14 -9
- package/dist/tools/personas.js.map +1 -1
- package/dist/tools/projects.js +8 -3
- package/dist/tools/projects.js.map +1 -1
- package/dist/tools/registry.js +41 -30
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/render-safety.js +304 -0
- package/dist/tools/render-safety.js.map +1 -0
- package/dist/tools/report-digest.js +1 -1
- package/dist/tools/report-digest.js.map +1 -1
- package/dist/tools/reports.js +7 -4
- package/dist/tools/reports.js.map +1 -1
- package/dist/tools/research.js +1 -240
- package/dist/tools/research.js.map +1 -1
- package/dist/tools/scoped-research.js +9 -3
- package/dist/tools/scoped-research.js.map +1 -1
- package/dist/tools/status.js +24 -13
- package/dist/tools/status.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Render safety — the guards every renderer in this package puts between untrusted
|
|
3
|
+
* text and its own line-structured output.
|
|
4
|
+
*
|
|
5
|
+
* These accreted inside `research.ts` (FUL-247, FUL-252) because that is where the
|
|
6
|
+
* first caller happened to live. FUL-253 then added `safeInline` call sites across
|
|
7
|
+
* six more modules, which made `research.ts` — the `clien_research` tool contract
|
|
8
|
+
* plus the shared `apiCall` HTTP client — the import hub for a concern it has
|
|
9
|
+
* nothing to do with. They live here instead: one module, no dependencies, imported
|
|
10
|
+
* by every renderer.
|
|
11
|
+
*
|
|
12
|
+
* Two of these are named guards rather than open-coded steps precisely because
|
|
13
|
+
* forgetting one on a new field is silent. `collapseWhitespace` stops a newline in
|
|
14
|
+
* an untrusted value from FORGING a line of the renderer's own output; the doc
|
|
15
|
+
* comments below carry the specific instances that were found, the measured digest
|
|
16
|
+
* cost of `RECEIPT_QUOTE_MAX`, and the trap in `locateSpan` where a case-sensitive
|
|
17
|
+
* lookup silently re-creates the bug `clipReceiptQuote` exists to fix.
|
|
18
|
+
*
|
|
19
|
+
* Behaviour here is pinned from the CONSUMER side — `agent-visible-output.test.ts`
|
|
20
|
+
* and `render-coverage.test.ts` drive real handlers and assert on the rendered
|
|
21
|
+
* text — so this module has no tests of its own beyond `clipReceiptQuote`'s
|
|
22
|
+
* windowing arithmetic in `research.test.ts`.
|
|
23
|
+
*/
|
|
24
|
+
export function truncate(s, n) {
|
|
25
|
+
return s.length <= n ? s : `${s.slice(0, n - 1)}…`;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* How much of a source receipt's verbatim quote reaches agent-visible text (FUL-247).
|
|
29
|
+
*
|
|
30
|
+
* Lives here, beside `truncate`, because TWO surfaces render receipts —
|
|
31
|
+
* `renderPersonaProfile` (`get_persona`) and `renderReceiptPools` (`get_report`'s
|
|
32
|
+
* trust digest) — and they must clip identically. An agent that reads a quote on
|
|
33
|
+
* one surface and the same quote clipped differently on the other has to wonder
|
|
34
|
+
* which one is the source's actual wording; neither is, but only a consistent
|
|
35
|
+
* ellipsis makes that unambiguous.
|
|
36
|
+
*
|
|
37
|
+
* FUL-252 made that "identically" structural instead of conventional: both surfaces
|
|
38
|
+
* now go through `clipReceiptQuote`, which spends this same budget but may WINDOW it
|
|
39
|
+
* around a verified span. `get_persona` passes no spans — `GET /api/personas/{id}`
|
|
40
|
+
* carries no claim spine, so no span is knowable there — and gets the head clip. The
|
|
41
|
+
* asymmetry is in the INPUT, not in two renderers drifting apart, and a windowed
|
|
42
|
+
* excerpt announces itself with a leading `…` so neither surface can be misread as
|
|
43
|
+
* the source's opening words.
|
|
44
|
+
*
|
|
45
|
+
* 200 chars is roughly two sentences: enough to judge whether a quote supports the
|
|
46
|
+
* claim pointing at it, short enough that one long forum post cannot crowd out the
|
|
47
|
+
* other receipts in a pool capped at 40 entries.
|
|
48
|
+
*
|
|
49
|
+
* DIGEST COST, stated because a digest an agent truncates is a digest it does not
|
|
50
|
+
* read. The worst case is BOUNDED BY CONSTRUCTION, not by hope: the persona pool
|
|
51
|
+
* renders at most `CLAIM_RENDER_CAP` (40) receipts, so quotes can add at most
|
|
52
|
+
* 40 × (200 + ~6 for the indent, quotes and newline) ≈ 8.4 KB to `get_report`'s
|
|
53
|
+
* text — measured at +8,360 bytes on a saturated fixture, which is ~14% on the
|
|
54
|
+
* ~58 KB digest FUL-243 shipped. Raising either constant raises that ceiling
|
|
55
|
+
* multiplicatively; do the arithmetic before you do.
|
|
56
|
+
*/
|
|
57
|
+
export const RECEIPT_QUOTE_MAX = 200;
|
|
58
|
+
/**
|
|
59
|
+
* Flatten a value's internal whitespace before it is interpolated into a
|
|
60
|
+
* LINE-STRUCTURED render.
|
|
61
|
+
*
|
|
62
|
+
* ⚠️ THIS IS A FORGERY GUARD, not formatting. Every renderer in this package
|
|
63
|
+
* builds its output as lines with meaning — `- RCP-p0-s0 — platform — url`,
|
|
64
|
+
* `Funding: <value> [GROUNDED]`, ` id: <uuid>`. The values interpolated into
|
|
65
|
+
* them include VERBATIM THIRD-PARTY TEXT (forum quotes) and agent-written free
|
|
66
|
+
* text (company facts, strengths). A newline inside one of those values does not
|
|
67
|
+
* merely look untidy — it ends the line early, and everything after it becomes a
|
|
68
|
+
* new line the reader parses as the renderer's own output. Two real instances,
|
|
69
|
+
* both found by adversarial review of FUL-247 rather than reasoned about:
|
|
70
|
+
*
|
|
71
|
+
* - a quote containing `\n- RCP-p9-s9 — reddit — https://attacker.example`
|
|
72
|
+
* FORGES a receipt-pool entry, so a claim can appear to resolve to a source
|
|
73
|
+
* nobody retrieved;
|
|
74
|
+
* - a company fact containing `\nHQ: London` renders `Funding: Series B` with
|
|
75
|
+
* NO grounding state, and moves the `[NO_RECEIPT]` suffix onto what now
|
|
76
|
+
* reads as an HQ line — breaking the one invariant this ticket exists to
|
|
77
|
+
* establish, that a fact never appears without its state.
|
|
78
|
+
*
|
|
79
|
+
* Collapsing rather than escaping or indenting: these are ≤240-char excerpts
|
|
80
|
+
* whose internal paragraph structure carries no meaning, and collapsing is the
|
|
81
|
+
* option a crafted value cannot defeat. `buildEvidencePromptBlock` in the app
|
|
82
|
+
* (`app/lib/ai/persona-generator.ts`) already applies the same `\s+` collapse to
|
|
83
|
+
* this same quote field before it reaches a model, so this matches an existing
|
|
84
|
+
* project decision rather than inventing one.
|
|
85
|
+
*
|
|
86
|
+
* Apply BEFORE `truncate`, so the character budget is spent on content rather
|
|
87
|
+
* than on whitespace that will not survive.
|
|
88
|
+
*/
|
|
89
|
+
export function collapseWhitespace(s) {
|
|
90
|
+
return s.replace(/\s+/g, ' ').trim();
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* A value made safe to interpolate into ONE LINE of a line-structured render:
|
|
94
|
+
* collapsed, bounded, and `null` when there is nothing to say.
|
|
95
|
+
*
|
|
96
|
+
* The two steps are separately load-bearing and both easy to forget on a new
|
|
97
|
+
* field, which is why they get a name instead of being open-coded per call site.
|
|
98
|
+
* `collapseWhitespace` is FUL-247's forgery guard — a newline in ANY untrusted
|
|
99
|
+
* value ends its line early and lets the remainder pose as the renderer's own
|
|
100
|
+
* output. `truncate` bounds a field that a reshaped backend could return
|
|
101
|
+
* arbitrarily long; every caller here renders ids and timestamps, so a value near
|
|
102
|
+
* the bound is already evidence of drift rather than of a long name.
|
|
103
|
+
*
|
|
104
|
+
* `null` for absent, empty, whitespace-only, or non-string — collapsed into ONE
|
|
105
|
+
* answer on purpose, because every one of them means "the endpoint did not say",
|
|
106
|
+
* and a caller must choose its own honest wording for that rather than print an
|
|
107
|
+
* empty pair of quotes that reads as a value.
|
|
108
|
+
*/
|
|
109
|
+
export function safeInline(value, max = 120) {
|
|
110
|
+
if (typeof value !== 'string')
|
|
111
|
+
return null;
|
|
112
|
+
const flat = collapseWhitespace(value);
|
|
113
|
+
return flat ? truncate(flat, max) : null;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Clip a receipt quote to `max` characters, choosing WHICH characters by where the
|
|
117
|
+
* verified spans actually are (FUL-252).
|
|
118
|
+
*
|
|
119
|
+
* ⚠️ THIS IS A TRUST-SURFACE FIX, not a formatting one. A claim is `GROUNDED`
|
|
120
|
+
* because its `quoteSpan` was found inside the stored quote. FUL-247 rendered the
|
|
121
|
+
* quote's FIRST `RECEIPT_QUOTE_MAX` characters, so a span sitting past that cutoff
|
|
122
|
+
* left an agent reading `[GROUNDED]` beside an excerpt that did NOT contain the
|
|
123
|
+
* sentence which earned the badge. The badge was true and the visible support was
|
|
124
|
+
* not the support — the trust surface lying, which is the one failure this package
|
|
125
|
+
* exists to prevent. It shipped deliberately, pinned in
|
|
126
|
+
* `agent-visible-output.test.ts`, and this function is that pin being paid off.
|
|
127
|
+
*
|
|
128
|
+
* What this does NOT change: a receipt is still source + quote, and the budget is
|
|
129
|
+
* still `max`. Windowing only picks a BETTER `max` characters — same size, same
|
|
130
|
+
* ellipsis convention, so the two receipt surfaces stay mutually legible.
|
|
131
|
+
*
|
|
132
|
+
* ⚠️ WHITESPACE IS COLLAPSED HERE, not assumed to have been collapsed by the
|
|
133
|
+
* caller — and that redundancy is the point. `collapseWhitespace` is FUL-247's
|
|
134
|
+
* forgery guard and it runs first in both callers, but it also RESHAPES THE
|
|
135
|
+
* STRING: every whitespace run becomes one space and the ends are trimmed, so an
|
|
136
|
+
* offset measured against the raw quote is wrong by however many characters
|
|
137
|
+
* collapsing removed before it. Handed the raw text, a windowing function would cut
|
|
138
|
+
* several characters late and clip the span's own head — the original bug wearing a
|
|
139
|
+
* fix's clothes, and self-consistent enough that the obvious tests still pass.
|
|
140
|
+
* Collapsing here (idempotent, so the callers' own call stays free) makes that
|
|
141
|
+
* whole class of mistake unreachable rather than merely documented. Spans get the
|
|
142
|
+
* same treatment: a span carrying its own line break exists only in the raw text
|
|
143
|
+
* and would never be located otherwise, silently degrading to the head clip.
|
|
144
|
+
*
|
|
145
|
+
* A span that cannot be located steers nothing: the head clip is kept
|
|
146
|
+
* rather than a window invented around a guess. Same for a quote that fits whole,
|
|
147
|
+
* and for spans that already survive the head clip — those keep byte-identical
|
|
148
|
+
* output to FUL-247, so the change is confined to the case that was broken.
|
|
149
|
+
* Locating matches the VERIFIER's leniency, not JavaScript's `===` — see
|
|
150
|
+
* `locateSpan`, which is where this fix most easily goes on lying.
|
|
151
|
+
*
|
|
152
|
+
* With several spans on one receipt (many claims can share a source) the window is
|
|
153
|
+
* the one covering the MOST of them, tie-broken to the earliest start so the output
|
|
154
|
+
* is deterministic. Candidates are drawn from THREE alignments per span (centred,
|
|
155
|
+
* left, right) because a centred-only search misses clusters that genuinely fit —
|
|
156
|
+
* the loop below says why. Spans further apart than `max` cannot all be shown
|
|
157
|
+
* inside one budget; that residue is recorded as a narrower pinned limitation
|
|
158
|
+
* rather than papered over.
|
|
159
|
+
*/
|
|
160
|
+
export function clipReceiptQuote(quote, spans, max) {
|
|
161
|
+
const flat = collapseWhitespace(quote);
|
|
162
|
+
if (flat.length <= max)
|
|
163
|
+
return flat;
|
|
164
|
+
// What `truncate` actually leaves visible: it keeps `max - 1` chars and spends
|
|
165
|
+
// the last on `…`. A span ending at or before that index needs no window.
|
|
166
|
+
const headKeep = max - 1;
|
|
167
|
+
const located = [];
|
|
168
|
+
for (const raw of spans) {
|
|
169
|
+
const span = collapseWhitespace(raw);
|
|
170
|
+
if (!span)
|
|
171
|
+
continue;
|
|
172
|
+
const at = locateSpan(flat, span);
|
|
173
|
+
if (at === -1)
|
|
174
|
+
continue;
|
|
175
|
+
located.push({ start: at, end: at + span.length });
|
|
176
|
+
}
|
|
177
|
+
if (located.length === 0 || located.every((s) => s.end <= headKeep))
|
|
178
|
+
return truncate(flat, max);
|
|
179
|
+
// One char of the budget buys the leading `…`. It is unconditional in this
|
|
180
|
+
// branch: every window that reaches here starts past 0 (a window starting at 0
|
|
181
|
+
// IS the head clip, and the early returns above already took that path), so the
|
|
182
|
+
// mark never claims a clip that did not happen.
|
|
183
|
+
const body = Math.max(1, max - 1);
|
|
184
|
+
const lastStart = Math.max(1, flat.length - body);
|
|
185
|
+
const clampStart = (n) => Math.min(Math.max(1, n), lastStart);
|
|
186
|
+
let best = null;
|
|
187
|
+
for (const span of located) {
|
|
188
|
+
// THREE candidate starts per span, not one. A centred window alone is what an
|
|
189
|
+
// adversarial cross-model pass caught: two spans that both fit inside one
|
|
190
|
+
// `body` can each centre on a window excluding the other, so the excerpt shows
|
|
191
|
+
// one and the second claim keeps its `[GROUNDED]` badge with no visible
|
|
192
|
+
// support — the exact failure this function exists to remove, at a separation
|
|
193
|
+
// FAR SMALLER than the budget. Left-aligning on the first span and
|
|
194
|
+
// right-aligning on the last are precisely the boundaries that co-window a
|
|
195
|
+
// cluster, so they must be candidates too.
|
|
196
|
+
const slack = Math.max(0, body - (span.end - span.start));
|
|
197
|
+
const candidates = [
|
|
198
|
+
clampStart(span.start - Math.floor(slack / 2)), // centred — best reading context
|
|
199
|
+
clampStart(span.start), // left-aligned — reaches spans to the RIGHT
|
|
200
|
+
clampStart(span.end - body), // right-aligned — reaches spans to the LEFT
|
|
201
|
+
];
|
|
202
|
+
for (const from of candidates) {
|
|
203
|
+
// The VISIBLE end, not `from + body`: `truncate` spends its last character on
|
|
204
|
+
// the trailing `…` whenever it drops text on the right, so a span ending on
|
|
205
|
+
// that final character is counted as covered while rendering one char short.
|
|
206
|
+
const visible = flat.length - from <= body ? body : body - 1;
|
|
207
|
+
const to = from + visible;
|
|
208
|
+
const covered = located.filter((o) => o.start >= from && o.end <= to).length;
|
|
209
|
+
if (best === null ||
|
|
210
|
+
covered > best.covered ||
|
|
211
|
+
(covered === best.covered && from < best.from)) {
|
|
212
|
+
best = { from, covered };
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
// `truncate` adds the trailing `…` only when text was actually dropped on the
|
|
217
|
+
// right, so a window that runs to the end of the quote does not claim otherwise.
|
|
218
|
+
return `…${truncate(flat.slice(best.from), body)}`;
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Where a verified span sits in the collapsed quote — matching the way the span was
|
|
222
|
+
* VERIFIED, not the way JavaScript compares strings by default (FUL-252).
|
|
223
|
+
*
|
|
224
|
+
* ⚠️ THE VERIFIER IS MORE LENIENT THAN `indexOf`, and that asymmetry is a live way
|
|
225
|
+
* for this fix to keep lying. `verifySpan` (agent/src/claim-classifier.ts) accepts a
|
|
226
|
+
* span after `NFC → toLowerCase → collapse whitespace`, and then accepts a FUZZY
|
|
227
|
+
* match at 0.95 similarity on top of that. A case-sensitive `indexOf` therefore
|
|
228
|
+
* fails to locate spans the verifier happily grounded — the claim keeps its
|
|
229
|
+
* `[GROUNDED]` badge, the lookup silently returns "not found", and the excerpt falls
|
|
230
|
+
* back to the head clip. That is FUL-247's bug surviving inside its own fix, for
|
|
231
|
+
* exactly the claims the verifier was most generous about. Found by an adversarial
|
|
232
|
+
* cross-model review, not by the tests.
|
|
233
|
+
*
|
|
234
|
+
* Exact match first (the common case, and the only one with unambiguous offsets),
|
|
235
|
+
* then a case-insensitive retry.
|
|
236
|
+
*
|
|
237
|
+
* ⚠️ THE LENGTH GUARD IS A CORRECTNESS CONDITION, not defensiveness. An index into
|
|
238
|
+
* the normalized string is only an index into `flat` when normalizing moved nothing:
|
|
239
|
+
* `toLowerCase` can EXPAND a character (`İ` → `i̇`) and NFC can CONTRACT one
|
|
240
|
+
* (combining marks composing). Neither can do the opposite — lowercase never
|
|
241
|
+
* contracts, NFC never expands — so equal lengths prove no character moved and the
|
|
242
|
+
* offsets align exactly. When they differ we take the head clip rather than window
|
|
243
|
+
* to an offset we cannot trust: a wrong window is worse than a conservative one.
|
|
244
|
+
*
|
|
245
|
+
* Fuzzy-only matches (the verifier's 0.95 tier, where no exact substring exists at
|
|
246
|
+
* any casing) are NOT located here. The alignment DP that could find them lives in
|
|
247
|
+
* the agent package, which this separately-published package cannot import, and
|
|
248
|
+
* guessing a window would be inventing evidence. They keep the head clip, which is a
|
|
249
|
+
* recorded limitation rather than a silent one — see the pin in
|
|
250
|
+
* `agent-visible-output.test.ts`.
|
|
251
|
+
*/
|
|
252
|
+
function locateSpan(flat, span) {
|
|
253
|
+
const exact = flat.indexOf(span);
|
|
254
|
+
if (exact !== -1)
|
|
255
|
+
return exact;
|
|
256
|
+
const foldedFlat = flat.normalize('NFC').toLowerCase();
|
|
257
|
+
if (foldedFlat.length !== flat.length)
|
|
258
|
+
return -1;
|
|
259
|
+
const foldedSpan = span.normalize('NFC').toLowerCase();
|
|
260
|
+
if (foldedSpan.length !== span.length)
|
|
261
|
+
return -1;
|
|
262
|
+
return foldedFlat.indexOf(foldedSpan);
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Render the first usable quote from a cached list, and say how many were held back (FUL-257).
|
|
266
|
+
*
|
|
267
|
+
* Two surfaces render `relevantQuotes[0]` and stop. That is a defensible budget —
|
|
268
|
+
* a 20-row list carrying every cached quote is unreadable — but until now the
|
|
269
|
+
* render made no distinction between "this thread had one quote" and "this thread
|
|
270
|
+
* had nine and you are seeing the first". An agent weighing how well-evidenced a
|
|
271
|
+
* signal is reads those identically, and the honest answer is not in the text.
|
|
272
|
+
*
|
|
273
|
+
* This is the same convention the paging surfaces already use (`showing 40 of 55`,
|
|
274
|
+
* `N more not shown — page with offset=`), applied to a per-row cap. The rule the
|
|
275
|
+
* package keeps re-deriving: a cap the reader cannot see is indistinguishable from
|
|
276
|
+
* an absence, so it has to state itself.
|
|
277
|
+
*
|
|
278
|
+
* Counts only entries that would RENDER — an array padded with `''` or `' '`
|
|
279
|
+
* would otherwise advertise quotes that do not exist, which trades one dishonest
|
|
280
|
+
* render for another. Returns an empty `note` when nothing is withheld, so a
|
|
281
|
+
* single-quote thread stays clean, and `null` when nothing is renderable at all.
|
|
282
|
+
*
|
|
283
|
+
* The count is a NUMBER derived from array length, never interpolated text, so it
|
|
284
|
+
* carries no forgery surface of its own — see `safeInline` for the fields that do.
|
|
285
|
+
*/
|
|
286
|
+
export function firstQuoteWithCount(items, max) {
|
|
287
|
+
if (!Array.isArray(items))
|
|
288
|
+
return null;
|
|
289
|
+
// Renderable entries only, and the FIRST renderable one is what shows —
|
|
290
|
+
// not literally `[0]`. Indexing `[0]` blindly means an array whose first
|
|
291
|
+
// entry is `''` renders nothing AND declares nothing, so a thread with
|
|
292
|
+
// eight real quotes reads as a thread with none. Filtering first collapses
|
|
293
|
+
// that branch instead of special-casing it.
|
|
294
|
+
const renderable = items.map((v) => safeInline(v, max)).filter((v) => v !== null);
|
|
295
|
+
// Destructured rather than length-checked-then-indexed: `noUncheckedIndexedAccess`
|
|
296
|
+
// types `renderable[0]` as possibly-undefined even after a length guard, and
|
|
297
|
+
// asserting past that would be the one place in this module where a claim about
|
|
298
|
+
// the data is unchecked.
|
|
299
|
+
const [first, ...rest] = renderable;
|
|
300
|
+
if (first === undefined)
|
|
301
|
+
return null;
|
|
302
|
+
return { quote: first, note: rest.length > 0 ? ` (+${rest.length} more cached)` : '' };
|
|
303
|
+
}
|
|
304
|
+
//# sourceMappingURL=render-safety.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-safety.js","sourceRoot":"","sources":["../../src/tools/render-safety.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
* than typed field access: a reshaped field must degrade to "not shown", never
|
|
39
39
|
* throw and lose the whole digest.
|
|
40
40
|
*/
|
|
41
|
-
import { collapseWhitespace, safeInline, clipReceiptQuote, RECEIPT_QUOTE_MAX, } from './
|
|
41
|
+
import { collapseWhitespace, safeInline, clipReceiptQuote, RECEIPT_QUOTE_MAX, } from './render-safety.js';
|
|
42
42
|
/**
|
|
43
43
|
* Max claims rendered per spine. Above this the digest states how many were
|
|
44
44
|
* dropped and where the full list lives — never a silent cut. Sized so a typical
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report-digest.js","sourceRoot":"","sources":["../../src/tools/report-digest.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"report-digest.js","sourceRoot":"","sources":["../../src/tools/report-digest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAEH,OAAO,EACL,kBAAkB,EAClB,UAAU,EACV,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAE3B;;;;;GAKG;AACH,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAE3B,+EAA+E;AAC/E,MAAM,cAAc,GAAG,GAAG,CAAA;AAE1B,uEAAuE;AACvE,MAAM,eAAe,GAAG,EAAE,CAAA;AAE1B,8EAA8E;AAC9E,qFAAqF;AACrF,8EAA8E;AAE9E,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACzE,CAAC,CAAE,KAAiC;QACpC,CAAC,CAAC,IAAI,CAAA;AACV,CAAC;AAED,SAAS,OAAO,CAAC,KAAc;IAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;AAC1C,CAAC;AAED,SAAS,GAAG,CAAC,KAAc;IACzB,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AACrE,CAAC;AAED,SAAS,GAAG,CAAC,KAAc;IACzB,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AAC3E,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,OAAO,CAAC,KAAc;IAC7B,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AAClD,CAAC;AAED,6EAA6E;AAC7E,SAAS,IAAI,CAAC,KAAc;IAC1B,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAA;AAChC,CAAC;AAED,gFAAgF;AAChF,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,SAAS,CAAA;AAC1D,CAAC;AAED,0EAA0E;AAC1E,SAAS,MAAM,CAAC,KAAa,EAAE,IAAY,EAAE,UAAmB;IAC9D,OAAO,GAAG,KAAK,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,IAAI,GAAG,CAAC,EAAE,CAAA;AACtE,CAAC;AAcD;;;;;GAKG;AACH,SAAS,OAAO,CAAC,KAAa,EAAE,KAAa,EAAE,OAAsB,EAAE,IAAY;IACjF,IAAI,KAAK,IAAI,KAAK;QAAE,OAAO,EAAE,CAAA;IAC7B,OAAO,eAAe,KAAK,OAAO,KAAK,oBAAoB,KAAK,GAAG,KAAK,aAAa,OAAO,IAAI,IAAI,MAAM,CAAA;AAC5G,CAAC;AAaD,SAAS,WAAW,CAAC,MAAiB;IACpC,MAAM,KAAK,GAAe,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAA;IACjF,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAA;QACvC,IAAI,KAAK,KAAK,UAAU;YAAE,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAA;aACxC,IAAI,KAAK,KAAK,aAAa;YAAE,KAAK,CAAC,WAAW,IAAI,CAAC,CAAA;aACnD,IAAI,KAAK,KAAK,YAAY;YAAE,KAAK,CAAC,SAAS,IAAI,CAAC,CAAA;QACrD,wEAAwE;QACxE,yEAAyE;;YACpE,KAAK,CAAC,KAAK,IAAI,CAAC,CAAA;IACvB,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,SAAS,CAAC,KAAiB,EAAE,KAAa;IACjD,MAAM,KAAK,GAAG;QACZ,GAAG,KAAK,CAAC,QAAQ,WAAW;QAC5B,GAAG,KAAK,CAAC,WAAW,cAAc;QAClC,GAAG,KAAK,CAAC,SAAS,aAAa;KAChC,CAAA;IACD,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,mDAAmD,CAAC,CAAA;IAC/E,CAAC;IACD,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAA;AAC1D,CAAC;AAED;;;;;;GAMG;AACH,SAAS,kBAAkB,CAAC,GAAY;IACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;IAC3B,IAAI,CAAC,KAAK;QAAE,OAAO,4BAA4B,CAAA;IAC/C,4EAA4E;IAC5E,0EAA0E;IAC1E,+EAA+E;IAC/E,+EAA+E;IAC/E,6EAA6E;IAC7E,8EAA8E;IAC9E,4EAA4E;IAC5E,gEAAgE;IAChE,EAAE;IACF,8EAA8E;IAC9E,+EAA+E;IAC/E,8EAA8E;IAC9E,iEAAiE;IACjE,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,eAAe,CAAA;IAC5D,MAAM,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,SAAS,CAAA;IAChD,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;IACjD,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAC/C,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;IACnD,6EAA6E;IAC7E,wEAAwE;IACxE,IAAI,OAAO,GAAG,EAAE,CAAA;IAChB,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;QAC5B,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,QAAQ,EAAE,CAAC,CAAC,CAAC,8CAA8C,CAAA;IACxF,CAAC;SAAM,IAAI,QAAQ,EAAE,CAAC;QACpB,OAAO,GAAG,aAAa,QAAQ,+CAA+C,KAAK,GAAG,CAAA;IACxF,CAAC;IACD,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;IAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;IACvC,OAAO,MAAM,KAAK,KAAK,EAAE,GAAG,GAAG,GAAG,OAAO,GAAG,IAAI,EAAE,CAAA;AACpD,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,iBAAiB,CAAC,GAAY;IACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;IAC3B,IAAI,CAAC,KAAK;QAAE,OAAO,4BAA4B,CAAA;IAC/C,6EAA6E;IAC7E,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACjC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,eAAe,CAAA;IAC5D,MAAM,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,SAAS,CAAA;IAChD,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IAC7C,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAC/C,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;IACnD,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IAC/C,MAAM,gBAAgB,GAAG,UAAU,CAAC,WAAW,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;IAE9D,+EAA+E;IAC/E,0EAA0E;IAC1E,8EAA8E;IAC9E,2EAA2E;IAC3E,gFAAgF;IAChF,8EAA8E;IAC9E,mFAAmF;IACnF,IAAI,UAAU,GAAG,EAAE,CAAA;IACnB,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;QAC5B,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,QAAQ,EAAE,CAAC,CAAC,CAAC,8CAA8C,CAAA;IAC3F,CAAC;SAAM,IAAI,QAAQ,KAAK,YAAY,IAAI,gBAAgB,EAAE,CAAC;QACzD,UAAU,GAAG,uBAAuB,gBAAgB,kBAAkB,CAAA;IACxE,CAAC;SAAM,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;QACrC,UAAU,GAAG,sCAAsC,CAAA;IACrD,CAAC;IACD,+EAA+E;IAC/E,4DAA4D;IAC5D,IAAI,QAAQ,KAAK,UAAU,IAAI,QAAQ,EAAE,CAAC;QACxC,UAAU,IAAI,aAAa,QAAQ,+CAA+C,KAAK,GAAG,CAAA;IAC5F,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;IACvC,OAAO,MAAM,KAAK,KAAK,EAAE,GAAG,KAAK,GAAG,UAAU,GAAG,IAAI,EAAE,CAAA;AACzD,CAAC;AAED,SAAS,kBAAkB,CAAC,UAAmC,EAAE,OAAsB;IACrF,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IACzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CACL,qDAAqD;YACrD,0FAA0F;YAC1F,sFAAsF,CACvF,CAAA;IACH,CAAC;IACD,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IACjC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;IAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;IAC3C,OAAO,CACL,6BAA6B,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;QAChE,iGAAiG;QACjG,iGAAiG;QACjG,8FAA8F;QAC9F,wDAAwD;QACxD,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACrB,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,oBAAoB,CAAC,CACpE,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,UAAmC,EAAE,OAAsB;IACpF,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;IAC/C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CACL,+DAA+D;YAC/D,8FAA8F;YAC9F,0FAA0F,CAC3F,CAAA;IACH,CAAC;IACD,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;QAC3B,OAAO,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,YAAY,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,KAAK,IAAI,CAAA;IACnG,CAAC,CAAC,CAAC,MAAM,CAAA;IACT,MAAM,YAAY,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,QAAQ,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAA;IACjF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;IAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;IAC1C,OAAO,CACL,uCAAuC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,YAAY,IAAI;QACzF,gGAAgG;QAChG,8FAA8F;QAC9F,iGAAiG;QACjG,4FAA4F;QAC5F,8DAA8D;QAC9D,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACrB,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,0BAA0B,CAAC,CAC1E,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,oBAAoB,CAAC,UAAmC;IAC/D,MAAM,KAAK,GAAG,IAAI,GAAG,EAAoB,CAAA;IACzC,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,EAAE,CAAC;QACxE,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;QAC3B,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,UAAU;YAAE,SAAQ;QACvD,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QACpC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QACjC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI;YAAE,SAAQ;QAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACpC,IAAI,QAAQ;YAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;;YAC5B,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IAClC,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAS,kBAAkB,CAAC,UAAmC,EAAE,OAAsB;IACrF,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;IAC7C,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;IACzD,MAAM,cAAc,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAA;IAEvD,MAAM,eAAe,GAAa,EAAE,CAAA;IACpC,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE;QACjC,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAA;QACtD,OAAO,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAA;YAClC,2EAA2E;YAC3E,yEAAyE;YACzE,2DAA2D;YAC3D,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,IAAI,kBAAkB,CAAA;YACvE,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,UAAU,CAAA;YACtD,2EAA2E;YAC3E,4EAA4E;YAC5E,+EAA+E;YAC/E,EAAE;YACF,0EAA0E;YAC1E,yEAAyE;YACzE,4EAA4E;YAC5E,6EAA6E;YAC7E,6EAA6E;YAC7E,EAAE;YACF,8EAA8E;YAC9E,6EAA6E;YAC7E,4EAA4E;YAC5E,4EAA4E;YAC5E,yEAAyE;YACzE,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAA;YACnC,MAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;YAC1D,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,iBAAiB,CAAC,CAAA;YAC/F,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;YACnD,eAAe,CAAC,IAAI,CAAC,KAAK,SAAS,MAAM,QAAQ,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC,CAAA;QAC3E,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,MAAM,gBAAgB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QACrD,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;QAC5B,4EAA4E;QAC5E,wEAAwE;QACxE,8CAA8C;QAC9C,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,iBAAiB,CAAA;QACpE,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,IAAI,kBAAkB,CAAA;QACvE,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,UAAU,CAAA;QACtD,+EAA+E;QAC/E,+EAA+E;QAC/E,yEAAyE;QACzE,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC,IAAI,sBAAsB,CAAA;QACjF,OAAO,WAAW,CAAC,KAAK,OAAO,OAAO,QAAQ,MAAM,SAAS,MAAM,GAAG,EAAE,CAAA;IAC1E,CAAC,CAAC,CAAA;IAEF,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClE,OAAO,CACL,6BAA6B;YAC7B,8FAA8F;YAC9F,yDAAyD,CAC1D,CAAA;IACH,CAAC;IAED,MAAM,QAAQ,GAAa,CAAC,mBAAmB,CAAC,CAAA;IAChD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;QACxD,QAAQ,CAAC,IAAI,CACX,yBAAyB,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,mBAAmB,CAAC,0CAA0C;YACpH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YAChB,OAAO,CACL,KAAK,CAAC,MAAM,EACZ,eAAe,CAAC,MAAM,EACtB,OAAO,EACP,gCAAgC,CACjC,CACJ,CAAA;IACH,CAAC;IACD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;QACzD,QAAQ,CAAC,IAAI,CACX,mCAAmC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,aAAa,CAAC,2CAA2C;YAC1H,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YAChB,OAAO,CACL,KAAK,CAAC,MAAM,EACZ,gBAAgB,CAAC,MAAM,EACvB,OAAO,EACP,4BAA4B,CAC7B,CACJ,CAAA;IACH,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;AAC9B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,cAAc,CAAC,UAAmC,EAAE,OAAsB;IACjF,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;IAC7C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,yCAAyC,CAAA;IAClD,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,CAAA;IAChD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;QAC7B,6EAA6E;QAC7E,+EAA+E;QAC/E,2EAA2E;QAC3E,2EAA2E;QAC3E,8EAA8E;QAC9E,wDAAwD;QACxD,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,WAAW,CAAC,EAAE,CAAA;QAC7D,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;QAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QACxC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC;aAC5C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;aAC9B,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAA;QACzC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;QACxD,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC,CAAA;QAChD,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAA;QACnD,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACrD,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAA;QAE/D,MAAM,IAAI,GAAa,EAAE,CAAA;QACzB,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,CAAA;QACjD,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,IAAI,CACP,0BAA0B,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,UAAU,YAAY,oBAAoB,CAAC,CAAC,CAAC,EAAE,EAAE,CACpG,CAAA;QACH,CAAC;aAAM,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,iBAAiB,YAAY,EAAE,CAAC,CAAA;QAC5C,CAAC;QACD,2EAA2E;QAC3E,2DAA2D;QAC3D,IAAI,SAAS;YAAE,IAAI,CAAC,IAAI,CAAC,6BAA6B,SAAS,EAAE,CAAC,CAAA;QAClE,IAAI,UAAU;YAAE,IAAI,CAAC,IAAI,CAAC,8BAA8B,UAAU,EAAE,CAAC,CAAA;QAErE,4EAA4E;QAC5E,uEAAuE;QACvE,MAAM,IAAI,GAAG,OAAO;YAClB,CAAC,CAAC,gBAAgB,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,uBAAuB,2CAA2C;YACtI,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC;gBAC9B,CAAC,CAAC,+EAA+E;gBACjF,CAAC,CAAC,EAAE,CAAA;QACR,MAAM,cAAc,GAAG,UAAU;YAC/B,CAAC,CAAC,4BAA4B,UAAU,yEAAyE;YACjH,CAAC,CAAC,EAAE,CAAA;QACN,OAAO,OAAO,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,cAAc,EAAE,CAAA;IACjG,CAAC,CAAC,CAAA;IACF,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAA;IAChF,gFAAgF;IAChF,gFAAgF;IAChF,iEAAiE;IACjE,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAA;IACzF,MAAM,MAAM,GACV,YAAY,GAAG,CAAC;QACd,CAAC,CAAC,kBAAkB,QAAQ,CAAC,MAAM,QAAQ,YAAY,aAAa;QACpE,CAAC,CAAC,eAAe,GAAG,CAAC;YACnB,CAAC,CAAC,kBAAkB,QAAQ,CAAC,MAAM,iCAAiC,eAAe,uBAAuB;YAC1G,CAAC,CAAC,kBAAkB,QAAQ,CAAC,MAAM,mBAAmB,CAAA;IAC5D,OAAO,CACL,GAAG,MAAM,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAChC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,sBAAsB,CAAC,CACxE,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,UAAmC,EAAE,OAAsB;IACnF,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAA;IACtD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CACL,kDAAkD;YAClD,+FAA+F;YAC/F,kFAAkF,CACnF,CAAA;IACH,CAAC;IACD,MAAM,eAAe,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;IACpD,MAAM,sBAAsB,GAAG,GAAG,CAAC,OAAO,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACvE,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;IACtD,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;IAEpD,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,uEAAuE;IACvE,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CACR,eAAe,KAAK,CAAC;YACnB,CAAC,CAAC,2FAA2F;gBAC3F,yFAAyF;YAC3F,CAAC,CAAC,GAAG,MAAM,CAAC,eAAe,EAAE,oBAAoB,CAAC,uBAAuB,CAC5E,CAAA;IACH,CAAC;IACD,IAAI,sBAAsB,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,cAAc;aACzB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,iBAAiB,CAAC,CAAC;YACxD,0EAA0E;YAC1E,yEAAyE;YACzE,6BAA6B;aAC5B,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,WAAW,CAAC,CAAA;QAC3E,KAAK,CAAC,IAAI,CACR,MAAM,sBAAsB,sEAAsE;YAChG,0DAA0D,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC/E,CAAA;IACH,CAAC;IACD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,CAAA;QACrD,KAAK,CAAC,IAAI,CACR,yEAAyE;YACvE,KAAK;iBACF,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACX,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;gBACvB,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,CAAC,IAAI,SAAS,CAAA;gBACvD,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,MAAM,CAAA;gBAChD,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAA;gBAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,MAAM,CAAA;gBAC1C,OAAO,OAAO,EAAE,KAAK,UAAU,iBAAiB,OAAO,cAAc,QAAQ,cAAc,CAAA;YAC7F,CAAC,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC;YACb,OAAO,CACL,KAAK,CAAC,MAAM,EACZ,aAAa,CAAC,MAAM,EACpB,OAAO,EACP,6CAA6C,CAC9C,CACJ,CAAA;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAA;IAC7F,CAAC;IACD,OAAO,wBAAwB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;AACnD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB,CAAC,UAAmC,EAAE,OAAsB;IACnF,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAA;IACrD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IACnC,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC,CAAA;IAC5F,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,CACL,yDAAyD;YACzD,2FAA2F;YAC3F,4CAA4C,CAC7C,CAAA;IACH,CAAC;IACD,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,CAAA;IACtD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;QAC5B,6EAA6E;QAC7E,sEAAsE;QACtE,yEAAyE;QACzE,yEAAyE;QACzE,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,CAAC,IAAI,SAAS,CAAA;QAC5D,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,SAAS,CAAA;QAC1D,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;QAC/C,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAC1C,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;QACpC,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QAC5C,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAA;QAC/D,MAAM,KAAK,GAAG,QAAQ,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,QAAQ,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,4BAA4B,CAAA;QACvH,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,OAAO,CACL,KAAK,EAAE,gBAAgB,MAAM,qCAAqC,KAAK,KAAK;gBAC5E,8BAA8B,UAAU,IAAI,8CAA8C,aAAa,MAAM,KAAK,CACnH,CAAA;QACH,CAAC;QACD,0EAA0E;QAC1E,2CAA2C;QAC3C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,OAAO,KAAK,EAAE,gBAAgB,MAAM,mCAAmC,KAAK,uCAAuC,CAAA;QACrH,CAAC;QACD,OAAO,KAAK,EAAE,OAAO,MAAM,QAAQ,KAAK,EAAE,CAAA;IAC5C,CAAC,CAAC,CAAA;IACF,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CACjD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,CACnD,CAAC,MAAM,CAAA;IACR,MAAM,eAAe,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CACpD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,KAAK,IAAI,CAC/D,CAAC,MAAM,CAAA;IACR,+EAA+E;IAC/E,gFAAgF;IAChF,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAA;IACvD,MAAM,YAAY,GAChB,QAAQ,GAAG,CAAC;QACV,CAAC,CAAC,KAAK,cAAc,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,kCAAkC,QAAQ,kDAAkD;QAC1I,CAAC,CAAC,EAAE,CAAA;IACR,MAAM,MAAM,GACV,YAAY,GAAG,CAAC;QACd,CAAC,CAAC,kCAAkC,YAAY,uCAAuC,YAAY,EAAE;QACrG,CAAC,CAAC,eAAe,GAAG,CAAC;YACnB,CAAC,CAAC,6DAA6D,eAAe,mCAAmC,YAAY,EAAE;YAC/H,CAAC,CAAC,2DAA2D,YAAY,EAAE,CAAA;IACjF,OAAO,CACL,GAAG,MAAM,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAChC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,+BAA+B,CAAC,CACvF,CAAA;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,cAAc,GAClB,yGAAyG;IACzG,qGAAqG;IACrG,4EAA4E,CAAA;AAE9E;;;;;;GAMG;AACH,MAAM,aAAa,GACjB,GAAG,cAAc,MAAM;IACvB,gGAAgG;IAChG,0FAA0F;IAC1F,+FAA+F;IAC/F,8DAA8D,CAAA;AAEhE;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAmB,EAAE,OAAsB;IAC1E,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA;IACjC,IAAI,CAAC,IAAI;QAAE,OAAO,aAAa,CAAA;IAE/B,MAAM,QAAQ,GAAG;QACf,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC;QACjC,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC;QAChC,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC;QACjC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC;QAC7B,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC;QAC/B,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC;KAChC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAEzC,OAAO,GAAG,cAAc,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAA;AACxD,CAAC"}
|
package/dist/tools/reports.js
CHANGED
|
@@ -30,7 +30,8 @@ import { z } from 'zod';
|
|
|
30
30
|
import { ResearchReportDataSchema } from '../types/report.js';
|
|
31
31
|
import { buildTrustDigest } from './report-digest.js';
|
|
32
32
|
import { ToolError } from './errors.js';
|
|
33
|
-
import { apiCall, categorizeFetchError,
|
|
33
|
+
import { apiCall, categorizeFetchError, webJobUrl, } from './research.js';
|
|
34
|
+
import { truncate, safeInline } from './render-safety.js';
|
|
34
35
|
const REPORTS_FETCH_TIMEOUT_MS = 30_000;
|
|
35
36
|
const REPORT_FETCH_TIMEOUT_MS = 60_000;
|
|
36
37
|
const LIST_LIMIT_MAX = 100;
|
|
@@ -57,9 +58,11 @@ export const GetReportInputSchema = z.object({
|
|
|
57
58
|
job_id: z
|
|
58
59
|
.string()
|
|
59
60
|
.uuid()
|
|
60
|
-
.describe('UUID of the research job whose report you want to retrieve.
|
|
61
|
-
'
|
|
62
|
-
'
|
|
61
|
+
.describe('UUID of the research job whose report you want to retrieve. Get it from ' +
|
|
62
|
+
'a `list_reports` entry, which renders every run\'s id in its result ' +
|
|
63
|
+
'text; a dropped run also carries its id in the error message. (It is ' +
|
|
64
|
+
'mirrored to host-side `_meta.job_id` as well, but that reaches your ' +
|
|
65
|
+
'MCP client, not you.) Use this to RETRIEVE a past report instead of ' +
|
|
63
66
|
'calling `clien_research` again — re-running would spawn a new job and ' +
|
|
64
67
|
'debit another 50 credits for the same idea. Read-only: no credit cost.'),
|
|
65
68
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reports.js","sourceRoot":"","sources":["../../src/tools/reports.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,OAAO,EAAE,wBAAwB,EAA2B,MAAM,oBAAoB,CAAA;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EACL,OAAO,EACP,oBAAoB,EACpB,QAAQ,
|
|
1
|
+
{"version":3,"file":"reports.js","sourceRoot":"","sources":["../../src/tools/reports.ts"],"names":[],"mappings":"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"}
|