diff --git a/CrisisViz/README.md b/CrisisViz/README.md new file mode 100644 index 0000000..d8f5673 --- /dev/null +++ b/CrisisViz/README.md @@ -0,0 +1,136 @@ +# CrisisViz + +A native macOS 26 / SwiftUI keynote-style visualizer for the Crisis consensus protocol. Ten chapters, roughly eighteen minutes of curated playback at $1\times$, scrubbable forward and backward at any signed rate from $-16\times$ to $+16\times$. + +CrisisViz consumes a recorded simulation from `crisis_data.json` and replays it with narration bound to specific narrative beats — the playhead is the master of time. + +--- + +## The serial-timeline pattern + +Every chapter is a **pure function of normalized time**. Given a chapter with an ordered list of beats $b_0, b_1, \ldots, b_{n-1}$ each with duration $d_i$, the world state at time $t \in [0, T]$ (where $T = \sum d_i$) is: + +$$\text{state}(t) = \mathop{\textrm{fold}}_{i\,:\,\sum_{j