
Star Swarm / Evidence
Technical evidence is published in English.
Game · RELEASED · verified 2026-10-03
Star Swarm is a vertical arcade shoot 'em up by Marco Barreto / FR 51 Labs, shipped for Windows x64 as version 1.0.0 (codename SECTOR NINE) and live on itch.io. Every figure on this page was read out of a file on disk or re-measured on 2026-10-03; nothing is estimated, and the sections that end without a number say so.
Every figure below was read out of a file on disk, or re-measured on 2026-10-03 (pytest run, file re-hashing, image re-encoding) on the machine that produced the release. Nothing is estimated; the sections that end without a number say so, and the missing list at the end records what was searched for and not found.
The shipped version is 1.0.0, codename SECTOR NINE — the same string the game module exposes, the launcher shows and the build report records, so they cannot drift apart. There is no release tag named v2026.10.02: the repository has exactly one tag, snapshot-revisao-2026-10-02-a05886d, which points at commit a05886d (2026-10-02 12:55:42 -0400) and was a review snapshot, not a release cut. The cut that actually shipped is the build of commit 20d6e0c, produced on 2026-10-03.
The suite has 353 tests across 23 files in tests/. They were collected and run from the repository root on 2026-10-03 at HEAD 55f8760: 353 passed, 0 failed, in 38.68 s. An earlier run the same day reported 352 passed and 1 failed (248.13 s) on tests/test_treino.py::test_uma_sessao_de_treino_nao_escreve_um_byte_no_save, the test that drives the real game for 1200 frames and asserts the frame-budget line is printed. That failure did not reproduce: the test passed in the full suite on re-run, and an independent isolated run of it by the audit also passed (1 passed in 21.97 s). The same suite that took 248.13 s while the test failed takes 26-39 s when it passes, on the same machine and the same commit, which reads as a load-dependent frame-budget assertion rather than a code regression. It is recorded here because it happened: the suite is green at HEAD as of the 2026-10-03 re-run, and no claim is made that the test cannot fail again under load. Note that the delivery receipt itself carries no test count: the number 353 comes from pytest, not from the receipt.
scripts/provar_build.py runs the packaged executable with an isolated LOCALAPPDATA, reads back the lines the game prints, re-reads the save it wrote and checks that the player's real saves were not touched, then writes build/recibo_build.json. The receipt for commit 20d6e0c is PASS with zero failures: eight checks passed and one was skipped. The skipped one is the store demo package, which was built from an older commit and so was not compared. The executable is not byte-reproducible, so the receipt proves the source/executable pair of that run, not a bit-for-bit rebuild.
The Windows installer was hashed a second time on disk on 2026-10-03 and matches both its .sha256 file and release-windows/RELEASE-INFO.json. One stale figure was found and is flagged here: docs/ITCH_PAGE.md still prints an older SHA-256 (4de35c08…) for the same filename. The file on disk, its .sha256 sidecar and RELEASE-INFO.json all agree on 382673ef…, and that is the value published here.
A portable build ships alongside the installer, containing the launcher, the opening cinematic and the full game. It was re-hashed on disk on 2026-10-03 and matches its .sha256 file and release/RELEASE-INFO.json.
The receipt's main measurement run plays 600 frames of the packaged game with no save file and counts sprites that fell back to the magenta placeholder. It measured 59.7 fps over 10.05 s of game clock, with zero magenta sprites and all 28 art assets resolved; the wall-clock cost of the whole process was 11.5 s including raylib start-up. The margin over the 59.0 fps floor is 0.7 fps with vsync on, measured on a machine in normal use, so a busier machine can pull the number down.
The installer is not code-signed, and the project says so on the store page instead of leaving buyers to discover it: Windows will show its SmartScreen warning and the download page documents the expected click-through. No signing tool invocation exists anywhere in the repository, and no certificate or signing receipt was found.
The shipped distribution carries its third-party licence texts next to the executable, and three provenance manifests (art, audio, video) travel with the build. The base sprites are CC0 from Kenney packs and are traced file-by-file to their catalogue path. The art in assets/arte/ is not from a catalogue: it was generated on this machine with SDXL Base 1.0 plus ControlNet Canny and is registered file-by-file with method, seed, denoise, ControlNet strength and prompt. The soundtrack and effects are the author's own synthesis in pure Python, with one authorial track and two fallback tracks generated by the author in Gemini. The opening video was generated in Gemini under the creator's direction and finished locally; its voice is Qwen3-TTS (Apache-2.0), no human voice was cloned, and the licensed Mixkit effects are listed by ID. The engine link is the one non-CC0, non-MIT item: raylib-python-cffi is vendored under EPL-2.0, which permits commercial use but is not public domain. One gap is recorded rather than papered over: the project's own licence is undecided — the LICENSE file is a third-party attribution file, and the MIT-with-attribution text it cites for motor/mechanics and motor/engines lives in a folder that no longer exists.
A proof page is only useful if it says where it stops. No clean-machine install test was performed: the machine has no Windows Sandbox or Hyper-V without elevation, so what was proven is install, launch of both game and launcher, and uninstall with saves intact — on this machine. The store demo package was not re-verified against the shipped commit. The 1080p store captures were committed to the repository but carry no capture manifest, unlike the 960x540 set which records its seed, frame numbers and a SHA-256 per file. And the CC0 origin paths point into a sprite catalogue whose source folder was deleted, so that link cannot be re-walked from this repository — the bytes survive, the origin trail does not.
D:\star_swarm\build\recibo_build.json
The proof itself: source hashes, executable hash, the 600-frame run, the save checks and the overall PASS for commit 20d6e0c. Generated by the script, not written by hand.
D:\star_swarm\docs\RECIBO_BUILD.md
The same run in prose, including its own limits section — the fps margin, the skipped demo package and the fact that the executable is not byte-reproducible.
D:\star_swarm\release\RELEASE-INFO.json
Size, SHA-256, file count and commit for the portable ZIP.
D:\star_swarm\release-windows\RELEASE-INFO.json
Size and SHA-256 of the installer, plus the hash of the executable it embeds and the opening cinematic.
D:\star_swarm\build\relatorio_build.json
What the build produced: commit, clean-tree flag, Python version, 213 distribution files, 234,486,306 bytes and the four source hashes.
D:\star_swarm\docs\PROCEDENCIA.md
How the game was made, with a source cited for every claim and the untraceable parts marked. States plainly that the manual-versus-generated ratio is not reconstructible.
D:\star_swarm\CREDITOS.md
Authorship, the CC0 sprite base, the local SDXL pass, the audio pipeline and the AI-generated components — the short public version of the licence registry.
D:\star_swarm\LICENSE
Materialises the third-party licences carried by the repository and states that the project's own licence is still undecided.
D:\star_swarm\docs\PRODUTO_COMERCIAL.md
What is promised and what was deliberately dropped — including the honest note that the per-act duration targets were not met and the game is sold as a short arcade.
D:\star_swarm\docs\IA_DISTRIBUICAO.md
The store questionnaire answers: pre-generated AI content yes, live generation no, no game link to AI services, no player data sent.
D:\star_swarm\docs\STEAM_STORE_KIT.md
Store texts, tags, price band and system requirements.
D:\star_swarm\estoque\MANIFEST.json
Sprite by sprite: role in the game, file, CC0 catalogue path and pixel dimensions. The evidence for the CC0 claim.
D:\star_swarm\MANIFEST-ARTE.json
Per generated file: method, model, seed, denoise, ControlNet strength, dimensions and hashes.
D:\star_swarm\MANIFEST-AUDIO.json
Per track: synthesis recipe, peak, RMS, duration and hashes, plus the authorial track.
D:\star_swarm\MANIFEST-VIDEO.json
The opening cinematic's specification, hashes, voice model and the 13 licensed Mixkit effect IDs.