19 Commits

Author SHA1 Message Date
belviskhoremk
fe33d15ddc docs: fix wrong task-number reference in Phase 2D plan (Task 8 -> Task 9)
Claude-Session: https://claude.ai/code/session_01NhxA4npAXAxmCDEJt6kxSH
2026-08-13 08:38:29 +02:00
belviskhoremk
64a0ee5a84 docs: add Phase 2D implementation plan
Claude-Session: https://claude.ai/code/session_01NhxA4npAXAxmCDEJt6kxSH
2026-08-13 08:24:13 +02:00
belviskhoremk
510847eac2 docs: add Phase 2D design spec (site content CMS + admin redesign)
Claude-Session: https://claude.ai/code/session_01NhxA4npAXAxmCDEJt6kxSH
2026-08-13 08:12:37 +02:00
belviskhoremk
063874b60c docs: proactively fix the vi.fn spread-args TS2556 pattern in remaining tasks
Task 3's implementer independently hit and fixed this exact bug
(a vi.fn() given a zero-arg implementation, then invoked via a spread
of unknown[] args inside a vi.mock factory, fails tsc -b with TS2556).
Applied the same fix (explicit vi.fn<...> generic type) to the other
occurrences of this pattern still written the old way in this plan's
Task 3 and Task 4 sections, so those implementers don't have to
rediscover it from scratch. Task 5, 10, and 11's occurrences were
checked and found to already use safe patterns (single literal-arg
calls, or bare vi.fn() with no implementation) that don't trigger this.

Claude-Session: https://claude.ai/code/session_01NhxA4npAXAxmCDEJt6kxSH
2026-08-12 20:11:15 +02:00
belviskhoremk
72fa3e0f90 docs: fix plan's Task 7-9 test mocking approach
Task 3's review surfaced that the plan's original vi.importActual-based
mocking for Shop.test.tsx/Home.test.tsx/Book.test.tsx would execute the
real data-layer modules, which import the real Supabase client and
construct it at module-load time via createClient(VITE_SUPABASE_URL,
...) -- throwing "supabaseUrl is required" in a test env with no .env
file, before the test even runs.

Switched all three to mock ../lib/supabase directly instead, matching
the pattern Task 3's own products.test.ts already uses successfully.
Also fixed 3 occurrences of `err instanceof Error ? err.message :
String(err)` in the planned Shop.tsx/Home.tsx/Book.tsx error handling
-- fetchProducts/fetchServices throw the raw Postgrest error object
(not necessarily an Error instance), so this would have rendered
"[object Object]" instead of the real message in the mocked test
scenario.

Claude-Session: https://claude.ai/code/session_01NhxA4npAXAxmCDEJt6kxSH
2026-08-12 20:09:10 +02:00
belviskhoremk
80f634d93a docs: add Phase 2C public site live data implementation plan
Claude-Session: https://claude.ai/code/session_01NhxA4npAXAxmCDEJt6kxSH
2026-08-12 19:50:40 +02:00
belviskhoremk
3a64090a39 docs: add Phase 2C public site live data design spec
Claude-Session: https://claude.ai/code/session_01NhxA4npAXAxmCDEJt6kxSH
2026-08-12 19:28:12 +02:00
belviskhoremk
3c7bb59421 docs: add Phase 2B admin panel implementation plan 2026-08-12 10:38:20 +02:00
belviskhoremk
ab0e338d2b docs: add Phase 2B admin panel design spec
Claude-Session: https://claude.ai/code/session_01NhxA4npAXAxmCDEJt6kxSH
2026-08-12 10:28:03 +02:00
belviskhoremk
7d8d89d0fc chore: remove Firebase backend code, replaced by Supabase (see 2026-08-08 spec)
Deleted all Firebase-specific files and directories:
- Configuration: .firebaserc, firebase.json, firestore.* files, storage.rules
- Cloud Functions: functions/ directory (package.json, source, config)
- Tests: firebase-tests/, vitest.rules.config.ts
- Scripts: scripts/seed.ts
- Source: src/lib/firebase.ts and .test.ts
- Environment: .env.example

Removed dependencies:
- firebase (main package)
- firebase-admin, firebase-tools (dev)
- @firebase/rules-unit-testing (dev)

Removed scripts:
- test:rules (Firebase emulator tests)
- seed (Firestore seed script)

Updated package.json via npm install (729 packages removed)
Updated .gitignore (removed functions/ entries)
Updated vite.config.ts (removed firebase-tests and functions exclusions)

All tests, builds, and lints pass cleanly. No Firebase references remain in
the codebase (only in historical spec documents in docs/).

Claude-Session: https://claude.ai/code/session_01NhxA4npAXAxmCDEJt6kxSH
2026-08-08 12:39:39 +00:00
belviskhoremk
0dbdee9f95 Add implementation plan for Phase 2 sub-project A on Supabase 2026-08-08 12:34:57 +00:00
belviskhoremk
de845ef6e5 Add design spec for Phase 2 sub-project A on Supabase (replaces Firebase design) 2026-08-08 12:29:21 +00:00
belviskhoremk
5821b630f6 fix: address final review findings — lint, Node engine, remaining-work doc, create-rule validation 2026-08-05 00:35:50 +00:00
belviskhoremk
ca1146a3a8 Add implementation plan for Phase 2 sub-project A: backend foundation 2026-08-04 23:48:03 +00:00
belviskhoremk
c06891eebb Add design spec for Phase 2 sub-project A: backend foundation 2026-08-04 23:39:33 +00:00
belviskhoremk
36569e224c Add implementation plan for frontend visual overhaul 2026-08-03 22:37:09 +00:00
belviskhoremk
bd81222922 Add design spec for frontend visual overhaul (3D hero, imagery, page polish) 2026-08-03 22:30:56 +00:00
belviskhoremk
0ae6ceab62 Add Phase 1 implementation plan for Braids by Mira public site 2026-08-03 16:20:18 +00:00
belviskhoremk
95d3845cf3 Add Phase 1 design spec for Braids by Mira public site 2026-08-03 16:14:48 +00:00