Skip to main content
Back to Exercises
Foundations intermediate 45 min

Complete Triad Audit

Apply all three levels of the Subtractive Triad to a real codebase artifact.

Objectives

  • Apply DRY analysis to find duplication
  • Apply Rams analysis to question existence
  • Apply Heidegger analysis to verify system coherence
  • Synthesize findings into actionable recommendations

Beads Tasks

Create these tasks in Beads before starting. You learn Beads by using Beads.

bd create "Praxis: Complete Triad Audit of [target]" --type=feature--labels=learn,foundations
bd create "Level 1: DRY analysis—identify duplication" --type=task--labels=learn
bd create "Level 2: Rams analysis—question existence" --type=task--labels=learn
bd create "Level 3: Heidegger analysis—verify coherence" --type=task--labels=learn
bd create "Synthesize findings into recommendations" --type=task--labels=learn

Claude Code Prompt

Copy this prompt into Claude Code to build YOUR own version:

## Setup: Track this exercise with Beads

```bash
bd create "Praxis: Complete Triad Audit of [target]" --type=feature --labels=learn,foundations
bd create "Level 1: DRY analysis—identify duplication" --type=task --labels=learn
bd create "Level 2: Rams analysis—question existence" --type=task --labels=learn
bd create "Level 3: Heidegger analysis—verify coherence" --type=task --labels=learn
bd create "Synthesize findings into recommendations" --type=task --labels=learn
```

---

Help me apply the complete Subtractive Triad to [TARGET] and create MY audit framework.

Walk me through all three levels:

## Level 1: DRY (Implementation)
- "Have I built this before?"
- Find duplicated patterns, propose unification

## Level 2: Rams (Artifact)
- "Does this earn its existence?"
- Question every element, propose removals

## Level 3: Heidegger (System)
- "Does this serve the whole?"
- Trace connections, evaluate coherence

For [TARGET], create:

1. **DRY findings**: List of duplication with severity
2. **Rams findings**: Elements that fail the existence test
3. **Heidegger findings**: System-level issues

4. **Synthesis**: Prioritized recommendations
   - What to unify (DRY)
   - What to remove (Rams)
   - What to reconnect (Heidegger)

End by helping me write MY Subtractive Triad principles document.

The target for my audit: [YOUR_FILE_COMPONENT_OR_SYSTEM]

Subtractive Triad Audit

Review the code below and identify opportunities for improvement at each level of the Subtractive Triad. Look for duplication (DRY), excess complexity (Rams), and disconnection from the larger system (Heidegger).

Code to Audit
function Button({ text, onClick, disabled, loading }) {
  if (loading) {
    return <button disabled>Loading...</button>;
  }
  if (disabled) {
    return <button disabled>{text}</button>;
  }
  return <button onClick={onClick}>{text}</button>;
}

function SubmitButton({ onClick }) {
  return <button onClick={onClick}>Submit</button>;
}

function CancelButton({ onClick }) {
  return <button onClick={onClick}>Cancel</button>;
}
Implementation
Unify
Have I built this before?

Look for duplication - repeated logic, similar patterns, or redundant code.

Artifact
Remove
Does this earn its existence?

Identify excess - unnecessary complexity, unused features, or decorative elements.

System
Reconnect
Does this serve the whole?

Find disconnection - components that work in isolation but not as a coherent system.