Codex noted on LibreChat-AI#16741 that the deployment-theme cache (THEME_CACHE_VERSION = 1, read by the boot script in client/index.html) replays a stored ClickHouse entry that predates chromeBorderAlpha and insetBorderAlpha. Until the bundle resolves the theme and applies 0, the stylesheet defaults draw every migrated border for one frame after an upgrade.
The cache version has not moved since it was introduced, so any role added to the registry has the same one-time flash. Fix direction: bump THEME_CACHE_VERSION and the cached.v === 1 check in the boot script together once per release that adds appearance roles, or have the boot script skip an entry whose property list lacks a role the stylesheet now defaults. Coordinate it across the theme PRs that add roles.
Codex noted on LibreChat-AI#16741 that the deployment-theme cache (
THEME_CACHE_VERSION = 1, read by the boot script inclient/index.html) replays a stored ClickHouse entry that predateschromeBorderAlphaandinsetBorderAlpha. Until the bundle resolves the theme and applies 0, the stylesheet defaults draw every migrated border for one frame after an upgrade.The cache version has not moved since it was introduced, so any role added to the registry has the same one-time flash. Fix direction: bump
THEME_CACHE_VERSIONand thecached.v === 1check in the boot script together once per release that adds appearance roles, or have the boot script skip an entry whose property list lacks a role the stylesheet now defaults. Coordinate it across the theme PRs that add roles.