Skip to content

ADR-007: CUE conditional branches for optional charter scope fields

Field Value
Status accepted
Date 2026-02-18

Context

Charter #GapAnalysis used count_satisfied: true as a default — in CUE, this is a hard constraint, not a default.

Decision

Use mutually exclusive conditional branches with a bool type constraint instead of a hard true default.

Rationale

CUE unification makes foo: true into an immutable constraint. The only way to conditionally set a field is via mutually exclusive if branches.

Consequences

  • depth_satisfied and count_satisfied now use bool type + conditional branches
  • Charter gap analysis works correctly when graph has fewer resources than scope requires
  • cue vet on public fields catches conflicts that hidden-field tests miss