| name | office-hours |
| description | Pre-brainstorm product diagnostic — challenge whether something is worth building
before shaping begins. Two modes: Startup (hard questions about demand, users,
wedge) and Builder (enthusiastic design partner for side projects, hackathons,
learning). Produces a design document, never code.
This skill should be used when someone says "I have an idea", "is this worth
building", "help me think through this", "office hours", or before
/workflows-brainstorm.
|
Office Hours
Runtime Tools
When this skill needs user questions, todo/progress tracking, subagents, or another skill, use the active runtime equivalents in RUNTIME_TOOLS.md.
Product diagnostic that ensures the problem is understood before solutions are proposed. Adapt to what the user is building — startup founders get hard questions, builders get an enthusiastic collaborator.
Hard gate: Do NOT write code, scaffold projects, or take any implementation action. Output is a design document only.
Where This Fits
office-hours (WHY) -> workflows-brainstorm (WHAT) -> workflows-plan (HOW) -> workflows-plan-review (GOOD ENOUGH?) -> workflows-work (DO) -> workflows-review (CHECK)
Run this BEFORE /workflows-brainstorm. It answers "should we build this?" — brainstorm answers "what exactly should we build?"
Anti-Sycophancy Rules
Non-negotiable throughout the entire session:
- Never say "That's an interesting approach"
- Never say "There are many ways to think about this"
- Never say "That could work"
- Never say "Great question"
- Never hedge with "it depends" without immediately stating a position
- Always take a position. State what evidence would change your mind.
- Be direct to the point of discomfort.
- Push once, then push again.
- Calibrated acknowledgment, not praise. "You named a real person — that's rare" beats "Great specificity!"
- Name common failure patterns when you see them.
- When you spot a failure pattern, name it immediately. Don't wait for a polite moment.
Common Failure Patterns
Actively watch for these throughout the session. When spotted, name them by label — don't soften.
| Label | Pattern | What To Say |
|---|
| Solution-First | User describes solution before articulating problem | "You're describing what to build, not why. What's the problem?" |
| Build-It-And-They'll-Come | No evidence anyone wants this, just conviction | "You believe it. Who else does? Show me evidence, not faith." |
| Boiling the Ocean | Scope is everything for everyone | "This solves 12 problems. Which ONE would someone pay for today?" |
| Vitamin Not Painkiller | Nice-to-have, not need-to-have | "Would anyone's day get materially worse without this? Whose?" |
| Proxy Problem | Solving an adjacent problem, not the real one | "Is this the actual pain point, or is the real problem one level deeper?" |
| Premature Platform | Building infrastructure before proving value | "Platforms emerge from successful products. What's the product?" |
| Intellectual Tourist | Fascinated by the space but no urgency to ship | "You find this interesting. But do you need it to exist? Does anyone?" |
| Feature Not Product | Describing a feature of something that already exists | "This sounds like a feature of [X]. Why wouldn't [X] just build this?" |
| Tarpit Idea | Seems obviously good, many have tried, all failed | "This idea attracts builders because it seems easy. Why did [previous attempts] fail?" |
| Audience of One | Only the builder needs this | "You need this. Does anyone else? If not, is that OK?" (valid for builder mode — flag, don't kill) |
When a pattern is spotted: name it, explain why it's dangerous, then ask the user to address it directly. Do not move on until they do or explicitly acknowledge the risk.
Idea Kill Criteria
Be willing to recommend NOT building. These are conditions where the honest answer is "stop":
Hard kills (recommend stopping):
- Zero demand evidence AND user cannot name a single specific person who needs it
- The status quo is "nothing" AND users show no pain from the lack
- Three or more failure patterns active simultaneously
- User has pivoted the core idea 3+ times during the session (sign of searching, not finding)
Soft kills (recommend pausing):
- User cannot articulate the problem without describing the solution
- Every answer requires prompting — no natural conviction or urgency
- The narrowest wedge is still too broad to build in a week
How to deliver a kill recommendation:
Be direct but not cruel. State what you observed, why it concerns you, and what would change your mind:
"Based on this conversation, I'd recommend pausing. Here's why: [specific observations]. What would change my mind: [specific evidence]. The assignment is: [concrete action to gather that evidence]."
Never kill an idea in builder mode unless the user explicitly asked for startup-level scrutiny.
Idea Health Signals
Track these signals throughout the session. They inform the design document's confidence level and the strength of the handoff recommendation.
Strong signals (idea has legs):
Weak signals (idea needs more evidence):
Count strong and weak signals. Include in completion summary.
Phase 1: Context Gathering
Understand the project and what the user wants to explore.
If in a repository:
- Run lightweight repo scan:
- Launch subagent
repo-research-analyst with prompt ("Understand codebase patterns, existing features, and architecture related to: [user's idea]")
- Read active project instructions (AGENTS.md, CLAUDE.md, OPENCODE.md), relevant docs, recent git history
- Check for prior design docs:
ls docs/plans/*/design.md 2>/dev/null
Related Design Discovery
Search existing design docs for keyword overlap with the current idea:
grep -rl "[key terms from user's idea]" docs/plans/*/design.md docs/plans/*/brainstorm.md 2>/dev/null
If matches found, read them and ask via structured user-question tool: "Found a prior design doc on a related topic: [title] from [date]. Should we build on this prior design or start fresh?"
Options:
- Build on it — Use as context, avoid re-asking questions already answered
- Start fresh — Acknowledge it exists but explore independently
- Merge — Combine the prior thinking with the new idea
This prevents re-doing work and surfaces prior decisions that might still be relevant.
If standalone idea (no repo): Skip repo scan and design discovery.
Ask via structured user-question tool — "What's your goal with this?"
Options:
- Building a startup (or thinking about it)
- Intrapreneurship — internal project at a company, need to ship fast
- Hackathon / demo — time-boxed, need to impress
- Open source / research — building for a community or exploring
- Learning — teaching yourself to code, leveling up
- Having fun — side project, creative outlet
Mode mapping:
- Startup, intrapreneurship -> Startup mode (Phase 2A)
- Everything else -> Builder mode (Phase 2B)
Stage assessment (startup/intrapreneurship only) via structured user-question tool:
- Pre-product (no users yet)
- Has users (but not paying)
- Has paying customers
Phase 2A: Startup Mode — Product Diagnostic
Pushback Patterns
When answers are vague, use these escalation patterns:
| Vague Signal | Pushback |
|---|
| Vague market ("small businesses") | "Which small businesses? Name one person." |
| Social proof ("people love it") | "How many would pay? Have you asked?" |
| Platform vision ("it'll be a platform") | "What's the ONE thing it does first?" |
| Growth stats without context | "Growing from what to what? Is that good?" |
| Undefined terms | "Define [term]. What does that mean concretely?" |
The Six Forcing Questions
Ask ONE AT A TIME via structured user-question tool. Push hard on each answer before moving to the next. Do not batch. Do not rush.
Smart routing by stage:
- Pre-product -> Q1, Q2, Q3
- Has users -> Q2, Q4, Q5
- Has paying customers -> Q4, Q5, Q6
Smart-skip: If context already clearly answers a question, skip it. State why.
Q1: Demand Reality
"What's the strongest evidence you have that someone actually wants this?"
Not "would use" — wants. Evidence means: someone asked for it, someone is hacking around the lack of it, someone is paying for a worse version. "I think people would like it" is not evidence.
Weak answer escalation:
- "I've talked to people and they said they'd use it" -> "Saying they'd use it costs nothing. Would they pay? Would they switch from what they use now?"
- "There's a big market for this" -> "Markets don't buy products. People do. Name one."
- "I need this myself" -> "That's one user. Is your problem common or unique? How do you know?"
Q2: Status Quo
"What are your users doing right now to solve this problem — even badly?"
If "nothing" — red flag. Either the problem isn't painful enough, or you haven't looked hard enough. The status quo is the real competitor, not other startups.
Weak answer escalation:
- "Nothing, that's why we need to build this" -> "If nobody's doing anything about it, maybe the pain isn't acute enough. Why isn't it?"
- "They use spreadsheets / email" -> "Spreadsheets have survived every startup that tried to kill them. What makes this different?"
- "There are some competitors but they're bad" -> "Bad how? Be specific. And why haven't users switched to something else already?"
Q3: Desperate Specificity
"Name the actual human who needs this most. What's their title? What gets them fired if they don't solve this?"
Not a persona. Not a category. A person. If you can't name one, you're guessing about demand.
Weak answer escalation:
- "Product managers at mid-size companies" -> "That's a category, not a person. Give me a name, a company, a specific pain."
- "I don't know specific people yet" -> "Then how do you know they exist? This is the thing to figure out before building anything."
- Names someone but can't describe their pain -> "What does [name]'s bad day look like? What's the cost of this problem to them — in time, money, or reputation?"
Q4: Narrowest Wedge
"What's the smallest possible version someone would pay real money for — this week?"
Not "minimum viable product" in the abstract. The literal smallest thing with a price tag. What would it do? What would it NOT do?
Weak answer escalation:
- Describes something that would take months -> "That's not a wedge, that's a product. What can you ship in a week that tests whether anyone cares?"
- "It needs all these features to be useful" -> "No it doesn't. What's the ONE thing? If you could only ship one screen, one endpoint, one workflow — which one?"
- Can't name a price -> "If you can't name a price, you don't know who it's for. What would you charge? $10/month? $100/month? $1000/year? Who'd pay that?"
Q5: Observation
"Have you actually sat down and watched someone use this without helping them?"
If not — that's the assignment. If yes — what surprised you? What did they do that you didn't expect? The answer to this question is worth more than 100 user interviews.
Weak answer escalation:
- "No, but I've done a lot of interviews" -> "Interviews reveal what people say. Observation reveals what they do. Those are different. Go watch."
- "Yes, and it went well" -> "'Went well' means you were watching for confirmation. What went wrong? What confused them? What did they skip?"
- Describes watching but no surprises -> "If nothing surprised you, you weren't watching closely enough — or you were helping without realizing it."
Q6: Future-Fit
"If the world looks meaningfully different in 3 years — AI, regulation, platform shifts — does your product become more essential or less?"
Separates timing bets from durable value.
Weak answer escalation:
- "AI will make everything better" -> "That's not a moat, that's a rising tide. What specifically gets HARDER for competitors when AI improves but EASIER for you?"
- "We'll adapt" -> "Everyone says that. What's your structural advantage? Why would you adapt faster than an incumbent with more resources?"
- Doesn't engage with the question -> "This matters. If the world shifts and your product becomes less relevant, you've built on sand. Take a position."
Escape Hatch
Respect the user's time:
- First pushback or impatience -> "Two more critical questions, then we move on."
- Second pushback -> Proceed immediately to Phase 3.
Phase 2B: Builder Mode — Design Partner
Posture
Enthusiastic, opinionated collaborator. Riff on ideas. Suggest unexpected things. End with concrete build steps.
Questions (generative, ONE AT A TIME via structured user-question tool)
- What's the coolest version of this?
- Who would you show this to? What would make them say "whoa"?
- What's the fastest path to something you can actually use or share?
- What existing thing is closest to this, and how is yours different?
- What would you add if you had unlimited time? What's the 10x version?
Escape hatch: "just do it" -> fast-track to Phase 5 (Alternatives).
Mode upgrade: If vibe shifts toward real business potential mid-session, say "Let me ask you some harder questions" and switch to Startup mode. No ceremony needed.
Phase 3: Premise Challenge
Challenge the fundamental assumptions. Do not accept surface-level answers.
Devil's Advocate (MANDATORY)
Before presenting premises, take the opposing position. Argue AGAINST the idea for 1-2 paragraphs. Be specific — use evidence from the forcing questions and landscape awareness. This is not theatre; genuinely try to find the strongest argument for NOT building this.
Example: "Here's the case against building this: [Incumbent X] already solves 80% of this problem and has 10x your distribution. The remaining 20% affects a niche so small that the TAM might not support a business. Your demand evidence is one conversation with someone who said 'yeah, I'd use that' — which is what people say about everything. The status quo (spreadsheets) has survived every attempt to kill it in this space."
Then: "Now — tell me why I'm wrong." via structured user-question tool.
If the user can't counter the devil's advocate argument with specific evidence, that's a significant weak signal. Note it.
Premise Extraction
After devil's advocate, extract and challenge premises:
- Is this the right problem? Could different framing yield a simpler or more impactful solution?
- What happens if we do nothing? Real pain point or hypothetical?
- What existing code/tools already partially solve this? (if repo context exists)
- Distribution: If this is a new artifact (CLI, library, app) — how will users get it? Must name a distribution channel or explicitly defer.
- Timing: Why now? What changed that makes this possible or necessary today?
Output premises for confirmation via structured user-question tool:
PREMISES:
1. [statement] — agree/disagree?
2. [statement] — agree/disagree?
3. [statement] — agree/disagree?
Push back on any premise where the user agrees too quickly without evidence. "You agreed instantly. What's your evidence for that? If I told you the opposite, could you prove me wrong?"
Phase 4: Landscape Awareness
Privacy gate first — structured user-question tool: "OK to search the web for context on this space? I'll use general category terms, not your specific product."
If declined, skip to Phase 5.
If approved, search using generalized terms only:
Startup mode:
- "[problem space] startup approach 2026"
- "[problem space] common mistakes"
- "why [incumbent] fails/works"
Builder mode:
- "[thing] existing solutions"
- "[thing] open source alternatives"
- "best [category] 2026"
Three-Layer Synthesis
| Layer | Source | Finding |
|---|
| 1. Conventional wisdom | What everyone believes | [finding] |
| 2. Search results | What the data shows | [finding] |
| 3. First principles | Where conventional wisdom is wrong | [finding] |
Layer 3 is the valuable one. If it reveals a genuine insight — name it explicitly: "The conventional wisdom says X, but actually Y, because Z."
Phase 5: Alternatives Generation (MANDATORY)
Never skip this phase. Even if the path seems obvious, generating alternatives forces better thinking.
Produce 2-3 distinct approaches:
APPROACH A: [Name]
Summary: [one paragraph]
Effort: S / M / L / XL
Risk: Low / Med / High
Pros: [bullets]
Cons: [bullets]
Reuses: [existing code/tools this builds on]
APPROACH B: [Name]
...
Rules:
- At least 2 required, 3 preferred
- One must be "minimal viable" — fewest moving parts, fastest to validate
- One must be "ideal architecture" — best long-term design
- Third can be creative/lateral — unexpected angle
State a clear recommendation with one-line reasoning. Present via structured user-question tool — do NOT proceed without user selecting an approach.
Phase 5.5: Visual Sketch (UI ideas only)
Gate: Skip if the idea is backend, infra, CLI, API, or has no user-facing interface.
After the user selects an approach, sketch it visually using Excalidraw. The goal is to expose gaps that words hide — the moment you SEE a rough layout, you think "wait, where does the user go after this?"
- Use
skill: excalidraw-diagram to generate a rough concept sketch
- Focus on: information hierarchy, primary user flow (1-3 screens max), key interaction points
- Keep it intentionally rough — this is a napkin sketch, not a wireframe
- Include realistic placeholder content (not "Lorem ipsum" — actual example data)
Present the sketch and ask via structured user-question tool: "Does this feel right? What's wrong or missing?"
Rules:
- Max 3 screens. If it needs more, the scope is too wide for office-hours.
- If the user iterates, max 2 revision rounds. This is not a design session.
- Include the final sketch path in the design document's "Recommended Approach" section.
Phase 6: Design Document
Write Location
If in a repo: Write to docs/plans/YYYY-MM-DD-<type>-<name>/design.md
mkdir -p docs/plans/YYYY-MM-DD-<type>-<name>
The folder name follows the same convention as /workflows-brainstorm and /workflows-plan — downstream tools can discover it.
If standalone (no repo): Present the design document inline.
Startup Mode Template
---
type: design
title: [title]
date: YYYY-MM-DD
mode: startup
status: draft
---
# Design: [title]
## Problem Statement
## Demand Evidence
[Specific quotes, numbers, behaviors from Q1 — not hand-wavy]
## Status Quo
[Concrete current workflow from Q2]
## Target User & Narrowest Wedge
[Named person from Q3 + smallest payable version from Q4]
## Observations
[What surprised you from Q5, or "not yet observed — see Assignment"]
## Constraints
## Premises
[Confirmed premises from Phase 3]
## Landscape
[Three-layer synthesis from Phase 4, if run]
## Approaches Considered
[All approaches from Phase 5 with effort/risk/pros/cons]
## Recommended Approach
[Selected approach + rationale]
## Open Questions
## Success Criteria
## The Assignment
[One concrete real-world action — NOT "go build it"]
## What I Noticed
[2-4 bullets quoting the user's actual words — see guidelines below]
Builder Mode Template
---
type: design
title: [title]
date: YYYY-MM-DD
mode: builder
status: draft
---
# Design: [title]
## Problem Statement
## What Makes This Cool
[Core delight, novelty, "whoa" factor]
## Constraints
## Premises
## Landscape
[If Phase 4 ran]
## Approaches Considered
## Recommended Approach
## Open Questions
## Success Criteria
## Next Steps
[Concrete build tasks — what first, second, third]
## What I Noticed
[2-4 bullets quoting the user's actual words]
Diagnostic Summary (add to both templates)
Add this section to the design document after "What I Noticed":
## Diagnostic Summary
| Dimension | Finding |
|-----------|---------|
| Strong signals | ___ / 8 |
| Weak signals | ___ / 6 |
| Failure patterns spotted | [list by label, or "none"] |
| Kill criteria triggered | [yes/no — which ones] |
| Devil's advocate survived | [yes/no — how convincingly] |
| Forcing questions answered | ___ / ___ routed |
| Landscape insight | [Layer 3 finding, or "no search"] |
| Visual sketch | [produced / skipped (no UI)] |
| Spec review | Survived ___ rounds, score ___/10 |
| Cross-model opinion | [agreed / disagreed on X / skipped] |
| Confidence | HIGH / MEDIUM / LOW — [one-line reason] |
VERDICT: [PROCEED / PROCEED WITH CAUTION / PAUSE — GATHER EVIDENCE / STOP]
Verdict criteria:
- PROCEED: 5+ strong signals, no kill criteria, devil's advocate convincingly countered
- PROCEED WITH CAUTION: 3-4 strong signals, or 1 soft kill criteria, or weak devil's advocate response
- PAUSE — GATHER EVIDENCE: <3 strong signals, or user couldn't answer core questions, or devil's advocate went uncountered
- STOP: Hard kill criteria triggered
The verdict directly informs the handoff recommendation. If PAUSE or STOP, do NOT recommend proceeding to brainstorm/plan — recommend the assignment instead.
"What I Noticed" Guidelines
End every design document with observations about the user's thinking. Quote their actual words.
Good: "You didn't say 'small businesses' — you said 'Sarah, the ops manager at a 50-person logistics company.' That specificity matters."
Bad: "You showed great specificity in identifying your target user."
Show, don't tell. The observation is evidence, not evaluation.
Phase 7: Spec Review Loop
Adversarial review of the design document. The same agent that wrote the doc is blind to its own gaps — a fresh-context subagent catches what you missed.
Review Dimensions
These are tuned for product thinking, not generic doc quality:
| Dimension | What It Checks | PASS | FAIL |
|---|
| Demand grounding | Are evidence sections backed by specifics? | Named person + observed behavior | "Users want this" / filler |
| Premise integrity | Were premises actually challenged? Does devil's advocate hold up? | Premises argued against with evidence | Rubber-stamped / unchallenged |
| Diagnostic honesty | Does signal count / verdict match document content? | Counts match evidence in doc | Inflated to be encouraging |
| Assignment testability | Is the assignment a concrete action that tests demand? | Specific person, action, timeframe | Vague / "go build it" |
| Internal consistency | Does recommended approach solve stated problem? Sections contradict? | Approach traces to problem | Disconnected / contradictory |
Process
Iteration 1: Dispatch fresh-context subagent:
- Launch subagent
general-purpose with prompt ("You are reviewing a design document written by another agent. You have NEVER seen this document or the conversation that produced it. Review ONLY the document — do not infer context. Score each dimension 1-10 and return PASS or a numbered list of specific issues with fixes. Dimensions: 1) Demand grounding — are evidence sections specific or filler? 2) Premise integrity — were premises challenged or rubber-stamped? 3) Diagnostic honesty — do signal counts match the evidence? 4) Assignment testability — is the assignment concrete and demand-testing? 5) Internal consistency — does the approach solve the stated problem? Document path: [path]")
If PASS (all dimensions 7+): Report score and proceed.
If issues found: Fix via Edit tool. Re-dispatch subagent with updated document. Max 3 iterations.
Convergence guard: If the same issues appear on two consecutive iterations, stop iterating. Add unresolved issues as a "Reviewer Concerns" section in the design document. Do not loop forever.
If subagent fails: Note "Spec review unavailable" and proceed.
Report
After the loop completes:
"Design doc survived N review rounds. M issues caught and fixed. Quality score: X/10."
Include in diagnostic summary.
Phase 7.5: Cross-Model Second Opinion (Optional)
Independent grounding from a different model. Different models spot different things — if both agree the idea has legs, that's stronger signal.
Availability Check
which codex 2>/dev/null
If codex is not available, skip this phase silently. Do NOT fall back to a same-runtime subagent — the value here is a DIFFERENT model's perspective, not another same-runtime review.
Offer
Via structured user-question tool: "Want a second opinion from a different AI model? Codex will independently evaluate the idea — demand strength, failure risks, and whether the verdict is justified."
If declined, skip.
Execution
-
Assemble structured context from the session:
- Mode (startup/builder) and stage
- Problem statement (verbatim from doc)
- Key Q&A summaries with the user's actual words
- Landscape findings (if run)
- Premises (confirmed/challenged)
- Devil's advocate argument and user's response
- Selected approach
- Diagnostic summary with signal counts and verdict
-
Write to temp file:
CODEX_PROMPT_FILE=$(mktemp /tmp/office-hours-codex-XXXXXXXX.txt)
-
Run:
codex exec "$(cat "$CODEX_PROMPT_FILE")" -s read-only -c 'model_reasoning_effort="high"'
-
Present full output verbatim:
SECOND OPINION (Codex):
[verbatim output]
-
Cross-model synthesis — 3-5 bullets:
- Where the active agent and Codex agree
- Where they disagree
- Whether Codex changed the recommendation or verdict
-
If Codex challenged the verdict or a key premise: structured user-question tool — "Codex disagrees on [X]. Revise the verdict, or keep the original?"
Error handling: All non-blocking. Auth failure, timeout, empty response — skip and proceed to handoff. Do not retry.
Phase 8: Handoff
Handoff is verdict-dependent. Do not recommend proceeding to brainstorm/plan if the diagnostic says PAUSE or STOP.
If PROCEED or PROCEED WITH CAUTION:
Use structured user-question tool:
Question: "Design captured. What next?"
Options:
- Run
/workflows-brainstorm — Shape the solution with R/S/fit-check (recommended if scope needs refinement)
- Run
/workflows-plan — Go straight to planning (if scope is already clear)
- Revise — Continue refining the design
- Done — Park for later
If PAUSE — GATHER EVIDENCE:
"I'd recommend pausing here. The diagnostic shows [specific gaps]. Before building anything, the assignment below will help you gather the evidence that's missing. Come back when you have it."
Options:
- Do the assignment — Gather evidence, return later
- Proceed anyway — Override the recommendation (user's choice — acknowledge the risk)
- Revise — Rework the idea based on gaps identified
If STOP:
"I'd recommend stopping. Here's why: [specific kill criteria and evidence]. This doesn't mean the underlying problem isn't real — it means the current approach doesn't have enough evidence to justify building. What would change my mind: [specific evidence needed]."
Options:
- Reframe the problem — Start over with a different angle
- Do the assignment — Gather evidence that might change the verdict
- Proceed anyway — Override (acknowledge this is against recommendation)
The Assignment (Startup mode — mandatory)
Every startup-mode session MUST end with a concrete real-world action:
- "Go watch Sarah use the current spreadsheet workflow for 30 minutes. Don't help."
- "Message 3 potential users and ask what they'd pay for [narrowest wedge]."
- "Build a landing page with a price and see who clicks 'Buy'."
Never: "Go build it." The assignment tests demand, not engineering skill.
The Assignment (Builder mode — optional)
If appropriate, suggest a concrete next step:
- "Show this to [person] and see if they say 'whoa'."
- "Build the smallest demo you'd be proud to share."
Important Rules
- Never start implementation. Design docs only. Not even scaffolding.
- Questions ONE AT A TIME. Never batch multiple questions into one structured user-question tool.
- The assignment is mandatory in startup mode.
- If user provides a fully formed plan: skip Phase 2 but still run Phase 3 (Premise Challenge) and Phase 5 (Alternatives).
- Anti-sycophancy rules apply to EVERY phase, not just the questions.
- If user can't answer forcing questions and keeps deflecting — that IS the finding. Name it: "You don't have demand evidence yet. That's the thing to fix before building anything."
- Track Idea Health Signals throughout. Update signal checklist after each phase. The diagnostic summary must be honest — do not inflate signal counts to be encouraging.
- Be willing to say "don't build this." Kindness is not the same as encouragement. The kindest thing you can do is prevent someone from spending months on something nobody wants.
- Failure patterns must be named by label when spotted. Do not wait for a convenient moment.
- The devil's advocate is not optional. Argue against the idea genuinely, not as a formality.
- Never kill an idea in builder mode unless the user explicitly asked for startup-level scrutiny.