Odin/state/map.yaml
Meta Vens a5d14f6e41 Map: CultLib pin bump is a recorded follow-up, not a tonight item
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-11 01:33:34 +02:00

64 lines
3.4 KiB
YAML

# Odin deployment and admission map.
#
# This file describes a live system and is the fastest-rotting thing in the
# repository. Verify every line against the host before acting on it; the
# commands that do so are in AGENTS.md. Where this disagrees with yggdrasil,
# yggdrasil is right and this file is a bug.
verified_at: 2026-09-10T22:45Z
verified_against: yggdrasil (systemctl, idunn status)
deployment_authority:
managed_by: idunn-yggdrasil.service
binding: /etc/gamecult/idunn/bindings/odin.toml # on the host, not in this repo
recipe: deployment/idunn/recipe.toml
source_selection: ref-head on refs/heads/main
minimum_revision: 08965a44e135b393a130d62b075dc5036d2df901
idunn_minimum: 1a54db1 # incarnation-keyed projection (903e1c8) plus the queue and give-up fixes
idunn_live: 692ba1f # route driver owns the stable endpoint allow (f16fb46); warming fixes (e81c73e, 692ba1f)
runtime:
admitted: true
admitted_by: up-e728909f-abee-49e4-9cf3-0f88b24cdea5 # tx-0e8fa81e, 2026-09-10 22:44:21Z
release: sha256-4d6e959a655f0e7158d8a520587be10f10dbf7782abdc6092edd4c32fc18e701 # Odin main b8ef6c6
incarnation: odin@sha256-903af5f8691a… # full digest in the projection
# The live unit is idunn-odin-<activation-hash>.service and that hash changes
# on every restart. It is not this release hash. 318 failed unit residues
# were loaded on 2026-09-10T19:23Z, all with distinct hashes.
state_root: /var/lib/gamecult/odin
projection: /var/lib/gamecult/idunn-projection/topology.cc
route: /etc/nginx/idunn-stream-routes/odin.conf # rudp://10.77.0.1:17871 -> 127.0.0.1:17972; the Node coordinator that held 17871 is retired
# Before Odin 27ca3b3 and Idunn 1899df2, Odin exited 1 after 2.5-16 min per
# unit because the queued deployment overwrote the target-keyed Expected slot.
# That path no longer exists; see notes/odin-incarnation-keyed-projection-2026-09-10.md.
healthy: true # admitted 22:44:21Z, zero rejections, mesh reachable on 17871
condition: admitted
# A unit named odin.service exists in /etc/systemd/system and is `active` with
# MainPID 0. It owns no process and is not the running Odin. It has misled two
# separate readings; check -p MainPID before believing it.
decoys:
- unit: odin.service
state: active
main_pid: 0
owns_process: false
in_flight: []
brakes:
deployment_store: /var/lib/gamecult/idunn-authority/odin-deployment-brake.cc
lifecycle_store: /var/lib/gamecult/idunn-authority/odin-lifecycle-brake.cc
lifecycle_state: released # verified 2026-09-10T19:03:12Z from the brake file: released by idunn.root, reason continuity-restart
# A deployment brake release is release-specific and expires after 15 minutes;
# each attempt needs its own signature naming that exact transaction.
known_defects:
- an admitted Odin cannot observe a candidate Odin; Odin deployments succeed only
by bootstrap after the incumbent stops (see notes/odin-cycle-mechanism-2026-09-10.md,
"Not owned by this cut")
- incarnation_key is duplicated in odin-daemon lib.rs and Idunn drivers.rs; lifting it
into CultLib cultnet-rs is the open follow-up
- CultLib pins are behind main (Odin a8aedda, Idunn c13b6ba; CultLib 47b9fc4 changed RUDP
reader semantics on 2026-09-10: receive_once returns None only on an empty socket). Odin's
poll_once-per-iteration loop is unaffected. Bump both with the incarnation_key lift.