Skip to content

feat(dashboard): declutter Settings page by removing static notice and raw dump - #340

Merged
trefeon merged 4 commits into
mainfrom
feat/clean-settings-ui
Sep 4, 2026
Merged

feat(dashboard): declutter Settings page by removing static notice and raw dump#340
trefeon merged 4 commits into
mainfrom
feat/clean-settings-ui

Conversation

@trefeon

@trefeon trefeon commented Sep 4, 2026

Copy link
Copy Markdown
Owner

Summary

Redesigns and streamlines the Dashboard Settings page:

  • Clean 4-Card Layout:
    1. Security & Access: Admin password management & loopback login toggle.
    2. Gateway & Protection:
      • Anti-Ban Safe Mode toggle (SAFE_MODE).
      • Server Log Level dropdown (LOG_LEVEL).
      • HTTP Read Timeout text input (HTTP_READ_TIMEOUT) with DEFAULT (60s) and RESTART badges.
      • Allow Client-Provided Tokens toggle (BRIDGE_ENABLED).
    3. Traffic & Rate Limiting:
      • Rate Limit per Client IP (RATE_LIMIT_PER_IP).
    4. Command Center:
      • Process status & safe Restart Gateway action with confirmation modal.
      • Check for Updates button, release link, and copyable Docker upgrade command.
      • Version rollback guidance.
  • Removed Visual Clutter:
    • Container Bootstrap Notice removed.
    • Current Values 40-row raw variable dump removed.
    • ❌ Redundant ModelRoutingSettings removed (per-model locking is already fully managed per account interactively on the Tokens page).
  • Advanced Raw .env Editor Retained:
    • Kept cleanly collapsed in <details> at the bottom of the page for advanced configuration and emergency overrides.
  • Verification:
    • All 5 Settings e2e tests pass cleanly (interactions.spec.ts & ux.spec.ts).
    • Full backend hermetic suite passes with 100% route parity.

…k, and version rollback

- Backend: implement POST /admin/restart with config pre-validation,
  graceful drain, and deferred process exit for container/systemd supervisors.
- Updatecheck: add Invalidate() method and honor ?force=true on
  GET /admin/api/version for on-demand update checks.
- Manifest & Parity: register /admin/restart across admin_manifest.json,
  server.go, and paths.js with 100% parity test coverage.
- Frontend: CommandCenterCard in Settings with process status, restart
  gateway action with confirm dialog, update check with copyable Docker
  upgrade commands, and version rollback instructions.
- Tests: admin_restart_test.go unit tests and ux.spec.ts e2e coverage.
…d raw dump

- Remove static Container Bootstrap Notice alert that added visual clutter
  without interactive action.
- Remove read-only Current Values table (40+ internal environment variables)
  that duplicated structured settings cards above it.
- Keep Advanced Raw .env Editor cleanly collapsed under <details> at the
  bottom for advanced diagnostics and manual overrides.
- HTTP_READ_TIMEOUT row cleanly placed in Gateway Settings card.
- Rebuild embedded dist bundle and pass all settings e2e tests.
Copilot AI balanced review requested due to automatic review settings September 4, 2026 11:34

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

- Model locking and allowlists are already fully managed interactively
  per account on the Tokens page (MODEL_LOCKS).
- Remove redundant ModelRoutingSettings card from Settings page.
- Keep Advanced Raw .env Editor collapsed at the bottom for manual overrides.
…s page

- Incorporate Command Center (Restart Gateway & Check Updates).
- Keep ModelRoutingSettings, Container Bootstrap Notice, and Current Values
  removed.
- Maintain HTTP_READ_TIMEOUT row and collapsed Raw .env editor.
@trefeon
trefeon merged commit a5482a8 into main Sep 4, 2026
5 of 6 checks passed
@trefeon
trefeon deleted the feat/clean-settings-ui branch September 4, 2026 11:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants