📊 Daily Overview
Total Activity: 12 commits + 4 merges across 4 repositories
🚀 GitHub Activity
1. VipinKaushik 🔒 — 6 commits + 2 merges
feat(tokens): add P0/P3+ design-system primitives · af65d12
Adds 33 tokens to styles/handoff/tokens.css that were defined in DESIGN.md
but missing from the implementation, blocking every component spec’d in
design/COMPONENT_SPECS.md.Typography (11): —fs-xs/sm/md/lg/xl/2xl/3xl/4xl/5xl + —fs-label-sm/md
(DESIGN.md §4 modular scale + label sub-scale)Semantic UI aliases (6): —ring, —border-subtle, —color-error,
—fg-base/muted/subtle. Single point of override for component CSS.Status pills (4): —transit-status-{scheduled,completed,cancelled,no-show}
(DESIGN.md §8e — appointment status, inherits §8c chip geometry)…
feat(auth): P2 — role claim, edge middleware, soft birth-data gate · 84843dd
Wires Next.js to the -mb/server identity backend via cookie-authenticated
JWT verification. Closes the loop on the P0/P1 identity build (#1, #2 in
VipinKaushik-mb) — VK browser now has a real auth surface.middleware.ts (root)
- Matches /dashboard/:path*
- Verifies vk_access cookie against -mb/server JWKS via jose.createRemoteJWKSet
(algorithm pinned to EdDSA, 5-min cache TTL, auto-refetch on unknown kid)- Unauth → 302 /login?next=
- Wrong role on /dashboard/practitioner/* → rewrite to /not-found (don’t tip
the route exists)- Valid → attaches x-vk-user-id, x-vk-role, x-vk-has-birth-data headers
for server components…
feat(auth): P-D — migrate VK frontend to MB session consumer (α + γ) · 0c49d40
Completes the architecture cutover started in P-C (VipinKaushik-mb#3).
Browser now talks to vipinkaushik.com only; auth primitives stay in MB.Same-origin proxy (α):
app/api/auth/_lib/proxy.ts server-side fetch helper to MB
app/api/auth/discover single-workspace stub
app/api/auth/otp/send proxies /api/auth/otp/generate (adds workspaceSlug)
app/api/auth/otp/verify proxies /api/auth/otp/verify, captures MB’s
Set-Cookie session_token, re-issues as
vk_session scoped to .vipinkaushik.com
app/api/auth/logout forwards revocation, clears vk_session…
fix(lint): drop unused proxyToMb import + initial body assignment · 2dc3f64
CI lint caught two issues in P-D:
- app/api/auth/_lib/proxy.ts:32 —
let body: unknown = nullinitial value
shadowed before any read. Uselet body: unknown;(no-useless-assignment).- app/api/auth/logout/route.ts:8 —
proxyToMbimported but never used;
logout uses bare fetch with Authorization header to MB, not the proxy
helper.
fix(deps): add zod via pnpm — VK boundary validation in /api/auth/* · f4671c3
Previous commit used npm install which doesn’t touch pnpm-lock.yaml.
CI runs pnpm install, so zod was missing on the build runner.
Usingpnpm add zodupdates both package.json and pnpm-lock.yaml.
chore: enforce pnpm — delete stale npm lockfile + gitignore · c59c1f0
VK is the only project in the workspace on pnpm (packageManager: pnpm@10.32.1).
Mixed lockfiles cause CI confusion (see PR #26 build failures — npm install
didn’t update pnpm-lock.yaml, CI couldn’t find zod).Workspace convention:
- VipinKaushik (this repo): pnpm
- VipinKaushik-mb/server, /ui, Astroclarity, Astroclarity_Reddit: npm
Documented in workspace CLAUDE.md (separate repo).
Merges:
- Merge pull request #26 from Rupali59/feat/mb-foundations
- Merge pull request #24 from Rupali59/feat/scaffold-sites
2. VipinKaushik-mb 🔒 — 3 commits + 1 merges
feat(server): P0 — auth-only E2E vertical slice for VK identity · ad1ce8c
Greenfield identity backend at -mb/server (cookie-authenticated, parallel to
the existing MB plugin gateway routes). Proves cookie domains, JWKS rotation
with overlap window, Next-edge JWT verification, refresh rotation with
reuse detection, rate limiting, and audit-log writes — all wired together
before the rest of the identity surface lands in P1.…
feat(server): P2 — migrate identity to MB session consumer · a2433f4
Replaces the P0/P1 parallel identity stack with a thin MB consumer layer.
Auth primitives (OTP, passkey, session lifecycle) move to motherboard-identity
where they already existed. -mb keeps VK role assignment + VK domain data.Architecture (locked in docs/AUTH_INTEGRATION_PLAN.md, option 2b + α + γ):
Browser → vipinkaushik.com only (no MB cross-origin)
VK Next.js proxies /api/auth/* to MB server-side
vk_session cookie scoped to .vipinkaushik.com
-mb/server reads MB sessions via direct Mongo lookup (sha256 + findOne)
Role lives in -mb’s User collection, keyed by mb_user_id…
P2: migrate identity to MB session consumer (α + γ) · acaf7db
P2: migrate identity to MB session consumer (α + γ)
Merges:
- Merge pull request #1 from Rupali59/feat/p0-identity-build
3. vipin-kaushik-content 🔒 — 2 commits
docs: lock auth integration plan + supporting docs · 271594e
Three docs that map the auth architecture decision + execution:
docs/AUTH_INTEGRATION_PLAN.md (358 lines)
- Architecture review caught P0/P1 duplicated motherboard-identity.
- Locked Option 2b + α + γ: MB owns auth primitives; -mb owns VK role;
same-origin proxy through VK Next.js; direct Mongo session reads.- Phases A-E all done 2026-05-13:
- VipinKaushik-mb#3 (P-C: -mb consumer)
- VipinKaushik#26 (P-D: VK frontend consumer)
…
chore(workspace): cleanup — gitignore sibling repos + env, commit docs+design+scripts · ba1ca9b
Workspace repo cleanup in one pass:
.gitignore additions:
- VipinKaushik/ — sibling repo with its own .git (was untracked, would show
as phantom submodule on first commit)- sanskrit-texts/ — same
- node_modules/ — for workspace-level scripts (package.json: sync-persona)
- .env / .env.local / .env.*.local — hygiene
CLAUDE.md additions:
- Package manager convention (locked 2026-05-13) — VK is pnpm, everything
else is npm. Caught after PR #26 failed CI because npm install didn’t
update pnpm-lock.yaml. Documented to prevent recurrence.…
4. Manav-portfolio 🔒 — 1 commits + 1 merges
feat: intent-first design pass — brand system, new routes, Vercel lint gate · d9f8573
- intent-first redesign across Hero, Films, Quote, Availability, ContactStrip, MobileNav, Topbar
- new routes: /about, /credits, /progress, /brand (with brand-tokens.css)
- brand page: typography reference directions (EB Garamond confirmed active), component states, motion demos
- new atoms: BrandPageTOC, MobileNavPreview
- remove FilmsCarouselWrapper (replaced by intent-driven FilmsSection)
- vercel.json: add buildCommand (lint + build) so Vercel deploys only on clean builds
- CLAUDE.md: reflect current stack, routes, next-dev.sh scripts
Merges:
- Merge pull request #1 from Rupali59/feat/intent-first-design-pass
📈 Development Analytics
Daily Summary
| Metric | Today |
|---|---|
| Commits | 12 |
| Merges | 4 |
| Skill runs | 0 |
| Decisions | 0 |
| Eurekas | 0 |
| CEO plans | 0 |
| Notes touched | 0 |
Decisions logged today
None today.
Eurekas
None today.
Strategic plans authored
None today.
Notes touched
None today.
Running totals (as of this date)
Active days last 90: 58 / 90 (substantive)
Days with any signal last 90: 61 / 90
Skill runs (since 2026-03-25): 74
Commits this year (authored): 884
Decisions logged this year: 0
Eurekas this year: 5
CEO plans authored this year: 12
Projects touched this year: 52
Top projects last 90: portfolio (26d), Mothership (22d), motherboard-shared (13d), Astroclarity (11d), motherboard-core (9d)
💭 My Notes
[Your own thoughts, observations, or context for this day — this section is never overwritten by automation]