#2 Product Strategy (insights → bets ≤3 → principles) — LAST per strategy-as-synthesis #10

Closed
opened 2026-05-15 19:18:24 +02:00 by claude · 1 comment
Collaborator

TL;DR (PL)

Cagan structure: insights (czego się nauczyliśmy z #3-#9) → focused bets ≤3principles. Wave 5 SEQUENTIAL — strategia jest synthesis, NIE input. To Iskra-coining nominee: "strategy as synthesis, not input". Wszystko inne musi być gotowe PRZED #2. Blocked on discovery (5-7 interviews completed via M2).

TL;DR (EN)

Cagan structure: insights (learned from #3-#9) → focused bets ≤3 → principles. Wave 5 LAST because strategy as synthesis, not input. Standard PM anti-pattern reversed. Blocked on M2 Discovery Validation (5-7 interviews) so bets are evidence-backed.

Scope

Section 1 — Insights (what we learned from #3-#9):

  • From #3 JTBD: primary forces-of-progress identified
  • From #4 Positioning: market category we claim ("self-hosted AI code governance")
  • From #5 Competitive: structural asymmetries vs incumbents
  • From #6 Four-Risks: primary risk is value (per OD5 default)
  • From #7 KPI Tree: north-star + leading indicators
  • From #8 Discovery: assumption tests prioritized
  • From #9 Business Model: unit economics + pricing locked
  • Each insight: 1-2 sentences, evidence-link

Section 2 — Focused bets (≤3 per Cagan p.114):
Each bet:

  • Bet statement — "we bet that [if we do X], [outcome Y happens within timeframe Z]"
  • Evidence backing — labeled as "evidence-backed" (post-M2) vs "assumption-pending-discovery"
  • Wrongness condition — "we'll know this bet is wrong if [observable signal by date]"
  • Resource commitment — % of operator time + cousin-family time

Operator's OD2 default: 3 bets. Sample shape (Plan agent suggested; operator finalizes):

  • Bet 1 (value-led): Forgejo + non-dev operator wedge has 50-175 paying users TAM
  • Bet 2 (architecture-led): 6-layer architecture deployable solo-orchestrated by Q4 2026
  • Bet 3 (defensibility-led): Apache-2.0 + Cloud + auto-heal dogfood = defensible vs Kodus / auditlm pivots

Section 3 — Principles (non-negotiables for product team):
Per Cagan: "we believe X, so we always do Y":

  • We believe operator sovereignty is sacred, so we always default to local-only on platform repo
  • We believe policy beats LLM vibes, so we always require evidence chain (file/rule/severity/SHA) before BLOCK verdict
  • We believe discovery is continuous, so we always maintain Torres weekly cadence
  • We believe focus enables shipping, so we always say no to features that broaden audience prematurely

What this artifact does NOT cover:

  • Tactical roadmap (that's docs/roadmap.md)
  • Feature specs (anti-roadmap)
  • Investor narrative (anti-roadmap)

Inputs (feedstock)

  • ALL of #3 JTBD, #4 Positioning, #5 Competitive, #6 Four-Risks, #7 KPI Tree, #8 Discovery, #9 Business Model
  • Discovery interview synthesis (post-M2 milestone)
  • Operator's inspired-cagan.md vault card — operator's Cagan framework internalization
  • Cagan Inspired Ch 8 (Product Strategy)
  • Empowered — strategy & insights framework

Skill draft

  • Anthropic Skill: product-management:write-spec (adapted for strategy)
  • Anti-prompt: "NOT a feature roadmap. NOT a goal-setting exercise. Cagan strategy = insights from evidence, focused bets ≤3, principles team holds non-negotiable. If draft has 5+ bets, reject. If bets have no wrongness condition, reject. If principles read like generic management ('be customer-centric'), reject."
  • Prime with: all Wave 1-4 artifact outputs + Cagan Inspired Ch 8 + operator's vault Cagan card

Dependencies

Blocked by: #1, #3, #4, #5, #6, #7, #8, #9 (ALL prior waves) + M2 milestone (5-7 discovery interviews) for status:blocked-on-discovery flag
Blocks: #10 Kill Criteria (operationalizes strategy)

Cagan-grade acceptance criteria

Universal (must pass all 5):

  1. Evidence cited — every insight + bet links to source artifact (#3-#9) + discovery interview synthesis
  2. Operator-readable <10 min — insights + bets + principles ≤2000w
  3. Names the wrongness condition — each bet has explicit "wrong if [signal by date]"
  4. Single concrete decision — moves docs/decisions.md by setting D16: "strategy locked v1.0 through M3 refresh; revisit Q4 2026"
  5. Cousin-family attribution — credits skill, all prior artifacts, Cagan framework

Tier-0 anchor extras:

  • 3-year horizon explicit — bets project to 2029, principles hold long-term
  • Leadership change test — successor PM reads strategy and knows what to ship next quarter

"Cagan would weep" stretch tests:

  • ≤3 focused bets (operator OD2 default). If 5+ bets, FAIL.
  • No bet without wrongness condition + date — speculative strategy is theatre.
  • Principles non-negotiable — "we believe X, so we ALWAYS do Y". "We aim to..." = FAIL.

Operator decision points

This artifact gates on:

  • OD2 — Strategy bet count (default: 3 accepted in epic)
  • OD operator-final: bet selection from candidates (Plan agent suggests 3; operator picks final 3)
  • M2 milestone — 5-7 discovery interviews completed for evidence backing

Status flow

status:blocked-on-discovery + status:cagan-grade-review-pending → M2 closes → discovery synthesis incorporated → operator reviews → label flips → close → tick epic Wave 5 #2


Parent epic: #1 (this is artifact 2 of 11, but produced LAST in execution per strategy-as-synthesis)
Plan: /Users/pd/.claude/plans/deep-pondering-popcorn.md § Wave 5 + § "strategy as synthesis, not input"

Drafted by Prof Kong (claude Opus 4.7) on behalf of pdurlej, 2026-05-15.

## TL;DR (PL) Cagan structure: **insights** (czego się nauczyliśmy z #3-#9) → **focused bets ≤3** → **principles**. Wave 5 SEQUENTIAL — strategia jest **synthesis**, NIE input. To Iskra-coining nominee: *"strategy as synthesis, not input"*. Wszystko inne musi być gotowe PRZED #2. Blocked on discovery (5-7 interviews completed via M2). ## TL;DR (EN) Cagan structure: insights (learned from #3-#9) → focused bets ≤3 → principles. Wave 5 LAST because **strategy as synthesis, not input**. Standard PM anti-pattern reversed. Blocked on M2 Discovery Validation (5-7 interviews) so bets are evidence-backed. ## Scope **Section 1 — Insights** (what we learned from #3-#9): - From #3 JTBD: primary forces-of-progress identified - From #4 Positioning: market category we claim ("self-hosted AI code governance") - From #5 Competitive: structural asymmetries vs incumbents - From #6 Four-Risks: primary risk is value (per OD5 default) - From #7 KPI Tree: north-star + leading indicators - From #8 Discovery: assumption tests prioritized - From #9 Business Model: unit economics + pricing locked - Each insight: 1-2 sentences, evidence-link **Section 2 — Focused bets (≤3 per Cagan p.114)**: Each bet: - **Bet statement** — "we bet that [if we do X], [outcome Y happens within timeframe Z]" - **Evidence backing** — labeled as "evidence-backed" (post-M2) vs "assumption-pending-discovery" - **Wrongness condition** — "we'll know this bet is wrong if [observable signal by date]" - **Resource commitment** — % of operator time + cousin-family time Operator's OD2 default: 3 bets. Sample shape (Plan agent suggested; operator finalizes): - **Bet 1 (value-led)**: Forgejo + non-dev operator wedge has 50-175 paying users TAM - **Bet 2 (architecture-led)**: 6-layer architecture deployable solo-orchestrated by Q4 2026 - **Bet 3 (defensibility-led)**: Apache-2.0 + Cloud + auto-heal dogfood = defensible vs Kodus / auditlm pivots **Section 3 — Principles** (non-negotiables for product team): Per Cagan: "we believe X, so we always do Y": - We believe **operator sovereignty is sacred**, so we always **default to local-only on `platform` repo** - We believe **policy beats LLM vibes**, so we always **require evidence chain (file/rule/severity/SHA) before BLOCK verdict** - We believe **discovery is continuous**, so we always **maintain Torres weekly cadence** - We believe **focus enables shipping**, so we always **say no to features that broaden audience prematurely** **What this artifact does NOT cover**: - Tactical roadmap (that's `docs/roadmap.md`) - Feature specs (anti-roadmap) - Investor narrative (anti-roadmap) ## Inputs (feedstock) - ALL of #3 JTBD, #4 Positioning, #5 Competitive, #6 Four-Risks, #7 KPI Tree, #8 Discovery, #9 Business Model - Discovery interview synthesis (post-M2 milestone) - Operator's `inspired-cagan.md` vault card — operator's Cagan framework internalization - Cagan *Inspired* Ch 8 (Product Strategy) - *Empowered* — strategy & insights framework ## Skill draft - **Anthropic Skill**: `product-management:write-spec` (adapted for strategy) - **Anti-prompt**: *"NOT a feature roadmap. NOT a goal-setting exercise. Cagan strategy = insights from evidence, focused bets ≤3, principles team holds non-negotiable. If draft has 5+ bets, reject. If bets have no wrongness condition, reject. If principles read like generic management ('be customer-centric'), reject."* - **Prime with**: all Wave 1-4 artifact outputs + Cagan *Inspired* Ch 8 + operator's vault Cagan card ## Dependencies Blocked by: #1, #3, #4, #5, #6, #7, #8, #9 (ALL prior waves) + M2 milestone (5-7 discovery interviews) for `status:blocked-on-discovery` flag Blocks: #10 Kill Criteria (operationalizes strategy) ## Cagan-grade acceptance criteria **Universal (must pass all 5)**: 1. **Evidence cited** — every insight + bet links to source artifact (#3-#9) + discovery interview synthesis 2. **Operator-readable <10 min** — insights + bets + principles ≤2000w 3. **Names the wrongness condition** — each bet has explicit "wrong if [signal by date]" 4. **Single concrete decision** — moves `docs/decisions.md` by setting D16: "strategy locked v1.0 through M3 refresh; revisit Q4 2026" 5. **Cousin-family attribution** — credits skill, all prior artifacts, Cagan framework **Tier-0 anchor extras**: - **3-year horizon explicit** — bets project to 2029, principles hold long-term - **Leadership change test** — successor PM reads strategy and knows what to ship next quarter **"Cagan would weep" stretch tests**: - **≤3 focused bets** (operator OD2 default). If 5+ bets, FAIL. - **No bet without wrongness condition + date** — speculative strategy is theatre. - **Principles non-negotiable** — "we believe X, so we ALWAYS do Y". "We aim to..." = FAIL. ## Operator decision points This artifact gates on: - **OD2** — Strategy bet count (default: 3 ✅ accepted in epic) - **OD operator-final**: bet selection from candidates (Plan agent suggests 3; operator picks final 3) - **M2 milestone** — 5-7 discovery interviews completed for evidence backing ## Status flow `status:blocked-on-discovery` + `status:cagan-grade-review-pending` → M2 closes → discovery synthesis incorporated → operator reviews → label flips → close → tick epic Wave 5 #2 --- Parent epic: #1 (this is artifact 2 of 11, but produced LAST in execution per strategy-as-synthesis) Plan: `/Users/pd/.claude/plans/deep-pondering-popcorn.md` § Wave 5 + § "strategy as synthesis, not input" *Drafted by Prof Kong (claude Opus 4.7) on behalf of pdurlej, 2026-05-15.*
Author
Collaborator

Closed as v1.0-draft via operator voice ack 2026-05-26, per pre-staged decision (close path B w propozycji 2026-05-26).

Strategy v1.0 locked per D16. Follow-up #35 trzyma post-M2 discovery synthesis update do strategy v2.0 w M3 milestone (2026-10-15).

Operator highlights:

  • Insights ack całość
  • Defensibility: cross-AI + Forgejo + indie hack friendly pricing — ack
  • "Labor of Law until revenue bardzo słodkie"
  • Bet 1 — Value-led: do 200 osób, timeline flex ("nie wiem czy do końca roku bym sobie dał termin")
  • Bet 2 — Architecture-led: 6 vs 7 warstw flex ("zobaczymy iloma wyrstw wyjdziemy, ale na pewno powinno być sporo")
  • Bet 3 — Defensibility-led: cross-AI + Forgejo + indie pricing + "self-hosted" — ack
  • P4 (focus enables shipping) = MOST BINDING"to jest klucz wartości"
  • Anti-bets (LLM review quality bet rejected) — "tak tak tak"
  • D16 — operator deleguje na claude: "może być OK, możesz zrobić co uważasz jeśli chodzi o zamknięcie tego"

D16 (strategy v1.0 locked through M3 refresh 2026-10-15) → claude/patchwarden-decisions-batch PR.

Removed labels: status:cagan-grade-review-pending, status:blocked-on-discovery.

Status: cagan-grade-approved (as v1.0-draft). — claude (Patchwarden dedicated thread)

**Closed as v1.0-draft via operator voice ack 2026-05-26**, per pre-staged decision (close path B w propozycji 2026-05-26). Strategy v1.0 locked per D16. Follow-up [#35](../issues/35) trzyma post-M2 discovery synthesis update do strategy v2.0 w M3 milestone (2026-10-15). Operator highlights: - Insights ack całość - Defensibility: cross-AI + Forgejo + **indie hack friendly** pricing — ack - *"Labor of Law until revenue bardzo słodkie"* - **Bet 1 — Value-led**: do 200 osób, **timeline flex** (*"nie wiem czy do końca roku bym sobie dał termin"*) - **Bet 2 — Architecture-led**: 6 vs 7 warstw **flex** (*"zobaczymy iloma wyrstw wyjdziemy, ale na pewno powinno być sporo"*) - **Bet 3 — Defensibility-led**: cross-AI + Forgejo + indie pricing + "self-hosted" — ack - **P4 (focus enables shipping) = MOST BINDING** — *"to jest klucz wartości"* - Anti-bets (LLM review quality bet rejected) — *"tak tak tak"* - D16 — operator deleguje na claude: *"może być OK, możesz zrobić co uważasz jeśli chodzi o zamknięcie tego"* **D16** (strategy v1.0 locked through M3 refresh 2026-10-15) → `claude/patchwarden-decisions-batch` PR. Removed labels: `status:cagan-grade-review-pending`, `status:blocked-on-discovery`. Status: `cagan-grade-approved` (as v1.0-draft). — claude (Patchwarden dedicated thread)
Sign in to join this conversation.
No labels
agent/claude-code
agent/codex
agent/gemini
agent/hermes
agent/iskra
agent/ollama
agent/patchwarden
area:business-model
area:competitive
area:discovery
area:forgejo
area:metrics
area:product-strategy
area:v0-core
cagan-grade-approved
client:platform
dependency/blocked
dependency/blocks-others
dependency/cross-repo
dependency/needs-confirmation
domain:agents
domain:ci
domain:docs
domain:forgejo
domain:infra
domain:memory
domain:runtime
domain:signal
domain:ux
flow/architecture
flow/blocked
flow/deployed
flow/done
flow/implementation
flow/intake
flow/maintained
flow/observed
flow/ready
flow/refining
flow/retired
flow/review
judge/codex-candidate
judge/hermes-candidate
judge/low-confidence
judge/needs-refinement
judge/operator-needed
judge/p0
judge/p1
judge/p2
judge/p3
judge/park
judge/patchwarden-candidate
judge/stale-priority
kind/adr
kind/bug
kind/chore
kind/feature
kind/infra
kind/ops
kind/refactor
kind/research
kind:artifact
kind:decision
kind:dogfood
kind:epic
kind:implementation
kind:research
merge/auto
merge/manual
merge/manual-dependency-conflict
merge/manual-failing-tests
merge/manual-merge-conflict
merge/manual-missing-review
merge/manual-operator-preference
merge/manual-red-zone
merge/manual-security-sensitive
merge/manual-unclear-scope
merge/manual-unknown
mode:operator-only
mode:patchwarden-iskra-approved
mode:safe-auto
observed/erroring
observed/needs-followup
observed/pending
observed/retire-candidate
observed/unused
observed/used
priority:p0
priority:p1
priority:p2
priority:p3
ready-for-agent
review:claude-reviewed
review:codex-reviewed
review:dziadek-reviewed
review:needs-human
safety:external-write
safety:no-prod-mutation
safety:prod-impact
safety:secret-touch
size/large
size/medium
size/small
size/tiny
size/unknown
source/adr
source/agent-generated
source/manual
source/operator-chat
source/voice-note
status:blocked
status:blocked-on-discovery
status:cagan-grade-review-pending
status:codex-ready
status:merged:pending-evidence
status:needs-evidence
status:needs-operator-decision
status:operator-needed
status:parked
tier:0-anchor
tier:0-platform-substrate
tier:1-core
tier:1-iskra-value-layer
tier:2-supporting
tier:2-tools-products-modules
type:bug
type:chore
type:docs
type:feat
type:policy
type:research
wave:1-foundation
wave:2-positioning
wave:3-validation
wave:4-economics
wave:5-operating
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
pdurlej/patchwarden#10
No description provided.