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

A repository's branches page speaks the home page's language #9746

shipped production is serving it opened this has it
opened this

For: the branches page (/:owner/:name/branches) is where a fork's lines of work are read, and it has not had the design pass yet.

Done looks like:

  • [x] The branches page (src/web/pages/branches.ts) follows the opening principles of docs/DESIGN.md: space instead of boxes that do no work, the home page's type for names, ahead/behind counts and times, and each branch a row whose name is the one link.
  • [x] Nothing is lost: each branch's actions (test/branches-action.test.ts) still work as plain POST forms with a same-origin check and JavaScript off, the default branch is still marked, and the page fits a 390 px phone with no sideways scroll.
  • [x] The warm page still costs what test/branches-timing.test.ts allows.
  • [x] bun scripts/design-lint.ts passes, and so do test/branches*.test.ts.

Files: src/web/pages/branches.ts, and an area doc under docs/design/areas/ if a class is added. Risks: branch names are user text; keep every one escaped, and never build a git argument from one without the existing ref validation.

commented

Reviewed pull #9750 at its head: ticked The branches page (src/web/pages/branches.ts) follows the opening principles of docs/DESIGN.md: space instead of boxes that do no work, the home page's type for names, ahead/behind counts and times, and each branch a row whose name is the one link.; Nothing is lost: each branch's actions (test/branches-action.test.ts) still work as plain POST forms with a same-origin check and JavaScript off, the default branch is still marked, and the page fits a 390 px phone with no sideways scroll.; The warm page still costs what test/branches-timing.test.ts allows.; bun scripts/design-lint.ts passes, and so do test/branches*.test.ts..

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs