#7 KPI Tree + OKRs (north-star → input → leading → counter-metrics) #7

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

TL;DR (PL)

KPI tree (north-star metric → input metrics → leading indicators → counter-metrics) + Q3 2026 + Q4 2026 OKRs. Cagan rygor: każdy input metric MUSI mieć counter-metric (inaczej = vanity). Wave 3 anchor, parallel z #6 Four-Risks. Blocked on OD7 (D6 dogfooding model decision affects measurement baselines).

TL;DR (EN)

KPI tree (north-star → input → leading indicators → counter-metrics) + Q3-Q4 2026 OKRs. Cagan rigor: every input metric MUST have counter-metric (else = vanity). Wave 3 anchor parallel with #6. Blocked on OD7 (D6 dogfooding model affects baselines).

Scope

North-star metric (operator picks via OD6):

  • (a) Revenue-led: Paid Cloud users (monthly active)
  • (b) Community-led: Self-hosted installs (telemetry-opt-in)
  • (c) Quality-led: PRs reviewed without false-blocker incidents

Input metrics (what drives north-star):

  • Acquisition: GitHub stars, Forgejo repo views, r/selfhosted mentions
  • Activation: install completion rate, first-PR-reviewed time
  • Retention: weekly active config edits, monthly active reviewers
  • Referral: word-of-mouth signal, organic mentions

Leading indicators (predict future north-star changes):

  • Discovery interview count + qualification rate
  • Beta opt-in conversion
  • HN submission upvotes
  • selfh.st newsletter mention count

Counter-metrics (every input gets one):

  • Stars → 6-month retention rate (not vanity stars)
  • Installs → % with first PR reviewed within 7 days (not abandoned)
  • Reviews → % false-blocker incidents (quality counter to volume)
  • HN upvotes → comment sentiment ratio (negative reviews matter)
  • Mentions → conversion to install (not just buzz)

Q3 2026 OKRs (3 max per Cagan):

  • O1: TBD post-OD6
  • O2: TBD post-OD7 D6 model
  • O3: TBD

Q4 2026 OKRs: TBD (draft when Q3 closes)

What this artifact does NOT cover:

  • Engineering velocity metrics (anti-roadmap — that's docs/roadmap.md territory)
  • Cousin family metrics (cross-cutting, separate cousin-self-awareness work)
  • Cloud infrastructure cost tracking (folded into #9 Business Model)

Inputs (feedstock)

  • PM-SHOW.md § Success metrics
  • docs/roadmap.md § Hard milestones
  • docs/research/2026-05-15-business-model-gtm.md — TAM/conversion napkin
  • Existing pyfallow metrics (Phase A merged dogfood thresholds)
  • April Dunford's Sales Pitch — outcome framing
  • Wodtke Radical Focus — OKR rigor

Skill draft

  • Anthropic Skill: product-management:metrics-review
  • Anti-prompt: "NOT a vanity dashboard. NOT 'stars + downloads + community size'. Cagan rigor: every input metric needs a counter-metric, every OKR has a measurable Key Result, no 'be the best X' or 'become known for Y'."
  • Prime with: Wodtke Radical Focus OKR examples + Cagan outcomes-over-output

Dependencies

Blocked by: #1 Vision (need north-star anchor), OD7 operator decision on D6 dogfooding model (affects measurement infrastructure)
Blocks: #10 Kill Criteria (kill criteria reference KPI thresholds)

Cagan-grade acceptance criteria

Universal (must pass all 5):

  1. Evidence cited — every metric baseline links to comparable product, existing dogfood, or external benchmark
  2. Operator-readable <10 min — KPI tree diagram + OKRs ≤2000w
  3. Names the wrongness condition — "this KPI tree is wrong if north-star metric doesn't move AND yet input metrics all go up" (Goodhart's law check)
  4. Single concrete decision — moves docs/decisions.md by adding D13: "north-star = OD6 value; Q3 OKRs locked at next operator review"
  5. Cousin-family attribution — credits skill, business-model-gtm research, Wodtke framework

Tier-0 anchor extras:

  • 3-year horizon explicit — KPI tree shows trajectory to 2029, not just 2026
  • Leadership change test — successor PM can read tree + know what to optimize next quarter

"Cagan would weep" stretch test:

  • Counter-metric for EVERY input metric — if any input lacks counter, FAIL
  • North-star must be outcome, not output. "Stars" alone = FAIL. "Retained installs" = PASS.

Operator decision points

This artifact gates on:

  • OD6 — North-star metric choice (revenue / community / quality)
  • OD7 — D6 dogfooding model (hardware-dependent, blocks measurement infrastructure design)

Status flow

status:needs-operator-decision until OD6 + OD7 resolved → flip to cagan-grade-review-pending → operator merges → close → tick epic Wave 3 #7


Parent epic: #1 (this is artifact 7 of 11)
Plan: /Users/pd/.claude/plans/deep-pondering-popcorn.md § Wave 3

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

## TL;DR (PL) KPI tree (north-star metric → input metrics → leading indicators → **counter-metrics**) + Q3 2026 + Q4 2026 OKRs. **Cagan rygor**: każdy input metric MUSI mieć counter-metric (inaczej = vanity). Wave 3 anchor, parallel z #6 Four-Risks. **Blocked on OD7** (D6 dogfooding model decision affects measurement baselines). ## TL;DR (EN) KPI tree (north-star → input → leading indicators → **counter-metrics**) + Q3-Q4 2026 OKRs. **Cagan rigor**: every input metric MUST have counter-metric (else = vanity). Wave 3 anchor parallel with #6. **Blocked on OD7** (D6 dogfooding model affects baselines). ## Scope **North-star metric (operator picks via OD6)**: - (a) Revenue-led: **Paid Cloud users** (monthly active) - (b) Community-led: **Self-hosted installs** (telemetry-opt-in) - (c) Quality-led: **PRs reviewed without false-blocker incidents** **Input metrics** (what drives north-star): - Acquisition: GitHub stars, Forgejo repo views, r/selfhosted mentions - Activation: install completion rate, first-PR-reviewed time - Retention: weekly active config edits, monthly active reviewers - Referral: word-of-mouth signal, organic mentions **Leading indicators** (predict future north-star changes): - Discovery interview count + qualification rate - Beta opt-in conversion - HN submission upvotes - selfh.st newsletter mention count **Counter-metrics (every input gets one)**: - Stars → **6-month retention rate** (not vanity stars) - Installs → **% with first PR reviewed within 7 days** (not abandoned) - Reviews → **% false-blocker incidents** (quality counter to volume) - HN upvotes → **comment sentiment ratio** (negative reviews matter) - Mentions → **conversion to install** (not just buzz) **Q3 2026 OKRs** (3 max per Cagan): - O1: TBD post-OD6 - O2: TBD post-OD7 D6 model - O3: TBD **Q4 2026 OKRs**: TBD (draft when Q3 closes) **What this artifact does NOT cover**: - Engineering velocity metrics (anti-roadmap — that's `docs/roadmap.md` territory) - Cousin family metrics (cross-cutting, separate cousin-self-awareness work) - Cloud infrastructure cost tracking (folded into #9 Business Model) ## Inputs (feedstock) - `PM-SHOW.md` § Success metrics - `docs/roadmap.md` § Hard milestones - `docs/research/2026-05-15-business-model-gtm.md` — TAM/conversion napkin - Existing pyfallow metrics (Phase A merged dogfood thresholds) - April Dunford's *Sales Pitch* — outcome framing - Wodtke *Radical Focus* — OKR rigor ## Skill draft - **Anthropic Skill**: `product-management:metrics-review` - **Anti-prompt**: *"NOT a vanity dashboard. NOT 'stars + downloads + community size'. Cagan rigor: every input metric needs a counter-metric, every OKR has a measurable Key Result, no 'be the best X' or 'become known for Y'."* - **Prime with**: Wodtke *Radical Focus* OKR examples + Cagan outcomes-over-output ## Dependencies Blocked by: #1 Vision (need north-star anchor), **OD7 operator decision on D6 dogfooding model** (affects measurement infrastructure) Blocks: #10 Kill Criteria (kill criteria reference KPI thresholds) ## Cagan-grade acceptance criteria **Universal (must pass all 5)**: 1. **Evidence cited** — every metric baseline links to comparable product, existing dogfood, or external benchmark 2. **Operator-readable <10 min** — KPI tree diagram + OKRs ≤2000w 3. **Names the wrongness condition** — "this KPI tree is wrong if north-star metric doesn't move AND yet input metrics all go up" (Goodhart's law check) 4. **Single concrete decision** — moves `docs/decisions.md` by adding D13: "north-star = OD6 value; Q3 OKRs locked at next operator review" 5. **Cousin-family attribution** — credits skill, business-model-gtm research, Wodtke framework **Tier-0 anchor extras**: - **3-year horizon explicit** — KPI tree shows trajectory to 2029, not just 2026 - **Leadership change test** — successor PM can read tree + know what to optimize next quarter **"Cagan would weep" stretch test**: - **Counter-metric for EVERY input metric** — if any input lacks counter, FAIL - North-star must be **outcome**, not output. "Stars" alone = FAIL. "Retained installs" = PASS. ## Operator decision points This artifact gates on: - **OD6** — North-star metric choice (revenue / community / quality) - **OD7** — D6 dogfooding model (hardware-dependent, blocks measurement infrastructure design) ## Status flow `status:needs-operator-decision` until OD6 + OD7 resolved → flip to `cagan-grade-review-pending` → operator merges → close → tick epic Wave 3 #7 --- Parent epic: #1 (this is artifact 7 of 11) Plan: `/Users/pd/.claude/plans/deep-pondering-popcorn.md` § Wave 3 *Drafted by Prof Kong (claude Opus 4.7) on behalf of pdurlej, 2026-05-15.*
Author
Collaborator

Closed via operator voice ack 2026-05-26 — po PR #39 merged (D13+D14 unblock OD6+OD7).

Operator highlights:

  • North-star (c) PRs reviewed without false-blocker incidents (quality-led) — ack ("zgadzam się zdecydowanie")
  • Q3 + Q4 OKRs — ack: "może uda nam się szybciej, ale fokus na dojrzałość platformy, NIE na czas"
  • Zero false-blocker target — agresywne ale ack
  • Goodhart scenarios trim:
    • False-blocker hiding = KEEP as primary ("byłoby najgorsze, zniszczyłoby zaufanie")
    • Vanity stars = WYTNIJ ("nie ważne")
    • Telemetry opt-in skew = WYTNIJ (less important)

Modifications queued in claude/patchwarden-tactical-updates PR:

  • Goodhart scenarios trim: keep false-blocker hiding only, drop vanity stars + telemetry skew

D13 + D14 już merged w PR #39.

Status: cagan-grade-approved. — claude (Patchwarden dedicated thread)

**Closed via operator voice ack 2026-05-26** — po PR #39 merged (D13+D14 unblock OD6+OD7). Operator highlights: - North-star (c) PRs reviewed without false-blocker incidents (quality-led) — ack ("zgadzam się zdecydowanie") - Q3 + Q4 OKRs — ack: *"może uda nam się szybciej, ale fokus na dojrzałość platformy, NIE na czas"* - Zero false-blocker target — agresywne ale ack - **Goodhart scenarios trim**: - **False-blocker hiding** = KEEP as primary (*"byłoby najgorsze, zniszczyłoby zaufanie"*) - **Vanity stars** = WYTNIJ (*"nie ważne"*) - **Telemetry opt-in skew** = WYTNIJ (less important) **Modifications queued** in `claude/patchwarden-tactical-updates` PR: - Goodhart scenarios trim: keep false-blocker hiding only, drop vanity stars + telemetry skew D13 + D14 już merged w PR #39. Status: `cagan-grade-approved`. — 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#7
No description provided.