When a graph is joined, the subscriber receives an %add-graph update
that corresponds to the current state of the graph. This was not logged,
so if the graph did not recieve any updates before the subscription was
kicked, the whole graph would be have to be sent again. This would be
largely asymptomatic, however hark-store assumes that %add-graph will
only be emitted when a new graph is joined or created. As such, we log
this initial update, so that the push-hook can correctly ascertain the
backlog it needs to send and so %add-graph is only emitted once per
graph. This also opens the door for time-varying scries into
graph-store.
Fixes#4290
This lets applications suggest to the client that they should gracefully
unsubscribe from the session.
Arguably this might be accomplished by %kick-ing the client and then
crashing on their subsequent resubscribe, but this requires tracking
their sole session id and has less semantic clarity on what's happening.
When you first boot, if you try talk to someone before your azimuth is
up-to-date (for example by import), then if they've ever breached
(twice) then you'll get breach notification, cancelling your message.
This changes is it so that if we haven't heard anything about this ship,
we don't signal a breach.
The implementation complexity is primarily because we need
eth-watcher/azimuth-tracker to produce an update of a list instead of a
list of updates. This way, Jael can keep a "state as of the beginning
of this move" variable to check when deciding whether to signal a
breach.
* release/next-vere:
build: update gcloud to use non-deprecated action
vere: manage memory properly in _fore_import
build: update GoogleCloudPlatform/github-actions/setup-gcloud to 0.2.0
king: try undoing warnings in eventlog-lmdb
king: diswarn tests
king: more warnery
king: fix warnings; more consistent warn policy
vere: add -i and -o options for import and export
herb/lens: add utilites for import/export
vere: refactors pier initialization to fix -X
king: fix test (daaad)
king: fix warnings in Tree (thanks dad)
king: this is a holdup!