@clien-ai/mcp 0.8.0 → 0.9.0

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.
@@ -37,8 +37,17 @@
37
37
  * refused. Hence the local `asArray` / `asRecord` / `str` / `num` accessors rather
38
38
  * than typed field access: a reshaped field must degrade to "not shown", never
39
39
  * throw and lose the whole digest.
40
+ *
41
+ * ⚠️ IT ALSO OWNS THE LINE BETWEEN PROSE AND PROOF (FUL-510). `composeReportText` at
42
+ * the bottom of this file assembles the whole agent-visible report text for the three
43
+ * tools that return one, and the split is the reason it lives here: the run's own
44
+ * `verdictSummary` is MODEL-WRITTEN prose and renders ABOVE the `---`, while everything
45
+ * `buildTrustDigest` emits is code-derived and renders below it. Anything that ever
46
+ * moves agent-authored text below that separator breaks the digest's own authority
47
+ * rule, which a reader applies positionally.
40
48
  */
41
49
  import { collapseWhitespace, safeInline, safeId, clipReceiptQuote, RECEIPT_QUOTE_MAX, } from './render-safety.js';
50
+ import { canonicalContentType, contentTypeDeviationLine, contentTypeProvenanceLine, } from './content-type-display.js';
42
51
  /**
43
52
  * Max claims rendered per spine. Above this the digest states how many were
44
53
  * dropped and where the full list lives — never a silent cut. Sized so a typical
@@ -50,6 +59,37 @@ const CLAIM_RENDER_CAP = 40;
50
59
  const CLAIM_TEXT_MAX = 140;
51
60
  /** Max personas / hypotheses / disagreements listed before capping. */
52
61
  const LIST_RENDER_CAP = 25;
62
+ /**
63
+ * The MODEL-ATTESTED tier's user-facing word, lower-cased for inline prose (FUL-363).
64
+ *
65
+ * ⚠️ A HAND-COPIED MIRROR, and there is no way around it: this package cannot import
66
+ * `app/lib/validation/claim-states.ts`. It is the FOURTH copy of the word across the repo
67
+ * (app map, agent markdown, the `registry.ts` advert, here) and it is the copy that reaches
68
+ * the text an agent actually reads. Declared ONCE here rather than typed at its three use
69
+ * sites below, because it was typed three times and the FUL-363 re-map updated the advert
70
+ * while missing all three — leaving one server telling an agent to look for "Inferred" in a
71
+ * payload that said "model-attested". The cross-package coupling test now reads this file
72
+ * too, so a drift fails `npm test` instead of shipping a self-contradicting tool result.
73
+ *
74
+ * ⚠️ FUL-416 moved it again, to "cited". The published package is the LAGGING copy by
75
+ * construction: `@clien-ai/mcp` 0.8.0 predates even the FUL-363 re-map, so the next
76
+ * `mcp-vX.Y.Z` tag carries BOTH changes and consumers cross ONE wire-format break rather
77
+ * than two. Do not cut a release between the two.
78
+ */
79
+ const ATTESTED_LABEL = 'cited';
80
+ /**
81
+ * The FLOOR tier's word, mirrored from the app's `CLAIM_STATE_DISPLAY_LABELS.NO_RECEIPT`
82
+ * (FUL-416 review, cross-model finding).
83
+ *
84
+ * ⚠️ IT HAS TO APPEAR IN THE RENDERED TEXT, not just the advert. The `get_report` advert now
85
+ * tells a consuming agent that an unmarked NO_RECEIPT claim "is `unsourced`" — but this file
86
+ * rendered only the explanatory prose "from model knowledge — unverified", so an agent
87
+ * pattern-matching the advertised token found nothing. That is the SAME defect this file's
88
+ * header documents from FUL-363 (an advert promising "Inferred" over a payload that said
89
+ * "model-attested"), reintroduced from the opposite direction. The prose is kept because it
90
+ * carries the meaning the shared word no longer can.
91
+ */
92
+ const UNSOURCED_LABEL = 'unsourced';
53
93
  // ---------------------------------------------------------------------------
54
94
  // Defensive accessors — every one of these answers "or nothing" rather than throwing
55
95
  // ---------------------------------------------------------------------------
@@ -215,12 +255,22 @@ function renderPersonaClaim(raw) {
215
255
  * One report-spine claim line. Differs from the persona one in two ways that
216
256
  * matter to a reader: it carries a `section` (market/competitor) instead of a
217
257
  * persona, and a NO_RECEIPT claim has TWO distinct provenance readings that must
218
- * be told apart — model-attested (a page was read and independently vouched, no
219
- * exact span pinned) versus plain model knowledge (recalled, unverified).
258
+ * be told apart — "Cited" (a page was read and independently vouched, no exact
259
+ * span pinned) versus plain model knowledge (recalled, unverified).
260
+ *
261
+ * ⚠️ THE WORD IS THE ONE FROM `MODEL_ATTESTED_BADGE_LABEL` (FUL-416), lower-cased.
262
+ * This digest is the THIRD mirror of that label inside the MCP package — the tool
263
+ * advert in `registry.ts` is the other two — and it is the one that renders into
264
+ * the payload an agent actually READS. When the re-map first landed it was missed:
265
+ * the advert promised a claim "marked \"Inferred\"" while this line still emitted
266
+ * `model-attested`, so an agent keying on the advert's word would have found
267
+ * nothing, and the same server described one tier two different ways.
220
268
  *
221
269
  * Neither reading is grounding. The attestation's `sourceId` is printed under an
222
- * explicit `model-attested →` label rather than the bare `←` used for real
223
- * receipts, so the two can never be skim-read as the same thing.
270
+ * explicit `cited →` label rather than the bare `←` used for real receipts, so
271
+ * the two can never be skim-read as the same thing. That distinction matters MORE now
272
+ * that the word itself is shared with a span-verified receipt: the arrow shape and the
273
+ * absence of a quote are what separate them in the rendered text.
224
274
  */
225
275
  function renderReportClaim(raw) {
226
276
  const claim = asRecord(raw);
@@ -248,10 +298,10 @@ function renderReportClaim(raw) {
248
298
  provenance = sourceId ? ` ← ${sourceId}` : groundedWithoutReceipt(claim.sourceId);
249
299
  }
250
300
  else if (rawState === 'NO_RECEIPT' && attestedSourceId) {
251
- provenance = ` · model-attested → ${attestedSourceId} (NOT a receipt)`;
301
+ provenance = ` · ${ATTESTED_LABEL} → ${attestedSourceId} (NOT a receipt)`;
252
302
  }
253
303
  else if (rawState === 'NO_RECEIPT') {
254
- provenance = ' · from model knowledge — unverified';
304
+ provenance = ` · ${UNSOURCED_LABEL} — from model knowledge, unverified`;
255
305
  }
256
306
  // A pointer on a non-grounded claim is shown but explicitly disarmed, so it is
257
307
  // neither hidden from the reader nor readable as grounding.
@@ -283,21 +333,26 @@ function renderPersonaSpine(reportData, channel) {
283
333
  function renderReportSpine(reportData, channel) {
284
334
  const claims = asArray(reportData.reportClaims);
285
335
  if (claims.length === 0) {
286
- return ('### Market/competitor claim spine — NOT PRESENT on this run\n' +
287
- 'No market/competitor claim registry was produced, so no sizing figure, trend, or competitor ' +
288
- 'fact in the prose above has been machine-checked. Treat every such figure as unverified.');
336
+ return ('### Report claim spine — NOT PRESENT on this run\n' +
337
+ 'No report claim registry was produced, so no sizing figure, trend, competitor fact, or ' +
338
+ 'executive-summary assertion in the prose above has been machine-checked. Treat every such ' +
339
+ 'figure as unverified.');
289
340
  }
290
341
  const tally = tallyStates(claims);
291
342
  const attested = claims.filter((raw) => {
292
343
  const claim = asRecord(raw);
293
344
  return str(claim?.state) === 'NO_RECEIPT' && str(asRecord(claim?.attestation)?.sourceId) !== null;
294
345
  }).length;
295
- const attestedNote = attested > 0 ? ` (of which ${attested} model-attested)` : '';
346
+ const attestedNote = attested > 0 ? ` (of which ${attested} ${ATTESTED_LABEL})` : '';
296
347
  const shown = claims.slice(0, CLAIM_RENDER_CAP);
297
348
  const lines = shown.map(renderReportClaim);
298
- return (`### Market/competitor claim spine — ${tallyLine(tally, claims.length)}${attestedNote}\n` +
299
- 'A SEPARATE pool from the persona spine — the two never cross. A GROUNDED claim\'s `RRCP-s{n}` ' +
300
- 'indexes `reportEvidence[n]`. A NO_RECEIPT claim marked `model-attested` means Claude read a ' +
349
+ return (`### Report claim spine — ${tallyLine(tally, claims.length)}${attestedNote}\n` +
350
+ 'A SEPARATE pool from the persona spine — the two never cross. Sections are `market` (sizing/' +
351
+ 'trend figures), `competitor` (profile facts) and `summary` (an assertion quoted VERBATIM from ' +
352
+ 'the executive summary, graded against the same evidence — so a grounded `summary` claim ' +
353
+ 'usually restates a grounded `market` or `competitor` one and must not be counted as a second ' +
354
+ 'independent finding). A GROUNDED claim\'s `RRCP-s{n}` ' +
355
+ `indexes \`reportEvidence[n]\`. A NO_RECEIPT claim marked \`${ATTESTED_LABEL}\` means Claude read a ` +
301
356
  'supporting page an independent check vouched for, but no exact span was pinned — stronger than ' +
302
357
  'recall, still NOT a receipt. Unmarked NO_RECEIPT is recalled model knowledge, unverified. ' +
303
358
  'Key on the state, never on whether a source id is present.\n' +
@@ -395,7 +450,20 @@ function renderReceiptPools(reportData, channel) {
395
450
  const quote = collapseWhitespace(str(source?.quote) ?? '');
396
451
  const clipped = clipReceiptQuote(quote, spansByReceipt.get(receiptId) ?? [], RECEIPT_QUOTE_MAX);
397
452
  const quoteLine = quote ? `\n "${clipped}"` : '';
398
- personaReceipts.push(`- ${receiptId} — ${platform} — ${url}${quoteLine}`);
453
+ // FUL-560: the source type, stated ONCE for the pool (in the header below) and inline only
454
+ // on a row that breaks the stated rule. This pool is the one place in the package where the
455
+ // type is a near-constant: `stampEvidenceMetadata` (agent-side) prunes every non-`user_voice`
456
+ // source out of `persona.sources`, so a per-row line here would print the same word down
457
+ // forty rows and bury the one that mattered. The header carries the claim; this carries the
458
+ // exception, in the shared wording.
459
+ //
460
+ // ⚠️ ABSENT AND NON-CANONICAL ARE BOTH DEVIATIONS. `canonicalContentType` fails closed, so a
461
+ // legacy untyped receipt (M0a predates plenty of stored runs) and a token from a newer
462
+ // producer both land here rather than being silently absorbed by the header's claim — which
463
+ // would be exactly the "silence reads as reassurance" fail-open this change exists to close.
464
+ const personaType = canonicalContentType(source?.contentType);
465
+ const deviationLine = personaType === 'user_voice' ? '' : contentTypeDeviationLine(source?.contentType);
466
+ personaReceipts.push(`- ${receiptId} — ${platform} — ${url}${quoteLine}${deviationLine}`);
399
467
  });
400
468
  });
401
469
  const evidenceReceipts = reportEvidence.map((raw, n) => {
@@ -410,7 +478,22 @@ function renderReceiptPools(reportData, channel) {
410
478
  // WE fetched it. Rendering retrievedAt as recency would be a lie, so an absent
411
479
  // publication date is shown honestly as unknown rather than substituted.
412
480
  const published = safeInline(source?.publishedDate, 40) ?? 'publish date unknown';
413
- return `- RRCP-s${n} (${section}) — ${platform} — ${published} — ${url}`;
481
+ // FUL-560: the source type, on EVERY row and in both directions — the same words and the same
482
+ // trailing position `search_forums` and `list_community_signals` use, through the same helper,
483
+ // because two surfaces over one dataset must not disagree about what is worth an agent's
484
+ // attention (FUL-247). This pool is the market/competitor evidence spine: it is what a claim's
485
+ // `RRCP-s{n}` arrow resolves TO, and without this line a vendor listicle and a real company
486
+ // page answered that arrow identically.
487
+ //
488
+ // No pool-level invariant is claimed here, unlike the persona pool above. `marketing_seo`
489
+ // cannot enter this pool through the current producer (`orchestrator.ts` admits only genuinely
490
+ // `report_evidence`-typed urls), but stored runs predate that gate and an unstamped source is
491
+ // routine — so the honest shape is a per-row statement, not a header promise.
492
+ //
493
+ // No `safeInline` and no FUL-253 concern: `canonicalContentType` admits three literal tokens
494
+ // and nothing else, which is strictly stronger than flattening — a newline cannot survive a
495
+ // set-membership test, so this field cannot forge a row.
496
+ return `- RRCP-s${n} (${section}) — ${platform} — ${published} — ${url}${contentTypeProvenanceLine(source?.contentType)}`;
414
497
  });
415
498
  if (personaReceipts.length === 0 && evidenceReceipts.length === 0) {
416
499
  return ('### Receipt pools — EMPTY\n' +
@@ -420,7 +503,8 @@ function renderReceiptPools(reportData, channel) {
420
503
  const sections = ['### Receipt pools'];
421
504
  if (personaReceipts.length > 0) {
422
505
  const shown = personaReceipts.slice(0, CLAIM_RENDER_CAP);
423
- sections.push(`**Persona receipts** (${plural(personaReceipts.length, 'cached forum post')}) — the target of an \`RCP-\` pointer:\n` +
506
+ sections.push(`**Persona receipts** (${plural(personaReceipts.length, 'cached forum post')}) — the target of an \`RCP-\` pointer. ` +
507
+ 'Every receipt here is a first-hand `user_voice` post unless its own row says otherwise:\n' +
424
508
  shown.join('\n') +
425
509
  capNote(shown.length, personaReceipts.length, channel, 'report_data.personas[].sources'));
426
510
  }
@@ -625,6 +709,62 @@ function renderRobustness(reportData, channel) {
625
709
  return (`${header}\n${lines.join('\n')}` +
626
710
  capNote(shown.length, withRobustness.length, channel, 'report_data.hypothesisResults'));
627
711
  }
712
+ /**
713
+ * The rendered budget for the run-level verdict rationale.
714
+ *
715
+ * The producer bounds it to `MAX_VERDICT_SUMMARY_WORDS` (50) whole words and drops it
716
+ * outright when no safe cut exists, so 400 chars is a defensive ceiling on a value that
717
+ * should already be well under it — not a routine trim. It exists because this renderer
718
+ * reads `report_data` that may have arrived by the RAW passthrough path, where nothing
719
+ * has validated the field at all.
720
+ */
721
+ const VERDICT_SUMMARY_MAX = 400;
722
+ /** The heading `renderVerdictRationale` emits. Named so tests can pin it exactly. */
723
+ export const VERDICT_RATIONALE_HEADING = "## Verdict rationale — the run's own stated reason for its verdict";
724
+ /**
725
+ * The run-level verdict rationale (FUL-471 producer, FUL-510 on this surface).
726
+ *
727
+ * ⚠️ DELIBERATELY NOT PART OF {@link buildTrustDigest}, and the separation is the point.
728
+ * The digest declares itself machine-checked; every line in it is derived by this code
729
+ * from structured data. `verdictSummary` is MODEL-WRITTEN PROSE the run stored. Rendering
730
+ * it inside the digest would launder agent prose into the one section a reader is told to
731
+ * trust over the prose — the same anti-laundering rule that keeps `identityProvenance`
732
+ * from ever reading as a receipt. So it renders ABOVE the `---`, on the prose side of the
733
+ * line, and callers compose it exactly there.
734
+ *
735
+ * ⚠️ WHY IT HAS TO CROSS AT ALL. DESIGN.md forbids the web renderer from composing this
736
+ * sentence out of the verdict tally — "the renderer may show only the judgement the run
737
+ * actually stored". An agent handed only counts and per-hypothesis verdicts is in exactly
738
+ * that forbidden position, and is MORE likely than a human skimming a hero band to
739
+ * synthesise the missing rationale from the parts. Carrying the stored field is what
740
+ * removes the need.
741
+ *
742
+ * ABSENT RENDERS NOTHING — no placeholder, no reserved space, no substitute. That is a
743
+ * deliberate exception to this module's usual "announce the absence" rule (see
744
+ * {@link NO_TRUST_DATA}), which applies to machine-checked sections whose silence would
745
+ * read as a clean result. Here there is nothing to be wrong about: the run simply wrote no
746
+ * rationale, and a band saying so on every legacy report would be noise. The instruction
747
+ * that matters — absence is normal, never re-derive it — belongs in the always-visible
748
+ * tool description, which a caller reads whether or not this block renders.
749
+ *
750
+ * `safeInline` is load-bearing rather than tidiness. This block sits directly above the
751
+ * digest, whose authority rule is "the LAST such section in this message is the real one".
752
+ * A newline inside the stored rationale would let it mint a heading of its own — including
753
+ * a forged `## Trust digest` AFTER the real one, which is the one position that defeats
754
+ * that rule. Collapsing is the option a crafted value cannot get around.
755
+ */
756
+ function renderVerdictRationale(reportData) {
757
+ const data = asRecord(reportData);
758
+ if (!data)
759
+ return '';
760
+ const summary = safeInline(data.verdictSummary, VERDICT_SUMMARY_MAX);
761
+ if (!summary)
762
+ return '';
763
+ return (`${VERDICT_RATIONALE_HEADING}\n\n` +
764
+ `> ${summary}\n\n` +
765
+ '_Written by the run at synthesis time and stored with the report — retrieved, not derived ' +
766
+ 'from the verdict tally below, and not machine-checked._');
767
+ }
628
768
  /**
629
769
  * The digest heading.
630
770
  *
@@ -674,4 +814,86 @@ export function buildTrustDigest(reportData, channel) {
674
814
  ].filter((section) => section.length > 0);
675
815
  return `${DIGEST_HEADING}\n\n${sections.join('\n\n')}`;
676
816
  }
817
+ /** The heading `renderReportGaps` emits. Named so tests can pin it exactly. */
818
+ export const REPORT_GAPS_HEADING = '## ⚠️ INCOMPLETE REPORT — parts of this run did not land';
819
+ /** Longest single gap line rendered. Generous: these are short, code-authored sentences. */
820
+ const GAP_LINE_MAX = 300;
821
+ /** Never render more than this many gap lines; a run cannot honestly produce more. */
822
+ const GAP_LINES_MAX = 12;
823
+ /**
824
+ * FUL-586 — the completeness banner, rendered FIRST, above the report prose.
825
+ *
826
+ * ⚠️ THE POSITION IS THE POINT, not formatting. Everything else this module renders sits
827
+ * below the `---`, because the digest's authority rule is that the LAST such section wins.
828
+ * This one has to be read BEFORE the agent forms its summary, because the failure it prevents
829
+ * happens during that summarisation: an agent handed a report whose competitor section is
830
+ * simply absent does not perceive a hole, it perceives "no competitors" and says so. A caveat
831
+ * printed after the prose arrives after the conclusion it was meant to prevent.
832
+ *
833
+ * ⚠️ AND IT IS DELIBERATELY NOT A DIGEST SECTION. `buildTrustDigest` declares itself
834
+ * machine-checked and its structure carries that promise; bolting a document-level caveat into
835
+ * it would blur what the digest is asserting. This is a statement ABOUT the document, not a
836
+ * claim WITHIN it.
837
+ *
838
+ * ABSENT RENDERS NOTHING — deliberately, and unlike {@link NO_TRUST_DATA}. A band on every
839
+ * healthy report is noise, and noise is how a warning gets ignored. The instruction that
840
+ * absence is not proof of completeness lives in the always-visible field description, which a
841
+ * caller reads whether or not this block renders.
842
+ *
843
+ * `safeInline` is load-bearing, not tidiness: these lines sit in a line-structured render, and
844
+ * an embedded newline would let a value forge a line of this renderer's own output (FUL-247).
845
+ */
846
+ function renderReportGaps(reportData) {
847
+ const data = asRecord(reportData);
848
+ if (!data)
849
+ return '';
850
+ const record = asRecord(data.reportGaps);
851
+ if (!record)
852
+ return '';
853
+ const raw = Array.isArray(record.gaps) ? record.gaps : [];
854
+ const lines = raw
855
+ .slice(0, GAP_LINES_MAX)
856
+ .map((g) => safeInline(g, GAP_LINE_MAX))
857
+ .filter((g) => Boolean(g));
858
+ const rawCodes = Array.isArray(record.codes) ? record.codes : [];
859
+ const codes = rawCodes
860
+ .slice(0, GAP_LINES_MAX)
861
+ .map((c) => safeInline(c, 60))
862
+ .filter((c) => Boolean(c));
863
+ // A `reportGaps` object carrying nothing usable is still a positive signal that something
864
+ // went wrong — the producer only writes this key when it has something to confess. Say so
865
+ // rather than returning '', which would read exactly like a healthy run.
866
+ if (lines.length === 0 && codes.length === 0) {
867
+ return (`${REPORT_GAPS_HEADING}\n\n` +
868
+ 'This run recorded that it failed to deliver part of its report, but the detail did not ' +
869
+ 'survive. Treat any section that looks empty below as UNKNOWN, not as an empty result.');
870
+ }
871
+ return (`${REPORT_GAPS_HEADING}\n\n` +
872
+ 'Parts of this report were never produced. A section that looks empty below may be MISSING ' +
873
+ 'rather than genuinely empty — do not report "none were found" for anything named here.\n\n' +
874
+ lines.map((l) => `- ${l}`).join('\n') +
875
+ (codes.length > 0 ? `\n\nCodes: ${codes.join(', ')}` : ''));
876
+ }
877
+ /**
878
+ * The agent-visible TEXT of a report, composed once for the three tools that return one.
879
+ *
880
+ * `get_report`, `clien_research` and `clien_research_status` hand back the SAME report
881
+ * payload — the last two are the hero run and its recovery path — so the text they render
882
+ * has to be assembled in one place. It was not: each built the string inline, which is how
883
+ * a field can reach a caller through one tool and not the others while every test stays
884
+ * green. FUL-510's `verdictSummary` is the field that made the seam worth naming.
885
+ *
886
+ * The order is the contract. Report prose first (the run's markdown, then its own stored
887
+ * verdict rationale), then `---`, then the machine-checked digest LAST — because the
888
+ * digest's authority rule is that the last such section in the message is the real one,
889
+ * and anything above the separator is prose that may resemble it.
890
+ */
891
+ export function composeReportText(reportMarkdown, reportData, channel) {
892
+ const rationale = renderVerdictRationale(reportData);
893
+ // FUL-586: the completeness banner goes FIRST — before the prose it is a caveat about.
894
+ const gaps = renderReportGaps(reportData);
895
+ return (`${gaps ? `${gaps}\n\n---\n\n` : ''}` +
896
+ `${reportMarkdown}${rationale ? `\n\n${rationale}` : ''}` +
897
+ `\n\n---\n\n${buildTrustDigest(reportData, channel)}`);
898
+ }
677
899
  //# sourceMappingURL=report-digest.js.map
@@ -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":"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"}
@@ -28,7 +28,7 @@
28
28
  */
29
29
  import { z } from 'zod';
30
30
  import { ResearchReportDataSchema } from '../types/report.js';
31
- import { buildTrustDigest } from './report-digest.js';
31
+ import { composeReportText } from './report-digest.js';
32
32
  import { ToolError } from './errors.js';
33
33
  import { apiCall, categorizeFetchError, webJobUrl, } from './research.js';
34
34
  import { truncate, safeInline, safeId } from './render-safety.js';
@@ -278,9 +278,16 @@ export async function getReport(input, deps) {
278
278
  // payload defensively (it also handles the raw passthrough above) and always
279
279
  // returns something: when there is no trust data it says so loudly, because a
280
280
  // silently-missing digest is indistinguishable from a clean one.
281
+ //
282
+ // FUL-510: `composeReportText` is that same argument applied to the run's own
283
+ // `verdictSummary`. It reached this tool ONLY through `_meta.report_data`, so the
284
+ // one sentence explaining WHY the verdict came out this way was invisible to the
285
+ // agent — which then had to infer a rationale from the tally, the exact thing the
286
+ // field was written to stop the web renderer doing. Composed in the shared helper
287
+ // so this tool, `clien_research` and `clien_research_status` cannot drift.
281
288
  return {
282
289
  content: [
283
- { type: 'text', text: `${json.reportMarkdown}\n\n---\n\n${buildTrustDigest(reportData, 'structuredContent')}` },
290
+ { type: 'text', text: composeReportText(json.reportMarkdown, reportData, 'structuredContent') },
284
291
  ],
285
292
  _meta: {
286
293
  job_id: jobId,
@@ -1 +1 @@
1
- {"version":3,"file":"reports.js","sourceRoot":"","sources":["../../src/tools/reports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reports.js","sourceRoot":"","sources":["../../src/tools/reports.ts"],"names":[],"mappings":"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"}