Overview
Use this skill to make the permanent cost of a feature visible before committing to
build. A feature is a bet that consumes complexity forever; this skill estimates that
carry across cognitive, technical, operational, and governance dimensions, and recommends
the cheapest coherent way to get the value. It produces a coarse, honest scorecard — never
a false-precision number.
When to Use
- A feature looks valuable and complexity is becoming the deciding factor.
- Before a
build_now verdict on anything non-trivial.
- When comparing two designs that deliver similar value at different carry.
When NOT to Use
- The change is tiny, local, and obviously cheap.
- Value itself is unresolved (resolve the lever first).
- No scope or dependencies are known yet (nothing to estimate).
Core Moves
- Frame. State the feature and the scope being costed.
- Score four dimensions (each low/medium/high with drivers):
- Cognitive — surface users and the team must hold in their heads.
- Technical — new dependencies, data model, integration, migration surface.
- Operational — support, on-call, runbook, monitoring carry.
- Governance — security, privacy, compliance, accessibility obligations.
- Name reversibility. reversible / partially_reversible / one_way_door, and the
mechanisms (flag, cohort, rollback, sunset, migration plan).
- Roll up to a coarse level (low/medium/high) with the dominant driver named.
- Recommend reduction. The smallest scope that keeps the value, or the explicit
exception required if the high cost is accepted.
Optional Modules
- Carry-over forecast — Estimate the ongoing yearly cost (support tickets, on-call,
doc upkeep), not just the build cost.
- Reduction options — List 1–3 concrete ways to cut permanent cost without killing
the value.
- One-way-door check — When reversibility is low, force a technical gate before commit.
Activation Triggers
- Run whenever complexity is the pivotal factor in a worth-doing verdict.
- Use the one-way-door check when reversibility is
one_way_door.
- Use reduction options whenever the rolled-up level is
high.
Inputs (minimum)
- Feature, scope, dependencies, UX impacted, operational footprint.
Outputs (minimum)
- A permanent-cost score, risks, and a reduction recommendation — mapping to the
complexity_cost and reversibility fields of the
Feature Value Governance Contract.
A high level under a build_now verdict requires decision.exception_approval.
Expected Output
complexity_scorecard:
feature: <one line>
dimensions:
cognitive: { level: low|medium|high, drivers: <text> }
technical: { level: low|medium|high, drivers: <text> }
operational: { level: low|medium|high, drivers: <text> }
governance: { level: low|medium|high, drivers: <text> }
reversibility:
level: reversible | partially_reversible | one_way_door
mechanisms: [ ... ]
rolled_up_level: low | medium | high
dominant_driver: <text>
reduction_recommendation: <smallest scope that keeps value, or required exception>
uncertainty: <what is hard to estimate>
Verification
- All four dimensions are scored, not just the technical one.
- Reversibility is explicit.
- The recommendation reduces cost or names the exception — it does not hand-wave.
- The level is coarse and honest, not a fake decimal.
Handoff Signals
- A
high level under a build verdict → require exception_approval and route to human review.
- The feature should perhaps not be built at all →
feature-value-governance.
- Structural design is the real question →
architecture-review.
Pairs Well With
feature-value-governance
architecture-review
premortem
Anti-patterns
- Scoring only build effort and ignoring forever-carry.
- A precise-looking number that hides deep uncertainty.
- Treating high complexity as an automatic veto, or as no cost at all.
1---2name: feature-complexity-audit3description: Estimate the permanent cost of a feature — cognitive, technical, operational, and governance carry — before the build commitment, producing a complexity scorecard and a reduction recommendation.4---56# Overview78Use this skill to make the **permanent cost** of a feature visible *before* committing to9build. A feature is a bet that consumes complexity forever; this skill estimates that10carry across cognitive, technical, operational, and governance dimensions, and recommends11the cheapest coherent way to get the value. It produces a coarse, honest scorecard — never12a false-precision number.1314# When to Use1516- A feature looks valuable and complexity is becoming the deciding factor.17- Before a `build_now` verdict on anything non-trivial.18- When comparing two designs that deliver similar value at different carry.1920# When NOT to Use2122- The change is tiny, local, and obviously cheap.23- Value itself is unresolved (resolve the lever first).24- No scope or dependencies are known yet (nothing to estimate).2526# Core Moves27281. **Frame.** State the feature and the scope being costed.292. **Score four dimensions** (each low/medium/high with drivers):30 - **Cognitive** — surface users and the team must hold in their heads.31 - **Technical** — new dependencies, data model, integration, migration surface.32 - **Operational** — support, on-call, runbook, monitoring carry.33 - **Governance** — security, privacy, compliance, accessibility obligations.343. **Name reversibility.** reversible / partially_reversible / one_way_door, and the35 mechanisms (flag, cohort, rollback, sunset, migration plan).364. **Roll up to a coarse level** (low/medium/high) with the dominant driver named.375. **Recommend reduction.** The smallest scope that keeps the value, or the explicit38 exception required if the high cost is accepted.3940# Optional Modules4142- **Carry-over forecast** — Estimate the ongoing yearly cost (support tickets, on-call,43 doc upkeep), not just the build cost.44- **Reduction options** — List 1–3 concrete ways to cut permanent cost without killing45 the value.46- **One-way-door check** — When reversibility is low, force a technical gate before commit.4748# Activation Triggers4950- Run whenever complexity is the pivotal factor in a worth-doing verdict.51- Use the one-way-door check when reversibility is `one_way_door`.52- Use reduction options whenever the rolled-up level is `high`.5354# Inputs (minimum)5556- Feature, scope, dependencies, UX impacted, operational footprint.5758# Outputs (minimum)5960- A permanent-cost score, risks, and a reduction recommendation — mapping to the61 `complexity_cost` and `reversibility` fields of the62 [Feature Value Governance Contract](../../../aletheia/schemas/feature-value-governance-contract.schema.json).63 A `high` level under a `build_now` verdict requires `decision.exception_approval`.6465# Expected Output6667```yaml68complexity_scorecard:69 feature: <one line>70 dimensions:71 cognitive: { level: low|medium|high, drivers: <text> }72 technical: { level: low|medium|high, drivers: <text> }73 operational: { level: low|medium|high, drivers: <text> }74 governance: { level: low|medium|high, drivers: <text> }75 reversibility:76 level: reversible | partially_reversible | one_way_door77 mechanisms: [ ... ]78 rolled_up_level: low | medium | high79 dominant_driver: <text>80 reduction_recommendation: <smallest scope that keeps value, or required exception>81 uncertainty: <what is hard to estimate>82```8384# Verification8586- All four dimensions are scored, not just the technical one.87- Reversibility is explicit.88- The recommendation reduces cost or names the exception — it does not hand-wave.89- The level is coarse and honest, not a fake decimal.9091# Handoff Signals9293- A `high` level under a build verdict → require `exception_approval` and route to human review.94- The feature should perhaps not be built at all → `feature-value-governance`.95- Structural design is the real question → `architecture-review`.9697# Pairs Well With9899- `feature-value-governance`100- `architecture-review`101- `premortem`102103# Anti-patterns104105- Scoring only build effort and ignoring forever-carry.106- A precise-looking number that hides deep uncertainty.107- Treating high complexity as an automatic veto, or as no cost at all.