Public: anyone can read this; the crew can change it.

A fork's Following card and its forks lineage speak the home page's language #9912

Merged opened this

Check · Review · Land · Live done — Landed and live in production.

Merged

The Following section and the forks lineage now render as a heading over rows, with no card box. I did not look at the repo page or a phone width in a browser. The tests below and `tsc` pass, and `design-lint` passes.

shipped production is serving it deploy abf00b0

opened this

The Following section and the forks lineage now render as a heading over rows, with no card box. I did not look at the repo page or a phone width in a browser. The tests below and tsc pass, and design-lint passes.

What changed

  • Following section (src/web/pages/following.ts): followingCard now returns <section class="settings-block" id="following"> instead of card(...). It holds the h2 heading (parent link and relation badge), the prose and rows, then the actions in a .bar beneath.
  • Actions: the take, converge and propose forms still post to /following, with the same fields and in the same order.
  • Lineage: lineageCard is a <section> around the same nested ul.list, with the truncation note as plain muted text.
  • bare: the { bare: true } option and the studio call site are unchanged. The option now only drops the top margin and adds a bare class to the section. The box is gone in both places, so studio no longer shows a boxed panel. The studio test now says that.
  • test/following-card.test.ts: it asserts no class="card in the section, and that the take and propose forms still post to /bob/lib/following in the same order.
  • docs/design/areas/family.md: I added a note on the new shape. There is no new class.

Tests

  • following-etag and following-proposals-etag pass unchanged, along with the fork, family and follow suites I ran: 65 tests in one run and 23 in another.
  • scripts/fast.ts called the diff too broad to name tests, so I picked these by hand rather than running the whole suite.

Left alone

  • The #following id.
  • The live and etag behaviour.
  • modeForm.

Try it: open any fork's repo page, /forks on its parent, or the studio app page. Check the repo page and a phone width yourself, since I could not.

🤖 Generated with Claude Code

Closes #9841

commented

The Following section and the forks lineage now render as a heading over rows, with no card box. I did not look at the repo page or a phone width in a browser. The tests below and tsc pass, and design-lint passes.

What changed

  • Following section (src/web/pages/following.ts): followingCard now returns <section class="settings-block" id="following"> instead of card(...). It holds the h2 heading (parent link and relation badge), the prose and rows, then the actions in a .bar beneath.
  • Actions: the take, converge and propose forms still post to /following, with the same fields and in the same order.
  • Lineage: lineageCard is a <section> around the same nested ul.list, with the truncation note as plain muted text.
  • bare: the { bare: true } option and the studio call site are unchanged. The option now only drops the top margin and adds a bare class to the section. The box is gone in both places, so studio no longer shows a boxed panel. The studio test now says that.
  • test/following-card.test.ts: it asserts no class="card in the section, and that the take and propose forms still post to /bob/lib/following in the same order.
  • docs/design/areas/family.md: I added a note on the new shape. There is no new class.

Tests

  • following-etag and following-proposals-etag pass unchanged, along with the fork, family and follow suites I ran: 65 tests in one run and 23 in another.
  • scripts/fast.ts called the diff too broad to name tests, so I picked these by hand rather than running the whole suite.

Left alone

  • The #following id.
  • The live and etag behaviour.
  • modeForm.

Try it: open any fork's repo page, /forks on its parent, or the studio app page. Check the repo page and a phone width yourself, since I could not.

🤖 Generated with Claude Code

Approved

Clean restyle. No security surface changes: same forms, same post targets, output still escaped through html`. Following and lineage are now a heading over rows with no card; no new class; #following` and the etag/live path are untouched. Nit for later: test titles in test/following-card.test.ts still say "with card, row and btn" and "card foot".

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs