Skip to content

feat: refined console theme and complete admin visibility - #209

Merged
HTExplicit merged 1 commit into
mainfrom
feat/console-ui-admin-visibility
Sep 27, 2026
Merged

HTExplicit merged 1 commit into
mainfrom
feat/console-ui-admin-visibility

Conversation

@HTExplicit

Copy link
Copy Markdown
Owner

Summary

Two user-requested changes shipped together: a refined console theme (approved page by page from real
previews), and the removal of every fork-added hiding of information from administrators ("管理员要看得到齐全的
信息"). Downstream API clients receive exactly what they received before. Net: 248 files, +9.7k / −2.0k lines.

1. Console theme (flat_theme_enabled)

  • shadcn-style light and Linear-style dark tokens with an indigo primary (#5E6AD2); refined buttons, inputs,
    selects, checkboxes/radios (forced-colors safe), switches, tables, badges, menus, dialogs, sidebar, KPI cards,
    segmented controls; 0 text-contrast failures across 94 audited page states.
  • CJK font MiSans loaded at runtime from Xiaomi's official web-font service (no font files in the repository);
    CSP style-src + https://font.sec.miui.com, font-src + https://cdn-file.hyperos.mi.com; system fonts
    are the fallback.
  • One selection style in the account modals (brand icons kept), segmented style for either/or choices.
  • Tables wrap instead of hiding columns (data-table / data-column hooks); icon-only row actions with
    tooltips on pointer devices (labels stay visible on touch); native date/time inputs restyled.
  • Accounts table: upstream v0.2.8 default hidden columns again (one-time preference reset, never overridden
    afterwards), all tags shown, quota badge next to the status badge, dates on two lines.
  • Theme off still renders the upstream look.

2. Admin visibility (audit: 45 fork-added hidings restored)

  • Ops: upstream original messages/bodies for rejected requests, continuation failures (with bounded raw
    diagnostics), WS failures (lost markers restored), stream error chunks, model_not_supported, budget_exceeded,
    reasoning recovery, image transport errors; refusal-rewrite evidence only on failed requests; client-facing
    fixed messages unchanged.
  • Accounts: extra.last_upstream_error for API-key/OAuth 401/403/429 (async, throttled, scheduler-neutral, no
    scheduling change) shown in the status column and details drawer; model cooldown upstream text.
  • Account jobs: verbatim per-item errors and metadata (no success→failure flips), Codex job facts, import
    preview names/reasons/conflicts/warnings; migration 262 widens job error_message to TEXT.
  • Connection tests: upstream text verbatim everywhere (incl. upstream-inherited truncations), Codex wire
    headers shown (Authorization excluded).
  • Codex: proxy test stage errors and certificates, routing probe/validation upstream errors, request ids, raw
    cookies/STATE/identity ids in the fingerprint panel, real result codes, quality diagnostics readable by all
    admins (grant unchanged).
  • Audit log keeps the system-prompt and Codex proxy/runtime request bodies; retired first-party plugins listed
    read-only; release-acceptance keys visible read-only in admin views; full model catalog; original settings
    errors; multi-captcha warning instead of silent normalisation; retired profit-control values read-only.

Data migration

  • 262: admin_account_jobs.error_message and admin_account_job_items.error_message VARCHAR(512) → TEXT
    (catalog-only change, idempotent, lock/statement timeouts). Applied locally on PostgreSQL 18.1 with all
    migrations.

Verification

  • Local (serialized): go build ./..., go vet -tags=unit ./..., go vet -tags=integration ./...,
    golangci-lint 2.13 ./... → 0 issues; vue-tsc --noEmit; vite build; full backend unit suite (two known
    Windows-only failures unrelated to this change: CRLF instruction fixtures, flaky Ollama CAS test); full
    frontend vitest (377 files, 2891 tests passed).
  • Four independent read-only reviews (gateway, admin, Codex, UI); all findings fixed.
  • Previews: every changed admin surface captured light/dark against production (unmasked), approved by the
    site owner.

🤖 Generated with Claude Code

…mation

Console theme: shadcn-style light and Linear-style dark tokens with an
indigo primary, refined component recipes, MiSans loaded at runtime from
Xiaomi's font service (CSP allows font.sec.miui.com and
cdn-file.hyperos.mi.com; no font files are shipped), one selection style
in the account modals, tables that wrap instead of covering columns,
icon-only row actions on pointer devices, restyled date inputs, and the
upstream default columns in the accounts table.

Admin visibility: every fork-added hiding from administrators is removed
(Ops upstream messages and diagnostics, restored WS failure markers,
last upstream error and cooldown text, verbatim account-job results and
import reasons, verbatim connection-test errors, Codex proxy/routing
details, audit bodies, retired plugins, release-acceptance keys, full
model catalog, original settings errors). Downstream clients receive the
same responses as before. Migration 262 widens account-job error_message
to TEXT.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@HTExplicit
HTExplicit merged commit 9d7c943 into main Sep 27, 2026
18 checks passed
@HTExplicit
HTExplicit deleted the feat/console-ui-admin-visibility branch September 27, 2026 03:08
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.

1 participant