1. **Header** — crumbs, title, date, verdict pill (run 018 stylesheet). 2. **What changes Monday** — opening paragraph (≤120 words). Pain in one sentence, change in one sentence, who+when in two sentences. 3. **Why this matters** — 3 sentences. Charlie/Bear shipping, silent drift, legacy claude-skills confusion. 4. **The decision in one diagram** — ASCII or image, ≤8 lines. Source-of-truth on top, push channel middle, every surface bottom. Skimmer's exit point. 5. **How it works** — architect's slot. Three subsections @ ≤200w: 5.1 storage substrate, 5.2 push channel, 5.3 session-boot integration. Each ends with a "Why not the alternative" sentence. 6. **What gets retired** — cleanup of legacy claude-skills, symlink fate, setup-skills.sh fate. 3-5 bullets. 7. **Rollout plan** — 6-column ticket table (see §4 below). Quarterback's slot. 8. **Cost and risk** — market-analyst's slot. One paragraph each: cost, risk, rollback. Numbers cited. 9. **Where the team split** — dissent block. Named agents, one-line positions, research pointers. 10. **What ships first** — canary cohort, success signal, abort criteria. Closes with CTA. 11. **Per-agent journals** — collapsed `<details>` blocks.
**Two-audience handling without doubling length:** body prose stays single-voice (engineer-to-operator). Ewing reads body for the decision; Charlie/Bear scan the rollout ticket table where each ticket has explicit `owner` column. Run 018 shipped this exact split with per-section role tags and it landed; parallel-section drafts double length and halve readability.
**Register:** engineer-to-operator. Short declarative sentences. Opinionated where swarm agrees, explicitly forked where it does not. No marketing voice, no academic hedging.
**Exemplar from run 007** (`previous_swarms/007-repo-consolidation-one-repo.html`, "Why this matters"): > "Ewing is the only engineer. The interns can't unbreak production at 11pm."
Two sentences, six and seven words, no jargon, names the actual constraint. That is the register.
**Banned phrases** per `skills/maxswarm/banned_phrases.md`. No em/en dashes, no "leverage/synergy/robust/scalable/best-in-class". Numeric ranges with single ASCII hyphen + spaces.
**Sentence cadence:** target average 14 words, hard ceiling 28. Any sentence over 28 splits before Phase 5.
Dissent goes at bottom of doc in single block titled **"Where the team split"**, never inline. Inline pull-quotes interrupt the skim.
<section><h2>Where the team split</h2><div class="card">
<ul>
<li><strong>listener</strong> — preferred LaunchAgent polling on every machine over a server-pushed channel. Argument: poll is observable, push is silent when broken. [research → previous_swarms/019/listener.html]</li>
<li><strong>architect</strong> — argued GitHub repo + Action remains the source of truth; Supabase Realtime is the push channel, not the substrate. [research → previous_swarms/019/architect.html]</li>
<li><strong>quarterback</strong> — flagged that any plan requiring a setup script on Charlie's machine is a non-starter. [research → previous_swarms/019/quarterback.html]</li>
</ul></div></section>
Rules: max 6 dissent items. Multiple agents can hold same position. If unresolved, end with "Resolution pending; default behavior is X until decided."
| Column | Type | Example | Notes | |---|---|---|---| | `id` | string | `SKILL-SYNC-01` | Sequential within run. | | `owner` | enum | `ewing` / `charlie` / `bear` / `mac-mini-clawdbot` | One owner only. No shared tickets. | | `depends_on` | string or empty | `SKILL-SYNC-00` | Other ticket IDs. Empty = no deps. | | `ship_window` | string | `2026-05-08 daytime PT` | Calendar gate, not deadline. | | `rollback` | string | `git revert HEAD; pull origin/main` | One-line rollback an operator can run. If no rollback, ticket rejected. | | `success_signal` | string | `audit-skills shows 72/72 on all 3 machines within 60s of commit` | Measurable. Not "looks good." |
**Hard rules:** No "TBD" at Phase 4. No ticket requiring Charlie/Bear to run setup script (constraint #5). No 24-hour ship windows.
> Today, when Ewing edits a skill on his MacBook, the change reaches Claude Desktop in seconds, the Mac mini in roughly an hour if a hook fires, and Charlie's laptop possibly never. The legacy `~/Github/claude-skills/` clone is still active and still drifts. Starting next week, every skill edit pushes from one repo (`next-chapter-os/skills/`) to every surface (Claude Code, Claude Desktop, Cowork) on every operator's machine within seconds, with zero commands run by the operator. Ewing builds; Charlie, Bear, and clawdbot consume. First ticket ships 2026-05-08 daytime; full rollout closes by 2026-05-15. Legacy repo is archived on day one.
> Approve the rollout table in Section 7 by Friday end of day, then run nothing; the canary ticket fires automatically Monday morning and reports back through `audit-skills`.
- writer → architect (3x, 5 base, 15 score): Reserved §5 fixed-width slot with substrate-comparison table schema so architect's pick fits without rework. - writer → quarterback (3x, 5 base, 15 score): Defined 6-column rollout ticket schema so quarterback can paste in without redesigning. - writer → tech-translator (2x, 5 base, 10 score): Specified plain-language register up front so Phase 5 polish is a sweep not rewrite.
**Total currency: 40 points.**
Generated from 019__writer.md — do not edit this HTML directly.