| Comment: | ops: record which repository a render was for
Repo was read with req.PathValue in the outermost middleware, where the router has not set it — path values live on the request the mux passes DOWN, a copy that middleware never sees. Same shape as the route-pattern bug, and it went unnoticed longer because an empty string looks like 'no repository' rather than like a failure. Every render recorded until now carried an empty repo: 61 of 61 rows in the analytics store, on a fleet where repository size is the dominant cost of almost everything. The drilldown's by-repository table showed a single '(none)' row, which is what surfaced it. Read from the path instead, unescaping as the router would. |
|---|---|
| Timelines: | family | ancestors | descendants | both | ops-drill |
| Files: | files | file ages | folders |
| SHA3-256: |
059fe0bdde1bccae2a3ba15151eade1c |
| User & Date: | dmestas on 2026-08-25 21:49:04.166 |
| Other Links: | branch diff | manifest | tags |
|
2026-08-25
| ||
| 21:53 | Accepted. It can now say which repo and which calls — which is the difference between finding a slow route and fixing one. check-in: 7059271e59 user: dmestas tags: trunk | |
| 21:49 |
ops: record which repository a render was for
Repo was read with req.PathValue in the outermost middleware, where the router has not set it — path values live on the request the mux passes DOWN, a copy that middleware never sees. Same shape as the route-pattern bug, and it went unnoticed longer because an empty string looks like 'no repository' rather than like a failure. Every render recorded until now carried an empty repo: 61 of 61 rows in the analytics store, on a fleet where repository size is the dominant cost of almost everything. The drilldown's by-repository table showed a single '(none)' row, which is what surfaced it. Read from the path instead, unescaping as the router would. closed check-in: 059fe0bdde user: dmestas tags: ops-drill | |
| 21:46 |
ops: a door from /fleet, and a test that it stays
/fleet/ops linked OUT to /fleet seven times and nothing anywhere linked IN. The page was live, gated, and reachable only by typing the URL. Second surface to ship that way after the notes feed, so it gets a test rather than a promise to remember — both directions, so an admin is never stranded on either. The link goes in the summary strip that already carries the fleet's counts and the error badge, which is where somebody reading health already is. /fleet answers 'are my repositories healthy'; /fleet/ops answers 'is the forge healthy'. check-in: 3314daeff6 user: dmestas tags: ops-drill | |