README: document crown control, tests, fork location for 0.9

This commit is contained in:
2026-09-13 22:40:31 +01:00
parent aaa292ac49
commit 7f48cde7d9
+13 -5
View File
@@ -40,6 +40,10 @@ on-watch check.** See docs/CROWN.md for the firmware reasoning.
- Leaving the page pauses it and stops the timer. Returning requires an explicit - Leaving the page pauses it and stops the timer. Returning requires an explicit
resume; game-over never resumes automatically. The system back action remains resume; game-over never resumes automatically. The system back action remains
untouched. No crown, rotary, side-button or back interception APIs are used. untouched. No crown, rotary, side-button or back interception APIs are used.
- **Crown to steer** (0.9): rotate the crown; every 40px of scroll is one
90° turn, clockwise = clockwise. Crown and swipe feed the same queue; the
board stays visually fixed while you turn. If your firmware gives the crown
coarser steps than 40px, adjust `CROWN_STEP_PX` at the top of `index.ux`.
## Score, speed and persistence ## Score, speed and persistence
@@ -86,9 +90,11 @@ npm run release
regressions, the numeric layout suite, and deterministic randomized property tests. Upgrade coverage includes rapid regressions, the numeric layout suite, and deterministic randomized property tests. Upgrade coverage includes rapid
swipes, lifecycle/timer races, storage failures and async ordering, mode changes, swipes, lifecycle/timer races, storage failures and async ordering, mode changes,
all four Wrap edges, seam textures, full-board victory and bounded food spawning. all four Wrap edges, seam textures, full-board victory and bounded food spawning.
The page suite also drives the crown scroll path: one notch = one queued turn,
scroller re-centered, queue capped at two, no reversal, turn consumed on tick.
New behaviors were exercised through failing-then-passing test cycles. New behaviors were exercised through failing-then-passing test cycles.
Release output: `dist/com.ilias.snake.release.0.8.rpk`. The locked Release output: `dist/com.ilias.snake.release.0.9.rpk`. The locked
`aiot-toolkit` 2.0.5 uses the existing `sign/private.pem` and `sign/certificate.pem`; `aiot-toolkit` 2.0.5 uses the existing `sign/private.pem` and `sign/certificate.pem`;
do not regenerate or commit those keys. Release uses plain JS (not JSC/protobuf), do not regenerate or commit those keys. Release uses plain JS (not JSC/protobuf),
matching the previously working toolchain. The dependency lock is unchanged; matching the previously working toolchain. The dependency lock is unchanged;
@@ -97,15 +103,16 @@ matching the previously working toolchain. The dependency lock is unchanged;
## Files ## Files
- `src/pages/index/index.ux`: round-screen UI, swipe queue, game/lifecycle state. - `src/pages/index/index.ux`: round-screen UI, swipe/crown queue, game/lifecycle state.
- `src/common/snake.js`: movement, collision, Wrap piece classification, food. - `src/common/snake.js`: movement, collision, Wrap piece classification, food.
- `src/common/best.js`: asynchronous storage coordinator. - `src/common/best.js`: asynchronous storage coordinator.
- `src/common/tex/`: native 32px sprite artwork and circular board. - `src/common/tex/`: native 32px sprite artwork and circular board.
- `docs/CROWN.md`: firmware-derived rationale for the crown scroll path.
- `tests/{snake,pieces,page,upgrade,layout,properties,round,art,round-history}.cjs`: Node regression suites, including history-based circular seam orientation checks. - `tests/{snake,pieces,page,upgrade,layout,properties,round,art,round-history}.cjs`: Node regression suites, including history-based circular seam orientation checks.
Install the signed RPK through AstroBox. Source/releases live at Install the signed RPK through AstroBox. Source lives at
https://gitea.oimcloud.myaddr.tools/codex-bot/vela-snake — publication is a https://gitea.oimcloud.myaddr.tools/Omarchy-Big-PC/vela-snake-m (write access
separate step after review; a local build is not evidence of a published release. to the upstream codex-bot repo was denied, so 0.9 lives in the fork).
## Earlier versions ## Earlier versions
@@ -113,3 +120,4 @@ separate step after review; a local build is not evidence of a published release
- 0.6: directional textured tiles and preserved user-supplied icon. - 0.6: directional textured tiles and preserved user-supplied icon.
- 0.7: queued swipes, live/persisted records, capped acceleration, pause/resume, - 0.7: queued swipes, live/persisted records, capped acceleration, pause/resume,
lifecycle safety, retry/win panels and selectable Classic/Wrap. lifecycle safety, retry/win panels and selectable Classic/Wrap.
- 0.8: circular arena (no square frame), 32px tiles, 89 legal cells.