40 files changed
- .env.example+17−0
- DECISIONS.md+21−1
- apps/api/src/routes/stream.ts+12−1
- apps/web/package.json+1−0
- apps/web/src/components/auth/access-pending-screen.tsx+53−0
- apps/web/src/components/charts/dither-kit/gradient.tsx+169−0
- apps/web/src/components/charts/dither-kit/index.ts+5−0
- apps/web/src/components/charts/dither-kit/pixel.ts+114−0
- apps/web/src/components/feedback/feedback-dialog.tsx+12−31
- apps/web/src/components/feedback/feedback-form.tsx+52−14
- apps/web/src/lib/activity.functions.ts+2−2
- apps/web/src/lib/analytics-activity.functions.ts+2−2
- apps/web/src/lib/arm.functions.ts+4−4
- apps/web/src/lib/auth.functions.ts+47−5
- apps/web/src/lib/feedback.functions.ts+2−2
- apps/web/src/lib/moderation-queue.functions.ts+3−3
- apps/web/src/lib/moderation.functions.ts+2−2
- apps/web/src/lib/onboarding.functions.ts+7−7
- apps/web/src/lib/rules.functions.ts+4−4
- apps/web/src/lib/runs.functions.ts+2−1
- apps/web/src/lib/server-fn-boundary.test.ts+79−0
- apps/web/src/lib/server/gated-server-fn.ts+50−0
- apps/web/src/lib/workflows.functions.ts+3−3
- apps/web/src/routes/__root.tsx+28−0
- apps/web/src/routes/oauth.popup-callback.tsx+255−0
- apps/web/src/routes/oauth.waitlist.tsx+70−0
- apps/web/src/routes/queue.tsx+55−0
- bun.lock+5−0
- packages/auth/package.json+6−1
- packages/auth/src/access-gate.ts+57−0
- packages/auth/src/access.test.ts+72−0
- packages/auth/src/access.ts+67−0
- packages/auth/src/databuddy.ts+13−0
- packages/auth/src/server.ts+25−0
- packages/contracts/src/access.ts+9−0
- packages/contracts/src/index.ts+1−0
- packages/db/drizzle/0005_blue_legion.sql+5−0
- packages/db/drizzle/meta/0005_snapshot.json+1620−0
- packages/db/drizzle/meta/_journal.json+7−0
- packages/db/src/schema/auth.ts+36−19