-
840e86b9af
Merge feature/deeper-combat into develop
develop
Keith Solomon
2026-07-27 08:00:01 -05:00
-
-
8bec9baab6
feat(combat): wade visual + smoke test budget
Keith Solomon
2026-07-27 00:10:53 -05:00
-
09f2bda924
feat(combat): water traversal costs 3 and ends the turn
Keith Solomon
2026-07-26 23:38:13 -05:00
-
fb06da3f28
feat(combat): forest concealment roll, only on Forest terrain
Keith Solomon
2026-07-26 23:12:16 -05:00
-
241195bbc5
feat(combat): flanking bonus caps at +30, diagonal allies do not count
Keith Solomon
2026-07-26 22:49:42 -05:00
-
4cc457c231
feat(combat): to-hit roll, ±15% damage variance, crits, and new log format
Keith Solomon
2026-07-26 21:41:53 -05:00
-
-
9eac4981f4
docs: add Plan 5 implementation plan (deeper combat)
Keith Solomon
2026-07-26 18:39:54 -05:00
-
f72072f3ef
docs: add Plan 5 design spec (deeper combat)
Keith Solomon
2026-07-26 18:25:58 -05:00
-
44199ec0a8
chore: address Plan 4 deferred-minors (stale-cookie cleanup pass)
Keith Solomon
2026-07-26 16:38:05 -05:00
-
3185bc3602
fix: detect stale CSRF cookie pair and auto-rotate
Keith Solomon
2026-07-26 16:07:51 -05:00
-
2db141efc6
fix: route the real secret to the action handlers (was reading empty $_SERVER['__csrf_secret'])
Keith Solomon
2026-07-26 11:44:51 -05:00
-
d80ceae128
fix: declare grid-template-columns so the battle grid lays out as a grid, not a single column
Keith Solomon
2026-07-26 11:21:49 -05:00
-
2ea8cfd83d
fix: CSRF flow ships the raw token, not the HMAC cookie
Keith Solomon
2026-07-26 11:01:36 -05:00
-
73254cbf80
Merge feature/battle-interface into develop
Keith Solomon
2026-07-26 10:28:36 -05:00
-
-
0058a99939
docs: sync plan with shipped corrections (hold-the-line, smoke-test matchId)
Keith Solomon
2026-07-26 10:26:42 -05:00
-
d53a84ce85
fix: enable action-mode buttons in match view (final-review Critical)
Keith Solomon
2026-07-26 03:58:03 -05:00
-
48e7fa9a25
ci: add end-to-end smoke test workflow
Keith Solomon
2026-07-26 03:43:57 -05:00
-
4c2586908f
fix: use server-minted matchId in smoke test actions
Keith Solomon
2026-07-26 03:32:54 -05:00
-
d118920739
test: add end-to-end smoke test for the battle interface
Keith Solomon
2026-07-26 03:25:57 -05:00
-
06f9c9e37c
fix: add .bf-unit--active CSS rule
Keith Solomon
2026-07-26 02:05:29 -05:00
-
22e38cfebd
feat: add match.js renderer and battle UI styles
Keith Solomon
2026-07-26 01:56:17 -05:00
-
da4982e55d
feat: register bundled-scenario and match-action routes
Keith Solomon
2026-07-26 01:19:49 -05:00
-
df8d4023ba
feat: add four per-verb match action handlers
Keith Solomon
2026-07-26 01:05:14 -05:00
-
47dc95fa56
feat: add MatchActionSupport for shared CSRF/turn/state verification
Keith Solomon
2026-07-26 00:36:49 -05:00
-
b444f98aa0
feat: add match view server-rendered shell
Keith Solomon
2026-07-26 00:13:40 -05:00
-
51f57d309a
feat: render the bundled-scenarios list on the home page
Keith Solomon
2026-07-26 00:01:00 -05:00
-
b8451112d3
feat: add GetBundledScenario handler with fixture validation
Keith Solomon
2026-07-25 23:47:09 -05:00
-
1f9e76afef
feat: add GetBundledScenarios handler with manifest-driven list
Keith Solomon
2026-07-25 23:37:27 -05:00
-
c2f9e0a970
fix: update hold-the-line summary to match corrected fixture
Keith Solomon
2026-07-25 23:19:56 -05:00
-
01029b43b7
feat: add three bundled scenario fixtures and manifest
Keith Solomon
2026-07-25 23:15:57 -05:00
-
9314fc5870
feat: mint matchId and turnToken in PostStartMatch
Keith Solomon
2026-07-25 22:52:34 -05:00
-
3d8c1cfdb2
feat: add TurnToken HMAC for match-action anti-cheat
Keith Solomon
2026-07-25 22:39:29 -05:00
-
a0dcff2c2a
fix: round-trip match objectives through ScenarioSerializer
Keith Solomon
2026-07-25 22:21:25 -05:00
-
-
a6d93dd1d3
docs: add Plan 4 implementation plan (battle interface, bundled scenarios, smoke test)
Keith Solomon
2026-07-25 21:56:19 -05:00
-
e8522a510e
docs: clarify matchId lifecycle, body shape, and bundled manifest in Plan 4 spec
Keith Solomon
2026-07-25 21:36:52 -05:00
-
fbb6960be2
docs: add Plan 4 design spec (battle interface, bundled scenarios, smoke test)
Keith Solomon
2026-07-25 21:35:43 -05:00
-
ced4363d20
Merge feature/frontend-js into develop
Keith Solomon
2026-07-12 21:36:54 -05:00
-
-
02bf9aa390
feat: add battlefield grid editor and CI lint step
Keith Solomon
2026-07-12 20:21:38 -05:00
-
facbb1a311
feat: add localStorage helpers and wire team editor pre-fill
Keith Solomon
2026-07-12 19:58:10 -05:00
-
8eefd749be
chore: add Node toolchain, archetypes.json, and placeholder images
Keith Solomon
2026-07-12 19:46:29 -05:00
-
-
78565cfae9
docs: add Plan 3c implementation plan (JavaScript frontend)
Keith Solomon
2026-07-12 19:24:12 -05:00
-
7acda302e8
docs: add Plan 3c design spec (JavaScript frontend)
Keith Solomon
2026-07-12 19:15:01 -05:00
-
eef8724626
Merge feature/editor-handlers-and-views into develop
Keith Solomon
2026-07-07 10:11:27 -05:00
-
-
b4495f24af
chore: remove unused match-stub and upload-result view templates
Keith Solomon
2026-07-06 23:24:27 -05:00
-
ba8fd00411
refactor: route GetHomePage through the home.php template
Keith Solomon
2026-07-06 23:23:32 -05:00
-
d15dfc6835
fix: escape scenario id when serialising saved page
Keith Solomon
2026-07-06 23:22:42 -05:00
-
61abb93e59
fix: align upload-asset URL contract end-to-end
Keith Solomon
2026-07-06 23:21:33 -05:00
-
5d9af7a4fd
test: cover full create-and-save flow end-to-end
Keith Solomon
2026-07-06 22:59:18 -05:00
-
d387caca86
feat: wire the front controller and harden userToken path
Keith Solomon
2026-07-06 22:36:34 -05:00
-
2dc7bc1130
feat: add image upload and start-match handlers
Keith Solomon
2026-07-06 22:18:27 -05:00
-
7cb670b512
feat: add battlefield editor GET and POST handlers
Keith Solomon
2026-07-06 22:05:47 -05:00
-
12b1547fac
feat: add team editor GET and POST handlers
Keith Solomon
2026-07-06 21:54:59 -05:00
-
6a0b147e4e
feat: add battlefield, match stub, and upload result templates
Keith Solomon
2026-07-06 21:37:55 -05:00
-
7e6240733b
feat: add home and team editor templates
Keith Solomon
2026-07-06 21:30:17 -05:00
-
c2233c1639
feat: add shared layout template
Keith Solomon
2026-07-06 21:21:17 -05:00
-
-
58b3bc8ece
docs: add Plan 3b implementation plan (handlers, views, front controller)
Keith Solomon
2026-07-06 21:10:59 -05:00
-
db12577e78
docs: add Plan 3b design spec (handlers, views, front controller)
Keith Solomon
2026-07-06 21:00:20 -05:00
-
87a7e10c06
Merge feature/persistence-backend into develop
Keith Solomon
2026-07-06 19:33:57 -05:00
-
-
3e4184f08d
feat: add home page and asset-serving handlers
Keith Solomon
2026-07-06 18:57:08 -05:00
-
0f4a220e70
feat: add ScenarioDraft form-field adapter
Keith Solomon
2026-07-06 18:46:38 -05:00
-
c24964ff96
feat: add image upload service
Keith Solomon
2026-07-06 18:36:34 -05:00
-
6399e2d86c
feat: add image content validator
Keith Solomon
2026-07-06 18:27:32 -05:00
-
288c42e176
feat: add JSON serializer for scenarios and match state
Keith Solomon
2026-07-06 18:12:23 -05:00
-
8b83df60cd
feat: add Http router
Keith Solomon
2026-07-06 17:58:56 -05:00
-
3263975d2a
feat: add Request and Response value objects
Keith Solomon
2026-07-06 17:52:29 -05:00
-
9ce0c2ac20
feat: add CSRF token store and verifier
Keith Solomon
2026-07-06 17:44:41 -05:00
-
67de6dab75
feat: add output escaping helpers
Claude
2026-07-06 17:35:58 -05:00
-
a05baeb4f6
chore: track tests/Integration directory with placeholder
Keith Solomon
2026-07-06 17:24:41 -05:00
-
eed678e688
chore: add web toolchain and infrastructure for Plan 3
Keith Solomon
2026-07-06 17:22:46 -05:00
-
-
17782aab33
docs: complete Plan 3a scope notes (handlers/views/front controller stubbed for Plan 3b)
Keith Solomon
2026-07-06 16:01:22 -05:00
-
8df51fc1ed
docs: in-progress Plan 3a (PHP backend) - 10 of ~19 tasks
Keith Solomon
2026-07-06 15:58:55 -05:00
-
18520fee22
docs: add Plan 3 design spec (persistence, editors, uploads)
Keith Solomon
2026-07-06 15:36:21 -05:00
-
1d69e89faf
chore: add editor settings and initial project notes
Keith Solomon
2026-07-06 14:34:43 -05:00
-
02addec8df
docs: include Plan 2 implementation plan in repo
Keith Solomon
2026-07-06 14:33:41 -05:00
-
86d82c353d
Merge feature/curated-content-and-objectives into develop
Keith Solomon
2026-07-05 20:38:44 -05:00
-
-
39b15c35da
refactor: tighten useAbility and Scenario archetype lookup
Keith Solomon
2026-07-05 20:33:03 -05:00
-
12f5c0bd3a
test: cover scenario to match flow with ability and objective
Keith Solomon
2026-07-05 20:23:28 -05:00
-
6fffaa2306
feat: validate scenario deployment zones and objectives
Keith Solomon
2026-07-05 20:11:35 -05:00
-
84fb175c0c
feat: resolve objective control and objective victory
Keith Solomon
2026-07-05 20:02:13 -05:00
-
6befe7b3e2
feat: support curated abilities and objective victory

Keith SolomonandKeith Solomon
2026-07-05 19:43:17 -05:00
-
088e85c9b4
feat: model scenarios and start match snapshots
Keith Solomon
2026-07-05 19:27:22 -05:00
-
06632ff9b3
feat: model objectives, deployment zones, and victory conditions
Keith Solomon
2026-07-05 19:11:24 -05:00
-
e70b60696c
feat: track archetype, abilities, and buff on unit state
Keith Solomon
2026-07-05 18:59:55 -05:00
-
88149ab1cf
feat: catalog curated abilities and definitions
Keith Solomon
2026-07-05 18:47:20 -05:00
-
0ac8c06c5e
feat: catalog curated unit archetypes and templates
Keith Solomon
2026-07-05 18:41:53 -05:00
-
-
78fc802cdc
fix: enforce LF for PHP files
Keith Solomon
2026-07-04 18:07:00 -05:00
-
de0bc9c43f
ci: pin workflow action revisions
Keith Solomon
2026-07-04 16:15:54 -05:00
-
07e58c84fe
ci: enforce PHP quality checks
Keith Solomon
2026-07-04 16:11:14 -05:00
-
fef22d7b56
fix: guard invalid turn transitions
Keith Solomon
2026-07-04 16:07:36 -05:00
-
acfbbf4a91
feat: add alternating team turns
Keith Solomon
2026-07-04 16:02:49 -05:00
-
7588b304e1
refactor: reuse position distance for attacks
Keith Solomon
2026-07-04 15:58:29 -05:00
-
3c6359243a
feat: resolve attacks and elimination victory
Keith Solomon
2026-07-04 15:53:57 -05:00
-
3eba823e52
fix: enforce executable movement state
Keith Solomon
2026-07-04 15:47:29 -05:00
-
1550e2920b
feat: validate and resolve unit movement
Keith Solomon
2026-07-04 15:37:05 -05:00
-
5297b41208
fix: enforce immutable match state invariants
Keith Solomon
2026-07-04 15:33:05 -05:00
-
94560da5b4
test: verify original match remains unchanged
Keith Solomon
2026-07-04 15:25:06 -05:00
-
0c5e824942
feat: model immutable combat state
Keith Solomon
2026-07-04 15:23:00 -05:00
-
4421c5ae32
test: strengthen battlefield boundary coverage
Keith Solomon
2026-07-04 15:19:06 -05:00
-
b789f1b61f
fix: validate battlefield reachability inputs
Keith Solomon
2026-07-04 15:15:08 -05:00
-
189be5bc64
feat: model battlefield terrain and movement costs
Keith Solomon
2026-07-04 15:08:40 -05:00