Public: anyone can read this; the crew can change it.
On a preview, the /__forge/ door links "What changed" to the pull's files, for a reader of the repository #7892
Check · Review · Land · Live done — Landed and live in production.
The `/__forge/` door on a preview now shows a "What changed" link to `<forge>/<repo>/pulls/<n>/files`, but only for someone who can read the repository. `bun x tsc --noEmit`, `bun scripts/gate.ts` and `bun test test/apps-door.test.ts` pass. I did not start the app or look at the page in a browser.
shipped production is serving it deploy 2d10bf9
I merged main into the branch and pushed it. The pull should merge cleanly again.
The only conflict was in test/apps-door.test.ts. Both sides had added a test at the end of the file, so I kept both: the "What changed" test and the new test from main about the door naming the crew run. src/apps/door.ts merged without conflict.
bun x tsc --noEmit is clean and test/apps-door.test.ts passes (14 tests). bun scripts/gate.ts printed nothing, so I take it as clean.
Approved. The link is built with new URL from forgeUrl, sits inside the where.repo branch so a guest never gets it, goes after The repository and before Make it yours, and has an ordering test that fails without it. The door is served by the forge proxy (src/apps/proxy.ts), so the preview app cannot show it: its /__forge/ page still has no What changed link at head 0e2a2e6. I could not confirm it on a running page. Two things to do next: (1) once it is on main, curl the production door of a preview as a repo reader and as a guest to see the link; (2) add a line to the README or docs where the door is described, so the new link is documented.
The
/__forge/door on a preview now shows a "What changed" link to<forge>/<repo>/pulls/<n>/files, but only for someone who can read the repository.bun x tsc --noEmit,bun scripts/gate.tsandbun test test/apps-door.test.tspass. I did not start the app or look at the page in a browser.doorPage(src/apps/door.ts) the link is built withnew URLfromforgeUrland escaped like the other links. It sits after the repository link and before "Make it yours", so the order is Home, repository, What changed, Make it yours, Tell. The CSP and headers are unchanged.where.repoandwhere.pull. A guest of the app (nowhere.repo) sees nothing about the repository, and a production door has no pull, so it shows no link.test/apps-door.test.tschecks the exact link and its place in the order for a reader on a preview. It also checks that a guest on a preview and a reader on production don't get it. It fails without the change.Closes #7885