Summary
Add visible capability labels to OpenWorlds screens so prototype affordances do
not masquerade as backed product features.
Capability Labels
Every OpenWorlds screen should show one of:
Wired: backed by viewer/native bridge and usable.
Read-only: backed by real data but no mutation path.
Display-only: prototype UI retained for roadmap/fidelity, not backed.
Provider required: requires Claude/Codex/OpenClaw session.
Unavailable: dependency or native bridge missing.
Current Map
- Wired/partial: Chronicles, Table, Combat, Atlas.
- Native bridge needed: Settings, Providers, Logs, Start Game, Stop, diagnostics.
- Display-only now: Relations, Inventory, Forge, Merchant, Acts, Bestiary,
Character, Create, Seed, advanced Settings, Dialogue choices.
Architecture
- Capability labels are presentation metadata.
- They must not change engine state or enable actions.
- Screens with disabled actions should show why they are disabled.
- Labels should be tasteful and in-family with OpenWorlds visual design.
Acceptance Criteria
- Each screen communicates whether it is wired, read-only, display-only, provider
required, or unavailable.
- Action controls that are not backed are disabled or clearly non-executable.
- Table/combat/atlas preserve
/move as the only action write lane.
- No story/content changes.
Validation
python3 -m unittest viewer.tests.test_openworlds_static -q
python3 -m py_compile viewer/server.py
git diff --check
Original-Agent Handoff
Inspect first:
viewer/openworlds/app.jsx
viewer/openworlds/chrome.jsx
viewer/openworlds/screen-launcher.jsx
viewer/openworlds/screen-settings.jsx
Summary
Add visible capability labels to OpenWorlds screens so prototype affordances do
not masquerade as backed product features.
Capability Labels
Every OpenWorlds screen should show one of:
Wired: backed by viewer/native bridge and usable.Read-only: backed by real data but no mutation path.Display-only: prototype UI retained for roadmap/fidelity, not backed.Provider required: requires Claude/Codex/OpenClaw session.Unavailable: dependency or native bridge missing.Current Map
Character, Create, Seed, advanced Settings, Dialogue choices.
Architecture
Acceptance Criteria
required, or unavailable.
/moveas the only action write lane.Validation
Original-Agent Handoff
Inspect first:
viewer/openworlds/app.jsxviewer/openworlds/chrome.jsxviewer/openworlds/screen-launcher.jsxviewer/openworlds/screen-settings.jsx