Hmbown/CodeWhale · warning · Error
HTTP ${res.status}
Error message
HTTP ${res.status} What it means
Startup warning that the theme named in settings could not be resolved/loaded by palette::resolve_theme_setting, so the System theme is used instead (the background_color override is still applied on top). Unknown theme names are normally normalized to "system" by Settings::load, so this fires when a value survives normalization but still fails resolution - typically a custom theme whose definition cannot be loaded or parsed.
Source
Thrown at crates/tui/src/runtime_mobile.html:325
}
function headers(extra = {}) {
const out = Object.assign({ "Content-Type": "application/json" }, extra);
if (token()) out.Authorization = "Bearer " + token();
return out;
}
async function api(path, options = {}) {
const res = await fetch(path, Object.assign({}, options, {
headers: headers(options.headers || {})
}));
if (!res.ok) {
let detail = await res.text();
try {
const parsed = JSON.parse(detail);
detail = parsed.error?.message || detail;
} catch (_) {}
throw new Error(detail || ("HTTP " + res.status));
}
if (res.status === 204) return null;
return res.json();
}
function escapeHtml(raw) {
return String(raw).replace(/[&<>"']/g, (char) => ({
"&": "&",
"<": "<",
">": ">",
"\"": """,
"'": "'"
}[char]));
}
function eventPayload(data) {
return data && typeof data === "object" && "payload" in data ? data.payload : data;
}View on GitHub (pinned to 0c42157ee5)
Solutions
- Set theme back to a known value ("system") in settings to confirm the cause
- Restore or fix the custom theme definition that the ({error}) names, then relaunch
- After upgrading, check the available theme list for renamed/removed themes and update settings.theme accordingly
Example fix
# before (settings.toml) theme = "custom-ocean" # after theme = "system"
Defensive patterns
Strategy: validation
Validate before calling
// Resolve the theme explicitly at startup and fall back on error.
match palette::resolve_theme_setting(&settings.theme, background) {
Ok(resolved) => use_theme(resolved),
Err(err) => {
warn_user(format!("theme '{}' unavailable: {err}", settings.theme));
use_system_theme_fallback();
}
} Prevention
- Pin only built-in theme names in dotfiles
- Keep custom theme files under version control so breakage is visible
- Re-validate custom themes after every codewhale upgrade
When it happens
Trigger: settings.theme references a custom/registered theme whose files are missing, unreadable, or fail palette parsing; a codewhale upgrade removed or renamed a built-in theme id; the theme-plus-background combination yields an invalid palette.
Common situations: Custom theme directory moved or deleted; broken dotfiles symlink after re-cloning; upgrading codewhale dropped an old theme id that settings still pin.
Related errors
- unsupported theme '{other}'
- pipeline(): expected an array of items
- pipeline(): max 1000 items per call
- telemetry permission is no longer enabled
- invalid theme '{value}'
AI-assisted analysis of Hmbown/CodeWhale@0c42157ee5 (2026-08-20).
Data as JSON: /api/errors/f85cf021bae2f68f.
Report an issue: GitHub.