RIPP Levels Explained

RIPP Levels Explained

RIPP defines three conformance levels. Each level adds more rigor and structure. Choose the level that matches your feature’s risk, complexity, and organizational requirements.


Level 0: No RIPP (Baseline)

Status: Ad-hoc documentation

This is where most teams start. Requirements are scattered across:

Problems:

When it’s acceptable:


Level 1: Purpose + UX + Data

Status: Minimum viable RIPP

Required Sections:

What it gives you:

When to use Level 1:

Example Use Cases:

Effort: ~30-60 minutes to write


Level 2: Production-Grade

Status: Production-ready specification

Required Sections:

What it gives you:

When to use Level 2:

Example Use Cases:

Effort: ~1-2 hours to write


Level 3: Full Rigor

Status: High-assurance specification

Required Sections:

What it gives you:

When to use Level 3:

Example Use Cases:

Effort: ~2-4 hours to write


Comparison Matrix

Aspect Level 1 Level 2 Level 3
Purpose
UX Flow
Data Contracts
API Contracts
Permissions
Failure Modes
Audit Events
NFRs
Acceptance Tests
Time to Write 30-60 min 1-2 hrs 2-4 hrs
Review Depth Light Moderate Thorough
Compliance No Partial Full

Choosing the Right Level

Start with Risk Assessment

Ask yourself:

  1. Does it touch user permissions or auth? → Level 2 minimum
  2. Does it handle PII or payment data? → Level 3
  3. Is it customer-facing? → Level 2 minimum
  4. Is it multi-tenant? → Level 3
  5. Is it internal and low-risk? → Level 1 is fine

Consider Compliance Requirements

Factor in Team Maturity


Upgrading Levels

You can start with Level 1 and upgrade to Level 2 or 3 later:

  1. Change the level field in metadata
  2. Add the required sections for the new level
  3. Update the updated field
  4. Validate: ripp validate your-feature.ripp.yaml
  5. Review the additions with your team

Tip: It’s easier to start at the right level than to retrofit later.


Level Enforcement

Use CI validation to enforce minimum levels for certain features:

# GitHub Actions example
- name: Validate RIPP Levels
  run: |
    ripp validate --min-level 2 src/api/
    ripp validate --min-level 3 src/auth/
    ripp validate --min-level 1 src/internal/

Real-World Examples

See the Examples page for complete RIPP packets at each level:


FAQ

Q: Can I have Level 3 sections in a Level 1 packet?
A: Yes! The level field declares your minimum conformance. You can include additional sections at any level.

Q: Can I skip sections within a level?
A: No. All required sections for your declared level must be present. The validator will fail otherwise.

Q: Should I use Level 3 for everything?
A: No. Level 3 is for high-risk features. Over-documenting simple features slows teams down. Choose appropriately.

Q: Can I create Level 4 or custom levels?
A: RIPP v1.0 defines levels 1-3 only. You can add custom sections beyond Level 3, but they’re not part of the standard.


Choose your level. Write your spec. Ship with confidence.