Skip to content
This repository was archived by the owner on Jul 30, 2026. It is now read-only.

refactor(cli): remove hosted product surface - #102

Merged
makoMakoGo merged 4 commits into
personal/local-clientsfrom
codex/issue-91-local-only-surface
Jul 3, 2026
Merged

refactor(cli): remove hosted product surface#102
makoMakoGo merged 4 commits into
personal/local-clientsfrom
codex/issue-91-local-only-surface

Conversation

@makoMakoGo

@makoMakoGo makoMakoGo commented Jul 2, 2026

Copy link
Copy Markdown
Owner

Summary

  • Remove hosted Tokscale auth, submit, delete-submitted-data, QR, and frontend surfaces from this fork.
  • Delete the Next.js frontend workspace, frontend/client-registry CI, and registry generator.
  • Remove submitDefault from the client catalog and switch local defaults to local parse policy.
  • Add ADR 0015 to record the local-only product surface decision and update current docs.

Closes #91

Validation

  • cargo fmt --all --check
  • cargo clippy --workspace --all-targets
  • cargo test --workspace
  • cargo build --release -p tokscale-cli
  • bun run build:cli
  • target/release/tokscale --help
  • target/release/tokscale login --help fails as unrecognized
  • target/release/tokscale submit --help fails as unrecognized
  • target/release/tokscale delete-submitted-data --help fails as unrecognized
  • target/release/tokscale logout --help fails as unrecognized
  • target/release/tokscale whoami --help fails as unrecognized
  • target/release/tokscale qr --help fails as unrecognized
  • target/release/tokscale --home /tmp/tmp.oKb34wrxdo --no-spinner clients --json
  • bun run cli -- --home /tmp/tmp.oKb34wrxdo --no-spinner --light
  • env HOME=/tmp/tmp.oKb34wrxdo target/release/tokscale usage --json

Summary by cubic

Remove all hosted Tokscale surfaces and make this fork local‑only. Drops hosted auth/submit CLI, deletes packages/frontend and related CI, removes submitDefault, updates docs, and removes the unused qrcode dependency.

  • Refactors

    • Removed CLI commands and code: login, logout, whoami, qr, submit, delete-submitted-data (deleted auth.rs, device.rs; pruned command wiring and tests).
    • Deleted packages/frontend and its tests; removed .github/workflows/frontend_ci.yml and client_registry_ci.yml; removed client‑registry generator and scripts from package.json.
    • Dropped submitDefault from crates/tokscale-core/client-catalog.json; updated build.rs, core/tests, and docs to use the catalog for identity only.
    • Simplified Wrapped title to "My Wrapped" (no username lookup).
    • Added ADR 0015 and revised docs for the local‑only surface; removed stale hosted‑auth path references and obsolete Drizzle migration guidance; trimmed frontend mentions.
    • Removed unused qrcode crate from tokscale-cli and Cargo.lock.
    • Updated monorepo scripts and description; pruned bun.lock.
  • Migration

    • Remove any use of hosted commands in scripts: tokscale login|logout|whoami|qr|submit|delete-submitted-data.
    • Use local reports and cache‑backed integrations only (e.g., tokscale clients, tokscale usage, tokscale trae ...).
    • If you referenced the frontend or a generated client registry, delete those references; client identity now comes solely from crates/tokscale-core/client-catalog.json.

Written for commit 93cda70. Summary will update on new commits.

Review in cubic

@coderabbitai

coderabbitai Bot commented Jul 2, 2026

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 266 files, which is 116 over the limit of 150.

To get a review, narrow the scope:
• coderabbit review --type committed # exclude uncommitted changes
• coderabbit review --dir # limit to a subdirectory
• coderabbit review --base # compare against a closer base

Upgrade to a paid plan to raise the limit.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: ee11dbf8-311d-45aa-8b4b-6783d294e049

📥 Commits

Reviewing files that changed from the base of the PR and between 2c77ddb and 93cda70.

⛔ Files ignored due to path filters (64)
  • Cargo.lock is excluded by !**/*.lock
  • bun.lock is excluded by !**/*.lock
  • packages/frontend/public/android-chrome-192x192.png is excluded by !**/*.png
  • packages/frontend/public/android-chrome-512x512.png is excluded by !**/*.png
  • packages/frontend/public/assets/accretion_disk.png is excluded by !**/*.png
  • packages/frontend/public/assets/footer-globe.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/footer-logo-icon.png is excluded by !**/*.png
  • packages/frontend/public/assets/footer-logo.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/github-icon.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/hero-bg.png is excluded by !**/*.png
  • packages/frontend/public/assets/hero-logo.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/landing/client-logos-grid.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/landing/follow-3d-avatar.png is excluded by !**/*.png
  • packages/frontend/public/assets/landing/hero-bg-starfield.png is excluded by !**/*.png
  • packages/frontend/public/assets/landing/hero-trusted-bg.png is excluded by !**/*.png
  • packages/frontend/public/assets/landing/hero-video-transparent.webm is excluded by !**/*.webm
  • packages/frontend/public/assets/landing/screenshot-leaderboard-75a76a.png is excluded by !**/*.png
  • packages/frontend/public/assets/landing/screenshot-tui-4d3240.png is excluded by !**/*.png
  • packages/frontend/public/assets/landing/separator-pattern-slash@blue.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/landing/separator-pattern-slash@gray.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/landing/star-link-icon.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/landing/tokscale-star-icon.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/landing/trophy-cup-transparent.webm is excluded by !**/*.webm
  • packages/frontend/public/assets/landing/trusted-by-amazon.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/landing/trusted-by-google.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/landing/trusted-by-hashed.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/landing/trusted-by-meta.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/landing/trusted-by-microsoft.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/landing/trusted-by-toss.png is excluded by !**/*.png
  • packages/frontend/public/assets/landing/worldwide-section-bg.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/landing/worldwide-section-bg@mobile.svg is excluded by !**/*.svg
  • packages/frontend/public/assets/logos/amp.png is excluded by !**/*.png
  • packages/frontend/public/assets/logos/claude.jpg is excluded by !**/*.jpg
  • packages/frontend/public/assets/logos/cursor.jpg is excluded by !**/*.jpg
  • packages/frontend/public/assets/logos/droid.png is excluded by !**/*.png
  • packages/frontend/public/assets/logos/gemini.png is excluded by !**/*.png
  • packages/frontend/public/assets/logos/grok.jpg is excluded by !**/*.jpg
  • packages/frontend/public/assets/logos/hermes.png is excluded by !**/*.png
  • packages/frontend/public/assets/logos/kilocode.png is excluded by !**/*.png
  • packages/frontend/public/assets/logos/kimi.png is excluded by !**/*.png
  • packages/frontend/public/assets/logos/kiro.ico is excluded by !**/*.ico
  • packages/frontend/public/assets/logos/mux.png is excluded by !**/*.png
  • packages/frontend/public/assets/logos/openai.jpg is excluded by !**/*.jpg
  • packages/frontend/public/assets/logos/openclaw.jpg is excluded by !**/*.jpg
  • packages/frontend/public/assets/logos/opencode.png is excluded by !**/*.png
  • packages/frontend/public/assets/logos/pi.png is excluded by !**/*.png
  • packages/frontend/public/assets/logos/qwen.png is excluded by !**/*.png
  • packages/frontend/public/assets/logos/roocode.png is excluded by !**/*.png
  • packages/frontend/public/assets/logos/synthetic.png is excluded by !**/*.png
  • packages/frontend/public/assets/logos/zai.jpg is excluded by !**/*.jpg
  • packages/frontend/public/favicon-16x16.png is excluded by !**/*.png
  • packages/frontend/public/favicon-32x32.png is excluded by !**/*.png
  • packages/frontend/public/file.svg is excluded by !**/*.svg
  • packages/frontend/public/globe.svg is excluded by !**/*.svg
  • packages/frontend/public/icons/icon-github.svg is excluded by !**/*.svg
  • packages/frontend/public/icons/icon-share.svg is excluded by !**/*.svg
  • packages/frontend/public/next.svg is excluded by !**/*.svg
  • packages/frontend/public/og-image.png is excluded by !**/*.png
  • packages/frontend/public/tokscale-logo.png is excluded by !**/*.png
  • packages/frontend/public/tokscale-logo.svg is excluded by !**/*.svg
  • packages/frontend/public/vercel.svg is excluded by !**/*.svg
  • packages/frontend/public/window.svg is excluded by !**/*.svg
  • packages/frontend/src/app/apple-icon.png is excluded by !**/*.png
  • packages/frontend/src/app/favicon.ico is excluded by !**/*.ico
📒 Files selected for processing (266)
  • .github/workflows/client_registry_ci.yml
  • .github/workflows/frontend_ci.yml
  • AGENTS.md
  • CONTEXT.md
  • README.md
  • crates/tokscale-cli/Cargo.toml
  • crates/tokscale-cli/src/auth.rs
  • crates/tokscale-cli/src/commands/wrapped.rs
  • crates/tokscale-cli/src/device.rs
  • crates/tokscale-cli/src/main.rs
  • crates/tokscale-cli/src/tui/cache.rs
  • crates/tokscale-cli/src/tui/themes.rs
  • crates/tokscale-cli/src/tui/ui/agents.rs
  • crates/tokscale-cli/tests/cli_tests.rs
  • crates/tokscale-core/build.rs
  • crates/tokscale-core/client-catalog.json
  • crates/tokscale-core/src/clients.rs
  • crates/tokscale-core/src/lib.rs
  • crates/tokscale-core/src/local_clients.rs
  • crates/tokscale-core/src/paths.rs
  • docs/adr/0002-claude-placeholder-is-not-synthetic-source.md
  • docs/adr/0007-client-identity-catalog.md
  • docs/adr/0012-local-client-exclusions.md
  • docs/adr/0015-local-only-product-surface.md
  • docs/cli.md
  • docs/clients.md
  • docs/configuration.md
  • docs/development.md
  • package.json
  • packages/frontend/.env.example
  • packages/frontend/.gitignore
  • packages/frontend/README.md
  • packages/frontend/__tests__/api/authToken.test.ts
  • packages/frontend/__tests__/api/deviceAuthorize.test.ts
  • packages/frontend/__tests__/api/deviceAuthorizeCsrf.test.ts
  • packages/frontend/__tests__/api/devicePoll.test.ts
  • packages/frontend/__tests__/api/embedSvgRoute.test.ts
  • packages/frontend/__tests__/api/githubAuthReturnTo.test.ts
  • packages/frontend/__tests__/api/groupInviteCacheControl.test.ts
  • packages/frontend/__tests__/api/groupInviteCreateRoute.test.ts
  • packages/frontend/__tests__/api/groupInviteJoinRoute.test.ts
  • packages/frontend/__tests__/api/groupInviteRoute.test.ts
  • packages/frontend/__tests__/api/groupLeaderboardRoute.test.ts
  • packages/frontend/__tests__/api/groupLeaveRoute.test.ts
  • packages/frontend/__tests__/api/groupMemberDeleteRoute.test.ts
  • packages/frontend/__tests__/api/groupMemberRoleRoute.test.ts
  • packages/frontend/__tests__/api/groupRoute.test.ts
  • packages/frontend/__tests__/api/groupTransferOwnership.test.ts
  • packages/frontend/__tests__/api/groupsPayloadGuard.test.ts
  • packages/frontend/__tests__/api/leaderboard.test.ts
  • packages/frontend/__tests__/api/meStats.test.ts
  • packages/frontend/__tests__/api/settingsDeviceRenameCsrf.test.ts
  • packages/frontend/__tests__/api/settingsSubmittedDataDelete.test.ts
  • packages/frontend/__tests__/api/settingsTokensDelete.test.ts
  • packages/frontend/__tests__/api/settingsTokensList.test.ts
  • packages/frontend/__tests__/api/submit.test.ts
  • packages/frontend/__tests__/api/submitAuth.test.ts
  • packages/frontend/__tests__/api/usersDevicesRoute.test.ts
  • packages/frontend/__tests__/api/usersProfile.test.ts
  • packages/frontend/__tests__/components/sourceLogo.test.tsx
  • packages/frontend/__tests__/lib/bearerToken.test.ts
  • packages/frontend/__tests__/lib/clientRegistry.test.ts
  • packages/frontend/__tests__/lib/embedTemplates.test.ts
  • packages/frontend/__tests__/lib/formatRelativeTime.test.ts
  • packages/frontend/__tests__/lib/formatTokenCount.test.ts
  • packages/frontend/__tests__/lib/getGroupLeaderboard.test.ts
  • packages/frontend/__tests__/lib/getLeaderboard.test.ts
  • packages/frontend/__tests__/lib/getLeaderboardAllTime.test.ts
  • packages/frontend/__tests__/lib/getUserEmbedStats.test.ts
  • packages/frontend/__tests__/lib/groupHelpers.test.ts
  • packages/frontend/__tests__/lib/groupInvites.test.ts
  • packages/frontend/__tests__/lib/groupInvitesDemotedInviter.test.ts
  • packages/frontend/__tests__/lib/groupsQueries.test.ts
  • packages/frontend/__tests__/lib/helpers.test.ts
  • packages/frontend/__tests__/lib/leaderboardDateRange.test.ts
  • packages/frontend/__tests__/lib/leaderboardViewSelector.test.ts
  • packages/frontend/__tests__/lib/personalTokens.test.ts
  • packages/frontend/__tests__/lib/renderIsometric3DSvg.test.ts
  • packages/frontend/__tests__/lib/renderProfileBadgeSvg.test.ts
  • packages/frontend/__tests__/lib/renderProfileEmbedSvg.test.ts
  • packages/frontend/__tests__/lib/requestSessionCsrf.test.ts
  • packages/frontend/__tests__/lib/session.test.ts
  • packages/frontend/__tests__/lib/submissionFreshness.test.ts
  • packages/frontend/__tests__/lib/username.test.ts
  • packages/frontend/__tests__/lib/usernameLookup.test.ts
  • packages/frontend/drizzle.config.ts
  • packages/frontend/eslint.config.mjs
  • packages/frontend/middleware.ts
  • packages/frontend/next.config.ts
  • packages/frontend/package.json
  • packages/frontend/postcss.config.mjs
  • packages/frontend/public/sample-data.json
  • packages/frontend/public/site.webmanifest
  • packages/frontend/scripts/check-migrations.ts
  • packages/frontend/scripts/gallery/build-gallery.ts
  • packages/frontend/scripts/gallery/gallery-app.ts
  • packages/frontend/scripts/gallery/gallery.html
  • packages/frontend/scripts/seed-dev.ts
  • packages/frontend/src/app/(main)/groups/[slug]/GroupDetailClient.tsx
  • packages/frontend/src/app/(main)/groups/[slug]/page.tsx
  • packages/frontend/src/app/(main)/groups/join/[token]/JoinGroupClient.tsx
  • packages/frontend/src/app/(main)/groups/join/[token]/page.tsx
  • packages/frontend/src/app/(main)/groups/new/CreateGroupClient.tsx
  • packages/frontend/src/app/(main)/groups/new/page.tsx
  • packages/frontend/src/app/(main)/groups/page.tsx
  • packages/frontend/src/app/(main)/leaderboard/GroupsBrowser.tsx
  • packages/frontend/src/app/(main)/leaderboard/LeaderboardClient.tsx
  • packages/frontend/src/app/(main)/leaderboard/ViewSelector.tsx
  • packages/frontend/src/app/(main)/leaderboard/page.tsx
  • packages/frontend/src/app/(main)/page.tsx
  • packages/frontend/src/app/api/auth/device/authorize/route.ts
  • packages/frontend/src/app/api/auth/device/poll/route.ts
  • packages/frontend/src/app/api/auth/device/route.ts
  • packages/frontend/src/app/api/auth/github/callback/route.ts
  • packages/frontend/src/app/api/auth/github/route.ts
  • packages/frontend/src/app/api/auth/logout/route.ts
  • packages/frontend/src/app/api/auth/session/route.ts
  • packages/frontend/src/app/api/auth/token/route.ts
  • packages/frontend/src/app/api/badge/[username]/svg/route.ts
  • packages/frontend/src/app/api/embed/[username]/svg/route.ts
  • packages/frontend/src/app/api/groups/[slug]/invite/route.ts
  • packages/frontend/src/app/api/groups/[slug]/leaderboard/route.ts
  • packages/frontend/src/app/api/groups/[slug]/leave/route.ts
  • packages/frontend/src/app/api/groups/[slug]/members/[userId]/role/route.ts
  • packages/frontend/src/app/api/groups/[slug]/members/route.ts
  • packages/frontend/src/app/api/groups/[slug]/route.ts
  • packages/frontend/src/app/api/groups/[slug]/transfer-ownership/route.ts
  • packages/frontend/src/app/api/groups/join/[token]/route.ts
  • packages/frontend/src/app/api/groups/route.ts
  • packages/frontend/src/app/api/leaderboard/route.ts
  • packages/frontend/src/app/api/leaderboard/user/[username]/route.ts
  • packages/frontend/src/app/api/me/stats/route.ts
  • packages/frontend/src/app/api/settings/devices/[deviceId]/route.ts
  • packages/frontend/src/app/api/settings/submitted-data/route.ts
  • packages/frontend/src/app/api/settings/tokens/[tokenId]/route.ts
  • packages/frontend/src/app/api/settings/tokens/route.ts
  • packages/frontend/src/app/api/submit/route.ts
  • packages/frontend/src/app/api/users/[username]/devices/[deviceId]/route.ts
  • packages/frontend/src/app/api/users/[username]/devices/route.ts
  • packages/frontend/src/app/api/users/[username]/groups/route.ts
  • packages/frontend/src/app/api/users/[username]/route.ts
  • packages/frontend/src/app/device/DeviceClient.tsx
  • packages/frontend/src/app/device/page.tsx
  • packages/frontend/src/app/globals.css
  • packages/frontend/src/app/layout.tsx
  • packages/frontend/src/app/local/LocalClient.tsx
  • packages/frontend/src/app/local/page.tsx
  • packages/frontend/src/app/profile/page.tsx
  • packages/frontend/src/app/settings/SettingsClient.tsx
  • packages/frontend/src/app/settings/page.tsx
  • packages/frontend/src/app/u/[username]/ProfilePageClient.tsx
  • packages/frontend/src/app/u/[username]/not-found.tsx
  • packages/frontend/src/app/u/[username]/page.tsx
  • packages/frontend/src/components/BlackholeHero.tsx
  • packages/frontend/src/components/BreakdownPanel.tsx
  • packages/frontend/src/components/DataInput.tsx
  • packages/frontend/src/components/GraphContainer.tsx
  • packages/frontend/src/components/GraphControls.tsx
  • packages/frontend/src/components/ProviderLogo.tsx
  • packages/frontend/src/components/Skeleton.tsx
  • packages/frontend/src/components/SourceLogo.tsx
  • packages/frontend/src/components/StatsPanel.tsx
  • packages/frontend/src/components/Switch.tsx
  • packages/frontend/src/components/TabBar.tsx
  • packages/frontend/src/components/TokenGraph2D.tsx
  • packages/frontend/src/components/TokenGraph3D.tsx
  • packages/frontend/src/components/Tooltip.tsx
  • packages/frontend/src/components/landing/LandingPage.tsx
  • packages/frontend/src/components/landing/components/SquircleBorder.tsx
  • packages/frontend/src/components/landing/components/index.ts
  • packages/frontend/src/components/landing/hooks/index.ts
  • packages/frontend/src/components/landing/hooks/useCopy.ts
  • packages/frontend/src/components/landing/hooks/useSquircleClip.ts
  • packages/frontend/src/components/landing/sections/DescriptionSection.tsx
  • packages/frontend/src/components/landing/sections/FollowSection.tsx
  • packages/frontend/src/components/landing/sections/FooterSection.tsx
  • packages/frontend/src/components/landing/sections/HeroSection.tsx
  • packages/frontend/src/components/landing/sections/QuickstartSection.tsx
  • packages/frontend/src/components/landing/sections/WorldwideSection.tsx
  • packages/frontend/src/components/landing/sections/index.ts
  • packages/frontend/src/components/layout/Footer.tsx
  • packages/frontend/src/components/layout/Navigation.tsx
  • packages/frontend/src/components/profile/ProfileDevices.tsx
  • packages/frontend/src/components/profile/ProfileEmbedDialog.tsx
  • packages/frontend/src/components/profile/index.tsx
  • packages/frontend/src/components/profile/listStyles.ts
  • packages/frontend/src/components/ui/Icons.tsx
  • packages/frontend/src/lib/auth/bearerToken.ts
  • packages/frontend/src/lib/auth/github.ts
  • packages/frontend/src/lib/auth/personalTokens.ts
  • packages/frontend/src/lib/auth/requestSession.ts
  • packages/frontend/src/lib/auth/returnTo.ts
  • packages/frontend/src/lib/auth/session.ts
  • packages/frontend/src/lib/auth/utils.ts
  • packages/frontend/src/lib/clientRegistry.generated.ts
  • packages/frontend/src/lib/constants.ts
  • packages/frontend/src/lib/date-utils.ts
  • packages/frontend/src/lib/db/helpers.ts
  • packages/frontend/src/lib/db/index.ts
  • packages/frontend/src/lib/db/migrations/0000_add_user_id_unique_constraint.sql
  • packages/frontend/src/lib/db/migrations/0001_youthful_snowbird.sql
  • packages/frontend/src/lib/db/migrations/0002_square_lyja.sql
  • packages/frontend/src/lib/db/migrations/0003_add_leaderboard_composite_index.sql
  • packages/frontend/src/lib/db/migrations/0004_add_timestamp_and_schema_version.sql
  • packages/frontend/src/lib/db/migrations/0005_add_case_insensitive_username_index.sql
  • packages/frontend/src/lib/db/migrations/0006_rehash_plaintext_personal_tokens.sql
  • packages/frontend/src/lib/db/migrations/0007_add_submitted_devices.sql
  • packages/frontend/src/lib/db/migrations/0008_add_time_metrics_to_submissions.sql
  • packages/frontend/src/lib/db/migrations/0009_add_groups.sql
  • packages/frontend/src/lib/db/migrations/0010_submit_count_safety.sql
  • packages/frontend/src/lib/db/migrations/0011_drop_dead_columns.sql
  • packages/frontend/src/lib/db/migrations/0012_hash_browser_session_tokens.sql
  • packages/frontend/src/lib/db/migrations/0013_add_mcp_servers.sql
  • packages/frontend/src/lib/db/migrations/0014_widen_cost_columns.sql
  • packages/frontend/src/lib/db/migrations/meta/0000_snapshot.json
  • packages/frontend/src/lib/db/migrations/meta/0002_snapshot.json
  • packages/frontend/src/lib/db/migrations/meta/0012_snapshot.json
  • packages/frontend/src/lib/db/migrations/meta/_journal.json
  • packages/frontend/src/lib/db/schema.ts
  • packages/frontend/src/lib/db/usernameIndex.ts
  • packages/frontend/src/lib/db/usernameLookup.ts
  • packages/frontend/src/lib/devices/shared.ts
  • packages/frontend/src/lib/embed/embedShared.ts
  • packages/frontend/src/lib/embed/getUserEmbedStats.ts
  • packages/frontend/src/lib/embed/renderBlueprintEmbedSvg.ts
  • packages/frontend/src/lib/embed/renderGraphEmbedSvg.ts
  • packages/frontend/src/lib/embed/renderIsometric3DSvg.ts
  • packages/frontend/src/lib/embed/renderMinimalEmbedSvg.ts
  • packages/frontend/src/lib/embed/renderOrbitEmbedSvg.ts
  • packages/frontend/src/lib/embed/renderProfileBadgeSvg.ts
  • packages/frontend/src/lib/embed/renderProfileEmbedSvg.ts
  • packages/frontend/src/lib/embed/renderReceiptEmbedSvg.ts
  • packages/frontend/src/lib/embed/renderTerminalEmbedSvg.ts
  • packages/frontend/src/lib/embed/renderVitalsEmbedSvg.ts
  • packages/frontend/src/lib/format.ts
  • packages/frontend/src/lib/github.ts
  • packages/frontend/src/lib/groups/cache.ts
  • packages/frontend/src/lib/groups/getGroupLeaderboard.ts
  • packages/frontend/src/lib/groups/index.ts
  • packages/frontend/src/lib/groups/invites.ts
  • packages/frontend/src/lib/groups/permissions.ts
  • packages/frontend/src/lib/groups/queries.ts
  • packages/frontend/src/lib/groups/slugs.ts
  • packages/frontend/src/lib/groups/utils.ts
  • packages/frontend/src/lib/leaderboard/constants.ts
  • packages/frontend/src/lib/leaderboard/dateRange.ts
  • packages/frontend/src/lib/leaderboard/getLeaderboard.ts
  • packages/frontend/src/lib/leaderboard/types.ts
  • packages/frontend/src/lib/obelisk.d.ts
  • packages/frontend/src/lib/providers/Providers.tsx
  • packages/frontend/src/lib/providers/StyledComponentsRegistry.tsx
  • packages/frontend/src/lib/providers/index.ts
  • packages/frontend/src/lib/responsive.ts
  • packages/frontend/src/lib/submissionFreshness.ts
  • packages/frontend/src/lib/themes.ts
  • packages/frontend/src/lib/types.ts
  • packages/frontend/src/lib/useMediaQuery.ts
  • packages/frontend/src/lib/useSettings.ts
  • packages/frontend/src/lib/useSquircleBorder.ts
  • packages/frontend/src/lib/utils.ts
  • packages/frontend/src/lib/validation/submission.ts
  • packages/frontend/src/lib/validation/username.ts
  • packages/frontend/tsconfig.json
  • packages/frontend/vercel.json
  • packages/frontend/vitest.config.ts
  • scripts/generate-client-registry.ts

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/issue-91-local-only-surface

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@codspeed-hq

codspeed-hq Bot commented Jul 2, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 20 untouched benchmarks


Comparing codex/issue-91-local-only-surface (93cda70) with personal/local-clients (28361db)

Open in CodSpeed

@makoMakoGo
makoMakoGo marked this pull request as ready for review July 3, 2026 07:47

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 330 files

Note: This PR contains a large number of files. cubic only reviews up to 200 files per PR, so some files may not have been reviewed. cubic prioritizes the most important files to review.

Re-trigger cubic

Comment thread AGENTS.md
@makoMakoGo
makoMakoGo merged commit 68426ae into personal/local-clients Jul 3, 2026
10 checks passed
@makoMakoGo
makoMakoGo deleted the codex/issue-91-local-only-surface branch July 4, 2026 15:14
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

R1: 裁掉非本地产品面

1 participant