trustgraph/trustgraph-flow/trustgraph/bootstrap
cybermaggedon 29d3100c46
fix: IAM bootstrap atomicity and bootstrapper startup ordering (#935)
IAM auto-bootstrap could get permanently stuck in a half-done state:
_seed_tables wrote the workspace first, so any_workspace_exists()
returned true on restart even when user/key/signing-key creation had
failed.  Remove workspace creation from _seed_tables (WorkspaceInit
handles it) and use any_signing_key_exists() as the completion check
since the signing key is the last thing written.

Run pre-service initialisers (PulsarTopology) in start() before
opening pub/sub connections, breaking the chicken-and-egg where the
bootstrapper needed Pulsar namespaces that it was responsible for
creating.  Guard against empty cluster list when broker isn't ready.
2026-05-18 22:08:12 +01:00
..
bootstrapper fix: IAM bootstrap atomicity and bootstrapper startup ordering (#935) 2026-05-18 22:08:12 +01:00
initialisers fix: IAM bootstrap atomicity and bootstrapper startup ordering (#935) 2026-05-18 22:08:12 +01:00
__init__.py feat: pluggable bootstrap framework with ordered initialisers (#847) 2026-04-22 18:03:46 +01:00
base.py Per-flow librarian clients and per-workspace response queues (#865) 2026-05-06 12:01:01 +01:00