feat(linkedin): newsletter Step 3-4 draft + consistency (S8)
This commit is contained in:
parent
9b1669a3f6
commit
39ae875b96
1 changed files with 126 additions and 9 deletions
|
|
@ -70,10 +70,11 @@ single most important correction from the Seres process (plan §0.4, principle 5
|
|||
| 9 | **Hook / conversion gate** | persona gate on the distribution text post-lock: "would YOU click?" | **`persona-reviewer`** (conversion mode) |
|
||||
| 10 | **Scheduling** | register the edition in the plugin queue/state for native scheduling | `hooks/scripts/queue-manager.mjs` |
|
||||
|
||||
> **Build status:** Steps 0–2 are implemented below. Steps 3–10 are added in
|
||||
> subsequent build sessions (plan steps S8–S10). Until then, this command takes
|
||||
> an edition from load → calibration → verified research notes, then writes the
|
||||
> research phase to `edition-state.json` and HANDOVER and stops cleanly.
|
||||
> **Build status:** Steps 0–4 are implemented below. Steps 5–10 are added in
|
||||
> subsequent build sessions (plan steps S9–S10). Until then, this command takes
|
||||
> an edition from load → calibration → verified research → draft →
|
||||
> consistency/quality pass, persisting each phase to `edition-state.json` and
|
||||
> the HANDOVER and stopping cleanly between sessions.
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -221,12 +222,128 @@ Next session: Step 3 — Draft.
|
|||
|
||||
---
|
||||
|
||||
## Steps 3–10 (added in subsequent build sessions)
|
||||
## Step 3: Draft — dramaturgical order, voice-matched
|
||||
|
||||
Drafting, consistency/quality, the fact-check sweep, the pre-lock persona sweep,
|
||||
optional annotation, lock/delivery, the post-lock hook-gate, and scheduling are
|
||||
implemented in plan steps S8–S10. Each will append its phase here, reading the
|
||||
phase contract from `config/edition-state.template.json` and the long-form
|
||||
Turn the verified research notes (Step 2) into a full draft. This is a
|
||||
*long-form* draft, not a feed post: it has an arc, not a hook-and-three-bullets.
|
||||
|
||||
> **This phase may span multiple sessions.** A long edition can exceed a single
|
||||
> session's context budget. If you approach the budget mid-draft, stop cleanly,
|
||||
> write the partial draft to the edition folder, record `currentPhase: "draft"`
|
||||
> with a section-level cursor in `edition-state.json`, and append a precise
|
||||
> "draft resumes at section <X>" pointer to the edition-HANDOVER §6. The next
|
||||
> session re-reads Step 0, picks up the cursor, and continues. Never start the
|
||||
> consistency pass (Step 4) on a half-written draft.
|
||||
|
||||
**Procedure:**
|
||||
|
||||
1. **Re-read the voice profile** (`assets/voice-samples/`) before writing a single
|
||||
sentence — this is the existing LTL rule and it is not optional for long-form.
|
||||
The draft must read as the author, not as generic LinkedIn prose.
|
||||
|
||||
2. **Lay out the dramaturgical order** from the brief (Step 1) and notes (Step 2):
|
||||
- **Ingress + first paragraph** establish ONE clear premise (this is the front
|
||||
half of the premise→conclusion arc enforced in Step 4).
|
||||
- **Body** develops the 2–4 key points in the order that builds tension, each
|
||||
anchored to a verified note. Carry each note's source marker inline as a
|
||||
comment so the Step 5 fact-check sweep can find it.
|
||||
- **Conclusion** grips the premise concretely and twists it forward (direction +
|
||||
one concrete grip) — it does not merely summarize.
|
||||
|
||||
3. **Draft with the `content-repurposer` muscle.** Reuse `agents/content-repurposer.md`
|
||||
(its article→long-form conversion discipline) for the section-to-prose work —
|
||||
invoke it via `Task` for individual sections when useful, *from this command
|
||||
layer* (foreground, principle 4). The command owns assembly and voice; the
|
||||
agent assists with conversion. The draft is voice-matched by THIS session, not
|
||||
self-certified for voice — voice-match remains an `[OPERATØR]` / `[GATE:
|
||||
voice-trainer]` judgment, never auto-passed (plan §10.0).
|
||||
|
||||
4. **Write the draft** to the edition folder (`<serie>/linkedin/<article>.draft.md`),
|
||||
set `currentPhase: "draft"` in `edition-state.json`, and append a
|
||||
"draft complete → next: consistency/quality" pointer to the HANDOVER §6.
|
||||
|
||||
```
|
||||
Draft complete (or: partial — resumes at section <X>).
|
||||
- Premise established: <one line>
|
||||
- Key points drafted: <N>/<N>
|
||||
- Voice-match: [OPERATØR]/[GATE: voice-trainer] — NOT self-certified
|
||||
Draft written: <serie>/linkedin/<article>.draft.md
|
||||
Next: Step 4 — Consistency + quality.
|
||||
```
|
||||
|
||||
## Step 4: Consistency + quality
|
||||
|
||||
Run the draft through the long-form quality rules. This is a *tightening* pass —
|
||||
the gap between draft and final is closed by **swapping weaker for sharper and
|
||||
cutting, not by expansion**; hold the length flat (plan §8).
|
||||
|
||||
> **Inlined rules (forward-reference note).** The canonical long-form quality
|
||||
> rules live in `references/longform-quality-rules.md` — but that file is not
|
||||
> authored until plan step S12. So the rules are **inlined here now**. When S12
|
||||
> lands, this block is EXTRACTED to that reference file and replaced with a
|
||||
> pointer; there is no dangling reference at any point.
|
||||
|
||||
**Calibration first (a per-sweep user choice, not a default — plan §8):** before
|
||||
running this pass, confirm fold-in aggressiveness (conservative vs. aggressive),
|
||||
jargon handling, and — when it matters later — persona weighting on conflict. Ask
|
||||
once if the Step 1 brief did not already settle it.
|
||||
|
||||
Apply each rule and report a pass/flag per rule:
|
||||
|
||||
1. **Threads.** Every thread opened in the ingress/body resolves by the
|
||||
conclusion — no dropped setups, no orphaned promises.
|
||||
|
||||
2. **Premise→conclusion arc.** The premise set in the ingress (Step 3) is the same
|
||||
premise the conclusion grips and twists forward. If the draft drifted to a
|
||||
different premise, realign the conclusion or the ingress — do not leave two
|
||||
premises.
|
||||
|
||||
3. **Leader-takeaway.** The edition lands ONE clear takeaway + ONE concrete action.
|
||||
Cut references hard; hands-on credibility beats a citation-pile. If the reader
|
||||
cannot state the takeaway in one sentence, tighten until they can.
|
||||
|
||||
4. **AI-slop removal (forbidden phrases — strip on sight).** These are the Seres
|
||||
ban-list; they read as machine-written and must not appear:
|
||||
- "her må jeg være ærlig" / "for å være ærlig"
|
||||
- "ikke bare X, men Y"
|
||||
- gratuitous three-item listing (rule-of-three as a tic)
|
||||
- "i en stadig mer kompleks verden"
|
||||
- tacked-on summary sentences that restate what was just said
|
||||
|
||||
5. **General, not org-/person-specific.** No personal agency anecdotes; present
|
||||
opportunities, not provocations. At most ONE structural anchoring reference per
|
||||
text — never repeated criticism of a named person.
|
||||
|
||||
6. **Formatting dose (minimal).** Bold = at most one point per section. Short lists
|
||||
(2–4 items) only where the text already enumerates — never turn load-bearing
|
||||
reasoning into bullets. Tables sparingly. *"No article should look like a
|
||||
PowerPoint printout."*
|
||||
|
||||
7. **Close gaps by tightening, not expanding.** Swap weaker passages for sharper
|
||||
ones; keep the length flat.
|
||||
|
||||
After the pass, set `currentPhase: "quality"` in `edition-state.json` and append a
|
||||
"quality pass complete → next: fact-check sweep" pointer to the HANDOVER §6.
|
||||
|
||||
```
|
||||
Consistency + quality pass complete.
|
||||
- Threads resolved: <yes/flags>
|
||||
- Premise→conclusion arc: <intact/realigned>
|
||||
- Leader-takeaway: <one line>
|
||||
- AI-slop phrases removed: <N>
|
||||
- Formatting dose: <within bounds/trimmed>
|
||||
- Length delta vs. draft: <flat/±N words> (target: flat)
|
||||
Next: Step 5 — Fact-check sweep (guilty-until-disproven, BEFORE lock).
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Steps 5–10 (added in subsequent build sessions)
|
||||
|
||||
The fact-check sweep, the pre-lock persona sweep, optional annotation,
|
||||
lock/delivery, the post-lock hook-gate, and scheduling are implemented in plan
|
||||
steps S9–S10. Each will append its phase here, reading the phase contract from
|
||||
`config/edition-state.template.json` and (once extracted in S12) the long-form
|
||||
quality rules from `references/longform-quality-rules.md`.
|
||||
|
||||
---
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue