hive: versioned central config with layered targeting
The hive now stores one config document for the fleet: a list of layers,
each with an optional match (names/instance_ids/tags), appended as immutable
versions. Publish, history, rollback and status are admin-only (admin key or
loopback); the swarm key reads config, so a compromised instance cannot
rewrite what the fleet runs.

Delivery has three paths that degrade into each other: a push notification,
a 'you are behind' hint in the announce reply, and a periodic sweep over
instances that still report an older hash. Acks are tracked per instance and
version, so the status view answers who took the config and who needs a nudge.

A layer list is validated as a whole; an empty list is a legal document that
means 'no overlay'.
1 parent 556117d commit ce117a834c40a7a57c297f57f41d99de2ae66aa0
@Eugene Sukhodolskiy Eugene Sukhodolskiy authored 19 hours ago
Showing 6 changed files
View
hive/README.md
View
hive/app.py
View
hive/config_store.py 0 → 100644
View
hive/db.py
View
tests/unit/test_hive.py
View
tests/unit/test_hive_config_store.py 0 → 100644