docs(p0): compact MVP spec for Android Oboe focus

This commit is contained in:
Edison Jwa
2026-05-20 14:52:33 +09:00
parent 8c253f1d4d
commit 7d6d56e330
63 changed files with 8000 additions and 46507 deletions
-105
View File
@@ -1,105 +0,0 @@
# Chanora Component Catalog — Material 3 Baseline
**Version:** 0.9.2
**Status:** Baseline Candidate
**Language:** English
**Repo path:** `docs/ui-ux/material3-component-catalog.md` ---
## 1. Purpose
This catalog defines Chanora UI components that sit above Material 3 widgets. Components shall consume design tokens and expose accessible, testable APIs.
## 2. Core Components
| Component | Stage | Responsibility |
|---|---|---|
| `ChanoraAdaptiveShell` | P0 | Layout and navigation shell for compact, medium, expanded classes |
| `ChanoraVoiceBar` | P0 | Persistent voice controls |
| `ChanoraChannelTree` | P0 | Hierarchical channel and client browser |
| `ChanoraClientTile` | P0 | Client display row |
| `ChanoraStatusBadge` | P0 | Connection, voice, latency, and diagnostic status |
| `ChanoraAudioMeter` | P0 | Input audio level indicator |
| `ChanoraConnectionBanner` | P0 | Connection, reconnect, and error feedback |
| `ChanoraSettingsSection` | P0 | Settings grouping |
| `ChanoraDiagnosticPanel` | P0 | Diagnostics status and export entry |
| `ChanoraContextMenuAnchor` | P1 | Desktop and tablet context menu behavior |
## 3. Component API Requirements
### `ChanoraVoiceBar`
Required properties:
- connected status
- current channel name
- microphone muted state
- output deafened state
- push-to-talk active state
- input level
- latency summary
- localized labels
- callbacks for mute, deaf, push-to-talk, and settings
### `ChanoraChannelTree`
Required properties:
- root channel nodes
- expanded channel IDs
- selected channel ID
- current voice channel ID
- client node list
- speaking client IDs
- join-channel callback
- context-menu callback
- keyboard traversal support
### `ChanoraStatusBadge`
Required properties:
- state
- label
- icon
- semantic label
- optional severity
- optional tooltip
### `ChanoraAudioMeter`
Required properties:
- level
- disabled state
- semantic value
- reduced-motion mode
## 4. Accessibility Rules
- Icon-only controls require semantic labels.
- Status components must not rely on color only.
- Components must support focus where interactive.
- Components must preserve touch target size where practical.
- Components must be testable through widget tests.
## 5. Change History
| Version | Date | Description |
|---|---|---|
| 0.1.0 | 2026-05-14 | Initial Chanora component catalog. |
## Baseline Candidate 0.9.1 Update
| Version | Date | Description |
|---|---|---|
| 0.9.1 | 2026-05-14 | Updated baseline after product decision closure: Apple App Store SDK gate uses Xcode 26+ and iOS 26 / iPadOS 26 SDK+ since 2026-04-28, platform baselines and decision traceability propagated across the document set. |
## Baseline Candidate 0.9.2 Update
| Version | Date | Description |
|---|---|---|
| 0.9.2 | 2026-05-14 | Corrected Apple App Store Connect upload gate to 2026-04-28 and checked full-package naming, references, and coverage. |