
Keep the reason for the product clear
A product idea needs more than a name. It needs a clear problem, a desired improvement and the constraints that should survive later decisions.
The vision brief records that direction as part of the project. Success criteria have their own references, so later plans can explain which goals they intend to serve.
Example — Keep the first release focused
A team wants customer follow-up to stop disappearing between inboxes. Its brief records that problem, a goal for getting a new team started, and a constraint that setup must remain self-service.
For engineers
Declare the intended outcome
This illustrative complete vision uses the public specification type. It records an intended product outcome, not observed performance:
import { VisionSnapshotVersion, VisionSuccessHorizon, VisionConstraintKind, type VisionSnapshot } from '@wildo-ai/saas-specifications';
export const applicationVisionSnapshot: VisionSnapshot = {
version: VisionSnapshotVersion.V1,
idea: {
oneLiner: 'Give a small team one shared view of customer follow-up.',
description: 'A shared workspace for contacts, ownership and dated next steps.',
notes: [],
},
problem: {
statement: 'Ownership and next steps get lost between inboxes and spreadsheets.',
affected: 'Small teams sharing customer work.',
currentAlternatives: ['Inboxes', 'Spreadsheets'],
consequences: ['Follow-ups are missed.'],
},
mission: { mission: 'Make each customer commitment clear and actionable.', principles: [] },
successCriteria: [{
ref: 'success-criterion-first-working-pipeline',
statement: 'A new team reaches a working pipeline in its first day.',
metric: 'Time from signup to a pipeline containing real contacts',
target: 'Within one day',
horizon: VisionSuccessHorizon.SHORT_TERM,
}],
constraints: [{
ref: 'constraint-self-serve-start',
kind: VisionConstraintKind.BUSINESS,
statement: 'A team can start without a sales-assisted setup.',
}],
};
The criterion’s ref remains the link target when its wording improves. Its metric and target describe what the team intends to measure; they do not install telemetry. The constraint records a decision to carry into design and implementation.
Register and inspect the brief
Export the snapshot through visionSpecification in the application’s companion exports and let the specification package compile. The creation methods that request vision context can then read it alongside other product information.
| Check | What it contributes |
|---|---|
| Schema parsing | Confirms the supported data shape for external input |
| Vision validator | Checks references and reports incomplete or inconsistent intent |
| Cross-family coherence | Relates declared success criteria to planned delivery |
| Product measurement | Establishes whether the intended result was achieved |
A useful brief can evolve as the team learns. Review changes to its stable criteria and constraints together with the roadmap and requirements that refer to them.