tevans
95833bd2c1
feat: VANITY d6-pool rule-pack
2026-07-20 16:22:13 +01:00
tevans
605b107c77
feat: CoC 7e d100 rule-pack
2026-07-20 16:18:27 +01:00
tevans
4ebf8d3994
feat: rule-pack contract v2 (params + summary) and registry listing
2026-07-20 16:15:02 +01:00
tevans and Claude Opus 4.8
fee86b8dd1
Plan: The Director Slice 3 (dice rule-packs: CoC d100, VANITY d6, Panic & Glory, Dee Sanction + tray selector)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-20 16:13:06 +01:00
tevans
8a6de064ad
chore: gitignore dist/ build output
2026-07-20 15:57:04 +01:00
tevans
21d261cc2d
feat: wire NPC + art trays and prop viewer into the shell
2026-07-20 15:51:58 +01:00
tevans
e648c17e79
refactor: dedupe art-tray thumbnail template; test real escaping path
2026-07-20 15:47:06 +01:00
tevans
13c71c5aae
feat: <art-tray> pencil-art library search UI with HTML escaping
2026-07-20 15:38:47 +01:00
tevans
5bdeef654e
refactor: shared escapeHtml util; escape prop-viewer src/alt
2026-07-20 15:35:57 +01:00
tevans and Claude Opus 4.8
9a5e4c4ce4
feat: <prop-viewer> fullscreen prop overlay
...
Implements fullscreen image overlay component for displaying art to players.
Methods: show(src, label), dismiss(), isOpen(). Starts hidden. Clicking
overlay dismisses. Strict TDD: 3 tests passing.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-20 15:30:56 +01:00
tevans
e58d833ba2
feat: seed pencil-art manifest + validator
2026-07-20 15:27:59 +01:00
tevans
6b88e0fa76
feat: pure tag-ranked art library search
2026-07-20 15:24:34 +01:00
tevans
f61eb48038
fix: HTML-escape seed + NPC fields in <npc-tray> to prevent markup breakage
2026-07-20 15:21:59 +01:00
tevans
cb86a780b9
feat: <npc-tray> seed-to-character generator UI
2026-07-20 15:17:30 +01:00
tevans
2819305b56
feat: pure NPC generator over genre tables
2026-07-20 15:13:57 +01:00
tevans and Claude Opus 4.8
03ce5e1606
feat: NPC noir genre table pack + genre registry
...
Implements Slice 2 Task 1: Noir/Blade Runner genre pack with curated
string tables (names, looks, manners, wants, secrets, voices) and a
registry mapping id->pack for use by offline NPC generator.
Tests: 2/2 pass (noir structure + registry resolution).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-20 15:10:35 +01:00
tevans and Claude Opus 4.8
61fb2228b9
Plan: The Director Slice 2 (NPC generator + offline art library)
...
8 TDD tasks: noir genre pack + registry, pure NPC generator, <npc-tray>,
art search, art manifest, <prop-viewer>, <art-tray>, and shell/rail wiring
(open-tool for npc/art, keep-npc persistence, show-prop fullscreen).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-20 15:07:48 +01:00
tevans
d967eb6a88
docs: proper README (overview, quick start, architecture, scenario model, roadmap)
2026-07-20 14:55:34 +01:00
tevans
9ad51a3a0c
Merge initial GitHub repo commit (README)
2026-07-20 14:46:03 +01:00
tevans
083549a7db
first commit
2026-07-20 14:43:31 +01:00
tevans
d0c9378c40
fix: precache only stable shell paths so SW install survives a production build
2026-07-20 14:31:26 +01:00
tevans
a78f8e9a3a
chore: commit package-lock.json for reproducible installs
2026-07-20 14:30:53 +01:00
tevans
b4fdb969a1
fix: guard service-worker runtime cache on res.ok/basic + waitUntil
2026-07-20 14:25:07 +01:00
tevans
539798f8d0
feat: installable offline PWA (manifest + service worker)
2026-07-20 14:21:56 +01:00
tevans
1348048d50
feat: <gm-shell> wiring, styles, and AFTERIMAGE boot
...
Adds the gm-shell root element that owns store/clock/stamps/scenario,
mounts director-rail and dice-tray, handles reached (stamp + persist)
and open-tool (toggle dice tray), and boots the AFTERIMAGE scenario in
main.js. Also adds tests/setup.js + a vite.config.js setupFiles entry:
Node's newer built-in global `localStorage` shadows jsdom's per-window
implementation in vitest's jsdom environment, leaving localStorage
undefined in tests until replaced with a real jsdom-backed instance.
2026-07-20 14:15:50 +01:00
tevans and Claude Opus 4.8
549cb190d2
feat: <dice-tray> roller wired to rule-packs
...
Implement Task 10: dice-tray Web Component with:
- Polyhedral die picker (d4-d20, d100)
- Deterministic roll() using injected RNG
- Rule-pack interpretation for successes/ones/verdict
- Event emission on roll completion
- Reactive rendering on die type/count change
TDD: 3 passing tests (picker render, roll+interpret+verdict, die-type switching)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-20 14:05:52 +01:00
tevans
579dea996d
feat: <director-rail> pacing component
2026-07-20 14:01:51 +01:00
tevans
80c8ecb5c8
feat: elapsed + drift formatting helpers
2026-07-20 13:58:49 +01:00
tevans
c01917d38a
feat: scenario validator + AFTERIMAGE pilot data
2026-07-20 13:55:33 +01:00
tevans
e9fa9366fa
feat: Year-Zero rule-pack + rule-pack registry
2026-07-20 13:52:41 +01:00
tevans
cf028e9a08
feat: seedable dice core with pools
2026-07-20 13:49:54 +01:00
tevans
1861f4512f
feat: timeline drift + next-hard-trigger analysis
2026-07-20 13:46:36 +01:00
tevans
40ac770304
feat: pure session clock with pause/resume
2026-07-20 13:43:02 +01:00
tevans
bf2dacefc1
feat: namespaced localStorage store with export/import
2026-07-20 13:40:01 +01:00
tevans
e4aafe5147
chore: scaffold Vite + Vitest PWA project
2026-07-20 13:36:38 +01:00
tevans and Claude Opus 4.8
415f8c61bf
Plan: The Director Slice 1 (shell + rail + data model + Year-Zero dice)
...
12 TDD tasks proving the vertical slice end-to-end on the AFTERIMAGE pilot:
scaffold, store, clock, timeline/drift, dice core, Year-Zero rule-pack,
scenario validator+data, formatting, <director-rail>, <dice-tray>, <gm-shell>,
and the offline PWA (manifest + service worker).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-20 12:12:00 +01:00
tevans and Claude Opus 4.8
93e9156bd3
Design: The Director — convention GM shell
...
Offline-first PWA (Web Components) with an always-on Director Rail (pacing
co-pilot), one animated dice engine + system rule-packs, offline NPC/art
generators, and a per-scenario data model as source of truth. Sliced roadmap;
Slice 1 = shell + rail + data model + Year-Zero dice, proven on AFTERIMAGE.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-20 12:05:29 +01:00