Home

boring / v2

publicBoring-Software-Inc/v2
Overview Code History Branches Pull requestsIssuesInsights Campfire Docs
main
HomeOverview Code PRsIssues

feat(web): connect open-git repos, not just sign in

2 months ago

815381f
Authored
grim8/23/2026, 3:54:02 AM
The connect grid had one entry in STATE — github — so every other live forge
fell through to 'this forge signs in but has no repo import'. That string was
accurate: nothing had been built.

Both live forges install the same way: an app/bot installation, granted per org,
completed on the forge's own site. They now share one cell builder rather than
two near-copies that drift; only the url and the copy differ.

The install urls diverge in one way that matters. GitHub round-trips a signed
state carrying {userId, orgId}, so its callback names both sides and asks you to
confirm. open-git does not — installationConnectUrl appends installation_id and
nothing else — so the same callback falls through to the CLAIM screen and asks
which org it belongs to. Both end up bound deliberately (10).

Also binds repos to an already-claimed installation. The lazy upsert passed no
org, so claiming an installation bound it and every repo arriving afterwards
still landed unclaimed: invisible to org queries, and back on the claim screen
for a decision already made. Null stays null when nobody has claimed it.

OPEN_GIT_BOT_OWNER and OPEN_GIT_BOT_SLUG build the install path. Unset, the cell
says 'not configured' rather than sending an admin to a 404.

Parentc2bd379

5 files changed
  • .env.example+7−0
  • apps/web/src/components/forges/connect-forge-grid.tsx+33−11
  • apps/web/src/lib/onboarding.functions.ts+37−13
  • apps/web/src/lib/onboarding.query.ts+11−5
  • apps/worker/src/jobs/process-event.ts+15−0