# Writing roadmap — happytesting / QualityProfit

> **Per Model A** (`STRATEGY-MODEL-A.md`). Writing is denken-in-publiek from real client work in utility, IoT and regulated complex domains. Not generic AI hot-takes. Not synthetic tutorials. Not "AI is the future" pieces. Every published piece is sourced from a real engagement, a real listening conversation, or a real strategic decision — and routes to a Studio engagement or a QualityProfit pilot CTA.

This roadmap replaces the previous test-architecture-focused roadmap. The pivot is intentional: under Model A, writing is part of the GTM motion for QualityProfit, not a hobby and not a generic content-marketing engine.

---

## The format: "Paul Is Thinking"

A first-person, learning-in-public Substack/Medium series. Tone:
- Working out loud, not lecturing.
- Anonymised client realities, not synthetic examples.
- One specific lesson per post, not omnibus framework essays.
- One CTA per post — Studio engagement OR QualityProfit pilot.

Inspiration: the way Patrick McKenzie writes about consulting, or Pieter Levels writes about indie SaaS — but specifically about agent quality in regulated complex domains.

---

## Phase 0 · Pre-design-partner (now → day 30)

**Goal**: build the audience while the first paying engagement comes together. Do *not* publish synthetic test-architecture pieces — they pull off-target traffic.

| # | Title (working) | Source | When | CTA |
|---|---|---|---|---|
| 0.1 | "Why I'm rebuilding happytesting as a Studio-led GTM for QualityProfit" | Strategy decision | Week 1 | Discovery call |
| 0.2 | "5 conversations with utility & IoT engineers — what they actually want from agent systems" | Synthesised from listening calls | Week 3–4 | Discovery call |

Phase 0 publishes only when the listening conversations have happened. Without the listening conversations, **publish nothing** — empty publishing erodes the "denken-in-publiek" tone that makes the channel work.

---

## Phase 1 · Design-partner-active (day 30 → day 90)

**Goal**: turn the first paying design partner into a public field note and the seed of three more posts.

| # | Title pattern (anonymised) | Source | When | CTA |
|---|---|---|---|---|
| 1.1 | "Building agent observability with [vertical]: what we shipped in week 1" | Real engagement, week 1 of design partner | Day 45 | QP pilot |
| 1.2 | "What [vertical]'s SCADA / control-plane / case-management taught me about agent traceability" | Real engagement, weeks 2–4 | Day 60 | Discovery call |
| 1.3 | "The first regulator question I couldn't answer — and how the agents now answer it" | Real engagement, week 6+ | Day 90 | QP pilot |

Each post must:
- Name the **specific** problem (anonymised) — never a generic version.
- Show **what was actually shipped** (a redacted code block, an agent prompt, a dashboard screenshot).
- Acknowledge **what is still wrong** with the current solution. The "still wrong" piece is the QP roadmap input.
- End with **one** CTA — either "If you're seeing the same thing in your stack, book a call" or "Join the QualityProfit pilot" — never both.

---

## Phase 2 · Productizing learnings (months 4 → 9)

**Goal**: monthly post per active engagement. By month 9, three engagements running → three monthly posts in the bank.

Rotation per post (one of these per month):

1. **Pain encountered** — "what surprised me at [vertical] this month"
2. **Fix shipped** — "the agent / gate / dashboard pattern that worked"
3. **Strategic decision** — "what I changed in QP's roadmap based on [vertical]'s feedback"
4. **Reference architecture** — "how we wire QP into [type-of-stack] without breaking [thing]"

Each post still routes to either Studio CTA or QP pilot CTA. Pure-thought pieces with no CTA do not count toward this cadence — they go on LinkedIn instead.

---

## Phase 3 · The "Agent Quality in Regulated Domains" Playbook (month 9 → 12)

**Goal**: bundle the strongest 4–5 posts into a printable PDF Playbook that procurement at utility / IoT / regulated buyers will print and circulate.

### Why this Playbook (not the previous "AI-Augmented E2E Playbook")
The previous playbook was test-architecture-focused — generic. Per Model A, the right artifact is **vertical-specific**: agent observability and quality for regulated complex domains. That's what QP sells; that's what the Studio implements; that's what we should write.

### Structure (12–18 pages, printable)
1. **Cover + abstract** (1 page) — what's in it, who it's for.
2. **The hard problem** (1 page) — agent reliability when reliability is regulatory.
3. **The pattern** (3 pages) — agent + observability layer + audit trail. The QualityProfit-native architecture.
4. **3 anonymised case studies** (6 pages) — drawn from Phase 1–2 engagements.
5. **The reference architecture** (3 pages) — wiring QP into utility / IoT / regulated stacks.
6. **What we still don't know** (1 page) — open questions, intentional honesty.
7. **Where to next** (1 page) — Studio engagements, QP pilot.

### Production
- Markdown source, rendered with Pandoc or Typst for typography.
- Cover in brand palette (primary #0F3F4A, accent #14B8A6, gold #F59E0B).
- Hosted at `/playbook.pdf` on happytesting.io.
- **Email-gated**, with the gate routing to QualityProfit pilot signup.

**Target publish**: end of month 12.

---

## What we will NOT write

This list is enforced by the `strategy-guardian` agent.

- ❌ Generic "AI is changing everything" essays.
- ❌ Synthetic Cypress / Playwright tutorials with no client behind them.
- ❌ "How to write better tests with Claude Code" — too broad, off-ICP.
- ❌ "Why Cypress vs Playwright in 2026" — not Model A-aligned.
- ❌ Anything that doesn't end in a Studio or QP CTA.
- ❌ Cross-posts from older Cypress content unless re-framed for the regulated/utility lens.

The Cypress Ambassador work and the older Medium archive remain in the "Speaking & community" footer. They are credibility, not direction.

---

## Cadence checks (for the strategy-guardian's monthly audit)

- [ ] At least 1 published piece per month after day 60.
- [ ] At least 1 anonymised real-engagement piece per month after day 90.
- [ ] At least 50% of all posts source from real client work (not synthesis).
- [ ] No post lacks a Studio or QP CTA.
- [ ] No post broadens ICP outside utility / IoT / regulated complex domains.

If the audit finds drift on the cadence, the guardian flags but does not edit — Paul calls it.

---

## Distribution per post

For every publication:

- [ ] Publish on Medium under `@pdewitt` (primary canonical URL).
- [ ] Cross-post the headline + 2 paragraphs to LinkedIn with the canonical link back.
- [ ] Add card to happytesting.io Writing section (oldest of the three rotates out).
- [ ] If utility/IoT-specific: send the link to the design partner directly with a "this is your story, anonymised" note.
- [ ] Update this file: move from Phase 0/1/2 → "Published" with the live link.

---

## Backlog (queue for Phase 2)

When the engagements provide material, pull from these themes:

- "Why agent observability is harder for SCADA / OT than for SaaS"
- "GDPR + agent decision logs: what the DPO actually wants"
- "DORA / NIS2 readiness for agent-augmented engineering teams"
- "Why your agents need a Quality Cost Ledger before they need more capability"
- "What I learned auditing an agent rollout at [type of utility]"
- "When the regulator asks 'why did your AI do that?' — and what answer holds up"
- "Agent traceability: copying it from financial-services into utility/IoT"
- "The 5-minute QualityProfit demo that changed three CTOs' minds"

---

## Success metrics (monthly, simple)

1. **Reads on Medium** — Medium reports.
2. **Discovery calls booked** — count `mailto:` events / Cal.com bookings.
3. **QualityProfit pilot signups** — count from QP signup form.
4. **Conversations seeded** — informal: posts that triggered a real LinkedIn DM or email.

If 90 days from the first Phase 1 post no signal moved on (3) or (4), the *strategy* needs revisiting (does Model A's ICP actually have the pain we assume?), not the cadence.

---

## Revision log

- **2026-05-06** — Full rewrite. Pivoted from generic test-architecture content to denken-in-publiek from real utility / IoT / regulated client work, per Model A.
