fix(linkedin-studio): S27 ref-consistency A — "penalty/penalizes" framing → SSOT

Reconcile external-link and topic-relevance reach-loss framing to the algorithm-signals
SSOT across 6 files (10 edits): body links "correlate with lower reach" (LinkedIn denies
an intentional penalty), topic relevance is a positive ranking input with no quantified
off-topic figure. 3 plan-cited lines + 7 same-class siblings surfaced during verify.

Bucket B (link-penalty lines in linkedin-formats.md) folded into S28; Bucket D (other
unsourced reach-coefficients: -68%/-25%/-15-25%/-30-50%/55%) queued as new S30. Engagement-
pod + AI-slop "penalized" framing left intact (officially confirmed). Gate 81/0/0; counts
29/19 unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016qgzo6rxthw7KuxHjn5vyE
This commit is contained in:
Kjell Tore Guttormsen 2026-06-19 22:06:39 +02:00
commit 2b9ed1cf0b
8 changed files with 75 additions and 17 deletions

View file

@ -92,6 +92,7 @@ that exercises the command's real path:
| S6 video | S13 calendar | S20 competitive | S27 ref-consistency A |
| S7 batch | S14 import | S21 monetize | S28 ref-consistency B |
| S8 pipeline | S15 report | S22 outreach | S29 terminology-scrub |
| | | | S30 magnitude-scrub |
*S9 newsletter (16-phase) may split into S9a/S9b. Otherwise one command = one session.
@ -100,12 +101,16 @@ follow-up #1 to scheduled work).** NOT full re-hardening of already-✅ commands
SSOT-reconciliation of the documented divergences, same tool-grounded discipline
(read-and-show → grep-confirm → re-grep final):
- **S27 (A) — "penalty/penalizes" framing → SSOT:** `references/troubleshooting-guide.md:127`
("External link overuse — LinkedIn **penalizes**" → "correlate with lower reach"),
`commands/analyze.md:102` (milder echo), `commands/audit.md:61` ("topic-relevance **penalty**"
→ SSOT frames relevance as a positive driver, not a named penalty).
- **S27 (A) — "penalty/penalizes" framing → SSOT ✅ DONE (2026-06-19, 10 edits/6 files; see `log.md`).**
The 3 cited lines (`troubleshooting-guide.md:127`, `analyze.md:101`, `audit.md:60` — nr drifted ±1) +
7 same-class siblings (trend-spotter topic-relevance ×2, troubleshooting-guide :15, first-comment-strategy
×3, url-processing-templates :396) reconciled to "correlate with lower reach" / "topic relevance is a
ranking input — off-topic gets lower reach". Bucket B (link-penalty lines in `linkedin-formats.md`) folded
into S28; Bucket D (other unsourced magnitudes) promoted to S30.
- **S28 (B) — format magnitudes → SSOT:** `commands/video.md:69` + `references/linkedin-formats.md`
(the "30% zero-distribution" claim vs SSOT native-video framing).
(the "30% zero-distribution" claim vs SSOT native-video framing) **+ the 6 link-penalty lines folded in
from S27 Bucket B** (`linkedin-formats.md:52,:91,:194,:198,:200,:432`) — reconcile link + format framing
in one pass over that file.
**S29 — terminology scrub: "thought leadership" → "LinkedIn Studio" / neutral (added 2026-06-19,
operator-approved during S26).** The phrase must not appear anywhere in the plugin (it is named LinkedIn
@ -116,8 +121,18 @@ questions for this pass: (a) user-facing surface only, or include historical CHA
`thought-leadership-angles.md` rename is its own sub-step — every pointer to the filename must update with
it. Same tool-grounded discipline (read-and-show → grep-confirm → re-grep final); hardening-class.
Run after S26; order adjustable (S27 → S28 → S29). These edit already-hardened files surgically and are
hardening-class (commit local, no push).
**S30 — magnitude scrub: unsourced reach-coefficients → SSOT (surfaced during S27, 2026-06-19).** A
*different* class from S27's link/topic-relevance framing: discrete percentage penalties with **no
primary source in the SSOT** — `68%` (5+ hashtags: `linkedin-growth-playbook:166`, `ab-testing-framework:66`),
`25%` (<1000 chars: `linkedin-growth-playbook:224`), `15-25%` (topic-gap: `glossary:235`), `30-50%`
(engagement-bait: `glossary:91`), `55%`/`45%` (AI-comment: `engagement-coach:195`, `firsthour:112` — SSOT
carries ~45% *correlational engagement gap* at medium confidence, not a 55% reach penalty), `25%/post`
(multiple posts/3h: `post-feedback-monitor:330`), poll-overuse (`poll-strategy-guide:20,:205`). **Leave
intact (officially confirmed, high confidence): engagement-pod + AI-slop "penalized" framing.** Full grep
catalog in `log.md` S27 entry, Bucket D. Same discipline; hardening-class.
Run after S26; order adjustable (S27 ✅ → S28 → S29 → S30). These edit already-hardened files surgically and
are hardening-class (commit local, no push).
## End-of-session ritual (every session — STATE.md handoff baked in)