The 2026-06-06 normalization sweep (3f9a89b, 283 files) prepended a stray permalink-only frontmatter block to 39 memory files, 20 of them session wrap records. Any real frontmatter parser reads the FIRST block, gets `permalink` alone, and never sees name/description/type. The sharp case: `strip_frontmatter` exists specifically to stop thread extraction from matching inside `description:` — its docstring says so. On those 20 wrap records it strips the stray block and hands the real frontmatter back AS BODY, producing exactly the condition it was written to prevent. Repair merges permalink into the real block and drops the duplicate. Nothing retyped: frontmatter and body are carried as slices, body md5 asserted unchanged. TWO DEFECTS OF MY OWN, both found only after claiming success: 1. THREE FILES DAMAGED BY THIS SESSION'S OWN STAMPING COMMIT (ef6fa94). That script located frontmatter with a non-greedy `^---\n.*?\n---\n`, which on a stray-block file matches the STRAY block — so it appended superseded_by to the wrong block and orphaned the real frontmatter into the body. That is the same non-greedy-first-block blindness diagnosed in strip_frontmatter one hour earlier, reproduced in the tool written to clean up after it. And the post-stamp check reported "malformed: none" because it asked "does the file start with frontmatter then a banner" — true for all three — while the claim was "the stamp preserved the record's metadata". The control's subject was adjacent to the claim's, for the sixth time today and the first time in my own verification. Repaired, verified against the pre-stamp file from git: no key lost, prose preserved. 2. REPAIRING 20 APRIL-MAY WRAP RECORDS MOVED THEIR MTIMES TO TODAY, and `sec_pause` picked "newest wrap" by mtime — so the digest promoted an April session to `Last wrap` and lost both the pulling thread and the open question. Caught by the DEGRADED section, which is the honest-degradation mechanism doing its job. `sec_pause` now selects by git add-time, like `wrap_events`. Residual stated in the comment: add-time lags the wrap by hours, so `Last wrap` is an upper bound — wrong by hours where mtime was wrong by months. Verified after: 0 two-block patterns, 0 orphaned frontmatter, 16 stamps intact with name: present, 381 pointers resolve, 0 dead, selftest PASS, drift clean, digest reports 0 degraded sections and the correct last wrap. Not defects: context-discipline.md and relational-gap-analysis.md use the `title:`/`type: note` convention and have no `name:` — flagged by my check, correct as they stand. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013Y6t6qx7cpaCu5xGdD36u4
61 lines
4.7 KiB
Markdown
61 lines
4.7 KiB
Markdown
---
|
|
name: ARC 404 page — design + build pending
|
|
description: Surfaced 2026-05-03 during _layout.scss SCSS audit — the .wrapper.not-found CSS rule was dead code (no template, no build path, no class application), but ARC genuinely needs a 404 page. Existing content/404.md is Jekyll-era leftover. Need: ARC-voice 404 design + Hakyll build path + template.
|
|
type: project
|
|
originSessionId: 8d9ac240-47df-4578-aec1-a9dd32965027
|
|
permalink: claude-memory/project-arc-404-page-design-pending
|
|
superseded_by: project-arc-open-work-register.md
|
|
superseded_on: 2026-08-17
|
|
---
|
|
> **SUPERSEDED 2026-08-17.** Register E3 → `[DONE—retire]` **[verified 2026-06-11]** — this file predates §VII.h; content/404.md and the built 404 conform exactly.
|
|
>
|
|
> Current record: **project-arc-open-work-register.md**. Kept for detail and provenance — do not read the
|
|
> status below as live.
|
|
|
|
# ARC 404 page — design + build pending
|
|
|
|
**Surfaced:** 2026-05-03 during `_layout.scss` SCSS audit. The `.wrapper.not-found` CSS rule (~50 lines including dark-mode override) was dead code — no template, no `site.hs` build path, no class assignment anywhere. Removed in audit commit. **Side finding**: the gap is real. ARC has no 404 page.
|
|
|
|
**Steward acknowledgment 2026-05-03**: *"So we need to design a 404 page…"*
|
|
|
|
## What exists currently
|
|
|
|
- `content/404.md` — Jekyll-era leftover content with frontmatter (`title: "Page Not Found"`, `layout: 404`, `permalink: "/404.html"`). Body has a `# 404` heading, a poetic blockquote, some content. Not built by current Hakyll `site.hs` (no rule processes it). Effectively orphaned.
|
|
- `_layout.scss` had a `.wrapper.not-found` rule (now removed) — display-large h1 (5rem), centered layout, dark-mode color override. Dead code; selector never applied anywhere.
|
|
|
|
## What's needed
|
|
|
|
1. **ARC-voice content** for 404 — quiet, contemplative, acknowledges absence without performance:
|
|
- Possibly Latin (the site's register; *non est inventus* / *nusquam*)
|
|
- English short prose with a graceful return path
|
|
- Could lean into the *Animal Rationis Capax* posture: even being-lost is part of the search
|
|
- Might use a quiet ornament or §IV Pause/Close moment when designed
|
|
2. **Template** — `templates/404.html` or similar; renders with site header/footer; no breadcrumb (since the user is by definition off-path)
|
|
3. **Build path in `site.hs`** — process `content/404.md` (or replacement) into `_site/404.html`
|
|
4. **Server config** — CloudFlare Pages will use `_site/404.html` automatically as the 404 page if it exists at the root; verify via test
|
|
5. **CSS** — minimal; depending on the design decisions, may not need a dedicated `_404.scss` partial. The previous `.wrapper.not-found` over-specified things that the existing site rules already handle.
|
|
|
|
## Design questions for the steward
|
|
|
|
- **Voice register** — academic Latin, contemplative English, mixed?
|
|
- **Length** — single line of prose, short paragraph, brief poem-like fragment?
|
|
- **Visual treatment** — quiet h1 (per §I.d scale), or display-size deviation (the previous 5rem)? Honest read: respecting the §I.d scale is more consistent; display-size was probably an accidental "404 should be big" reflex
|
|
- **Return path** — link to home? link to Reading Compass? Multiple paths?
|
|
- **Ornament** — none, or use the (eventually-designed) §IV Close ornament as the gesture-of-completion-even-in-absence?
|
|
- **Latin or English first?** — ARC's typography page uses English-first; bio is English; a Latin 404 could be the one place where the site's Latin name (Animal Rationis Capax) speaks plainly to a lost reader
|
|
|
|
## Sequencing
|
|
|
|
Not urgent — site works without 404; users hitting non-existent URLs see browser-default or CDN-default 404 page. But meaningful: the 404 is one of those *quiet places where the site speaks to the lost reader*, and an ARC 404 should be considered carefully (Bringhurst-discipline applies even — perhaps especially — to the page no one means to find).
|
|
|
|
Best moment: a small focused session (1-2 hours including content draft + template + build path + test). Could pair naturally with:
|
|
|
|
- The colophon rewrite (also pending — both are about-page-adjacent, both speak in ARC's voice to the reader)
|
|
- The §IV Pause/Close ornament design (404 might be the one place the Close ornament makes most sense — the *finis* of an unintended journey)
|
|
|
|
## Cross-references
|
|
|
|
- `content/404.md` — orphaned content; review or replace as part of this work
|
|
- `_layout.scss` audit commit — removed the dead `.wrapper.not-found` CSS
|
|
- `project-arc-pause-close-ornament-and-hr-audit-pending.md` — the §IV ornament question; 404 is a candidate context for the Close ornament
|
|
- The eventual colophon rewrite — adjacent voice work |