#10 Kill Criteria ("If by [date] [signal], we [pivot/park/kill]") #11

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

TL;DR (PL)

Explicit kill criteria: "Jeśli do [data] zobaczymy [sygnał], to [pivot/park/kill]". NIE kierunki ("jeśli będzie źle, pivot"). NIE wishlist ("by Q4 mamy 100 users"). Dates + signals + commitment. Wave 5 sequential po #2 Product Strategy + #6 Four-Risks + #7 KPI Tree.

TL;DR (EN)

Explicit kill criteria: "If by [date] we see [signal], we [pivot/park/kill]". NOT directions ("if it gets bad, pivot"). NOT aspirational ("by Q4 we'll have 100 users"). Dates + signals + commitment. Wave 5 sequential after #2 Strategy + #6 4-Risks + #7 KPI Tree.

Scope

Kill criteria categories (mapped to Cagan 4 risks):

Value risk kill criteria:

  • If by 2026-09-30 (M2 + 3 months) discovery synthesis shows <30% of 7 interviews surface Patchwarden's primary functional job as "must-have" → pivot wedge or park
  • If by 2026-12-31 OSS install count (telemetry opt-in) <30 → reassess channel mix, possibly pivot to dev-focused wedge

Usability risk kill criteria:

  • If by 2026-12-31 any 3 of 5 dogfood operators (pdurlej + 4 interview followups) report Patchwarden config schema is "too engineering-heavy" → revise schema, freeze code
  • If false-blocker rate on dogfood repos > 10% across first 50 PRs → pause v0, redesign policy decision engine

Feasibility risk kill criteria:

  • If by 2026-09-30 Codex BMADX Waves 0-5 not complete in iskra-openclaw → Patchwarden v0 delayed accordingly (NOT killed, but acknowledge dependency)
  • If fallow-ts implementation requires >40h operator time post-Codex Wave 5 → defer fallow-ts to Y2

Viability risk kill criteria:

  • If by 2026-12-31 USPTO trademark search reveals collision → rename or defer launch
  • If by 2027-03-31 Cloud beta has 0 paying conversions from 50 OSS installs → kill Cloud (L3), maintain OSS only
  • If by 2027-06-30 AGPLv3 Kodus ships Forgejo adapter + policy DSL → reassess Patchwarden moat; possibly pivot to "Patchwarden as Kodus adapter"
  • If legal review (Q3 2026) flags policy-engine liability → restructure as advisory-only product

Cross-cutting "Cagan would weep" rules:

  • Every criterion names date (not "soon", not "eventually")
  • Every criterion names observable signal (not "if it doesn't feel right")
  • Every criterion names commitment (pivot / park / kill — operator's pre-registered choice, not "we'll decide then")

What this artifact does NOT cover:

  • Engineering deadlines (anti-roadmap)
  • Generic "kill switch" for production (anti-roadmap)
  • Burndown / velocity metrics (that's docs/roadmap.md)

Inputs (feedstock)

  • #6 Four-Risks Assessment (each risk → kill criterion)
  • #7 KPI Tree (which metrics signal failure)
  • #2 Product Strategy (each bet has wrongness condition → kill criterion derivation)
  • Cagan Inspired — outcomes-of-failure framework
  • Andy Grove High Output Management — pre-registered commitment

Skill draft

  • Anthropic Skill: operations:risk-assessment (kill-criterion mode)
  • Anti-prompt: "NOT generic risk mitigation. NOT 'we'll monitor X'. EVERY criterion must have date + signal + action. If criterion uses words like 'soon', 'eventually', 'if it feels wrong', REJECT. Pre-register decisions BEFORE evidence arrives — Andy Grove's commitment principle."
  • Prime with: Cagan outcomes-over-output + Grove pre-commitment + #6 + #7 outputs

Dependencies

Blocked by: #2 Product Strategy, #6 Four-Risks, #7 KPI Tree
Blocks: M1 milestone (without kill criteria, package fails Cagan rigor)

Cagan-grade acceptance criteria

Universal (must pass all 5):

  1. Evidence cited — every signal threshold links to risk register (#6) or KPI tree (#7) baseline
  2. Operator-readable <10 min — 4-category list + cross-cutting rules ≤2000w
  3. Names the wrongness condition — meta: "these kill criteria are wrong if all of them are triggered AND we still feel committed to Patchwarden" (cognitive-bias check)
  4. Single concrete decision — moves docs/decisions.md by adding D17: "kill criteria pre-committed; revisit only at M3 quarterly refresh"
  5. Cousin-family attribution — credits skill, #6, #7, Grove pre-commitment framework

Tier-0 anchor extras:

  • 3-year horizon explicit — criteria span 2026-2029
  • Leadership change test — successor PM can execute kill decisions without operator input

"Cagan would weep" stretch test:

  • Names dates + signals, NOT directions — every criterion: explicit date + observable signal + pre-committed action. No "we'll see".
  • If ANY criterion is "we'll decide based on how we feel" → FAIL.

Operator decision points

This artifact gates on:

  • OD10 — Kill criteria honesty level (park-only / pivot-only / both/full kill option) — default: full kill option (most rigorous)

Status flow

status:cagan-grade-review-pending → operator merges → close → tick epic Wave 5 #10


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

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

## TL;DR (PL) Explicit kill criteria: *"Jeśli do [data] zobaczymy [sygnał], to [pivot/park/kill]"*. **NIE kierunki** ("jeśli będzie źle, pivot"). **NIE wishlist** ("by Q4 mamy 100 users"). Dates + signals + commitment. Wave 5 sequential po #2 Product Strategy + #6 Four-Risks + #7 KPI Tree. ## TL;DR (EN) Explicit kill criteria: "If by [date] we see [signal], we [pivot/park/kill]". **NOT directions** ("if it gets bad, pivot"). **NOT aspirational** ("by Q4 we'll have 100 users"). Dates + signals + commitment. Wave 5 sequential after #2 Strategy + #6 4-Risks + #7 KPI Tree. ## Scope **Kill criteria categories** (mapped to Cagan 4 risks): **Value risk kill criteria**: - **If by 2026-09-30 (M2 + 3 months) discovery synthesis shows <30% of 7 interviews surface Patchwarden's primary functional job as "must-have"** → pivot wedge or park - **If by 2026-12-31 OSS install count (telemetry opt-in) <30** → reassess channel mix, possibly pivot to dev-focused wedge **Usability risk kill criteria**: - **If by 2026-12-31 any 3 of 5 dogfood operators (pdurlej + 4 interview followups) report Patchwarden config schema is "too engineering-heavy"** → revise schema, freeze code - **If false-blocker rate on dogfood repos > 10% across first 50 PRs** → pause v0, redesign policy decision engine **Feasibility risk kill criteria**: - **If by 2026-09-30 Codex BMADX Waves 0-5 not complete in iskra-openclaw** → Patchwarden v0 delayed accordingly (NOT killed, but acknowledge dependency) - **If fallow-ts implementation requires >40h operator time post-Codex Wave 5** → defer fallow-ts to Y2 **Viability risk kill criteria**: - **If by 2026-12-31 USPTO trademark search reveals collision** → rename or defer launch - **If by 2027-03-31 Cloud beta has 0 paying conversions from 50 OSS installs** → kill Cloud (L3), maintain OSS only - **If by 2027-06-30 AGPLv3 Kodus ships Forgejo adapter + policy DSL** → reassess Patchwarden moat; possibly pivot to "Patchwarden as Kodus adapter" - **If legal review (Q3 2026) flags policy-engine liability** → restructure as advisory-only product **Cross-cutting "Cagan would weep" rules**: - Every criterion names **date** (not "soon", not "eventually") - Every criterion names **observable signal** (not "if it doesn't feel right") - Every criterion names **commitment** (pivot / park / kill — operator's pre-registered choice, not "we'll decide then") **What this artifact does NOT cover**: - Engineering deadlines (anti-roadmap) - Generic "kill switch" for production (anti-roadmap) - Burndown / velocity metrics (that's `docs/roadmap.md`) ## Inputs (feedstock) - #6 Four-Risks Assessment (each risk → kill criterion) - #7 KPI Tree (which metrics signal failure) - #2 Product Strategy (each bet has wrongness condition → kill criterion derivation) - Cagan *Inspired* — outcomes-of-failure framework - Andy Grove *High Output Management* — pre-registered commitment ## Skill draft - **Anthropic Skill**: `operations:risk-assessment` (kill-criterion mode) - **Anti-prompt**: *"NOT generic risk mitigation. NOT 'we'll monitor X'. EVERY criterion must have date + signal + action. If criterion uses words like 'soon', 'eventually', 'if it feels wrong', REJECT. Pre-register decisions BEFORE evidence arrives — Andy Grove's commitment principle."* - **Prime with**: Cagan outcomes-over-output + Grove pre-commitment + #6 + #7 outputs ## Dependencies Blocked by: #2 Product Strategy, #6 Four-Risks, #7 KPI Tree Blocks: M1 milestone (without kill criteria, package fails Cagan rigor) ## Cagan-grade acceptance criteria **Universal (must pass all 5)**: 1. **Evidence cited** — every signal threshold links to risk register (#6) or KPI tree (#7) baseline 2. **Operator-readable <10 min** — 4-category list + cross-cutting rules ≤2000w 3. **Names the wrongness condition** — meta: "these kill criteria are wrong if all of them are triggered AND we still feel committed to Patchwarden" (cognitive-bias check) 4. **Single concrete decision** — moves `docs/decisions.md` by adding D17: "kill criteria pre-committed; revisit only at M3 quarterly refresh" 5. **Cousin-family attribution** — credits skill, #6, #7, Grove pre-commitment framework **Tier-0 anchor extras**: - **3-year horizon explicit** — criteria span 2026-2029 - **Leadership change test** — successor PM can execute kill decisions without operator input **"Cagan would weep" stretch test**: - **Names dates + signals, NOT directions** — every criterion: explicit date + observable signal + pre-committed action. No "we'll see". - If ANY criterion is "we'll decide based on how we feel" → FAIL. ## Operator decision points This artifact gates on: - **OD10** — Kill criteria honesty level (park-only / pivot-only / both/full kill option) — default: full kill option (most rigorous) ## Status flow `status:cagan-grade-review-pending` → operator merges → close → tick epic Wave 5 #10 --- Parent epic: #1 (this is artifact 10 of 11) Plan: `/Users/pd/.claude/plans/deep-pondering-popcorn.md` § Wave 5 *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.

Operator highlights:

  • 13 triggers wszystkie ack
  • Threshold precision — relax: "triggery są good enough, dla mnie to jest mało ważne w tym momencie, gadam jak dużo to gadania i moje głupoty"
  • F1 trigger update: claude (Patchwarden dedicated thread) przejmuje codex executor role dla Patchwarden ship — "ty teraz ciśniesz, mam nadzieję że ty teraz tutaj pociśniesz"
  • B3 (legal liability → advisory-only recommend_* escape hatch) — ack
  • D17 (only-quarterly review, no panic editing) — ack
  • Forgejo functionality dla pisania milestone progress — "może wiesz będziemy używać funkcjonalności na foregio żeby sobie pisać o tym jak rzeczy nam iżdżą"
  • Premortem insight (largest personal kill trigger): "najgorsze by było jeśli bym nie skończył i bym nadal marnował czas i ładował coś co nie działa i nie pomaga mi — to były chyba największe kryteria"

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

  • Premortem insight dodać jako meta-check § "operator's most-binding personal trigger": wasted time on non-working, non-helpful output
  • F1 trigger update: claude→Patchwarden executor role reflected

D17 (kill criteria pre-committed, quarterly review only, no panic editing) → claude/patchwarden-decisions-batch PR.

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

**Closed via operator voice ack 2026-05-26.** Operator highlights: - 13 triggers wszystkie ack - Threshold precision — relax: *"triggery są good enough, dla mnie to jest mało ważne w tym momencie, gadam jak dużo to gadania i moje głupoty"* - **F1 trigger update**: claude (Patchwarden dedicated thread) przejmuje codex executor role dla Patchwarden ship — *"ty teraz ciśniesz, mam nadzieję że ty teraz tutaj pociśniesz"* - B3 (legal liability → advisory-only `recommend_*` escape hatch) — ack - D17 (only-quarterly review, no panic editing) — ack - Forgejo functionality dla pisania milestone progress — *"może wiesz będziemy używać funkcjonalności na foregio żeby sobie pisać o tym jak rzeczy nam iżdżą"* - **Premortem insight** (largest personal kill trigger): *"najgorsze by było jeśli bym nie skończył i bym nadal marnował czas i ładował coś co nie działa i nie pomaga mi — to były chyba największe kryteria"* **Modifications queued** in `claude/patchwarden-tactical-updates` PR: - Premortem insight dodać jako meta-check § "operator's most-binding personal trigger": **wasted time on non-working, non-helpful output** - F1 trigger update: claude→Patchwarden executor role reflected **D17** (kill criteria pre-committed, quarterly review only, no panic editing) → `claude/patchwarden-decisions-batch` PR. 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#11
No description provided.