Next workshop Cutting features feels like loss and looks like design RSVP now

1.2.3 - The Risks You're Avoiding Naming Are the Ones That Bite You

Name the named risk: say what might fail, who or what it would affect and what action will reduce the damage.

The earlier files describe what we want to happen: who the user is, what pain we are solving, what we promise, how we explain it, what success looks like. risks.md names what could go wrong on the way: the specific failures worth preparing for now. The earlier files are the plan; risks.md is the audit of where the plan can break.

Named risk

Are the key risks named before they hit users?

The call

Name the risks early. Otherwise AI helps you move faster toward a failure you have not prepared for.

Explainer

A named risk is not general caution. It is a specific failure that could happen, who it would affect and what would make it visible. Until you can say what could fail, where it would show up and how you would respond, the plan is too soft. AI can help surface options, but it cannot own risk judgement.

Make the named risk concrete

Compare the broad version with a version you can actually test.

  • Too vague: There are some risks around whether the AI search results will be useful.
  • Concrete enough to test: If a content creator’s saved context is too narrow, AI search returns the same results every time and the tool feels broken. The user stops trusting the results before they have tested enough to see the value.

The second version lets two people prepare for the same failure from it.

Check the named risk

  • Pass: You can say what might fail, who or what it would affect and what action will reduce the damage.
  • Fail: If the risk still sounds like a vague concern instead of a concrete failure, it is not named well enough yet.

Do not move into build, launch or rollout work until this passes.

What you'll walk away with

In the members-only section below we put this into practice. You'll come out with named risks clear enough that every later decision flows from them. Mitigations, scope cuts, what you defensively avoid and the prompts you write to AI all inherit that clarity.

How it fits together

This is how the work is done in practice on the Cloudflare Workers stack with AI-assisted coding tools. The thoughts and ideas apply equally on any other platform.

The project is a monorepo so the named risk (alongside the rest of the framework files) lives in one shared knowledge-base/ folder that every app, every package and every AI prompt reads from. The three products in the vibe2value build-in-public stack (subCancel, ghostMarketingFlow and flowRun) each carry this layout, so look at any of them to see the structure in practice.

You write each risk in advance so the team has a shared map of where version one could break, not a list assembled in the post-mortem. The file is called risks.md (plural) because over time you accumulate several named risks in one file as you discover them. The post calls each entry a "named risk" because the unit of work is one risk at a time, written in the same three-line shape so the file stays scannable.

If you sign up, this idea continues with how it all fits together, a worked example, how to use it with AI, how to evaluate it on a real change, the risks worth naming and how to mitigate them, the key takeaways and a copy-paste AI prompt you can drop straight into your next chat. Examples are shown on the Cloudflare Workers stack with AI-assisted coding tools; the ideas apply equally on any other platform.