clone

a daily shikaku puzzle for phones: one seeded puzzle per date, solved by dragging rectangles

Add src.rest CI for check, test and build

cat committed 9949dc7
forge attest runs .forge/ci in a clean worktree of each commit and signs the
result into refs/notes/ci; forge push sends it with the branch. It installs
the locked dependencies, then runs deno task check, test and build.
commit
9949dc74156a60ac5f62f3749c5cf9af4a492097
parent
91d96409c216cf67dc08dd739b346812ca799c2d
author
cat <admin@dev.site>
ci
✓ passed in 7s, signed by cat
ci attestation
forge-attestation 1
type ci
commit 9949dc74156a60ac5f62f3749c5cf9af4a492097
tree 297e0d1346e021b54261850be0c31d6e1dfd3fa6
script .forge/ci 32d5f636d89927b1b48c24f399e77dabb68b6ca5
result pass
exit 0
started 2026-10-17T23:01:01Z
duration 7s
runner (not shown here; refs/notes/ci has it)
system Darwin 25.5.0 arm64
env host
log sha256:a985a067e6340beb7568fa25da31467159052424b72cde7bde5a71bcbf58760c 319 lines
|getPlayableStackIndex ignores non-contiguous solved entries ... ok (52µs)
|getMostRecentStackIndex returns the last touched stack for a date ... ok (63µs)
|getVisibleStackRange exposes the highest touched stack for date navigation ... ok (39µs)
|getSelectedStackIndex returns the top stack for a date ... ok (48µs)
|getSelectedStackIndex prefers the highest visible stack over a lower recent one ... ok (33µs)
|getDailyStreak counts consecutive solved days ending today ... ok (82µs)
|getDailyStreak survives an unsolved today ... ok (58µs)
|
|ok | 63 passed | 0 failed (362ms)
|
|Task build vite build
|vite v7.3.2 building client environment for production...
|transforming...
|✓ 51 modules transformed.
|rendering chunks...
|computing gzip size...
|_fresh/client/.vite/manifest.json                                       4.78 kB │ gzip: 0.74 kB
|_fresh/client/assets/client-entry-SGANL2p6.css                         12.02 kB │ gzip: 3.52 kB
|_fresh/client/assets/paths-SrVA8zkj.js                                  0.11 kB │ gzip: 0.12 kB
|_fresh/client/assets/daily-7BGOuVRf.js                                  0.16 kB │ gzip: 0.14 kB
|_fresh/client/assets/jsxRuntime.module-BY_OAYB0.js                      0.42 kB │ gzip: 0.30 kB
|_fresh/client/assets/fresh-island__DailyStackLink-DCd66pdN.js           0.45 kB │ gzip: 0.32 kB
|_fresh/client/assets/fresh-island__Counter-Fa51aNXX.js                  0.50 kB │ gzip: 0.33 kB
|_fresh/client/assets/fresh-island__OfflineBadge-D1DHVU3n.js             0.50 kB │ gzip: 0.32 kB
|_fresh/client/assets/fresh-island__ShareDailyStreakButton-Daxb2BJe.js   0.75 kB │ gzip: 0.50 kB
|_fresh/client/assets/fresh-island__DailyStackRedirect-D1lTxsvA.js       0.94 kB │ gzip: 0.44 kB
|_fresh/client/assets/fresh-island__HomeStats-CZJekp49.js                0.98 kB │ gzip: 0.56 kB
|_fresh/client/assets/local_progress-BpYVzFut.js                         2.46 kB │ gzip: 1.03 kB
|_fresh/client/assets/hooks.module-DUZ6unJG.js                           2.67 kB │ gzip: 1.18 kB
|_fresh/client/assets/catalog-4psJYtyi.js                                3.61 kB │ gzip: 1.60 kB
|_fresh/client/assets/fresh-island__DailyDateController-Dbqs5Ze-.js      3.89 kB │ gzip: 1.57 kB
|_fresh/client/assets/signals.module-DIaQz07p.js                         7.76 kB │ gzip: 2.96 kB
|_fresh/client/assets/preact.module-C4Hwq8ef.js                         10.89 kB │ gzip: 4.60 kB
|_fresh/client/assets/fresh-island__ShikakuGame-CLzeyhCO.js             11.34 kB │ gzip: 4.65 kB
|_fresh/client/assets/client-entry-ChE_yZ2d.js                          14.41 kB │ gzip: 5.54 kB
|✓ built in 758ms
|vite v7.3.2 building ssr environment for production...
|transforming...
|    Fresh 2.3.0 is available. You're on 2.2.2
|    To upgrade, run: deno run -A -r jsr:@fresh/update
|
|    Fresh 2.3.0 is available. You're on 2.2.2
|    To upgrade, run: deno run -A -r jsr:@fresh/update
|
|    Fresh 2.3.0 is available. You're on 2.2.2
|    To upgrade, run: deno run -A -r jsr:@fresh/update
|
|✓ 223 modules transformed.
|rendering chunks...
|_fresh/server/.vite/manifest.json                                     2.50 kB
|_fresh/server/assets/_fresh-route___daily_index-vq-BEU5W.mjs          0.44 kB
|_fresh/server/assets/_fresh-route___daily_date_-DKk5WBBS.mjs          0.46 kB
|_fresh/server/assets/_fresh-route___d_date_index_--Whoh3LF.mjs        0.46 kB
|_fresh/server/assets/_fresh-route___api_name_-CGq2LBhg.mjs            0.50 kB
|_fresh/server/assets/_fresh-route___d_index-BOijsM1R.mjs              0.54 kB
|_fresh/server/assets/_fresh-route___api_puzzles_date_-BRojKviD.mjs    0.62 kB
|_fresh/server/assets/_fresh-route___d_date_-DH0lY4-E.mjs              0.77 kB
|_fresh/server/assets/_fresh-route___index-Vmg2zwV6.mjs                3.86 kB
|_fresh/server/server-entry.mjs                                      282.41 kB
|✓ built in 876ms

Signature: good, cat

1 file changed, +8 -0
A.forge/ci8++++++++
A .forge/ci +8 -0