Commit Graph

21 Commits

Author SHA1 Message Date
992ca9d585 test(06-13): assert all CoreState key states and varied 10-step replay (G-06-09-A/B)
- seedState/mutateState/assertRestored now cover every key state: hero base attrs + modifier final atk + location, flags score/coins/stage, map two blocks + active status, enemy hp/atk, replay steps
- Replay seeded with 10 @system/replay steps mixing Up/Right/Down/Left/Teleport/UseItem/Equip/Unequip and varied param types, asserted per step
- New container test loops flags and replay through CoreState across the three compression tiers
- Append 06-13 create-or-append section to 06-COVERAGE-MAP.md; existing #06-09-1..5 skips unchanged
2026-09-15 11:27:57 +08:00
f01c23eba0 test(06-10): cover maximum-pipeline single-monster final damage (G-06-07-A)
- drive real MainDamageCalculator over a monster with 10 top-level specials,
  real aura 25, real support 26, common/special query and final effects
- assert one exact {damage,turn} with full per-branch derivation in comments
- add a control asserting the result differs without the support pipeline
- append the 06-10 coverage-map section (create-or-append, no new codes)
2026-09-15 10:10:44 +08:00
9f9dd11223 test(06-07): add small-map replay playback and second-recording comparison
- play a recorded small-map route with bounded waiting and recording disabled
- assert a second recording equals the first step-by-step (code and param type/value)
- trigger warn 176 and errors 2001-2008 through the real replay commands
- append 06-07 code coverage map rows and record finding #06-07-1
2026-09-14 21:06:39 +08:00
edd4de34dc test(06-07): add enemy combination stage 2 multi-special and aura pipelines
- combine multiple top-level specials through the real damage calculator
- cover real support recursion, aura base/query combination and stage order
- cover final-effect priority order and damage cache markDirty/deleteEnemy/with
2026-09-14 21:06:29 +08:00
bdeafd5cd2 test(06-07): add enemy damage combination stage 1 baselines
- add real-API single-special damage baselines via EnemyManager prefab
- add real EnemyContext single common aura and single guard aura baselines
- inline synthetic fixtures with no production changes
2026-09-14 20:42:00 +08:00
2ff422a682 test(06): restore suite green after replaySystem wiring change 2026-09-14 19:16:32 +08:00
502d87ba26 test(06-09): cover CoreState top-level saveables round trips
- add data-state/test/saveablesRoundTrip.test.ts: public CoreState.saveState/loadState over 5 saveables x 3 compressions, codes 112/113/177/178
- append 06-09 section to 06-COVERAGE-MAP.md (11 codes, create-or-append)
- register #06-09-1..5 suspected defects and the pre-existing test:ci blocker in 06-TEST-FINDINGS.md
2026-09-14 18:58:01 +08:00
cee843981f feat: 录像记录 & CoreState 存储接口 2026-09-14 18:09:45 +08:00
f0fd2f54a1 refactor(event): class-based built-ins, shared utils, single registration
- rewrite every built-in as EventXxx implements BuiltInFunction<P, E>
  (setBlock/moveBlock/deleteBlock/moveHero/moveHeroStep/touchFront/
  insertEvents/insertEvent), matching the EventSetBlock reference style
- move shared helpers to event/utils.ts (getPossibleMap, getPossibleLayer,
  getEventExecutor, enter/exitEventInsert); utils is not exported via index
- move per-class helpers into private methods (EventTouchFront and
  EventInsertEvents collectInvocations)
- use IObjectMover.push for move sequences instead of manual step calls
- registrations.ts: one createEventRegistrations() writing the eight entries
  in order, categories separated by single-line comments
- remove EventBuiltinName; classes own short string names
- update event tests; core.ts uses createEventRegistrations
2026-09-13 19:17:32 +08:00
46a38fa0c6 refactor: 录像系统指令 2026-09-13 16:38:19 +08:00
5a206748b2 test(03-11): align Node save regressions
- Assert CoreState instances use the existing SaveSystem
- Preserve independent construction and replay coverage
2026-09-11 14:10:41 +08:00
45e3b1f05d fix(03-10): restore direct replay fixture path
- Register the fixture event and maps through existing data APIs
- Await the synchronous mutation marker before the final snapshot
2026-09-11 14:00:02 +08:00
4b91a0b84f style(03-07): normalize serialized event files
- Apply repository CRLF and Prettier formatting to changed files
2026-09-10 20:17:23 +08:00
1b93deb8c8 test(03-07): prove serialized event replay path
- Load the fixed replay event through the internal serialized boundary
- Assert trigger, raw statements, coordinate binding, one execution, and final state
2026-09-10 20:13:51 +08:00
232df083f7 fix(03-05): complete data closure coverage and Node combat gate 2026-09-10 17:52:28 +08:00
704e23fa2d fix(03-04): share verifier harness with Node replay tests
- Keep Vitest imports inside the data-state test package
- Leave the dedicated script as the direct Node process entry
2026-09-10 17:17:40 +08:00
1218504b5c test(03-04): cover Node replay divergence and factory isolation
- Exercise success, false, throw, unknown, hero, and map mismatch paths
- Verify isolated Node CoreState instances and diagnostic parameter fidelity
- Repair replay route parameter encoding required by verifier diagnostics
2026-09-10 17:11:09 +08:00
c06093839a feat(03-04): add fixed Node replay verifier
- Extend the closed-loop fixture across hero and all map matrices
- Throw deterministic local diagnostics at the first replay divergence
- Add the dedicated test:data-node process gate
2026-09-10 17:05:15 +08:00
f911ac5989 style(03-06): normalize tile migration formatting
- Apply repository CRLF and Prettier formatting
- Record remaining out-of-scope type diagnostics
2026-09-10 15:57:59 +08:00
a12b2d2db8 feat(03-06): migrate legacy tiles to events maps
- Convert optional legacy events with safe empty defaults
- Cover TileStore consumption without trigger scalar output
2026-09-10 15:55:32 +08:00
4eec08638e feat(03-01): add awaited replay movement tracer
- exercise source-aware event mutation on a fixed map
- verify Node replay reaches its normal end state
2026-09-10 15:43:26 +08:00