DECISION: [ADR-005] Seam-Spec for Non-Load-Bearing Dimensions
DATE: 2026-02-18
TYPE: 2 (reversible)
STATUS: Accepted
SOLITON SCORE: 0.75

## Context

The full Orxaq architecture spans 27 dimensions across 5 rings. Building all
27 dimensions to production quality in a single bootstrap is infeasible.
However, the interfaces between dimensions must be defined upfront to prevent
integration debt.

## Options Considered

### Option A: Build All 27 Dimensions (Full Implementation)
Pros: Complete system from day one.
Cons: Estimated 2500+ lines of kernel code; unsustainable for bootstrap phase.

### Option B: Build 5 Dimensions, Ignore 22
Pros: Fast, minimal code.
Cons: Integration interfaces undefined; future dimensions face redesign risk.

### Option C: Build 5 Dimensions, Seam-Spec 22 (selected)
Pros: Full implementation where load-bearing (types, DAG, audit, crypto).
Interface definitions + stubs where non-load-bearing (future dimensions).
Reduces Tier 0 from ~2500 lines to ~900 lines while preserving integration
contracts.
Cons: Seam-specs must be maintained as documentation debt.

## Decision

Implement 5 load-bearing dimensions fully:
1. **Types** (Entity, CausalEdge, enums) — data foundation
2. **WorldDAG** (causal graph operations) — reasoning engine
3. **AuditLog** (hash-chained entries) — compliance requirement
4. **Crypto** (hashing, tokens) — security foundation
5. **CI/CD** (tests, linting, coverage) — quality foundation

Define seam-specs (interface + stub) for the remaining 22 dimensions.

## Rationale

A seam-spec costs ~20 lines per dimension (interface + NotImplementedError stub)
versus ~100+ lines for full implementation. This 5:1 reduction enables a
complete bootstrap within a single session while preserving future integration
contracts.

## Consequences

**Easier:** Bootstrap completes in one session; interfaces documented.
**Harder:** Seam-specs must be replaced with implementations over time.
