Commit Graph
104 Commits
Author SHA1 Message Date
Lucas WintherandClaude Opus 5 e8293c7e8c feat: add GachaEvent schema and stable event IDs
Schema-level invariants enforce that endsAt is null exactly when
endPrecision is "unknown", and that regionEnds is populated exactly when
regionScoped is set, so an event object cannot be constructed in a state
the UI would misrender.

Event IDs double as localStorage keys on the client, so slugify() and
eventId() carry a warning: changing them orphans every user's completion
marks with no server-side recovery.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
2026-08-15 00:10:35 +02:00
Lucas WintherandClaude Opus 5 3a1c604284 chore: add Bun + TypeScript project scaffolding
Bun is the runtime, bundler, test runner and SQLite driver, so zod is the
only dependency. Strict TS with noUncheckedIndexedAccess.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
2026-08-15 00:10:35 +02:00
Lucas Winther 5db608563f Initial agent auxilliary files. 2026-08-14 23:45:35 +02:00
Lucas Winther 308f288e6a Initial commit 2026-08-14 23:27:06 +02:00