feat(linkedin-studio): make long-form review language configurable [skip-docs]
Wave 3 / Step 9 of the remediation plan (Phase 1 — usable by a non-author).
The long-form review layer shipped Norwegian-locked: language-reviewer graded
unconditional Norwegian, voice-scrubber's gold standard was 'approved Norwegian
editions', and the editorial/content craft gates pointed at a 'skrivekontrakt §C2'
that does not ship. A non-Norwegian adopter would get English prose graded against
Norwegian idiom and a gate that depends on an unshipped contract.
- config/edition-state.template.json: add additive 'language' field (top-level,
default 'en') + a _doc entry. Threads into the language-dependent agents.
- agents/language-reviewer.md: new 'Language parameter' section — Norwegian-specific
checks (anglicism->Norwegian idiom, kanselli-stil) apply only when language=='no';
any other value grades that language's equivalents and never flags idiomatic
English as an anglicism. Default 'en'.
- agents/voice-scrubber.md: gold standard reframed to 'approved editions in the
configured language'; the Norwegian-chronicle calibration is the language=='no'
instantiation.
- agents/editorial-reviewer.md + agents/content-reviewer.md: the in-tree checklist
is now the operative, self-contained source of truth; Maskinrommet §C2 is an
optional upstream contract that does NOT ship (available only on the author's
runs). The gates work for an adopter without it.
- commands/newsletter.md: thread 'language' through the Step 6.5 cold-inputs and the
per-reviewer call inputs; the writing contract is now 'if it ships'.
Norwegian remains fully working when language: no (the author's case).
fact-reviewer.md was in the plan's file list but needed no change on inspection:
its F1-F4 checks (claims/quotes/numbers/sources) are language-agnostic; its
'Norwegian' mentions are boundary notes vs language-reviewer, which stay correct.
[skip-docs]: three-doc + version reconciliation is Step 21 (pre-review-gate); these
intermediate Wave commits are not pushed before the /trekreview gate.
Verify: edition-state JSON parses + has top-level language 'en'; language-reviewer
has 'language ==' references and no unconditional-Norwegian assertion; editorial
§C2 reframed to in-tree fallback ('operative source', 'does not ship'); agent
fixtures 35/35 pass; structural lint exit 0 (61 passed).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
305b99c0e4
commit
8d2968a482
6 changed files with 68 additions and 29 deletions
|
|
@ -38,6 +38,24 @@ You run at **Step 6.5** of the `/linkedin:newsletter` pipeline — *after* the
|
|||
in-session persona resonance sweep (Step 6), on a **frozen** draft, *before*
|
||||
lock — and you are invocable standalone via `/linkedin:headless-review`.
|
||||
|
||||
## Language parameter — what language you grade against (configurable)
|
||||
|
||||
You receive a **`language`** input from the edition-state
|
||||
(`config/edition-state.template.json`, default `"en"`). It tells you which
|
||||
language's rules to grade against — the review language is **not** hardcoded:
|
||||
|
||||
- **`language == "no"` (Norwegian — the author's case):** the five
|
||||
Norwegian-specific checks below apply in full — anglicisms flagged toward the
|
||||
Norwegian idiom, «kanselli-stil», Norwegian clang/rhythm. This is the original
|
||||
instantiation of the gate.
|
||||
- **`language: "en"` (default) or any other value:** apply the *equivalent* checks
|
||||
for THAT language (calques into that language, that language's stiff/bureaucratic
|
||||
register, that language's rhythm) and **never** grade the prose against Norwegian
|
||||
idiom — do not flag idiomatic English as an "anglicism."
|
||||
|
||||
If no `language` is supplied, assume `"en"`. Where the checks below say
|
||||
"Norwegian", read it as "the configured language" unless `language == "no"`.
|
||||
|
||||
## Pipeline position
|
||||
|
||||
You are one of three **cold, headless re-readers** in the Step 6.5 package (with
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue