219 files, 2.0 MB, untracked in souveraine/docs and existing nowhere else. The volume is at 100% with no snapshots.
3.1 KiB
| task_id | title | status | assignee | priority | phase |
|---|---|---|---|---|---|
| strip-emojis-001 | Strip Emoji from Logs and Code | pending | medium | hygiene |
Task: Strip Emoji from Logs and Code
Objective
Remove pictographic emoji from the codebase — both from log output (they end
up in souveraine.log) and from source files generally. Casey's call: the
emoji are noise. Code and logs should read plain.
Why
souveraine.logcarries emoji emitted bytracingmacros (e.g.🔢,🌉,🧠). Logs are read in terminals, grepped, pasted into issues — emoji break alignment, confuse search, and add nothing a word doesn't.- Source files have emoji in string literals, comments, and UI labels.
- This is a hygiene pass, not a feature. It should be mechanical and reviewable.
Scope
In scope — remove
- Emoji in
tracing::{info,warn,error,debug}!messages and any other log/print output. Replace with plain words. - Emoji in string literals surfaced to the user (CLI prints, screen titles,
menu labels — e.g.
app.rs"⏰ Agent Time"). - Emoji in code comments and doc comments.
Out of scope — leave alone
- Functional TUI glyphs. The cockpit prefixes (
◈ ◉ ◆ ▲), box-drawing (── │ ╮), and similar geometric/dingbat characters are deliberate terminal UI design, not emoji. They render as single-width glyphs and carry meaning in the layout. Do not strip these. ⚡(high-voltage) — used as the inference-strain glyph; borderline. Decide per-site: if it's a TUI status glyph, keep; if it's decoration in a log line, drop.- Memory/
docs/prose authored by the agent — her memfs is hers.
The line: pictographic emoji = remove. Structural/geometric UI glyph = keep.
Approach
- Survey — find pictographic-range characters in
src/:
and inspect each hit. The Unicode ranges above are pictographic; the geometric-shape range (grep -rlP '[\x{1F000}-\x{1FAFF}\x{2600}-\x{27BF}]' src/\x{25A0}-\x{25FF}) where◈ ◆live is intentionally excluded so functional glyphs aren't swept up. - For log/print sites: replace the emoji with a plain word or nothing.
- For UI labels: drop the emoji, keep the text.
- For comments: drop the emoji.
cargo build+cargo testclean afterwards. No behavior change intended.
Files (initial survey — verify before editing)
src/core/sensorium/mod.rs, src/main.rs, src/ui/cockpit_panel.rs,
src/core/voice/client.rs, src/ui/schedules.rs, src/core/tools/mod.rs,
src/ui/settings.rs, src/bridge/model_router.rs, src/core/compact/strategy.rs,
src/core/identity/seed.rs, src/ui/health_panel.rs, src/ui/animation.rs,
src/ui/chat.rs, src/bridge/bifrost.rs, src/cli/commands.rs,
src/tui/components/sidebar.rs, src/backend/local.rs, src/ui/app.rs.
(src/ui/chat.rs.new and other chat.rs.* stray files are untracked working
copies — ignore or delete them, don't edit.)
Notes
- This task exists because emoji kept creeping into new code. Worth a short note
in
CLAUDE.mdconventions: log/print/comment text is plain; only the TUI's deliberate geometric glyph set is allowed, and that set is fixed.