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

A connected origin's repository browse pages name their Server-Timing phases: session, the origin read, render #3604

shipped production is serving it opened this has it
opened this

For: speed you can see, page by page. browseHome and browsePaths in src/web/pages/browse.ts serve /origins/:id/r/:owner/:name and its /paths/:ref page. They read from a remote origin and report one opaque number.

Done:

  • [ ] Both handlers call notePhase from src/core/route_timing.ts, the way src/web/pages/releases.ts and src/web/studio/explore.ts do. The phases are session (via takeSessionTime), origin (each read from the connected origin, named for what it reads), and render.
  • [ ] The page renders exactly as today.
  • [ ] A new test/browse-timing.test.ts serves a fake origin over loopback, GETs both pages as the connected person, and finds the phase names in Server-Timing. It fails without the change.

Files: src/web/pages/browse.ts, test/browse-timing.test.ts. Risk: none to behaviour. Do not add caching here.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs