linkedin-studio/agents
Kjell Tore Guttormsen b30b0e208f feat(linkedin-studio): N8 — stemme-kjeden (chronicle-voice-profile + drift-logg + language-resolve + auto-gull) [skip-docs]
Bind the long-form VOICE before prose — the discipline the line already
applies to SOURCES (validate-binding), its strongest link.

- C-1/A2-F1: voice-trainer distils a chronicle-voice-profile from the
  published gold corpus (per language/format); newsletter Step 0/3a/3b bind
  drafting to it, with an explicit never-silent fallback to the short-form
  corpus (which the engine itself calls degrading for chronicle voice).
- C-2: Step 3a Pass 0 READS the chronicle-voice-drift-log as a negative list
  (it was append-only, never consumed); Step 3b re-reads it in expansion.
- C-3: Step 1 resolves + persists the top-level edition-state.language, making
  the template doc-string's "Resolved at Step 1" claim true; the Norwegian
  review axis (language-reviewer / voice-scrubber) now fires when the edition
  IS Norwegian instead of being silently off by default. Step 6.5 already
  consumed the field — resolving it closes the axis end-to-end.
- A2-F2: Step 8 lock appends the locked edition to ingest/published
  (provenance=published), so the gold corpus the profile distils from grows
  one edition at a time — never the engine's drafts.

Domain-general throughout (languages/formats from the user's own corpus).
test-runner 140 -> 146 (Section 16o: 6 unconditional voice-chain greps +
non-vacuity self-test; anti-erosion floor 123 -> 129). All six suites green
(trends 300, brain 134, hooks 140, tests 35, render 60).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014bE7VbkmR3cqHFEeGfzgwb
2026-07-23 22:58:38 +02:00
..
analytics-interpreter.md test(linkedin-studio): M0-16 — lint: EXPECT_REFS=26 + no-bare-path + no-pin + SC2 dry-run (R1) + drop 5 ANALYTICS_ROOT pins it caught 2026-06-18 13:11:50 +02:00
content-optimizer.md docs(linkedin-studio): M0-15 — repoint remaining prose families + route ab-tests/plans 2026-06-18 13:04:18 +02:00
content-planner.md feat(linkedin-studio): de-niche content framework + planner calendar — recast/rename to content-framework.md (B-S2a) [skip-docs] 2026-06-23 10:02:26 +02:00
content-repurposer.md refactor(linkedin-studio): S31b multiplier-scrub (commands + agents) — generic "Nx" claims -> SSOT 2026-06-20 09:34:20 +02:00
content-reviewer.md refactor(linkedin-studio): move agent fasit fixtures + tests out of agents/ (v0.5.3) 2026-06-24 13:29:57 +02:00
demand-spotter.md feat(linkedin-studio): N7.5 — MR-F9 etterspørsels-sveip (Tier-5-kilder + smertepunkt + vokabular-oversettelse + arc-kontrakt) [skip-docs] 2026-07-23 22:26:39 +02:00
differentiation-checker.md feat(linkedin-studio): de-niche content framework + planner calendar — recast/rename to content-framework.md (B-S2a) [skip-docs] 2026-06-23 10:02:26 +02:00
editorial-reviewer.md refactor(linkedin-studio): move agent fasit fixtures + tests out of agents/ (v0.5.3) 2026-06-24 13:29:57 +02:00
engagement-coach.md refactor(linkedin-studio): S31c descriptive-%-scrub — platform-norm percentages asserted as fact -> SSOT 2026-06-20 09:54:44 +02:00
fact-checker.md feat(linkedin): v2.2.0 — harden longform gates from 2nd production run 2026-05-28 20:50:56 +02:00
fact-reviewer.md refactor(linkedin-studio): move agent fasit fixtures + tests out of agents/ (v0.5.3) 2026-06-24 13:29:57 +02:00
language-reviewer.md refactor(linkedin-studio): move agent fasit fixtures + tests out of agents/ (v0.5.3) 2026-06-24 13:29:57 +02:00
network-builder.md feat(linkedin-studio): de-niche rest-sweep — vary KTG-beat examples across surfaces (B-S2b) [skip-docs] 2026-06-23 10:50:28 +02:00
persona-reviewer.md refactor(linkedin-studio): move agent fasit fixtures + tests out of agents/ (v0.5.3) 2026-06-24 13:29:57 +02:00
post-feedback-monitor.md refactor(linkedin-studio): S31c descriptive-%-scrub — platform-norm percentages asserted as fact -> SSOT 2026-06-20 09:54:44 +02:00
strategy-advisor.md feat(linkedin-studio): SB-S3d — operations.md ops centre (strategy-advisor reader) [skip-docs] 2026-06-23 21:28:26 +02:00
trend-spotter.md feat(linkedin-studio): N5 — /linkedin:trends discovery-kommando + trend-spotter pin-fjerning + triage [skip-docs] 2026-07-17 04:00:17 +02:00
video-scripter.md feat(linkedin-studio): de-niche rest-sweep — vary KTG-beat examples across surfaces (B-S2b) [skip-docs] 2026-06-23 10:50:28 +02:00
voice-scrubber.md docs(linkedin-studio): M0-15 — repoint remaining prose families + route ab-tests/plans 2026-06-18 13:04:18 +02:00
voice-trainer.md feat(linkedin-studio): N8 — stemme-kjeden (chronicle-voice-profile + drift-logg + language-resolve + auto-gull) [skip-docs] 2026-07-23 22:58:38 +02:00