Home

madison / open-git

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

Merge origin/main into payments.

2 months ago

c2587a8
Authored
Madison7/18/2026, 7:49:50 AM
Keep main's workbench UI while preserving sponsorship/donations flows, and renumber the donations migration after main's waitlist changes.

Parentsc5ea93ebf454bf

232 files changed
  • README.md+8−7
  • apps/community/.env.example+1−1
  • apps/community/README.md+1−1
  • apps/community/package.json+2−2
  • apps/web/.env.example+3−3
  • apps/web/app/(home)/activity-row.tsx+2−2
  • apps/web/app/(home)/ci-health.tsx+1−1
  • apps/web/app/(home)/feed-sidebar.tsx+3−35
  • apps/web/app/(home)/layout.tsx+7−12
  • apps/web/app/(home)/leaderboard.tsx+1−1
  • apps/web/app/(home)/page.tsx+16−19
  • apps/web/app/(home)/trending-repos.tsx+1−1
  • apps/web/app/[username]/[repository]/blob/[...path]/page.tsx+12−222
  • apps/web/app/[username]/[repository]/blob/layout.tsx+6−96
  • apps/web/app/[username]/[repository]/branches/page.tsx+125−0
  • apps/web/app/[username]/[repository]/campfire/campfire-room.tsx+289−283
  • apps/web/app/[username]/[repository]/campfire/campfire-thread-ref-card.tsx+1−1
  • apps/web/app/[username]/[repository]/campfire/page.tsx+4−24
  • apps/web/app/[username]/[repository]/docs/docs-page.tsx+1−1
  • apps/web/app/[username]/[repository]/fork/fork-repository-form.tsx+10−5
  • apps/web/app/[username]/[repository]/insights/page.tsx+1−1
  • apps/web/app/[username]/[repository]/issues/new/page.tsx+3−31
  • apps/web/app/[username]/[repository]/issues/page.tsx+3−12
  • apps/web/app/[username]/[repository]/layout.tsx+46−30
  • apps/web/app/[username]/[repository]/pulls/[number]/autopilot/autopilot-run-client.tsx+1−1
  • apps/web/app/[username]/[repository]/pulls/[number]/autopilot/page.tsx+3−18
  • apps/web/app/[username]/[repository]/pulls/[number]/conversation-checks.tsx+1−1
  • apps/web/app/[username]/[repository]/pulls/[number]/pull-request-conversation.tsx+1−1
  • apps/web/app/[username]/[repository]/pulls/[number]/pull-request-detail.tsx+1−1
  • apps/web/app/[username]/[repository]/pulls/[number]/pull-request-files-chrome.tsx+1−1
  • apps/web/app/[username]/[repository]/pulls/[number]/pull-request-files-review.tsx+1−1
  • apps/web/app/[username]/[repository]/pulls/[number]/pull-request-forms.tsx+1−1
  • apps/web/app/[username]/[repository]/pulls/[number]/pull-request-merge-box.tsx+1−1
  • apps/web/app/[username]/[repository]/pulls/[number]/pull-request-stack-panel.tsx+1−1
  • apps/web/app/[username]/[repository]/pulls/new/actions.ts+13−152
  • apps/web/app/[username]/[repository]/pulls/new/new-pull-request-modal.tsx+4−2
  • apps/web/app/[username]/[repository]/pulls/new/pull-request-dialog-chrome.tsx+8−3
  • apps/web/app/[username]/[repository]/pulls/page.tsx+10−20
  • apps/web/app/[username]/[repository]/repository-branch-switcher.tsx+21−2
  • apps/web/app/[username]/[repository]/repository-file-tree.tsx+62−23
  • apps/web/app/[username]/[repository]/repository-file.tsx+298−0
  • apps/web/app/[username]/[repository]/repository-files-sidebar-button.tsx+37−0
  • apps/web/app/[username]/[repository]/repository-home.tsx+44−45
  • apps/web/app/[username]/[repository]/repository-latest-commit.tsx+1−1
  • apps/web/app/[username]/[repository]/repository-layout-shell.tsx+21−14
  • apps/web/app/[username]/[repository]/repository-tabs.tsx+8−8
  • apps/web/app/[username]/[repository]/settings/_components/repository-settings-nav.tsx+44−18
  • apps/web/app/[username]/[repository]/settings/layout.tsx+14−16
  • apps/web/app/[username]/gitty-actions.ts+0−28
  • apps/web/app/[username]/gitty-card.tsx+0−112
  • apps/web/app/[username]/gitty-controls.tsx+0−63
  • apps/web/app/[username]/page.tsx+12−40
  • apps/web/app/[username]/settings/_components/organization-settings-nav.tsx+1−1
  • apps/web/app/admin/waitlist/page.tsx+33−0
  • apps/web/app/admin/waitlist/waitlist-admin.tsx+250−0
  • apps/web/app/api/admin/waitlist/route.ts+83−0
  • apps/web/app/api/campfire/ref-details/route.ts+5−1
  • apps/web/app/api/campfire/refs/route.ts+5−1
  • apps/web/app/api/campfire/ws-token/route.ts+2−2
  • apps/web/app/api/ci/jobs/[jobId]/cancel/route.ts+5−0
  • apps/web/app/api/ci/jobs/[jobId]/logs/route.ts+6−0
  • apps/web/app/api/ci/jobs/[jobId]/rerun/route.ts+5−0
  • apps/web/app/api/ci/repos/[repoId]/runner-registration-token/route.ts+5−0
  • apps/web/app/api/repos/[repoId]/commits/[sha]/checks/route.ts+5−1
  • apps/web/app/api/repos/[repoId]/files/route.ts+47−0
  • apps/web/app/api/repos/[repoId]/pulls/[prId]/autopilot/route.ts+5−1
  • apps/web/app/api/repos/[repoId]/pulls/[prId]/diff/route.ts+5−1
  • apps/web/app/api/repos/[repoId]/pulls/[prId]/files/[fileId]/diff/route.ts+5−1
  • apps/web/app/api/repos/[repoId]/pulls/[prId]/files/route.ts+5−1
  • apps/web/app/api/repos/[repoId]/pulls/[prId]/route.ts+5−1
  • apps/web/app/api/v1/repos/[owner]/[repository]/pulls/route.test.ts+103−0
  • apps/web/app/api/v1/repos/[owner]/[repository]/pulls/route.ts+125−0
  • apps/web/app/api/waitlist-scene/route.ts+48−0
  • apps/web/app/api/waitlist/password/route.ts+79−0
  • apps/web/app/ci/runs/[runId]/jobs/[jobId]/page.tsx+18−14
  • apps/web/app/ci/runs/[runId]/jobs/[jobId]/workflow-job-log-viewer.tsx+3−3
  • apps/web/app/favicon.ico——
  • apps/web/app/gitty-lab/page.tsx+3−113
  • apps/web/app/home/home-readme.tsx+9−7
  • apps/web/app/layout.tsx+29−27
  • apps/web/app/onboarding/actions.ts+7−10
  • apps/web/app/onboarding/ensure-onboarded.ts+41−0
  • apps/web/app/onboarding/onboarding-experience.tsx+3−37
  • apps/web/app/onboarding/onboarding-identity-preview.tsx+9−144
  • apps/web/app/onboarding/username-availability/route.ts+3−3
  • apps/web/app/repositories/import/github/github-import-form.tsx+1−1
  • apps/web/app/repositories/new/create-repository-form.tsx+1−1
  • apps/web/app/settings/account/account-settings-sections/connections.tsx+1−1
  • apps/web/app/settings/account/account-settings-sections/settings.tsx+1−1
  • apps/web/app/settings/account/teams/new/create-organization-form.tsx+1−1
  • apps/web/app/settings/developer/page.tsx+6−4
  • apps/web/app/settings/layout.tsx+4−1
  • apps/web/app/sign-up/page.tsx+7−0
  • apps/web/app/sign-up/sign-up-form.tsx+11−11
  • apps/web/app/tos/page.tsx+24−17
  • apps/web/app/waitlist/page.tsx+46−0
  • apps/web/app/waitlist/waitlist-join-flow.tsx+404−0
  • apps/web/app/waitlist/waitlist-landing.tsx+182−0
  • apps/web/app/waitlist/waitlist-scene.tsx+23−0
  • apps/web/app/waitlist/waitlist-sign-out-button.tsx+26−0
  • apps/web/app/workspace/create-new-menu.tsx+8−8
  • apps/web/app/workspace/dashboard-detail.tsx+70−2
  • apps/web/app/workspace/dashboard-list-skeleton.tsx+24−87
  • apps/web/app/workspace/dashboard-list.tsx+7−7
  • apps/web/app/workspace/dashboard-row.tsx+12−4
  • apps/web/app/workspace/dashboard-tabs.tsx+1−1
  • apps/web/app/workspace/dashboard-toolbar.tsx+1−1
  • apps/web/app/workspace/detail-panel-chrome.tsx+1−1
  • apps/web/app/workspace/detail-panel-skeleton.tsx+4−11
  • apps/web/app/workspace/detail-panel.tsx+14−154
  • apps/web/app/workspace/error.tsx+49−0
  • apps/web/app/workspace/helpers.test.ts+32−0
  • apps/web/app/workspace/helpers.ts+82−4
  • apps/web/app/workspace/import-from-github-menu-item.tsx+2−2
  • apps/web/app/workspace/layout.tsx+25−91
  • apps/web/app/workspace/load-dashboard-lists.ts+25−32
  • apps/web/app/workspace/load-sidebar-repositories.ts+24−0
  • apps/web/app/workspace/page.tsx+8−18
  • apps/web/app/workspace/repo-picker-submenu.tsx+5−16
  • apps/web/app/workspace/repository-explorer.tsx+264−0
  • apps/web/app/workspace/repository-workbench-sidebar.tsx+294−0
  • apps/web/app/workspace/section-header.tsx+1−1
  • apps/web/app/workspace/warm-preview.ts+5−1
  • apps/web/components/account-settings/account-settings-modal.tsx+43−43
  • apps/web/components/app-shell.tsx+31−20
  • apps/web/components/app-site-chrome.tsx+0−267
  • apps/web/components/ci/check-status-indicator.tsx+2−2
  • apps/web/components/command-menu.tsx+5−30
  • apps/web/components/conversation/campfire-mention-timeline-card.tsx+1−1
  • apps/web/components/conversation/conversation-chrome.tsx+1−1
  • apps/web/components/conversation/conversation-quote-reply.tsx+1−1
  • apps/web/components/conversation/pr-autopilot-timeline.tsx+1−1
  • apps/web/components/conversation/timeline-primitives.tsx+1−1
  • apps/web/components/dev-floating-panel.tsx+1−1
  • apps/web/components/diffs/code-view-comments-list.tsx+9−6
  • apps/web/components/diffs/code-view-diff-stats.tsx+2−2
  • apps/web/components/diffs/code-view-header.tsx+59−36
  • apps/web/components/diffs/code-view-sidebar.tsx+33−13
  • apps/web/components/diffs/code-view-wrapper.tsx+34−13
  • apps/web/components/layout-preference-preview.tsx+1−1
  • apps/web/components/legal-page-shell.tsx+15−9
  • apps/web/components/legal/privacy-policy-content.tsx+25−17
  • apps/web/components/markdown/markdown-editor.tsx+1−1
  • apps/web/components/open-git-user-button.tsx+44−16
  • apps/web/components/organization-menu.tsx+91−53
  • apps/web/components/pixel-icon.tsx+0−26
  • apps/web/components/resource-query-filter-bar.tsx+1−1
  • apps/web/components/settings-nav.tsx+1−1
  • apps/web/components/sidebar-app-frame.tsx+280−0
  • apps/web/components/workbench-tabs/canonical-target.test.ts+58−0
  • apps/web/components/workbench-tabs/canonical-target.ts+24−58
  • apps/web/components/workbench-tabs/config.ts+2−5
  • apps/web/components/workbench-tabs/workbench-route-sync.tsx+7−16
  • apps/web/components/workbench-tabs/workbench-tab-bar.tsx+250−276
  • apps/web/components/workbench-tabs/workbench-tabs-provider.tsx+26−28
  • apps/web/db/dashboard.ts+119−43
  • apps/web/db/git-access-tokens.ts+15−1
  • apps/web/db/issues.ts+3−2
  • apps/web/db/pull-requests.ts+4−3
  • apps/web/db/repository-index.ts+99−22
  • apps/web/db/repository-permissions.ts+25−4
  • apps/web/db/schema.ts+46−1
  • apps/web/db/user-profiles.ts+11−0
  • apps/web/db/waitlist.ts+76−0
  • apps/web/drizzle/0031_serious_wolfpack.sql+12−0
  • apps/web/drizzle/0032_even_ezekiel.sql+1−0
  • apps/web/drizzle/{0031_cool_lady_deathstrike.sql => 0033_premium_chronomancer.sql}+0−0
  • apps/web/drizzle/meta/0031_snapshot.json+89−281
  • apps/web/drizzle/meta/0032_snapshot.json+7207−0
  • apps/web/drizzle/meta/0033_snapshot.json+7487−0
  • apps/web/drizzle/meta/_journal.json+16−2
  • apps/web/lib/admin.test.ts+70−0
  • apps/web/lib/admin.ts+32−0
  • apps/web/lib/api/personal-access-token.test.ts+84−0
  • apps/web/lib/api/personal-access-token.ts+52−0
  • apps/web/lib/auth-client.ts+4−1
  • apps/web/lib/auth.ts+45−1
  • apps/web/lib/email.ts+3−2
  • apps/web/lib/pull-requests/create-pull-request.test.ts+140−0
  • apps/web/lib/pull-requests/create-pull-request.ts+206−0
  • apps/web/lib/shared/cache.ts+3−0
  • apps/web/lib/waitlist-config.ts+7−0
  • apps/web/lib/waitlist-email.test.ts+23−0
  • apps/web/lib/waitlist-email.ts+50−0
  • apps/web/package.json+2−5
  • apps/web/public/icons/isocons-empty-dashboard.svg+39−0
  • deploy/.env.example+1−1
  • deploy/docker-compose.app.yml+5−3
  • deploy/docker-compose.single.yml+5−3
  • package.json+2−1
  • packages/ui/DESIGN.md+3−1
  • packages/ui/NUCLEO-COPYRIGHT-NOTICE.html+20−0
  • packages/ui/package.json+1−2
  • packages/ui/src/components/accordion.tsx+1−1
  • packages/ui/src/components/alert-dialog.tsx+1−1
  • packages/ui/src/components/appearance-menu-section.tsx+1−1
  • packages/ui/src/components/autocomplete.tsx+1−1
  • packages/ui/src/components/badge.tsx+14−14
  • packages/ui/src/components/breadcrumb.tsx+1−1
  • packages/ui/src/components/button-variants.tsx+9−9
  • packages/ui/src/components/calendar.tsx+1−1
  • packages/ui/src/components/combobox.tsx+1−1
  • packages/ui/src/components/command-menu-context.tsx+0−37
  • packages/ui/src/components/command.tsx+4−4
  • packages/ui/src/components/copy-to-clipboard-button.tsx+1−1
  • packages/ui/src/components/dialog.tsx+2−2
  • packages/ui/src/components/drawer.tsx+7−7
  • packages/ui/src/components/gitty-sprite.tsx+0−441
  • packages/ui/src/components/menu.tsx+1−1
  • packages/ui/src/components/nested-panel.tsx+6−9
  • packages/ui/src/components/nucleo-icon-data.tsx+1639−0
  • packages/ui/src/components/nucleo-icons.css+116−0
  • packages/ui/src/components/nucleo-icons.tsx+232−0
  • packages/ui/src/components/number-field.tsx+1−1
  • packages/ui/src/components/pagination.tsx+1−1
  • packages/ui/src/components/pixel-icons.tsx+0−570
  • packages/ui/src/components/scroll-area.tsx+2−0
  • packages/ui/src/components/select.tsx+1−1
  • packages/ui/src/components/sheet.tsx+2−2
  • packages/ui/src/components/sidebar.tsx+1−1
  • packages/ui/src/components/slider.tsx+15−15
  • packages/ui/src/components/toast.tsx+1−1
  • packages/ui/src/components/user-avatar.tsx+15−9
  • packages/ui/src/lib/floating-card.ts+2−2
  • packages/ui/src/lib/gitty.ts+2−3
  • packages/ui/src/styles/globals.css+293−356
  • pnpm-lock.yaml+14−43
  • scripts/gen-pixel-icons.mjs+0−165
  • scripts/generate-nucleo-icons.mjs+159−0
  • stack-teams-export-2026-07-12.json+0−7
  • stack-users-export-2026-07-12.json+0−56
  • turbo.json+2−0