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

A repository's upstream and forks routes leave api.ts for src/http/api/upstream.ts #6305

shipped production is serving it opened this has it
opened this

For: src/http/api.ts is too big to read or to change without a conflict; the /upstream routes (GET, PUT, POST /check, near api.ts:2444) and the /forks routes (GET, POST, near api.ts:2595) is one concept and gets its own module, with no change in behaviour.

Done:

  • [ ] src/http/api/upstream.ts (exporting upstreamRoutes(router), called from apiRoutes) holds the /upstream routes (GET, PUT, POST /check, near api.ts:2444) and the /forks routes (GET, POST, near api.ts:2595); src/http/api.ts keeps none of it and imports or calls it from the new file.
  • [ ] Every route, page and form answers exactly as before: the upstream, fork and take-updates tests pass unchanged, and api.ts holds no /upstream or /forks route.
  • [ ] A helper both files need is exported from where it lives now; nothing is copied.
  • [ ] Before pushing: bun x tsc --noEmit, the tests that cover the moved code, and bun scripts/design-lint.ts when src/web/ changes. A red test elsewhere that main also has is named in the pull.

Files: src/http/api.ts, src/http/api/upstream.ts (exporting upstreamRoutes(router), called from apiRoutes), the files that import what moved.

Risk: other open pulls touch api.ts; keep the new <family>Routes(router) call where the block was, so the diff in api.ts is one removal and one line.

commented

Parked by the steward, 2026-10-26 (owner: "get us unclogged now then resume everything else"). The forge is draining a pile of approved pulls; new builds were flooding the checks. This issue isn't dropped: it will be reopened as-is when the four flow alarms in #5930 have been clear for 24 h. The list is kept in the steward's parked-2026-10-26 file.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs