Crisis BFT consensus protocol — Go PoC, Python recorder, and CrisisViz: a native macOS scrubbable curriculum visualizer (10 chapters, ~18 minutes at 1×, signed-speed slider with reverse playback).
Find a file
saymrwulf 6222755f92 Ch04 voting: migrate to serial timeline + ancestor cone walks
Picks Aaron's recent vertex ε on his lane and Carl's ε on his (same
position because they hold the same accepted set after Ch02 healed).
Walks each ancestor cone one edge at a time — ε → γ, then γ → α —
with a yellow tracer animating along the edge. Settles each cone
with steady yellow rings on every vertex it contains. Reveals the
overlap by pulsing white on the shared vertices in BOTH cones.
Closes with the chapter's punch line: implicit vote complete, no
ballot ever sent.

`Ch04Timeline.swift` (new) — 15 beats over ~62.5s. Beat kinds:
  - `pickLeaf(cast, mid)` — yellow halo on the chosen leaf
  - `walkEdge(cast, from, to)` — yellow tracer along one edge,
    parent permanently joins the cone
  - `settleCone(cast, label)` — quiet beat
  - `revealOverlap` — surfaces intersection of Aaron's and Carl's cones
  - `voteComplete` — green banner

`Ch05_Voting.swift` rewritten end-to-end (473 → ~370 lines) to
render from Ch04Timeline. Each cast lane's vertices get layered
indicators: leaf halo (yellow, thicker), cone ring (yellow), then
white pulse for overlap members on Aaron's and Carl's lanes once
the reveal beat fires.

`SceneEngine` and `ImmersiveView` extended for chapter 4.

Bundled, harness 55/55 invariants, 0 audit errors, 281 PNGs,
36/36 MP4 written.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-07 11:37:18 +02:00
CrisisViz Ch04 voting: migrate to serial timeline + ancestor cone walks 2026-05-07 11:37:18 +02:00
src/crisis Masterclass redesign: cast lifelines, narrative invariants, video harness 2026-05-06 19:11:36 +02:00
tests Initial implementation of the Crisis protocol (Richter, 2019) 2026-04-23 13:20:30 +02:00
.gitignore Add macOS .app bundle with native Dock icon and activation policy 2026-04-30 20:21:18 +02:00
Crisis.mirco-richter-2019.pdf Initial implementation of the Crisis protocol (Richter, 2019) 2026-04-23 13:20:30 +02:00
crisis_data.json Add JSON export pipeline + event recorder for visualization 2026-04-30 20:06:21 +02:00
pyproject.toml Initial implementation of the Crisis protocol (Richter, 2019) 2026-04-23 13:20:30 +02:00