This commit is contained in:
33333-33333 2026-06-24 13:48:22 +09:00
commit d5c661bc22
53 changed files with 4264 additions and 950 deletions

View file

@ -0,0 +1,45 @@
# Regression Checklist
Version: 15.24.33
This pass freezes the current internal baseline before continuing deeper behavior refactors.
## Scope
- Static loading order must remain generated from `app_manifest.json`.
- `index.html` and `service-worker.js` must match the manifest after `scripts/generate_app_files.py`.
- JavaScript syntax must pass `node --check`.
- `ActionSpec` lifecycle helpers must support `selectTarget / canStart / start / tick / finish / fail`.
- Save-data migration is intentionally out of scope for this pass.
- Population caps and family-tree UI are intentionally out of scope.
## Command
```bash
python3 scripts/regression_check.py
```
Expected result: all checks print `[OK]` and exit with status 0.
## 15.24.28 runtime diagnostics
When opening with `?debug=1`, verify the overlay reports spatial rebuilds, draw-list state, item bucket/id-map state, forced/locked behavior counts, and top behavior ids. These are observation aids only and do not change player controls or simulation rules.
## Social balance regression checks
For `15.24.33+`, also verify:
- Ordinary conflict does not crowd out `approach_friend` / `approach_mate` in a neutral population.
- Fight mochi still forces conflict, but one individual should not start several fights at once.
- Intimidation resolves quickly enough that it does not visually lock the colony.
- With `?debug=1`, behavior counts should show non-conflict social actions appearing over time in a dense but non-drugged population.
## 15.24.33 runtime item-bucket checks
- Runtime-created items should go through `World.addItem()` where safe.
- `World.itemsOfType()` should call `ensureItemBuckets()` before returning a bucket.
- `World.itemById()` should not return dead items.
- The debug overlay should expose item bucket dirty state, id-map size, and bucket rebuild counters.
- Save migration remains out of scope until this runtime polish is observed in-browser.