Skip to content

chore(frontend): post-redesign polish, Read-next fix, and convergence cleanup#11

Merged
Koopa0 merged 6 commits into
mainfrom
chore/polish-and-convergence
Jun 28, 2026
Merged

chore(frontend): post-redesign polish, Read-next fix, and convergence cleanup#11
Koopa0 merged 6 commits into
mainfrom
chore/polish-and-convergence

Conversation

@Koopa0

@Koopa0 Koopa0 commented Jun 28, 2026

Copy link
Copy Markdown
Owner

Follow-up to the editorial redesign (#10): user-facing fixes from live review + the convergence/debt items surfaced in the state report.

Fixes (user-facing)

  • Masthead pill "the work" → "articles".
  • More breathing room between the type filter and the first year mark on the articles / topic-detail date-spine.
  • Read-next titles were white/invisible on the paper theme — the related-articles component still used the Tailwind text-fg utility (the @theme --color-* indirection, which resolves to the global admin-dark token) instead of the redesign's raw var(--fg) scope. Rewritten in the editorial .ed-rn-* grammar with explicit tokens + Newsreader serif, plus an sr-only type label.

Convergence / debt

  • Remove the post-redesign orphaned shared components (post-row, table-of-contents, skeleton — grep-verified zero usage) and the two stale app-table-of-contents assertions.
  • Remove the unused gsap / lenis deps (the load orchestration is pure CSS).
  • Migrate the topics page to rxResource (the last public list on manual subscribe) and add topics.spec.ts (it had no test). topic-detail + search intentionally stay on manual subscribe (search's debounce/switchMap is the sanctioned Observable use).

Not in this PR (flagged)

  • Other public components (theme-toggle, command-palette, toast, back-to-top) still use Tailwind color utilities that go through the same @theme indirection — they may not pick up the .ed paper palette. Needs a runtime eyeball before deciding whether to convert them or switch the color tokens to @theme inline.
  • Doc fixes to the gitignored CLAUDE.md / frontend/CLAUDE.md (removed the false "classify/tag-normalize/grade" AI-pipeline claim + the genkit-go reference; rewrote the stale Angular-21 frontend doc) are local-only and not in this diff.

Test Plan

  • tsc ✅ · ng lint ✅ · ng build ✅ (initial 581.92 kB, under budget) · ng test586/586 across 84 files (−3 deleted orphan specs, +1 new topics spec).

Koopa0 added 3 commits June 28, 2026 19:18
…on paper

- Rename the masthead pill "the work" → "articles" (label + computed; active
  logic unchanged).
- Add breathing room between the type filter and the first year mark on the
  articles / topic-detail date-spine (not search, where a count hugs the rows).
- Read-next (related-articles) titles rendered white/invisible on the paper
  theme: the component still used the Tailwind text-fg utility (the @theme
  --color-* indirection) instead of the redesign's raw var(--fg) scope. Rewrite
  it in the editorial grammar (.ed-rn-* with explicit tokens + Newsreader serif)
  and add an sr-only type label.
Grep-verified zero-usage cleanup after the editorial redesign — no behaviour
change:

- Delete the unreferenced shared components post-row, table-of-contents, and
  skeleton (the redesigned pages render their own .ed-* row grammar). Drop the
  two now-pointless app-table-of-contents null assertions in article-detail.spec.
- Remove the unused gsap and lenis dependencies (the redesign's load
  orchestration is pure CSS; neither is imported anywhere).
topics was the last public list still on the manual signal+subscribe pattern and
had no test at all. Switch it to rxResource read through .hasValue()/.status()
guards (the mandated GET-read pattern, avoiding the value()-throws gotcha), and
add topics.spec.ts covering the title, the topic rows + links, and the empty /
error states.

(topic-detail and search stay on manual subscribe: search's debounce/switchMap
is the sanctioned Observable use, and topic-detail's filter + pagination +
dual-resource wiring is working and tested — migrating it is risky churn for
marginal gain.)
@augmentcode

augmentcode Bot commented Jun 28, 2026

Copy link
Copy Markdown
🤖 Augment PR Summary

Summary: Follow-up polish to the editorial redesign, addressing a few live-review UI issues and cleaning up converged/dead code.

Changes:

  • Rename the masthead nav pill from “the work” to “articles”, keeping the same active-route behavior.
  • Fix “Read next” styling on the paper theme by replacing Tailwind color utilities with explicit editorial .ed-rn-* classes/tokens and adding an sr-only type label.
  • Add extra spacing between the type filter and the first year marker on archive/topic feeds.
  • Migrate the public Topics index to rxResource (with guarded hasValue() reads) and add a dedicated topics.spec.ts.
  • Remove orphaned shared components/specs (post-row, skeleton, table-of-contents) and drop stale TOC assertions from article-detail tests.
  • Remove unused frontend deps (gsap, lenis) now that load orchestration is CSS-driven.

Technical Notes: Resource reads are guarded to avoid value()-throw killing error UI; new editorial CSS rules centralize “Read next” presentation and hover/focus behavior.

🤖 Was this summary useful? React with 👍 or 👎

@augmentcode augmentcode Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. No suggestions at this time.

Comment augment review to trigger a new review at any time.

Koopa0 added 3 commits June 28, 2026 19:30
… links

- The public overlays (command-palette, toast, back-to-top, theme-toggle) still
  use Tailwind color utilities (text-fg / bg-panel / …) that resolve --color-*
  at :root, so they rendered as a DARK box on the paper site. Re-declare the
  @theme --color-* aliases (and paper/dark semantic colours) inside the
  .ed / .ed-theme scope so utilities pick up the active public palette; admin,
  outside .ed, keeps the global dark tokens untouched.
- /about "Elsewhere": drop the text handles, keep icon-only links (GitHub /
  LinkedIn / X / Email) with an aria-label and a 2.25rem square hit area.
The §3 mapping and §8 still recorded "delete the 6 dead seeded areas" as a
pending cleanup, but the owner has confirmed there are no default/seeded areas —
the prod areas are owner-curated and correct. Update §3 (drop the dead-area row)
and §8 (areas done; keep the goal-not-project milestone rationale).
Per the owner's decisions, resolved items are deleted (not annotated) — the
contract states current truth, not history:

- §7 Open Questions: drop Feed AI relevance scoring (formally not a feature),
  external schedule-run observability (out of scope), and the project_aliases
  admin surface (stays internal-only). Three genuinely-open questions remain.
- Reconcile the §6 feed row (no AI scoring; recency/priority ordering, score
  field vestigial) and the §3 schedule-run vocabulary (no process_runs backing,
  by decision — drop the dangling open-question pointer).
- para §8: koopa0.dev milestones are added; trim to the goal-not-project rule
  (the area line now lives only in §3).
@Koopa0 Koopa0 merged commit 6a6c19b into main Jun 28, 2026
5 checks passed
@Koopa0 Koopa0 deleted the chore/polish-and-convergence branch June 28, 2026 11:47
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