PR #1: CarbonIQ rebrand, auth removal, and Cloudflare-to-Vercel swap bundled in a self-merge

clapointe-carbonleo landed four commits as a single self-merged PR: a UI reskin under the CarbonIQ brand, a complete auth strip-out, an unrelated SQL addition, and a frontend hosting switch from Cloudflare to Vercel. None of the four changes were individually reviewed before merge.

brandinginfrastructure

The auth removal (e6568f87) is the most consequential piece. requireAuth stops verifying tokens and sets every request's user to internal@carbonleo.com. The access helpers in backend/src/lib/access.ts - the owner and shared-with checks - return hardcoded success for every call. The commit message frames this as a temporary state ("for now"), but it was merged to main immediately and the backend access logic was never fully restored in later commits.

The UI refactor (a15cd5a1) touches 70 files and replaces Mike's design tokens with Carbonleo's brand palette. Structurally, components are unchanged. The Cloudflare swap (cbd47b90, 8796dfef) deletes open-next.config.ts and the CF-specific npm scripts, and adds a minimal vercel.json. All four changes landed in the same PR with an empty description and a same-minute merge - typical of a developer self-deploying to an internal instance rather than building something for shared use.

The overall picture is a fork being reshaped for a specific internal deployment, with auth temporarily disabled to unblock that work. Judging the individual pieces: the UI reskin is Carbonleo-specific and not portable as-is; the auth state is a problem if the fork is ever exposed to multiple users; the Vercel switch is a deployment detail.

So what Worth knowing about if you track this fork for other changes - the auth situation in particular means any downstream pulls from this period carry a backend authorization gap. There is nothing in the PR itself to import directly.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

14 commits from clapointe-carbonleo/mike-legal, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
e6568f87 feat(mike): ic - remove auth - fix sql - all users 'internal' for now clapointe-carbonleo 2026-05-06 ↗ GitHub
a15cd5a1 update(UI): CarbonIQ design refactor clapointe-carbonleo 2026-05-06 ↗ GitHub
cbd47b90 Switch frontend from Cloudflare to Vercel clapointe-carbonleo 2026-05-06 ↗ GitHub
8796dfef Remove Cloudflare dependencies for Vercel deployment clapointe-carbonleo 2026-05-06 ↗ GitHub
af9f6107 Merge pull request #1 from clapointe-carbonleo/feat/CarbonIQ-imp clapointe-carbonleo 2026-05-06 ↗ GitHub
Feat/carbon iq imp
1b9a6630 Remove all Cloudflare and AWS SDK dependencies for Vercel clapointe-carbonleo 2026-05-06 ↗ GitHub
e4b92c1d Merge remote main, keep local package.json without AWS SDK clapointe-carbonleo 2026-05-06 ↗ GitHub
c79bdaef Remove package-lock.json to clear stale dependencies clapointe-carbonleo 2026-05-06 ↗ GitHub
0785addf Restore AWS SDK packages needed for R2 storage clapointe-carbonleo 2026-05-06 ↗ GitHub
0756a87d Fix CORS to allow production frontend URL clapointe-carbonleo 2026-05-06 ↗ GitHub
35fd7788 Configure backend as Vercel serverless function clapointe-carbonleo 2026-05-06 ↗ GitHub
c52c1648 Remove NEXT_PUBLIC API keys - hardcode availability instead clapointe-carbonleo 2026-05-06 ↗ GitHub
commit body
API keys must never be NEXT_PUBLIC_* (they end up in the browser bundle).
Model availability now hardcoded to 'configured' so all models show as available.
The backend uses its own server-side keys for actual API calls.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
333172e1 feat(git): add vercel to gitignore clapointe-carbonleo 2026-05-06 ↗ GitHub
17605a51 Fix CORS: allow mike-legal-three.vercel.app clapointe-carbonleo 2026-05-07 ↗ GitHub

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-278.md from inside the repo you want the changes in.

⬇ Download capture-thread-278.md