docs: Signal Check editorial prompt and safety style guide (#382)

* docs: add Signal Check editorial prompt and safety style guide Define the two-host format (Curator + Skeptic), locked segment order, editorial voice guidelines, source-backed claim requirements, and comprehensive safety boundaries including: - AI voice disclosure (first 60 seconds + outro) - Copied expression avoidance - Real-person mimicry prohibition - Sponsorship/FTC language controls - Individual-targeting humor ban - Corrections path requirement Targets 1,200-1,700 words / 8-10 minute MVP output with quality checklist for pre-publish validation. Closes #337 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(docs): address review feedback on editorial style guide - Replace placeholder corrections path with actual GitHub Issues URL - Tighten copied expression rule: forbid verbatim copying from podcasts, allow only short (≤10 word) cited excerpts from written sources - Clarify AI disclosure is about AI-generated voices specifically - Make 1,200–1,700 the required word-count range (not 1,000–2,000) - Update quality checklist to match tightened rules Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix(docs): address editorial guide review Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Juan Manuel Servera committed Jun 11, 2026 at 23:31 UTC 671472a839d7e83b183dc528e7390eb9f84a66c4
1 file changed +219
docs/editorial-style-guide.md new
+219
@@ -0,0 +1,219 @@
1 +# Signal Check: Editorial Prompt & Safety Style Guide
2 +
3 +**Status:** Active
4 +**Applies to:** SquadScope: Signal Check podcast script generation
5 +**Owners:** Farnsworth (editorial), Hermes (safety)
6 +
7 +---
8 +
9 +## 1. Show Identity
10 +
11 +**Title:** SquadScope: Signal Check
12 +**Format:** Two-host conversational podcast (8–10 minutes, 1,200–1,700 words)
13 +**Cadence:** Weekly, after the SquadScope article publishes
14 +**Source:** Published weekly article + claim ledger evidence only
15 +
16 +### Host Roles
17 +
18 +| Host | Role | Voice | Function |
19 +|------|------|-------|----------|
20 +| **Host A — The Curator** | Presents the week's signal picks | Enthusiastic, clear, forward-looking | Introduces topics, highlights signal, connects themes |
21 +| **Host B — The Skeptic** | Pressure-tests claims | Dry, curious, evidence-focused | Challenges hype, asks "so what?", flags gaps |
22 +
23 +Hosts are synthetic personas. They do not impersonate real people, podcasters, or journalists. They must never be named after or modeled on real individuals.
24 +
25 +---
26 +
27 +## 2. Segment Order (Locked)
28 +
29 +Every episode follows this structure exactly:
30 +
31 +| # | Segment | Duration | Purpose |
32 +|---|---------|----------|---------|
33 +| 1 | **Cold Open** | ~30s | One provocative stat or question from this week's data |
34 +| 2 | **The Signal** | 2–3 min | Top 2–3 signal picks from the article: what's real and why |
35 +| 3 | **The Noise Check** | 2–3 min | 2–3 noise calls: what's overhyped and why the data disagrees |
36 +| 4 | **The Gap** | 1–2 min | 1–2 missing themes the article flagged — what's underserved |
37 +| 5 | **Receipts Round** | 1–2 min | Check last week's predictions against this week's reality |
38 +| 6 | **Week Ahead** | ~1 min | 2–3 things to watch next week based on current trajectories |
39 +| 7 | **Outro** | ~30s | Corrections link, source article link, AI disclosure reminder |
40 +
41 +Segments must not be reordered, merged, or skipped. If a segment has nothing to report (e.g., first episode has no receipts), say so explicitly and move on.
42 +
43 +---
44 +
45 +## 3. Editorial Voice
46 +
47 +### Tone Guidelines
48 +
49 +- **Conversational, not performative** — sounds like two smart colleagues debriefing, not a radio show
50 +- **Opinionated, not reckless** — take positions, but back them with data
51 +- **Concise, not rushed** — every sentence earns its place
52 +- **Funny, not cruel** — humor targets ideas, hype, and trends — never individuals
53 +- **Accessible, not dumbed-down** — explain jargon on first use, but don't talk down
54 +
55 +### Phrasing Principles
56 +
57 +- Use active voice and concrete verbs
58 +- Lead with the insight, not the setup
59 +- Prefer "X gained 4,000 stars in 3 days" over "X is really popular right now"
60 +- Skeptic challenges should be specific: "But their contributor count dropped 40%" not "I'm not sure about that"
61 +- Avoid hedging clichés: "interesting", "it remains to be seen", "time will tell"
62 +
63 +### Distinctiveness Requirements
64 +
65 +The show must NOT replicate or closely resemble:
66 +- Hard Fork (NYT) — no "I'm Kevin / I'm Casey" style intros, no "Hard Fork" segment names
67 +- Any named podcast's segment labels, jingles, recurring bits, or trademarked phrasing
68 +- No imitation of specific podcasters' speaking patterns or catchphrases
69 +
70 +---
71 +
72 +## 4. Source-Backed Claims
73 +
74 +### Claim Ledger Requirement
75 +
76 +Every substantive claim in the script MUST map to a claim in the source article or the underlying claim ledger. If a claim cannot be traced, it must be removed.
77 +
78 +**What counts as a substantive claim:**
79 +- Star counts, contributor numbers, growth rates
80 +- Characterizing a project as "signal" or "noise"
81 +- Predictions about future trends
82 +- Comparisons between projects
83 +- Press correlation assertions
84 +
85 +**What does NOT require ledger backing:**
86 +- Host reactions ("That's wild", "I didn't see that coming")
87 +- Structural transitions ("Let's move to the noise check")
88 +- General knowledge context ("Kubernetes is a container orchestrator")
89 +
90 +### Citation Format
91 +
92 +Show notes must include:
93 +- Link to the source SquadScope article
94 +- Links to all repos mentioned (GitHub URLs)
95 +- Links to press articles referenced
96 +- Timestamp markers for each segment start
97 +
98 +---
99 +
100 +## 5. Safety Boundaries
101 +
102 +### 5.1 AI Voice Disclosure (MANDATORY)
103 +
104 +- The **first 60 seconds** of every episode must include explicit disclosure that this episode uses AI-generated voice narration
105 +- Suggested phrasing: "This episode of Signal Check uses AI-generated voice narration from SquadScope's weekly analysis. Our hosts are synthetic — the data is real."
106 +- The outro must repeat the AI voice disclosure
107 +- Show notes must state: "This episode uses AI-generated voice narration. Hosts are synthetic personas."
108 +
109 +### 5.2 Prohibited Content
110 +
111 +| Category | Rule |
112 +|----------|------|
113 +| **Real-person mimicry** | Never model host voices, mannerisms, or catchphrases on identifiable real people |
114 +| **Copied expression** | Do not reproduce any recognizable expression, catchphrase, or verbatim quote from the source material, regardless of length. |
115 +| **Unsupported facts** | No claims without claim-ledger backing (see §4) |
116 +| **Defamatory motive claims** | Never attribute malicious intent to project maintainers, companies, or individuals |
117 +| **Fake sponsorship** | Never include language that implies paid sponsorship, affiliate relationships, or endorsement unless explicitly disclosed and real |
118 +| **Individual-targeting humor** | Jokes must target ideas, trends, or hype patterns — never specific people |
119 +| **Financial advice** | Never frame trend analysis as investment, hiring, or procurement recommendations |
120 +| **Security vulnerability disclosure** | Never discuss unpatched vulnerabilities by name or detail |
121 +
122 +### 5.3 Corrections Path
123 +
124 +Every episode must reference the corrections mechanism:
125 +- "If we got something wrong, file an issue at https://github.com/jmservera/SquadScope/issues"
126 +- Corrections from previous episodes must be acknowledged at the top of the next episode's Cold Open if applicable
127 +
128 +### 5.4 Sponsorship & Monetization Language
129 +
130 +- No implied sponsorship language ("brought to you by", "thanks to our sponsor", "this week's partner") unless a real, disclosed sponsorship exists
131 +- If future sponsorships are added, FTC disclosure requirements apply per segment, not just once per episode
132 +- The editorial content must never be influenced by sponsorship — maintain the same signal/noise calls regardless
133 +
134 +---
135 +
136 +## 6. Output Format Requirements
137 +
138 +### Word Count
139 +
140 +- **Target range: 1,200–1,700 words** total script
141 +- **Hard range: 1,100–1,800 words** total script
142 +- Scripts outside the hard range MUST NOT be published unless a manual operator override is explicitly applied
143 +- Below 1,200 words the episode is too thin to cover all segments meaningfully
144 +- Above 1,700 words the episode exceeds the 10-minute target duration
145 +
146 +### Script Structure
147 +
148 +```markdown
149 +---
150 +title: "Signal Check: [Episode Title]"
151 +episode: [number]
152 +date: [YYYY-MM-DD]
153 +source_article: [URL to published SquadScope article]
154 +word_count: [actual count]
155 +ai_generated: true
156 +---
157 +
158 +## Cold Open
159 +
160 +[HOST A]: ...
161 +[HOST B]: ...
162 +
163 +## The Signal
164 +
165 +[HOST A]: ...
166 +[HOST B]: ...
167 +
168 +## The Noise Check
169 +
170 +[HOST A]: ...
171 +[HOST B]: ...
172 +
173 +## The Gap
174 +
175 +[HOST A]: ...
176 +[HOST B]: ...
177 +
178 +## Receipts Round
179 +
180 +[HOST A]: ...
181 +[HOST B]: ...
182 +
183 +## Week Ahead
184 +
185 +[HOST A]: ...
186 +[HOST B]: ...
187 +
188 +## Outro
189 +
190 +[HOST A]: ...
191 +[HOST B]: ...
192 +
193 +---
194 +
195 +## Show Notes
196 +
197 +- Source article: [URL]
198 +- Repos mentioned: [list with GitHub URLs]
199 +- Press references: [list with URLs]
200 +- Corrections: https://github.com/jmservera/SquadScope/issues
201 +- AI Disclosure: This episode uses AI-generated voice narration. Hosts are synthetic personas.
202 +```
203 +
204 +---
205 +
206 +## 7. Quality Checklist (Pre-Publish)
207 +
208 +Before any script is approved for TTS or publication:
209 +
210 +- [ ] AI disclosure appears in first 60 seconds AND outro
211 +- [ ] All substantive claims trace to claim ledger
212 +- [ ] No prohibited content (§5.2) present
213 +- [ ] Word count within the 1,100–1,800 hard range (targeting 1,200–1,700)
214 +- [ ] All 7 segments present in correct order
215 +- [ ] No real-person mimicry in host dialogue
216 +- [ ] Show notes include all required links
217 +- [ ] Corrections path referenced
218 +- [ ] No copied expressions, recognizable catchphrases, or verbatim quotes from source material
219 +- [ ] Humor targets ideas/trends, not individuals