Claude
6947113027
feat(web): marketing Home page and the product component library (ADR 0023)
...
Product UI components are built once at design size from the Figma file and reused by the marketing mockups and, later, the app. Text contrast tokens now meet WCAG AA in both themes, with a test. Pricing stays hidden until decided.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_014SdXCbrN5PtGExkpvMaMHx
2026-10-12 15:25:50 +00:00
Claude
913d7a8832
feat(web): marketing Button, Nav (with mobile menu) and Footer from Figma, test-first
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_014SdXCbrN5PtGExkpvMaMHx
2026-10-12 15:00:38 +00:00
Claude
e314819629
feat(web): migrate to Next.js App Router and add design tokens (ADR 0018)
...
The Sprint 1 shell moves to /app with its own root layout so its dark theme does not leak. Figma tokens ported with light and dark parity.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_014SdXCbrN5PtGExkpvMaMHx
2026-10-12 14:55:59 +00:00
SinachPat
e9de6ba62c
fix: store session token on signup and send it to /chat
...
Mirror to GitHub / mirror (push) Canceled after 0s
- web: App stores sessionToken and passes to useChat; useChat sends Authorization header
- web: ChatPanel adds wursor-message-user/agent test hooks
- verified full UI flow (signup -> chat -> working -> reply -> approve -> preview)
2026-08-17 21:16:43 +01:00
SinachPat
060b181e71
feat: wire chat to the agent loop (POST /chat)
...
Mirror to GitHub / mirror (push) Canceled after 0s
- api: /chat route runs runAgent (session-required, 503 when unconfigured)
- api: index.ts builds OpenRouterLlmClient + WpRestExecutor from env; loads .env
- web: useChat calls /chat with mock fallback; proxy /chat+/sites+/health
- .env.example: DATABASE_URL empty by default (in-memory dev)
- 111 unit tests green; smoke-tested signup+chat
2026-08-17 17:19:33 +01:00
SinachPat
69287ebec0
feat: build the chat + preview + approve interface
...
Mirror to GitHub / mirror (push) Canceled after 0s
- web: two-pane app chrome (chat panel + browser-framed preview)
- ChatPanel, Preview, ApproveBar components + useChat (mock agent for now)
- Fluent/Figma design system (Inter, dark chrome, elevation, motion)
- 107 unit tests + Playwright e2e green; web typechecks + builds
2026-08-17 17:10:25 +01:00
SinachPat
69b2481299
feat: Sprint 2 — WordPress plugin (auth/api/site-info/admin) + web SiteConnector
...
Mirror to GitHub / mirror (push) Canceled after 0s
- plugin: Wursor_Auth (token hashing, HMAC, scoped tokens), Wursor_API (REST + auth), Wursor_Site_Info (builder/capabilities/preflight), Wursor_Admin
- plugin: test-auth.php (10 auth tests, run in a WP+PHP env)
- web: SiteConnector pairing UI (code + poll + states)
- api: PluginClient signs full REST route (matches WP get_route)
- 92 unit tests green
2026-08-15 23:17:16 +01:00
SinachPat
9733ba6e3c
feat: Sprint 1 slice 1 — API signup + web signup/chat shell
...
Mirror to GitHub / mirror (push) Canceled after 0s
- api: Fastify POST /auth/signup (validation, scrypt hash, in-memory store)
- web: React+Vite SignUp form and chat shell with dev proxy
- 35 tests green (api 5, web 2, e2e 28)
2026-08-15 19:53:13 +01:00
SinachPat
6e59a8a36b
feat: Phase 0 workspace, spikes, and golden harness
...
Stand up the monorepo skeleton and land the first Phase 0 artifacts:
pairing threat model, plugin catalog, builder detect, 20-prompt golden
harness, and synthetic 2GB mirror timing.
2026-08-15 09:44:43 +01:00