claude and Claude Opus 4.8
c29f793973
feat: mobile-first redesign (warm notebook aesthetic, thumb-zone capture bar)
...
- Editorial masthead (Fraunces + Spline Sans), warm paper/ink palette with
terracotta accent, matching dark mode
- Thumb-zone composer: single capture input + round submit, optional note
toggle, refocus after add for rapid capture
- Mobile-first CSS: 44-50px touch targets, 16px inputs (no iOS zoom),
edge-to-edge scroll-snap list chips, safe-area insets, tap-highlight off,
contained overscroll; desktop as min-width enhancement
- Staggered task-card entrance (reduced-motion aware), themed empty states
- Head: theme-color light/dark, Apple web-app metas, lang attr, font preconnect
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-10 09:49:45 +00:00
claude
65543cb6ee
fix: add PUT /tasks/mirror (array full-replace of desktop Idle backlog)
...
The desktop pushes its full Idle backlog as a JSON array to /tasks/mirror, not per-task.
Previously /tasks/mirror matched tasks/[id].put.ts (id=mirror) and rejected the array with
400. New static route validates per-element, accepts empty arrays, upserts each as
consumed=true (desktop-owned), deletes consumed=true rows not in the array, and leaves
web-created consumed=false rows untouched. Mirrors PUT /lists.
2026-06-10 09:35:33 +00:00
claude
812048a0b5
fix: bootstrap-gate auth before mount (krypto-kuns pattern); never call API unauthenticated
...
Root cause: the router-guard adapter let index.vue mount and call the API before
auth resolved, so auth.fetch returned a synthetic 401 (the banner) and the package's
redirect-loop guard could strand the user. Now use the core ZitadelAuth and gate in an
async plugin (Nuxt awaits it before mount), mirroring the working krypto-kuns app.
2026-06-10 08:49:01 +00:00
claude
94ee00b0ff
debug: gated auth diagnostics (AUTH_DEBUG) logging jwt claims on 401
2026-06-10 08:38:00 +00:00
claude
e38a9e43af
chore: ignore playwright artifacts
2026-06-10 08:25:18 +00:00
claude
ab2f9affd1
fix: commit vendored @kuns/zitadel-auth dist (was excluded by dist/ gitignore)
2026-06-10 08:22:38 +00:00
claude
7331fe75e8
feat: dockerfile (node runtime), startup migration, README, runtime env config
2026-06-10 08:16:45 +00:00
claude
56186a1fea
feat: zitadel provisioning script + project-audience scope
2026-06-10 08:07:20 +00:00
claude
f83bb25316
feat: mobile-first web client (login, lists, add task)
2026-06-10 08:01:39 +00:00
claude
285bac4308
feat: list + task endpoints and CORS, verified end-to-end
2026-06-10 07:58:51 +00:00
claude
394bceca5f
feat: zitadel token auth middleware
2026-06-10 07:53:42 +00:00
claude
50173a3809
feat: repository layer with tests
2026-06-10 07:52:31 +00:00
claude
63714f5960
feat: db connection and migration
2026-06-10 07:51:00 +00:00
claude
935ff5b757
feat: scaffold nuxt app
2026-06-10 07:49:40 +00:00
claude
42d01f0673
docs: online inbox implementation plan
2026-06-10 07:47:08 +00:00
claude
0f0e7ee7d2
docs: online inbox design spec
2026-06-10 07:44:23 +00:00