docs(linkedin-studio): M0-15 — repoint remaining prose families + route ab-tests/plans

This commit is contained in:
Kjell Tore Guttormsen 2026-06-18 13:04:18 +02:00
commit 6bd263144f
35 changed files with 167 additions and 130 deletions

View file

@ -34,6 +34,43 @@ surviving bare `assets/voice-samples/` is inside the convention doc itself (it d
the in-plugin placeholder-scaffold location for the fallback rule) — Step 16's
no-bare-path assertion must exempt `references/data-path-convention.md`.
### Step 15 — 130 refs / 34 files repointed; shipped read-only preserved
Rule-based repoint (negative-lookahead per subdir): analytics 50, drafts 24,
audience-insights 14, profile/D1 12, examples 11, plans 6, my-post-templates 4,
frameworks 3, case-studies 3, network 2, repurposing-tracker 1. Counts match the
plan's family estimates once the **shipped exclusions** are accounted for
(frameworks 6→3 drops `framework-template.md`; case-studies 5→3 drops
`case-study-template.md`; analytics drops `README.md`; the Step-11 `ANALYTICS_ROOT`
pins were already gone). **Style-A `${CLAUDE_PLUGIN_ROOT}` preserved** for shipped
read-only: `analytics/README.md`, all `*-template.md` seeds, `assets/checklists/`,
`assets/quick-post-resources.md`, the shipped `assets/templates/*` (only the
`my-post-templates.md` *instance* repointed), `config/*.template.*`, and every
`scripts/analytics` / `hooks/scripts` CODE path. **profile/D1:** `config/user-profile.local.md`
`${…}/profile/user-profile.md` (path + filename change, drops `.local`, per
MOVE_FILES). **ab-tests/** routes under `${…}/analytics/ab-tests/` (brief §7.1);
**plans/** at `${…}/plans/` (top-level). Verify: the only in-plugin data-dir paths
left are the three shipped exclusions; full lint Failed:1 = EXPECT_REFS only.
### Step 15 scope notes — two additions, one deferral
- **network/ + repurposing-tracker.md repointed (additions beyond the plan's named
families).** Both are **code-invisible data classes** the agents *write*
(`network-builder.md`, `content-repurposer.md` save trackers into the plugin tree).
They fit Step 15's stated goal ("route the code-invisible data classes so they don't
silently orphan when the default flips"); the plan named ab-tests/plans as examples,
not an exhaustive list. As **write-targets** they are self-sufficient — the agent
creates the file external on first write, no migration entry needed.
- **`config/personas.local.md` deferred — OUT of M0 scope.** Unlike the write-targets,
this is a **read fallback** in a resolution chain (edition-state → series file →
plugin `personas.local.md` → template). Repointing the read external without a
migration dest would break the read, and adding it to `MOVE_FILES` is a `.mjs` change
Step 15's scope fence forbids. Personas are newsletter/series production data (already
external via `$LTL_SERIES_ROOT`); the plugin-level `personas.local.md` is a deliberate
in-plugin fallback library. Left as-is; Step 16's no-bare-path lint targets the
*migrated* data classes only, so it does not flag personas. Track as a follow-up if a
full personas externalization is wanted later.
## Session 3 — Steps 1113 (2026-06-18)
### Environment reality vs. plan assumptions