feat(linkedin-studio): N9 — randsone-gates (krok/carousel/tittel) + deterministisk fakta-recheck + WebFetch [skip-docs]

C-4/C-9: Step 9 (post-lock) gets a scoped fact-reviewer (F1/F3) + language-reviewer
(L1/L2) pass over the four feed-facing surfaces — delingstekst hook, samle post,
carousel slide text, edition title — plus a title-strength gate, before the hook
conversion binary. Placed at Step 9 (first phase where all four exist; operates on
distribution copy only, never the locked body — body/canonical-title defect = pivot).

C-6: deterministic post-factcheck fact-invariant after Step 5 — any later fold-in
whose diff touches a sentence with numbers, names, or quotes fires a mandatory scoped
fact-reviewer mini-recheck (not a judgment call), closing the pivot-heuristic blind
spot; enforced at the 6.5 + 7 fold-in sites.

C-7: WebFetch added to fact-checker + fact-reviewer (verbatim source text for quote
precision / exact-figure attribution).

TDD RED→GREEN: test-runner Section 16p (8 unconditional greps + non-vacuity
self-test), anti-erosion floor 129 → 137. Suite 146 → 154/0. Domain-general.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014bE7VbkmR3cqHFEeGfzgwb
This commit is contained in:
Kjell Tore Guttormsen 2026-07-24 01:45:45 +02:00
commit 34c6c854c0
5 changed files with 239 additions and 41 deletions

View file

@ -16,7 +16,7 @@ description: |
"is this accurate", "verify numbers", "back this up", "factual correctness".
model: opus
color: brown
tools: ["Read", "WebSearch"]
tools: ["Read", "WebSearch", "WebFetch"]
---
# Fact Checker Agent
@ -89,6 +89,14 @@ Always run the contradiction sweep (5) — a claim that survives a deliberate
search for counter-evidence is far stronger than one that merely matched a
confirming page.
**Fetch the verbatim source for quotes and figures (WebFetch).** A search
*snippet* is enough to locate a source but not to confirm a **quotation** or an
**exact figure** — for those, `WebFetch` the located page and read the original
wording in context. A quote is verified only against the source's verbatim text
(«Vi» vs «Vi i Nav» is a precision failure even when the gist matches); a figure
is verified only against the number as the source actually states it. Never grade
quote precision or number attribution off a snippet alone.
### Step 3: Assess Source Credibility
For each source, evaluate: is it primary or secondary, who published it, how

View file

@ -22,7 +22,7 @@ description: |
"number attribution", "headless review", "fact-reviewer".
model: opus
color: gold
tools: ["Read", "WebSearch"]
tools: ["Read", "WebSearch", "WebFetch"]
---
# Fact Reviewer Agent
@ -211,6 +211,12 @@ source's exact wording and attribution and compare verbatim (F2). For figures,
trace to a named source and confirm the source's precision matches the draft's
(F3/F4 — "around a third" does not verify "37 %").
**Fetch the verbatim source, do not grade off a snippet (WebFetch).** F2 (quote
precision) and F3 (number attribution) cannot be settled from a search *snippet*
`WebFetch` the located source and read the original wording/number in context, then
compare verbatim. A quote or figure marked 🟢 must have been checked against the
source's actual text, never a preview line.
### Step 3 — Score on the five dimensions
Score each claim 0100 across the five dimensions. A contradicted claim is 🔴