docs(linkedin-studio): S29c hardening log entry — terminology-scrub references/

Append the S29c verification record to docs/hardening/log.md (anchored
"### S29c terminology-scrub" entry, matching S29a/S29b format): the 34-edit replacement map
across 15 reference files, the S29e filename lock (thought-leadership-angles.md ->
content-angles.md) with the canonical file's in-file title/headers scrubbed now, the
KEPT-BY-DESIGN items (ironic quote, TL;DW false positive), and the verify block (FORM A in
references/ = only the kept ironic quote; canonical in-file FORM A = NONE; FORM B unchanged 4;
filename pointers unchanged 3; gate 81/0/0; counts 29/19/26/6 unchanged). Documents fix commit
25b356f.

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-20 05:45:50 +02:00
commit bfc8719011

View file

@ -2005,3 +2005,86 @@ per-directory design). `differentiation-checker.md:278` "### Value Test: [X]/3 p
`references/` · **S29d** misc · **S29e** rename + 20 pointers.
---
### S29c terminology-scrub — "thought leadership" → neutral (`references/`)
**CLASS: terminology-scrub** (NOT re-hardening — surgical removal of the operator-banned brand phrase
"thought leadership", FORM A, from the reference-doc surface; memory `no-thought-leadership-phrase`).
Third and largest sub-pass of the plugin-wide S29 scrub (~2× the S29a/S29b volume). SCOPE inherits the
S29a/S29b operator-lock verbatim (FORM A only; FORM B untouched; per-directory sub-pass, map approved
before edit).
**TEST (tool-grounded).** `grep -in "thought leadership"` (space) in `references/` = **35 phrase lines /
15 files** — 29 single-line across 14 files + the canonical `thought-leadership-angles.md` = 6 lines / 7
instances (line 7 ×2) ≈ **36 FORM A instances**. The 3 hyphenated `thought-leadership-angles.md` filename
pointers are invisible to the space-grep and deferred to S29e. Read-and-show of every occurrence in
context before proposing the 34-row map. Anchor-check (`grep "Value Test"` / `#thought-leadership` /
`#the-standard-thought`): **no anchor links** to the changed headers anywhere in the plugin, and the only
"Value Test" / "Standard Thought Leadership Structure" term-hits were the two SSOT spots being edited — no
hidden same-class instances.
**S29e filename locked (operator, this session): `thought-leadership-angles.md``content-angles.md`.**
The canonical file's in-file title/headers were therefore scrubbed now for consistency (H1 →
"# Content Angles"; "## The Authority Value Test"; "### Step 3: Test For Authority Value"); the file
rename + all 20 pointers remain S29e (atomic).
**HARDEN (34 edits, 15 files — 1:1).** Vocabulary consistent with S29a/S29b: "thought leadership
angle(s)" → "content angle(s)"; "thought leadership" (positioning/practice) → "authority …"; content-type
labels (lists/tables) → "authority content / authority posts"; the "Value Test" family → "Authority Value
Test".
- Established cross-pass equivalents closed: `glossary.md:229` "### Thought Leadership Value Test" →
"### Authority Value Test" (closes the S29b cross-directory naming gap); `glossary.md:29` "8 universal
thought leadership angles" → "content angles"; `engagement-frameworks.md:137` "Standard Thought
Leadership Structure" → "Standard Post Structure" (matches S29a `post:98`).
- `thought-leadership-angles.md` (6 edits / 7 instances): H1 → "# Content Angles"; :3 "identifying
thought leadership angles" → "content angles"; :7 (×2) "Thought leadership isn't about…/can become
thought leadership" → "Authority isn't about…/can build authority"; :92 "Test For Thought Leadership
Value" → "Test For Authority Value"; :212 "Marketing disguised as thought leadership" → "expertise";
:215 "## The Thought Leadership Test" → "## The Authority Value Test".
- `linkedin-formats.md` (5): :24/:79/:272/:309 content-type labels → "authority content/posts"; :295
"Text-based thought leadership often outperforms…" → "Text-based content …" (avoids authority…authority
echo).
- `linkedin-visual-style.md` (4): :3 "For thought leadership," → "For building authority,"; :7 "thought
leadership niche" → "authority niche"; :82 label → "authority content"; :123 "myth for thought
leadership content" → "authority content".
- `trajectory-strategy-adjustments.md` (3): :167 "Shift to thought leadership" → "authority content";
:202 "100% thought leadership and signature content" → "100% authority and signature content"; :217
"thought leadership deepening" → "authority deepening".
- `linkedin-monetization-strategies.md` (3): :285 "Inbound from thought leadership" → "authority
building"; :624 "80% thought leadership" → "authority content"; :658 "Breaks the thought leadership
positioning" → "authority positioning".
- `ai-content-framework.md` (2): :3 "build thought leadership in the AI space" → "authority"; :380 "main
LinkedIn thought leadership skill" → "content skill" (judgment-call; avoids awkward "authority skill").
- Single-edit files (8 edits / 8 files): `ab-testing-framework.md:9` → "authority building";
`growth-roadmaps.md:222` "Thought leadership pieces" → "Authority pieces";
`linkedin-growth-playbook-2025-2026.md:822` → "Reflective authority content";
`algorithm-signals-reference.md:158` (SSOT) "Text for thought leadership" → "Text for authority"
(phrase only; magnitudes = S30); `scheduling-strategy.md:35` → "Mid-week authority content";
`poll-strategy-guide.md:179` "thought leadership angle" → "content angle"; `video-strategy-guide.md:3`
→ "authority content"; `video-strategy-guide.md:580` "8 thought leadership angles" → "8 content
angles".
**KEPT BY DESIGN (operator-approved).** `video-strategy-guide.md:429` ironic quote "Your 'thought
leadership' content isn't leading anyone's thoughts." — scrubbing destroys the point.
`video-strategy-guide.md:532` "TL;DW" = false positive (too long, didn't watch).
**VERIFY.**
- Re-grep final FORM A `thought leadership` (space) in `references/` → only the kept ironic quote
(`video-strategy-guide.md:429`); canonical-file in-file FORM A → **NONE**.
- FORM B in `references/` = **4**, unchanged (`collaborations-guide.md:211`, `analytics-tools-guide.md:227`,
`opportunity-generation.md:81`, `linkedin-visual-style.md:134`).
- Filename pointers `thought-leadership-angles.md` in `references/` = **3**, unchanged (S29e).
- New terms present: "Authority Value Test" (`glossary.md:229` + `thought-leadership-angles.md:215`,
consistent), "Standard Post Structure" (`engagement-frameworks.md:137`).
- `bash scripts/test-runner.sh``Passed: 81 · Failed: 0 · Warnings: 0`, **exit 0**; counts
**29/19/26/6** + v0.5.0 unchanged.
- Disposition: **FIXED** (34 edits, 15 files). Commit `b9b769c` (local; push parked per policy until
operator OK).
**SURFACED (queued, not swept).** Remaining S29 queue: **S29d** `skills/` + `config/` + `assets/` +
`README.md` + `CLAUDE.md` + `hooks/prompts/` + forward-looking docs + test `.mjs` · **S29e** rename
`thought-leadership-angles.md``content-angles.md` + all 20 pointers (atomic; filename locked). The
canonical file's in-file phrase scrub is done, so S29e is now a pure rename + pointer-update with no
remaining FORM A inside the file.
---