Skip to content

chore(receipts): committed measurement script for the orb pack table - #4

Merged
github-actions[bot] merged 1 commit into
mainfrom
chore/measure-presets-script
Jul 11, 2026
Merged

chore(receipts): committed measurement script for the orb pack table#4
github-actions[bot] merged 1 commit into
mainfrom
chore/measure-presets-script

Conversation

@wranngle

Copy link
Copy Markdown
Owner

Summary

  • The README's "Grab an orb" table (Size, Frames columns) has verifiably true numbers, but no committed script regenerated them — this closes that gap.
  • Adds scripts/measure-presets.mjs: hand-parses each exported preset .webp's RIFF container (VP8X flags byte for the alpha bit, ANMF chunk count for frame count, file size on disk) and emits a size/frame/alpha table as markdown + JSON. Node-only, no new dependencies.
  • Accepts either --dir <path> (a local folder of exported orb .webp files) or, with no --dir, downloads the v1.0.0 release assets via gh release download and measures those.
  • Does not touch README.md — pure receipts/tooling addition.

Verification

Ran the script against the actual v1.0.0 release assets (both via --dir against a local download and via the default gh release download path — outputs are byte-identical). All 7 rows shown in the README's "Grab an orb" table match the script's output exactly on both Size and Frames, and the script additionally measures the other 5 presets that ship in the release but aren't shown in the README's 7-row preview:

Orb README Script
My default 3.9 MB, 151f 3.9 MB, 151f
Ember comet 3.4 MB, 137f 3.4 MB, 137f
Solar flare 590 KB, 121f 590 KB, 121f
Plasma ring 1.9 MB, 91f 1.9 MB, 91f
Ghost trail 4.0 MB, 163f 4.0 MB, 163f
Whisper thread 2.6 MB, 126f 2.6 MB, 126f
Supernova 539 KB, 151f 539 KB, 151f

Plus 5 more measured (not shown in README): Dot matrix (3.4 MB, 94f), Glass moon (3.0 MB, 126f), Obsidian sculpt (5.6 MB, 168f), Plasma core (3.4 MB, 100f), Woven aura (6.2 MB, 215f).

Test plan

  • node scripts/measure-presets.mjs (default gh-download path) against the real v1.0.0 release — succeeded, 12/12 presets measured
  • node scripts/measure-presets.mjs --dir <local folder> — succeeded, output byte-identical to the download path
  • Diffed script output against the README's 7 data rows programmatically — exact match on Size and Frames for all 7
  • No new dependencies added (package.json/package-lock.json untouched)
  • README.md untouched

🤖 Generated with Claude Code

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@wranngle wranngle added the automerge arm the automerge workflow label Jul 11, 2026
@github-actions
github-actions Bot merged commit 8ddab3d into main Jul 11, 2026
16 of 19 checks passed
@github-actions
github-actions Bot deleted the chore/measure-presets-script branch July 11, 2026 14:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automerge arm the automerge workflow

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant