CI / lint (push) Successful in 4s
Build images / sign-extension (push) Successful in 4s
CI / extension-version (push) Successful in 3s
Build images / build-ml (push) Successful in 9s
Build images / build-agent (push) Successful in 10s
CI / frontend-build (push) Successful in 24s
CI / backend-lint-and-test (push) Successful in 35s
Build images / build-web (push) Successful in 1m50s
Build images / smoke-web (push) Skipped
Build images / promote (push) Skipped
CI / integration (push) Successful in 3m5s
Replaces the placeholder folder glyph with the new logo: a white-gloved hand presenting a framed work, which says what the app is for far better than the old mark did. Two assets, because one cannot serve both jobs. Measured, not assumed: rendered at 22px the full logo is unreadable mush, so favicon.svg stays a separate, much simpler mark. logo.svg — traced from the source raster with potrace, then repainted from the design tokens. Segmentation notes, since this is the part that is easy to get wrong on a re-do: hue does NOT separate the glove from the frame's highlights (both sit near 38 degrees) and neither does saturation alone. The split is a connected-component fill seeded inside the cuff, dilated first so it can cross the dark outline strokes that cut the fingertips off from the palm. The source plate was a warm brown (#1B1105), not the app's cool obsidian (#14171A) — side by side it read as a logo sitting on its own warmer card. It is dropped entirely: the mark is transparent and the frame interior shows whatever surface hosts it. The source gold was #AA7E39, which is within a couple of points of accent.curator #A87338 — so the mark now shares one colour with nav-active text and the wordmark rather than nearly sharing it. The glove goes to text.parchment for the same reason. favicon.svg — hand-drawn rather than traced. At 16px a traced mark carries hundreds of wobble nodes that read as fuzz and can never be tidied. Ring + frame + star merged into a blob at that size, so it keeps two elements: the frame and the star. Frame over a plain ring because it carries the meaning, and it is the full logo's own centrepiece; the glove, cufflink, finials and sparkle rays are deliberately absent rather than drawn and lost. The favicon keeps its obsidian plate so the tab icon is self-contained against any browser chrome; on the nav that plate is invisible because it matches --fc-chrome-rgb exactly. logo.svg has no plate at all. Both files carry a comment explaining why they are shaped this way, so the next edit does not undo the reasoning. The old favicon is one revert away in history. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LNXXULQDjVZmbuNa2G9mD9