Sync dashboard redesign (Overview cockpit + vertical rail), actor picker, and the Sync Capability Inspector#72
Merged
Conversation
The Capability Inspector silently auto-sampled the first hero actor (often a stray like "Festival 1"), with no way to choose which character to inspect — confusing GMs who never "selected" anything yet saw a name they didn't pick. Add a dropdown of all actors of the synced type (linked ones flagged "✓ synced"). The panel re-samples against the chosen actor. Until a pick is made it still auto-picks (first linked, else first of type) and now says so explicitly in the hint. Selection is per-session instance state, like the existing search filter. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LaDDiXB5GTVurEzJwYYopf
The 10-tab horizontal row was overwhelming and buried the Status tab. Redesign the dashboard navigation to follow Foundry's own high-cardinality idiom (the Settings window's vertical sidebar) and lead with a calm summary view: - Replace the flat 10-tab top row with a grouped vertical rail (Overview · Everyday · Library · Setup · Diagnostics). Each section is labeled so a non-technical GM can tell everyday work from setup from troubleshooting. - Add an Overview landing tab (new default): a connection banner, three headline stats, and a prioritized "needs attention" list. Every stat and alert is a jump-link to the tab that addresses it — so the GM never has to hunt for where a problem lives (notably Status/diagnostics). - The Overview model is a pure, unit-tested builder (_overview-model.mjs); the dashboard feeds it the already-computed tab data. - Tab switching is refactored into _switchTab/_applyActiveTab so rail clicks and Overview jump-links share one path; a persisted-but-missing tab now falls back to Overview instead of a blank panel. Panels are unchanged — only the navigation shell and the new landing view. 564 node tests green (557 + 7 new for the overview model). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LaDDiXB5GTVurEzJwYYopf
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Makes the Chronicle Sync dashboard usable for a non-technical GM and adds the observability tooling to see what a Foundry actor exposes vs what actually syncs.
What's in it (7 commits)
Sync Capability Inspector + diagnostics
98ac0f6/5fb4a7c— engine + Status-tab panel: diffs a sampled actor against the system's declared character-fields (synced / mapped-but-missing / available-but-unmapped / collections), with Copy Report / Copy JSON.84936d2— generic collection extraction: pull embedded items (abilities/inventory) fromactor.items[]via the newfoundry_collectionannotations.5b3de3a/6c9a491— one-click Diagnostic Bundle (versions/health/status/logs/capability) + a central leveled logger captured into it.Usability fixes (the GM-facing complaints)
63142db— actor picker for the Capability Inspector. It used to silently auto-sample the first hero (often a stray like "Festival 1") with no way to choose — confusing GMs who never "selected" anything. Now there's an Inspect actor dropdown (linked heroes tagged "✓ synced"); until you pick, it still auto-picks but says so.cd8c823— dashboard redesign: the 10-tab horizontal row became a grouped vertical rail (Overview · Everyday · Library · Setup · Diagnostics), following Foundry's own Settings idiom. New Overview cockpit is the landing view — connection banner, headline stats, and a prioritized "Needs Attention" list where every stat/alert is a jump-link to the tab that fixes it (so Status/diagnostics is never buried again). The Overview model is a pure, unit-tested builder.Tests
564 node tests green (557 + 7 new for the overview model). Template single-root contract validated by the existing
test-template-roots.mjs.Note
The dashboard + actor picker are UI and can't be verified headlessly — worth a quick live look on a v13/v14 client after install.
🤖 Generated with Claude Code
https://claude.ai/code/session_01LaDDiXB5GTVurEzJwYYopf
Generated by Claude Code