Files
questions/aggregates.yaml
T
Bendik Aagaard LynghaugandClaude Fable 5 66c31786ce
Lint and reload / lint (push) Successful in 2s
Lint and reload / reload (push) Successful in 0s
Places: /shape/<key>, voices, address newsletter
The landing gesture leads to /shape/{curve.key} - the place page:
what was left there (the relay's /place, playable), leave your voice
(type: voice at value "{key}"), hear from exactly this address
(redoal_watchers, exact key), and the cards. Email leaves the landing
page. A card for iroh through varde. Desks for voices and watchers.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-30 16:05:26 +02:00

24 lines
780 B
YAML

# State graphs for event-sourced buckets - see portal's
# src/aggregates/mod.rs. Bucket names are redoal_-prefixed because
# both portal instances (uhhm.no and redoal.com) share one NATS
# JetStream; a bare "subscribers" would collide with uhhm's.
#
# redoal_gestures (index.yaml's record_as for drawn paths) has no
# entry on purpose: plain KV, no lifecycle - a drawn gesture is a
# fact, not a process.
aggregates:
- bucket: redoal_subscribers
initial: open
states:
open: { event: subscribed }
unsubscribed: { event: unsubscribed }
transitions:
open: [unsubscribed]
- bucket: redoal_watchers
initial: open
states:
open: { event: subscribed }
unsubscribed: { event: unsubscribed }
transitions:
open: [unsubscribed]