ktg-plugin-marketplace/plugins/linkedin-thought-leadership/config/edition-delingstekst.template.md
Kjell Tore Guttormsen 92e0a0b4f5 fix(linkedin): close dogfood friction (S14)
Close all 9 friction points from the S13 newsletter dogfood (operator
elected to fix F6-F9 rather than defer):

- F1: namespace all subagent_type calls in newsletter.md to
  linkedin-thought-leadership:<name> (4 sites + canonical note)
- F2: document agent invocation form + reload requirement in CLAUDE.md
  + README.md (reload itself is an operator action)
- F3: add edition-config / edition-delingstekst / edition-HANDOVER
  templates under config/ + wire into Steps 0 and 8 + footer
- F4: reconcile draft path to <serie>/NN-utkast.md (series root)
- F5: de-hardcode series root (explicit arg / LTL_SERIES_ROOT / default)
- F6: config-derive carousel editions (remove Seres CAROUSEL set);
  correct samle comment
- F7: build-html.mjs exits non-zero when zero HTML produced
- F8: guard parseDelingstekst (graceful ENOENT) + correct Step 8 wording
- F9: relocate agents/README.md -> docs/agents-capability-matrix.md

Re-tested: 87/87 plugin tests pass; build-html/build-linkedin behavior
re-verified live. Per-item outcomes logged in dogfood-S13-friction.md.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 23:37:39 +02:00

55 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!--
TEMPLATE — edition-delingstekst.md (distribution copy for a newsletter edition)
Purpose : the per-edition LinkedIn distribution text that render/build-linkedin.mjs
folds into each POST.html "all-in-one-place" deliverable. This is the
feed copy the reader sees BEFORE "…see more" — the hook that earns the
click (gated in /linkedin:newsletter Step 9).
Decision: G — production lives in the series root, NOT the plugin. Copy this to
<serie>/linkedin/edition-delingstekst.md and fill it in.
Location: <serie>/linkedin/edition-delingstekst.md (cwd = series root).
Graceful: render/build-linkedin.mjs degrades if this file is missing (no
distribution copy is folded in; the article POST.html still builds).
Provide it for a complete delivery.
GRAMMAR (exactly what parseDelingstekst() recognizes — do not improvise):
- A section starts with a heading: "## Del N — <title>" (N = article number,
mapped to zero-padded key "0N") OR "## Samle <…>" (the collected post,
key "samle").
- "## SYSTEM …" headings are ignored.
- Inside a section, until the next "## " heading or a "---" line:
* "**Første kommentar:** <text>" → first-comment text (one line).
* a line beginning with "#" + non-space (e.g. "#KI #offentligsektor")
→ the hashtag line.
* a "> …" blockquote line → ignored (use it for NB/notes to yourself).
* every other line → part of the share text (the hook + body shown in feed).
Keys MUST match the NN-prefix of the draft (NN-utkast.md) and edition-config.json.
-->
## Del 1 — <edition title>
<First line = the krok/hook: the single line that must stop the scroll. Keep the
strongest claim or tension here; this is what shows before "…see more".>
<Then 24 short lines that pay off the hook and point at the article. Tighten,
never pad — this is feed copy, not the article.>
**Første kommentar:** <the first-comment text — e.g. a link, a question to seed
discussion, or the "full edition here" pointer. LinkedIn suppresses links in the
body, so the link belongs here.>
#hashtag1 #hashtag2 #hashtag3
> NB to self (ignored by the renderer): note any freshness caveat or A/B variant
> you want to remember for this edition.
---
## Samle <collected-post title, if shipping a roundup of the series>
<Hook for the collected/summary post. Same grammar. Omit this whole section if the
edition has no samle post.>
**Første kommentar:** <first comment for the samle post>
#hashtag1 #hashtag2