65 lines
3.4 KiB
YAML
65 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-10T20:48Z
|
|
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
|
|
|
|
runtime:
|
|
admitted: false # old generation 61c32655 cannot start under the incarnation-keyed projection; continuity gave up 20:32:45Z
|
|
admitted_by: none
|
|
release: none # candidate sha256-809979adc013040ab16aa8a56d8b1dfb232936887f6055ea313a67c854c0689a (Odin main faa53f3) sealed in tx-0f15abe4, waiting on the deployment brake
|
|
# 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:17971
|
|
|
|
# Odin serves between restarts and exits 1 after 2.5-16 min per unit (14
|
|
# starts 18:03-19:23Z on 2026-09-10). The ~96 s figure is the RUDP ack
|
|
# timeout, not the unit lifetime; do not wait two minutes and call it stable.
|
|
# See notes/odin-deployment-handoff-2026-09-10.md before acting.
|
|
healthy: false
|
|
condition: down-awaiting-brake-release # see notes/odin-incarnation-keyed-projection-2026-09-10.md
|
|
|
|
# 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:
|
|
- command: up-78945539-0a9f-4e80-b432-cd97e7f4b861 # an old odin command freeze re-took; see the note
|
|
transaction: tx-0f15abe4-3d00-4c04-bf11-ebc27aa97a6c
|
|
status: Sealing, waiting on deployment brake release naming this transaction
|
|
carries: Odin main faa53f3 as release sha256-809979ad…
|
|
# up-fc005d83 was cancelled 2026-09-10T20:43Z with `idunn cancel`
|
|
|
|
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
|