Skip to content

Refresh cead's assets: Irish accents, feathered Ogham mark, SVG lockups - #3

Merged
1zeroone0 merged 6 commits into
mainfrom
irish-palette
Sep 26, 2026
Merged

1zeroone0 merged 6 commits into
mainfrom
irish-palette

Conversation

@1zeroone0

@1zeroone0 1zeroone0 commented Sep 26, 2026 •

Copy link
Copy Markdown
Owner

What this PR does

A fresh asset set that matches cead's Irish name and Ogham mark.

  • Accents: a deep forest green and a burnt orange, the tricolour's hues kept muted and matte.

    Role Before After OKLCH (L, C, h)
    lichen (permit) #5f7a45 #2f5f43 0.45, 0.07, 155
    iron (forbid) #b3402f #a95a27 0.55, 0.12, 50
  • The mark: Ogham c, e, a, d on its original grid (20 px strokes, 44 px pitch), the stem trimmed to the lettering and closed with feather marks (᚛ ᚜) as in manuscript Ogham; the green a stroke runs unbroken across the stem. Groups keep Ogham's even rhythm rather than sitting over their Latin letters.

  • Lockups are SVG and are their own source: the mark is rects and lines, the letters are traced from the previous raster.

    • lockup.svg, lockup-light.svg: the README's stacked lockup for dark and light themes, switched with <picture>. Before, the stone letters vanished on GitHub's light theme.
    • lockup-source.svg: stacked, stone on slate, no accents, for places that cannot render color (a terminal).
    • lockup-source-color.svg: the same with accents.
  • palette.png, terminal-mockup.png regenerated in Fira Code with current vocabulary: verdicts permit/forbid (CODE.md), the shell prompt [step 12/100] (Loop: one machine, one process, done #8), "process" for "node"; the header mark is stone-only.

  • Caption: the name's gloss becomes a centered caption under the lockup instead of a dangler after the opening paragraph.

What this PR does not do

  • Commit a generator. The SVGs are hand-editable sources; the two PNGs are mockups, regenerated by a one-off script.
  • Match the old monospace face exactly (it was JetBrains Mono or similar, not installed); Fira Code is used throughout.
  • Rename the swatches (lichen, iron).

Merge requirements

  • Operator approves the README top on GitHub in light and dark mode. Known tradeoff: forest green on dark grounds is 2.5:1 contrast (the permit word in the mockup).
  • Every asset uses the new accents; no PNG lockup remains.

🤖 Generated with Claude Code

1zeroone0 and others added 2 commits September 26, 2026 16:30
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@1zeroone0

Copy link
Copy Markdown
Owner Author
  1. Built — accents recolored in three PNGs: pixel blend-solve against the ground, then re-blend with the new accent; hex labels spliced from existing glyphs.
  2. Why — flag hues, muted chroma, deeper per review. Rejected: a generator script (maintenance with no source to generate from); re-rendering labels with a guessed font.
  3. Bloat — lockup's second iron merged into one.
  4. Drift — palette.png is the only place hex values live; updated.
  5. Trust surface — checked by pixel diff (changes confined to accent regions, no old accent left) and by eye at zoom. No automated check.
  6. How it breaks — GitHub dark mode: green on dark ground is low contrast (2.5:1). Future edits need the same one-off approach until there's a vector source.
  7. Not confident — merging the lockup's darker iron; green lightness on dark grounds.
  8. Verify yourself — README lockup in GitHub dark mode; cead green in terminal-mockup.png.
  9. Next steps — finished pending hue approval.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@1zeroone0

Copy link
Copy Markdown
Owner Author
  1. Built — in lockup.png, the stem rows under the green a stroke are painted with the stroke's own column, composited over the stem so the edges keep their antialiasing.
  2. Why — the accent stroke should read as one continuous mark; white e strokes merge with the white stem, so only the green one needed it.
  3. Bloat — none added; one file changed.
  4. Drift — PR description updated.
  5. Trust surface — checked by eye at 4× zoom on a dark ground. Only rows 170–189, columns 588–611 changed.
  6. How it breaks — the orange d strokes sit above the stem and touch it; they were not changed. If you want those in front too, same fix.
  7. Not confident — nothing specific.
  8. Verify yourself — the lockup on the README in GitHub dark mode.
  9. Next steps — finished; ready for review.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@1zeroone0

Copy link
Copy Markdown
Owner Author
  1. Built — the Ogham row of lockup.png redrawn from measured geometry: stem trimmed and centered, feather marks drawn supersampled and composited over; lockup-light.png is the same drawing with stone mapped to ink; README switches between them with <picture>.
  2. Why — option A (keep Ogham's rhythm) over aligning groups to Latin letters, which would break the script's even spacing. Feathers: historically accurate for the manuscript line, and they read like a cursor.
  3. Bloat — one new asset, required for light mode; no scripts committed.
  4. Drift — PR description rewritten to the current scope; lockup-source and the mockup's small mark noted as not updated.
  5. Trust surface — checked by eye on GitHub's dark (#0d1117) and white grounds; zero stone pixels remain in the light variant. <picture> rendering on GitHub not yet seen.
  6. How it breaks — GitHub mobile or other renderers that ignore <source media> fall back to the dark variant, which is invisible on white.
  7. Not confident — feather size and angle; stem length (feather tips extend 20 px past the lettering).
  8. Verify yourself — the PR's README preview in both GitHub themes.
  9. Next steps — finished; ready for review.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@1zeroone0 1zeroone0 changed the title Shift the accents to Irish-flag green and orange Refresh cead's assets: Irish accents, feathered Ogham mark, SVG lockups Sep 26, 2026
@1zeroone0

Copy link
Copy Markdown
Owner Author
  1. Built — four SVG lockups (mark from its grid, letters traced with potrace at 4× from the old raster); palette and terminal mockup regenerated in Fira Code.
  2. Why — SVG makes the lockup its own source, which ends the raster patching; PNG stays for the two text mockups.
  3. Bloat — three PNG lockups deleted; four SVGs added, each a distinct use (dark, light, mono source, color source).
  4. Drift — mockup vocabulary aligned with CODE.md and Loop: one machine, one process, done #8; README points at the SVGs.
  5. Trust surface — each SVG rasterized with resvg and checked by eye on GitHub's dark and white grounds. Not seen on GitHub itself.
  6. How it breaks — traced letters are a close approximation, not the original font; a renderer ignoring <source media> shows the dark lockup on white.
  7. Not confident — palette descriptions' wording; whether the stone-only header mark in the mockup is what you meant for terminals.
  8. Verify yourself — the README preview in both themes; terminal-mockup.png.
  9. Next steps — finished; ready for review.

@1zeroone0
1zeroone0 marked this pull request as ready for review September 26, 2026 23:49
@1zeroone0
1zeroone0 merged commit e2c0955 into main Sep 26, 2026
@1zeroone0
1zeroone0 deleted the irish-palette branch September 26, 2026 23:53
1zeroone0 added a commit that referenced this pull request Sep 28, 2026
## What this PR does

Settles how cead is built before the first code, from scoping the first
PR (the old loop PR, whose intent is now a Horizon comment on #7).

- **One method.** CODE.md is reorganized as method, vocabulary,
languages. TLA+ specifies the system, Lean a core function, Rust is the
system: one pipeline of spec → slice → core → skeleton → fill. The
system spec (`spec/cead.tla`) comes first and is revisable: when code
disagrees, the spec changes in that PR. A moved signature is learning,
stated in the commit comment; a new capability is drift.
- **Spec, not model.** The artifact before the skeleton is a *spec*;
"model" collided with the LLM.
- **Frontier and claim.** Placeholders (`todo!`, `unimplemented!`,
`unwrap`, `expect`, `#[ignore]`) are the frontier, zero at merge.
`unreachable!()` and `#[expect(lint, reason)]` are claims review reads.
`#[allow]` is denied. Frontier lints warn, so a draft compiles and
`cargo clippy --all-targets -- -D warnings` fails until filled. Tests
unwrap through `clippy.toml`, not attributes. The toolchain pins clippy.
- **Types as schema.** The five language-enforced invariants and the
"does it still compile?" test for what is a choice, written down as
priors.
- **Probe, then wrap.** Dependencies are probed while scoping, findings
in a PR comment, probe never committed. A dependency's types stay inside
its boundary module.
- **Vocabulary as a table.** Every noun has one home in code (type,
module or crate, binary); a noun may precede its home; no home without a
noun.
- **AGENTS.md.** End-to-end tests first, ending in a checkable,
re-runnable artifact. Branches name the change, not the thing changed.
Only Horizon and PRs in progress are open. The squash trade is stated;
`gh land` now keeps each PR's comment thread as a git note in
`refs/notes/pr` (backfilled for #3, #4, #6). The
one-measurement-per-milestone line is removed: "a system that can
disagree with us" already says it.
- **`done` → `finish`.** `done` is a POSIX shell keyword (`bash -c 'done
x'` is a syntax error), so the call could never run. `finish` is
process-shaped: like gdb's, it returns a frame's value to its caller.

## What this PR does not do

- Write any spec or code; `initial-spec` is next (Horizon).
- Re-cut the rest of Horizon; that is a merge requirement of
`initial-spec`.
- Change `gh land` itself in the repo; it lives outside it.

## Merge requirements

- [x] `cargo clippy --all-targets -- -D warnings` green on the empty
crate with the new lints.
- [ ] Roone has read CODE.md end to end and it reads as one document.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
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