This commit is contained in:
Mateusz Gruszczyński committed 2026-10-15 10:37:23 +02:00
1 parent 2ccc598b12
commit b757b34a31
26 files changed
+671 -116

No files matched your search

+47
View File
@@ -0,0 +1,47 @@
# Factory Overview dashboard preset (0.33.1)
`src/admin/web/dashboard-defaults.json` is the single factory configuration
for the Rust admin preference API and the authenticated JavaScript panel.
The preset contains:
- `dashboard_widgets`: complete card identifier order, including hidden cards;
- `dashboard_hidden_widgets`: identifiers hidden in the factory Overview;
- `dashboard_density`: `normal`, `compact` or `ultra`;
- `overview_samples`: `60`, `120`, `300` or `600` samples for first use in a browser.
Card IDs and labels are defined in `src/admin/web/dashboard-widgets.json`.
The preset may omit newly registered card IDs: the server/client will append
those cards and apply the registry's `default_hidden` flag. The preset must
not contain unknown or duplicate IDs, or hidden IDs absent from its order.
The bundled 0.33.1 preset reproduces the supplied operator layout: 78 ordered
cards, 51 hidden, compact density and 600 initial samples. The packaged
Web Server cards remain hidden by default.
## Deploying an edited preset
1. Edit `src/admin/web/dashboard-defaults.json` in the source tree.
2. Validate the JSON and identifiers
3. Rebuild RustProxy (`./dev.sh check` / the normal release build) and deploy
the newly built binary. The preset is **embedded**; editing the installed
source JSON alone does not update a running binary.
## Existing installation and reset behavior
- Admin accounts with stored preferences in SQLite retain their chosen
ordering, card visibility and density on upgrade. The preset never rewrites
these saved records. Accounts without saved preferences receive the new
factory defaults, even on upgraded installations.
- In Overview, **Arrange cards visually → Restore defaults** restores the
factory card order/visibility after the user confirms; it does not reset
unrelated appearance or sample-history settings.
- The history selector uses browser-local storage key
`rustproxy.overview.liveChartSamples`. An explicitly saved choice (including
60) wins over the factory sample count. A browser without a saved choice
starts with 600. The sample limit does not change polling frequency.
- While layout is unlocked, hide/show/reorder changes are temporary and stay
effective during backend/Stream status refresh. **Cancel changes** restores
the saved layout; **Save and lock** persists the current draft.
No SQLite schema migration or additional HTTP endpoint is required.