Home

madison / open-git

public
Overview Code History Branches Pull requestsIssuesInsights Campfire Docs
main
HomeOverview Code PRsIssues

Merge origin/main into feat/repo-promo.

last month

a3307f1
Authored
moss8/20/2026, 1:57:05 AM

Parentsfb44874b1a3e34

177 files changed
  • .opengit/workflows/ci.yml+19−17
  • .opengit/workflows/db-safety.yml+16−50
  • README.md+1−1
  • apps/bot-example/.env.example+1−1
  • apps/bot-example/.gitignore+1−2
  • apps/bot-example/README.md+4−3
  • apps/bot-example/src/html.ts+20−4
  • apps/bot-example/src/open-git.ts+64−10
  • apps/bot-example/src/server.ts+36−1
  • apps/bot-example/src/store.ts+102−4
  • apps/git-gateway/README.md+2−1
  • apps/git-gateway/src/config.ts+3−1
  • apps/git-gateway/src/db.ts+62−16
  • apps/git-gateway/src/inherited-fork-mirror.test.ts+12−0
  • apps/git-gateway/src/inherited-fork-mirror.ts+54−0
  • apps/git-gateway/src/server.ts+106−13
  • apps/git-gateway/src/storage.ts+1−0
  • apps/git-worker/README.md+6−6
  • apps/git-worker/src/index.ts+3−0
  • apps/github-sync-worker/src/index.ts+22−3
  • apps/playground/lib/component-examples/avatar.tsx+1−1
  • apps/web/.env.example+5−1
  • apps/web/app/(home)/activity-feed-skeleton.tsx+2−1
  • apps/web/app/(home)/activity-row.tsx+28−5
  • apps/web/app/(home)/page.tsx+13−1
  • apps/web/app/[username]/[repository]/fork/actions.ts+13−7
  • apps/web/app/[username]/[repository]/pulls/[number]/pull-request-live-refresh.tsx+1−34
  • apps/web/app/[username]/[repository]/pulls/new/load-new-pull-request.ts+3−3
  • apps/web/app/[username]/[repository]/repository-home.tsx+73−18
  • apps/web/app/[username]/[repository]/settings/actions.ts+4−2
  • apps/web/app/[username]/[repository]/settings/general/page.tsx+3−3
  • apps/web/app/admin/bots/actions.ts+48−0
  • apps/web/app/admin/bots/bots-admin.tsx+223−0
  • apps/web/app/admin/bots/page.tsx+34−0
  • apps/web/app/admin/waitlist/waitlist-admin.tsx+14−6
  • apps/web/app/api/v1/app/installations/[id]/route.ts+68−0
  • apps/web/app/home/page.tsx+14−1
  • apps/web/app/integrations/[owner]/[slug]/install/page.tsx+121−26
  • apps/web/app/integrations/[owner]/[slug]/page.tsx+96−33
  • apps/web/app/integrations/actions.test.ts+124−4
  • apps/web/app/integrations/actions.ts+53−31
  • apps/web/app/integrations/install-form.tsx+239−20
  • apps/web/app/integrations/page.tsx+18−6
  • apps/web/app/oauth/consent/consent-form.tsx+59−72
  • apps/web/app/oauth/consent/page.tsx+47−6
  • apps/web/app/onboarding/onboarding-identity-preview.tsx+7−7
  • apps/web/app/settings/layout.tsx+1−1
  • apps/web/app/settings/organizations/[slug]/developer/actions.ts+257−73
  • apps/web/app/settings/organizations/[slug]/developer/bot-forms.tsx+913−451
  • apps/web/app/settings/organizations/[slug]/developer/bots/[id]/page.tsx+55−6
  • apps/web/app/settings/organizations/[slug]/developer/bots/[id]/verify/page.tsx+2−2
  • apps/web/app/settings/organizations/[slug]/developer/bots/new/page.tsx+14−5
  • apps/web/app/settings/organizations/[slug]/developer/credentials.tsx+476−0
  • apps/web/app/settings/organizations/[slug]/developer/oauth-forms.tsx+93−79
  • apps/web/app/settings/organizations/[slug]/developer/oauth/[id]/page.tsx+8−3
  • apps/web/app/settings/organizations/[slug]/developer/oauth/new/page.tsx+1−1
  • apps/web/app/settings/organizations/[slug]/developer/page.tsx+36−11
  • apps/web/app/sign-in/page.tsx+11−1
  • apps/web/components/consent/consent-permissions.tsx+88−0
  • apps/web/components/consent/consent-screen.tsx+121−0
  • apps/web/components/consent/permission-icons.tsx+18−0
  • apps/web/components/live-refresh.tsx+31−0
  • apps/web/components/oauth-query-error-banner.tsx+26−0
  • apps/web/components/sidebar-app-frame.tsx+29−10
  • apps/web/db/bot-installations.ts+28−2
  • apps/web/db/bots.test.ts+132−0
  • apps/web/db/bots.ts+101−18
  • apps/web/db/github-sync.ts+7−1
  • apps/web/db/indexing-jobs.ts+8−4
  • apps/web/db/repositories.ts+16−0
  • apps/web/db/repository-contributors.test.ts+141−1
  • apps/web/db/repository-index-fork.test.ts+72−0
  • apps/web/db/repository-index.ts+240−27
  • apps/web/db/schema.ts+15−0
  • apps/web/drizzle/0060_skinny_morph.sql+1−0
  • apps/web/drizzle/0061_rare_onslaught.sql+1−0
  • apps/web/drizzle/0062_fork_storage_upstream.sql+1−0
  • apps/web/drizzle/{0060_repository_landing_page.sql => 0063_repository_landing_page.sql}+0−0
  • apps/web/drizzle/{0061_repository_landing_overview.sql => 0064_repository_landing_overview.sql}+0−0
  • apps/web/drizzle/{0062_many_tarot.sql => 0065_many_tarot.sql}+0−0
  • apps/web/drizzle/meta/0060_snapshot.json+8−12
  • apps/web/drizzle/meta/0061_snapshot.json+16−13
  • apps/web/drizzle/meta/0062_snapshot.json+22−300
  • apps/web/drizzle/meta/0063_snapshot.json+11867−0
  • apps/web/drizzle/meta/0064_snapshot.json+11867−0
  • apps/web/drizzle/meta/0065_snapshot.json+12154−0
  • apps/web/drizzle/meta/_journal.json+27−6
  • apps/web/lib/api/v1-openapi.test.ts+1−0
  • apps/web/lib/api/v1-openapi.ts+56−0
  • apps/web/lib/bots/format.test.ts+46−0
  • apps/web/lib/bots/format.ts+58−0
  • apps/web/lib/bots/manageable-repos.ts+2−0
  • apps/web/lib/bots/reserved-slugs.test.ts+1−1
  • apps/web/lib/bots/reserved-slugs.ts+0−1
  • apps/web/lib/bots/verification-shared.ts+7−1
  • apps/web/lib/bots/verification.test.ts+120−0
  • apps/web/lib/bots/verification.ts+30−2
  • apps/web/lib/bots/webhook-events.test.ts+69−0
  • apps/web/lib/bots/webhook-events.ts+80−0
  • apps/web/lib/bots/webhooks.ts+27−15
  • apps/web/lib/ci/ci-workflow-discovery.test.ts+7−0
  • apps/web/lib/git/code-storage.ts+2−1
  • apps/web/lib/git/local-repo-cache.test.ts+56−1
  • apps/web/lib/git/local-repo-cache.ts+153−16
  • apps/web/lib/github/sync/apply-webhook.test.ts+303−0
  • apps/web/lib/github/sync/apply-webhook.ts+426−0
  • apps/web/lib/github/sync/backfill.ts+6−2
  • apps/web/lib/github/sync/branch-updates.ts+22−13
  • apps/web/lib/github/sync/dispatch-webhook.test.ts+72−4
  • apps/web/lib/github/sync/dispatch-webhook.ts+20−155
  • apps/web/lib/github/sync/git-mirror.ts+16−9
  • apps/web/lib/github/sync/issues-inbound.ts+21−4
  • apps/web/lib/github/sync/pulls-inbound.ts+35−1
  • apps/web/lib/github/sync/reconcile.ts+21−6
  • apps/web/lib/oauth/client-credentials.test.ts+46−0
  • apps/web/lib/oauth/client-credentials.ts+34−0
  • apps/web/lib/oauth/clients.ts+8−7
  • apps/web/lib/oauth/install-consent-policy.ts+9−0
  • apps/web/lib/oauth/install-consent.test.ts+36−0
  • apps/web/lib/oauth/install-consent.ts+78−0
  • apps/web/lib/oauth/query-error.test.ts+49−0
  • apps/web/lib/oauth/query-error.ts+103−0
  • apps/web/lib/oauth/redirect-uris.test.ts+97−0
  • apps/web/lib/oauth/redirect-uris.ts+53−0
  • apps/web/lib/pull-requests/merge-pull-request.test.ts+1−1
  • apps/web/lib/pull-requests/merge-pull-request.ts+4−2
  • apps/web/lib/pull-requests/pull-request-suggestion-preview.ts+3−1
  • apps/web/lib/pull-requests/update-pull-request-branch.test.ts+9−3
  • apps/web/lib/pull-requests/update-pull-request-branch.ts+3−3
  • apps/web/lib/repositories/live-git-homepage-parse.ts+54−0
  • apps/web/lib/repositories/live-git-homepage.test.ts+61−0
  • apps/web/lib/repositories/live-git-homepage.ts+59−0
  • apps/web/lib/repositories/repo-indexer.ts+8−6
  • apps/web/lib/repositories/repository-file-bytes.ts+2−3
  • apps/web/lib/repositories/repository-home-docs.ts+23−1
  • deploy/.env.example+7−5
  • deploy/README.md+24−16
  • deploy/docker-compose.app.yml+19−4
  • deploy/docker-compose.single.yml+19−4
  • docs/integrations/README.md+1−1
  • docs/integrations/installing.md+31−6
  • docs/integrations/oauth.md+15−8
  • docs/integrations/publishing.md+32−17
  • docs/integrations/sdk.md+7−5
  • docs/integrations/tokens.md+24−0
  • docs/integrations/webhooks.md+6−1
  • docs/openapi.json+95−0
  • packages/code-storage/README.md+7−0
  • packages/code-storage/src/cache-prune.test.ts+106−0
  • packages/code-storage/src/cache-prune.ts+199−0
  • packages/code-storage/src/errors.ts+29−0
  • packages/code-storage/src/gitdir-files.ts+159−0
  • packages/code-storage/src/index.ts+17−1
  • packages/code-storage/src/inherited-fork.test.ts+73−0
  • packages/code-storage/src/inherited-fork.ts+90−0
  • packages/code-storage/src/object-bucket.ts+326−0
  • packages/code-storage/src/paths.ts+18−0
  • packages/code-storage/src/storage-wal.test.ts+300−0
  • packages/code-storage/src/storage.ts+871−575
  • packages/code-storage/src/types.ts+23−1
  • packages/code-storage/src/wal.ts+203−0
  • packages/git-indexing/src/index.test.ts+15−0
  • packages/git-indexing/src/index.ts+20−0
  • packages/github-sync/src/__tests__/echo-suppression.test.ts+34−0
  • packages/github-sync/src/__tests__/list-pull-requests.test.ts+97−0
  • packages/github-sync/src/__tests__/repository-gone.test.ts+64−0
  • packages/github-sync/src/__tests__/webhook-payload.test.ts+60−0
  • packages/github-sync/src/api.ts+55−16
  • packages/github-sync/src/errors.ts+35−2
  • packages/github-sync/src/index.ts+1−0
  • packages/github-sync/src/sync-decision.ts+19−2
  • packages/github-sync/src/webhook-payload.ts+172−0
  • packages/open-git/src/client.ts+9−0
  • packages/ui/package.json+1−1
  • packages/ui/src/components/user-avatar.tsx+36−12
  • packages/ui/src/styles/globals.css+2−0
  • pnpm-lock.yaml+18−12