---
name: rdo-first-ui
description: Design interfaces as runtime Resonant Data Object compositions with bounded rendering capabilities, shared semantics, truthful claim states, and fail-closed alternates. Use when agents compose DATA surfaces dynamically across Swift, TypeScript, or other clients.
version: 1.0.0
updated: 2026-08-14
---

# RDO-First UI

Treat every conversation, document, configuration, and interface composition as a Resonant Data Object. Ship bounded rendering capabilities in Swift, TypeScript, and other clients; let agents compose runtime RDOs instead of hard-coding every finished arrangement.

Keep shared identity, claim semantics, and validation in the common substrate, using Rust where the product architecture designates it. Keep platform renderers thin and capability-scoped. Give code-mode tools typed, bounded authority rather than ambient access.

Validate honesty states, refusal alternates, provenance, permissions, and unsupported claims in the RDO layer. Fail closed when a composition requests a capability or claim the renderer cannot prove. Preserve canonical stable identity, distinguish unknown input from valid JSON, and never fabricate absent measurements as zero.

Compose Garden surfaces around literal subjects first, then current state, history, percentage, and projection when those values are supported. Use personal bands instead of grades, model relationships with seasonal baselines, and apply the clarity-window, gold, lilDATA, liquid-glass, and three-layer material vocabulary consistently where the product design calls for it.

Keep ephemeral view state at the narrowest owner. Keep domain behavior, authorization, and durable lifecycle state outside view components. Verify parity across supported clients without forcing platform-specific behavior into the shared semantic layer.
