summaryrefslogtreecommitdiff
path: root/core/src/commonTest/kotlin/coffee
Commit message (Collapse)AuthorAgeFiles
* Redesign as a liz.coffee document; type-to-steer memo; image searchElizabeth Alexander Hunt9 hours1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Look: drop the Win98 chrome for the site's own style: black page, serif text, sage links in [brackets], bordered tables, pink accent, Koch snow, a marquee of colony news, an 88x31 blinkie. A paper theme for daylight. Pixel fonts removed. Timer: drawn seven-segment LCD in a timer body with hands-down/ready lamps, sized to the space it has. Touch starts the timer only on touch devices. Big display mode (F). Pips at 8 and 12 s of inspection. Penguin: follows the pointer as on the site, pecks and sleeps when idle, watches during solves, says a word afterwards. Sprite sizes are now in dp (was raw pixels, hence tiny on hidpi). BLD: - Fix: BLD scrambles end in wide moves; hold the cube by its centres so tracing and checking use the solver's real frame. - Memo trainer: typing a target turns the view to that sticker (eight fixed corner views, animated); arrows step through the memo without showing letters; optional pause for execution; recall pass; results separate tracing slips from memory slips (Tracer.firstMistake). - Password fields show the last typed letter briefly. - Pair cards show where the pair sits on the cube. Sticker drill uses the unfolded cube for "where is it". - Letter pairs live under BLD; BLD setup lives in settings. - Reviews reload when the store changes (other devices' practice). Pictures: Brave image search in the pair editor; chosen images are shrunk to WebP and synced. Key read from the local, unsynced config. Dev: `--shots <dir>` renders every screen offscreen with sample data. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
* BLD trainers: OP tracing/checking, FSRS drilling, BLD tabElizabeth Alexander Hunt20 hours2
| | | | | | | | | | | | | | | | | | | | | - bld: 3x3 sticker geometry in Speffz order, lettering schemes, the solver's frame (default yellow top / orange front), OP tracing with cycle breaks and twists, and memo checking by executing the typed targets as OP swaps, so any valid memo passes and errors are reported as the pieces left wrong. - srs: FSRS-4.5 memory model and a weighted drill picker that favours forgotten, hard and recently missed items. Reviews are stored one entity per answer so concurrent devices merge cleanly; Letter Pair Gym history seeds pair difficulty. - BLD tab: pair->word (three at a time), word->pair typing, target drills (name the outlined sticker / find a letter's sticker on a scrambled 3D cube), memo trainer on official 3BLD scrambles with hidden recall fields, and a setup page with orientation, buffers and a click-to-edit lettering net. - PuzzleView: tap-to-pick stickers, highlight outline, face cameras. - CubeMapping between renderer stickers and NxN slots. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* GAN: never stall on lost packets; fix packaged Bluetooth runtimeElizabeth Alexander Hunt20 hours1
| | | | | | | | | | | | | | | | | Live testing on a GANicE3 (Gen4) showed a move held for 32 s and a deliberate disconnect once 16 moves backed up, both waiting on a move-history reply that never came (inherited from gan-web-bluetooth). - Retry history requests every 300 ms while stalled; after 1.5 s release held moves in order, flag the first with Move.afterGap, and request facelets so consumers can resync. Never disconnect over a backlog; a driver tick runs every 150 ms under a shared lock. - Bundle jdk.security.auth (and the other modules Compose suggests) in the packaged runtime: dbus-java needs it to authenticate to BlueZ. - `--cube monitor`: print facelets only on change, mark gaps, and accept r (reset to solved) / f (refresh) on stdin. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Rookery: penguin-themed cubing toolkit, phases 0-1 and GAN BLEElizabeth Alexander Hunt21 hours8
Kotlin Multiplatform + Compose desktop app. - Sync: per-device append-only op logs (HLC-stamped LWW) in a plain folder, safe under Syncthing/Drive; content-addressed image blobs. - Timer: WCA inspection, +2/DNF, solve table, WCA-correct aoN/moN, per-event lifetime PBs with a pixel-penguin party and synthesized 8-bit chime. Mascot sprite from liz.coffee. - Scrambles for all WCA events + FTO via tnoodle-lib, with previews. - Importers: csTimer exports (incl. smart-cube reconstructions and cube MACs) and the Letter Pair Gym prototype (words, notes, images, history, practice stats). Idempotent; headless `--import`. - Letter-pair grid with miss heatmap, glance lookup and editor. - 3D puzzle engine (polyhedron + cut planes) and Canvas renderer: NxN 2-7, Pyraminx, Skewb, verified sticker-for-sticker against tnoodle; 3D replay of smart-cube solves. - GAN Gen2/3/4 smart-cube protocol (ported from gan-web-bluetooth, MIT) with a BlueZ D-Bus transport and `--cube scan|monitor` CLI. Not yet tested against hardware. - lizCI pipeline (.ci) building a test+package Docker target. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>