Skip to content

Consolidate brand mark to one geometry; fix drift from amicode's redesign - #7

Merged
kateebonner merged 2 commits into
local/amicodefrom
kate/mark-drift-fix
Jul 9, 2026
Merged

kateebonner merged 2 commits into
local/amicodefrom
kate/mark-drift-fix

Conversation

@kateebonner

@kateebonner kateebonner commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Summary

logo.tsx's Mark/Splash still rendered the old "digi" pixel-accented robot after amicode redesigned its own mark (amicode PR #99). The comment here promised the two would be "kept in sync manually" (patch #8) — that promise had already silently failed by the time it was checked.

Turns out there were two independent copies of near-identical geometry already living in this repo:

  • logo.tsx's Robot (full "digi" variant: fixed #0A0A0A display rect + #FFF676 pixel-pattern glyphs)
  • spinner.tsx's AmicoSpinner (a simpler evenodd silhouette, no color accents)

Plus a third copy in the favicon SVG (the "digi" variant again, on a yellow chip background) — a static asset that can't import either.

Fix

  • Extracted AmicoSpinner's simpler path as MARK_PATH, exported from logo.tsx. Robot now renders it directly; AmicoSpinner imports it instead of carrying its own literal.
  • Favicon updated to the same simple path (kept as a literal + a comment pointing at MARK_PATH, since a static SVG can't import a TS module).
  • Chose the simple silhouette over porting in amicode's new detailed mark: Mark/Splash render from 12px (enterprise share page) up to 144px (session-new-design-view) across this codebase. Per amicode PR fix(chat): pending shell row stops impersonating an error; chips survive a shell-driven session #99's own findings, fine pixel detail only resolves above ~64px — using the new detailed mark at the small end would reintroduce the exact legibility problem amicode flagged as a known limitation in its own tab icon.
  • This does not re-establish a cross-repo sync promise — MARK_PATH is now the single source of truth within this repo, independent of whatever amicode's mark does next.

Full details, including the exact verification greps, in AMICODE-PATCHES.md entry #15.

Test plan

  • bun test src (packages/ui) — 95 pass, 0 fail (unchanged — no test asserted the old geometry)
  • bun turbo typecheck — full 23-package monorepo typecheck green (ran automatically via pre-push hook)
  • bun run --cwd packages/app build — verified via grep that dist/assets/home-*.js and dist/assets/index-*.js both contain the unified path; zero hits for the old #0A0A0A marker anywhere in dist/assets
  • Live vite preview serve: GET / → 200 <title>Amicode</title>; GET /amico.svg → 200
  • Full native bun run script/build.ts compile + vendored-binary swap + dev-host acceptance on port 43117 — deferred to whoever cuts the next amicode.N release tag (same split as patch Fix chat scroll jitter during streaming; respect reduced motion #11's release-prep), since this patch only rebuilds the embedded web UI, not the binary

Update: Meet Amico card uses the detailed mark

Added MarkDetailed (packages/ui/src/components/logo.tsx) — the richer circuit-pattern H-robot from amicode's PR #99 redesign, wired to currentColor/var(--icon-strong-base) so it stays theme-adaptive in this live webview (unlike amicode's VS Code tab icon, which needed separate light/dark files since a native tab icon has no live CSS context).

Scoped to just the Meet Amico card (home-cards.tsx, w-12 / 48px) — every other Mark/Splash call site stays on the simple silhouette (MARK_PATH) per the legibility findings above (12-40px range, below where the detailed mark's pattern resolves).

Re-verified: bun turbo typecheck (full 23-package monorepo, via pre-push hook) green; bun test src (ui) 95/95 pass; rebuilt packages/app and confirmed via grep that the detailed mark's path landed in the built bundle (hoisted to the shared main chunk, same as AmicoSpinner's precedent) while the simple MARK_PATH remains for every other call site.

@kateebonner
kateebonner force-pushed the kate/mark-drift-fix branch from a59265f to d31cb88 Compare July 9, 2026 03:14
…99

The fork rendered the old "digi" pixel-H mark in four independent copies
while amicode redesigned its mark (PR #99). This unifies them to a single
MARK_PATH and syncs the geometry to #99's FINAL square mark (viewBox
0 0 3600 3600) — not the intermediate "hackathon" geometry an earlier
draft of this branch had copied, which #99 itself later abandoned.

- logo.tsx: MARK_PATH = amico_reduced.svg's outer-bracket path (fill-rule
  evenodd). Mark/Splash render it; viewBox 64x56 → 3600 square.
  MarkDetailed = amico.svg's full mark (bracket + internal accents),
  viewBox 116 287 3377 3035 → 3600 square, for the Meet Amico card only.
- spinner.tsx (AmicoSpinner) + run-card.tsx (share-card SVG) both now
  import MARK_PATH instead of carrying their own copies — run-card was a
  fourth private copy of the old glyph; its transform is recalibrated
  (scale 0.55 → 0.011) for the 3600-unit space.
- favicon/amico.svg: reduced bracket on the yellow chip, viewBox 3600,
  path kept byte-identical to MARK_PATH.
- logo.css: aspect-ratio 8/7 → 1/1 (mark is square now).
- Small contexts use the reduced mark, the Meet Amico card uses the
  detailed one — matching amicode's own small/large split.

Rebased onto local/amicode (picks up PR #8; AMICODE-PATCHES.md conflict
resolved, entry 15 rewritten for the final geometry).

Checks: bun turbo typecheck (ui+app) green; ui bun test src 95 pass;
app vite build clean — new mark path in the bundle, old geometry and the
64x56 viewBox gone (0 chunks), favicon carries the new path.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@kateebonner
kateebonner force-pushed the kate/mark-drift-fix branch from d31cb88 to 5e27881 Compare July 9, 2026 03:17
The reduced bracket is right for small chrome (titlebar, footer, tiny
fallbacks), but the large brand-hero contexts should show the full mark.
Switch to MarkDetailed at:
- the new-session / main chat landing hero (both the v2 design view,
  144px, and the classic view, 112px)
- the onboarding wizard welcome step (56px)
The wizard's tiny 36px affiliation-logo fallback stays on the reduced
Mark (below where the internal accents resolve).

Checks: typecheck (ui+app) green; ui bun test src 99 pass; app build
clean with the detailed-mark accents present in the bundle.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@kateebonner
kateebonner merged commit 7c72d72 into local/amicode Jul 9, 2026
0 of 4 checks passed
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