No description
  • Python 96.3%
  • Nix 2.7%
  • Shell 1%
Find a file
Max Fritz f242b3e75b
Some checks failed
check / lint + tests + deb build (push) Failing after 2s
GoL: smooth crossfade between reseeds (regression fix)
The user reported the panel "shifting up then down" every reseed.
Root cause: the producer threw the existing Grid away on reset and
built a brand-new one, which initialised darkness as
``where(alive, 255, 0)`` — so every cell SNAPPED from its previous
state to either full-black or full-white in a single frame. When
consecutive reseeds picked variants whose patterns sat at different
vertical positions (the centre/pair/quadrants/nine_grid family
introduced in the previous commit), the snap read as the whole
scene jumping.

Fix: add ``Grid.reseed(alive)`` that swaps in a new alive pattern
*without touching the darkness array*. The producer calls it
instead of constructing a fresh Grid. The existing fade dynamics
then take over — cells that were alive but aren't in the new
pattern fade out over ``death_fade_frames``; cells newly alive fade
up from their current darkness. Variants now visually melt into
each other across a few frames instead of teleporting.

Cycle-detection state (the sliding window of fingerprints +
steady_frames counter) is cleared on reseed so the new pattern
gets its own fresh ``reset_after_steady`` window before being
considered stuck.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-05 10:10:04 +02:00
.forgejo/workflows Bootstrap: package skeleton, Nix flake, deb, CI, deploy 2026-05-30 19:36:32 +02:00
packaging MQTT control surface with Home Assistant discovery 2026-06-03 22:10:53 +02:00
prompts Initial scaffolding: CLAUDE.md, prompts, .gitignore 2026-05-30 19:06:50 +02:00
scripts Bootstrap: package skeleton, Nix flake, deb, CI, deploy 2026-05-30 19:36:32 +02:00
src/epaper_apps GoL: smooth crossfade between reseeds (regression fix) 2026-06-05 10:10:04 +02:00
tests GoL: smooth crossfade between reseeds (regression fix) 2026-06-05 10:10:04 +02:00
.gitignore Initial scaffolding: CLAUDE.md, prompts, .gitignore 2026-05-30 19:06:50 +02:00
CLAUDE.md Initial scaffolding: CLAUDE.md, prompts, .gitignore 2026-05-30 19:06:50 +02:00
flake.lock Clock producer with analog, digital, and words faces 2026-06-01 01:49:37 +02:00
flake.nix MQTT control surface with Home Assistant discovery 2026-06-03 22:10:53 +02:00
pyproject.toml MQTT control surface with Home Assistant discovery 2026-06-03 22:10:53 +02:00
README.md Initial scaffolding: CLAUDE.md, prompts, .gitignore 2026-05-30 19:06:50 +02:00
ruff.toml Bootstrap: package skeleton, Nix flake, deb, CI, deploy 2026-05-30 19:36:32 +02:00

epaper-apps

Python producers for the epaperd e-paper display daemon. Long-running, configurable, supervised, optionally controlled from Home Assistant via MQTT.

Status: scaffolding / prompts only. Nothing implemented yet.

See CLAUDE.md for project conventions and prompts/ for the per-task prompts.