Commit Graph

10 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
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
3c7bb59421 docs: add Phase 2B admin panel implementation plan 2026-08-12 10:38:20 +02:00
belviskhoremk
0dbdee9f95 Add implementation plan for Phase 2 sub-project A on Supabase 2026-08-08 12:34:57 +00:00
belviskhoremk
ca1146a3a8 Add implementation plan for Phase 2 sub-project A: backend foundation 2026-08-04 23:48:03 +00:00
belviskhoremk
36569e224c Add implementation plan for frontend visual overhaul 2026-08-03 22:37:09 +00:00
belviskhoremk
0ae6ceab62 Add Phase 1 implementation plan for Braids by Mira public site 2026-08-03 16:20:18 +00:00