| name | mindit-consequence |
| description | Analyze what a design forecloses and what it opens — second-order effects, irreversible actions, path foreclosure, data implications, future-design lock-in. Use this whenever the user asks about side effects, what happens after a user clicks, what gets stored or exposed, whether an action is reversible, what this prevents the team from doing later, or knock-on effects on other features. Also trigger when the user is about to ship a destructive flow (deletion, payment, account changes) and asks for a review. Produces a structured decision artifact with score, criteria, and anti-pattern matches. |
mindit-consequence
The fourth of the eight forces. Run this when the question is "what does this foreclose, and what does it open."
The force
Every design decision opens some doors and closes others. Some closures are visible: a destructive delete button removes data. Most closures are invisible: a choice of data model now means a redesign in six months. A default that nudges 70 percent of users one direction shapes the company's product strategy. A consent flow written today defines what the company can do with user data forever.
Consequence asks: of the doors this design closes, which ones did the team know they were closing?
When to run this
- The user is about to ship a destructive flow (deletion, cancellation, payment, account changes).
- The user is choosing a default (default sort order, default privacy setting, default plan).
- The user mentions data: what gets stored, what gets exposed, who can see it, how long it is kept.
- The user uses words like "irreversible," "side effect," "knock-on," "future," "blocks us from," or "locks us in."
- The user is choosing between two architectures or two information models and asks for a review.
How to analyze
-
Surface the action. What does this design do? What does it cause to happen, both immediately and downstream? Write it out plainly.
-
Walk the five dimensions. For each criterion below, ask: what is this design closing or opening on this axis?
-
Look for invisible closures. Most consequence failures are not in the obvious "delete account" button. They are in defaults, in data models, in what the design assumes the next feature can do.
-
Surface unmade decisions. "What happens if the user changes their mind in three months" is often unmade. Surface it. Do not invent the answer.
-
Check anti-patterns.yaml.
-
Write the artifact.
Rubric
| Criterion | Weight | What you are scoring |
|---|
| Reversibility | 0.20 | Can the user undo what this design lets them do? Within what time window? With what cost? |
| Path foreclosure | 0.20 | Does this design make other user paths harder, slower, or impossible? (Often by adding friction to one path or removing it entirely.) |
| Data implications | 0.20 | What gets stored as a result of this design? Who can see it? How is it deleted? Is the answer to all three known? |
| Future-design lock-in | 0.20 | Does this design constrain what the team can do in the next version? (Information architecture, naming, defaults, data shape.) |
| Second-order effects | 0.20 | What knock-on effects on adjacent features, the support team, the data team, or other surfaces? |
Anti-patterns
See anti-patterns.yaml. Brief list: destructive-default, one-way-door, silent-side-effect, feature-lock-in, data-leakage, opt-out-by-default, schema-tattoo, support-shifted-cost.
Output format
Two files in .mindit/decisions/. Filename: consequence-<yyyymmdd>-<slug>.{md,json}.
JSON conforms to schemas/decision.schema.json with skill: "mindit-consequence" and force: "consequence".
Example
Input: "Review our account-deletion flow before we ship it."
Action surface: User clicks "Delete account" → confirmation modal → account deleted, all data purged immediately, no recovery window.
Sample findings:
- Reversibility: zero recovery window. Common pattern is a 7- or 30-day grace period. Match:
one-way-door. Severity critical.
- Path foreclosure: Once deleted, the user's invitations to teammates also vanish. Teammates will see "user no longer exists" with no context. Match:
silent-side-effect. Severity high.
- Data implications: Spec says "all data deleted" but support tickets containing user PII remain in the support tool. Match:
data-leakage. Severity high.
- Future-design lock-in: No archive table means feature ideas like "deactivate temporarily" become a schema migration later. Match:
schema-tattoo. Severity medium.
- Second-order: Billing has no hook into the deletion flow; final invoice will not generate. Severity high.
Sample weighted score: 28.
What this skill does NOT do
- Does not block destructive flows. Some products legitimately need irreversible actions. The skill surfaces the consequences so the team makes the call deliberately.
- Does not require a complete data model. It works from what the user has described, and surfaces unknowns.
- Does not predict revenue, retention, or growth impact. Second-order effects mean things adjacent to the decision, not market outcomes.