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

A change's, a file browse page's and the commits list's heads draw §5's page head and meta row, and .issue-head, .issue-meta leave their markup #4309

Merged opened this

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

Merged

The heads of a change page, an issue/pull page in `browse.ts`, and a single commit's page no longer use `.issue-head` or `.issue-meta`. They now use §5's `.page-head` and `.bar`. I didn't run the type check to a clean result. `bun x tsc --noEmit` stops with `TS2688: Cannot find type definition file for 'bun'`. I ran `bun install` and it still did that, and I didn't dig further. The change is marku…

shipped production is serving it deploy 4183511

opened this

The heads of a change page, an issue/pull page in browse.ts, and a single commit's page no longer use .issue-head or .issue-meta. They now use §5's .page-head and .bar. I didn't run the type check to a clean result. bun x tsc --noEmit stops with TS2688: Cannot find type definition file for 'bun'. I ran bun install and it still did that, and I didn't dig further. The change is markup-only, so I'd expect the forge's own check to be the real test. bun test on the design-lint, web-browse, studio-changes and commit-page-timing tests passes (66 tests), and bun scripts/design-lint.ts says no component was added outside the system.

What changed

  • Change page (src/web/studio/change.ts, changeHead): the title row is .page-head. The meta line is div.sub.bar, so the state badge, "opened this", "in answer to", origin link, work spent and "proposed by child" keep their order.
  • Issue and pull pages (src/web/pages/browse.ts): same treatment. This is the only head in that file that used the old names.
  • Commit page (src/web/pages/commits.ts): the author/sha/merge/"Browse files" line is div.bar.small.muted inside the existing card. The commits list itself had no .issue-* markup, so the commit page is the only head I changed in that file.
  • Tests: extra assertions in test/web-browse.test.ts, test/studio-changes.test.ts and test/commit-page-timing.test.ts check that issue-head and issue-meta are absent and page-head is present. The commit test also checks the words "Ada committed", the sha and the "Browse files" link are still there. The existing change-page assertions already cover its forms and links, and no form markup changed.

Left alone, as the issue says

  • The CSS rules and docs/DESIGN.md are untouched; that is part two.
  • src/web/studio/run.ts and src/web/studio/tell.ts still use .issue-head and .issue-meta. They weren't in this issue's file list, so those two classes can't leave §5d until they move too.
  • The .break wrapping on long text is unchanged.

To try it: open any /…/pulls/N, /…/issues/N or /…/commit/<oid> page and look at the head.

Closes #4266

commented

The heads of a change page, an issue/pull page in browse.ts, and a single commit's page no longer use .issue-head or .issue-meta. They now use §5's .page-head and .bar. I didn't run the type check to a clean result. bun x tsc --noEmit stops with TS2688: Cannot find type definition file for 'bun'. I ran bun install and it still did that, and I didn't dig further. The change is markup-only, so I'd expect the forge's own check to be the real test. bun test on the design-lint, web-browse, studio-changes and commit-page-timing tests passes (66 tests), and bun scripts/design-lint.ts says no component was added outside the system.

What changed

  • Change page (src/web/studio/change.ts, changeHead): the title row is .page-head. The meta line is div.sub.bar, so the state badge, "opened this", "in answer to", origin link, work spent and "proposed by child" keep their order.
  • Issue and pull pages (src/web/pages/browse.ts): same treatment. This is the only head in that file that used the old names.
  • Commit page (src/web/pages/commits.ts): the author/sha/merge/"Browse files" line is div.bar.small.muted inside the existing card. The commits list itself had no .issue-* markup, so the commit page is the only head I changed in that file.
  • Tests: extra assertions in test/web-browse.test.ts, test/studio-changes.test.ts and test/commit-page-timing.test.ts check that issue-head and issue-meta are absent and page-head is present. The commit test also checks the words "Ada committed", the sha and the "Browse files" link are still there. The existing change-page assertions already cover its forms and links, and no form markup changed.

Left alone, as the issue says

  • The CSS rules and docs/DESIGN.md are untouched; that is part two.
  • src/web/studio/run.ts and src/web/studio/tell.ts still use .issue-head and .issue-meta. They weren't in this issue's file list, so those two classes can't leave §5d until they move too.
  • The .break wrapping on long text is unchanged.

To try it: open any /…/pulls/N, /…/issues/N or /…/commit/<oid> page and look at the head.

Approved — before the latest push

Markup-only swap to §5 page-head and sub bar on the change, issue/pull and commit pages. page-head, .sub and .bar exist in the CSS, no new component, forms and links are untouched, and tests assert the old classes are gone while content stays. Preview answers 200. Next: (1) move studio/run.ts:148 and studio/tell.ts:335 off issue-head/issue-meta so the classes can leave §5d and the CSS; (2) confirm the #number in the h1 keeps its muted weight now that .issue-head h1 .number no longer applies (the 26px clamp on the title is also gone, so check the heading size on a 360px phone).

commented

I merged main into the branch and pushed it. The only conflict was in test/studio-changes.test.ts.

In the conflicting spot, the branch asserted the change page draws class="page-head" and no longer has issue-head or issue-meta. main asserted the tabs are §5's bar, not the old .filters wrapper, and that "Conversation" shows. Both sets of checks are kept.

Checks run:

  • Tests: bun test test/studio-changes.test.ts test/web-browse.test.ts passes (50 tests). The full bun test took over 10 minutes and I never saw its result, so I ran the two files that cover this change.
  • Design lint: bun scripts/design-lint.ts is clean.
  • Type check: bun x tsc --noEmit could not run, because the bun type definitions were missing and I didn't run bun install. The forge's check on this push is the type check that counts.
Approved

Markup-only move onto §5: change, issue/pull and commit heads now use .page-head with .sub.bar (and .bar.small.muted inside the commit card). Badge, author, link and Browse files order is kept, no form markup changed, and the new tests fail without the change. The preview serves class="page-head" on a pull page. Two things next: (1) move src/web/studio/run.ts and tell.ts off .issue-head/.issue-meta, then delete those rules in style/content.ts and the DESIGN.md §5d entries; (2) look at the h1 on narrow phones, since the issue-head clamp() font size is gone and .page-head h1 uses the default, so check titles with long unbroken words wrap with min-width:0 at 360px.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs