Commit graph Idunn/docs
Author SHA1 Message Date
Meta Vens
78086705a0 deploy-provenance map: runner failure evidence (body facts R1-R8)
Imagination for cut runner-failure-evidence: the docker runner discards
stdout, so a step that reports on stdout fails with an empty message; the
tail moves to a root-only typed evidence store read by idunn status.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 02:04:37 +01:00
Meta Vens
69eb3e6d6f deploy-provenance map: isolation credential evidence (body facts I1-I8)
Imagination for cut isolation-credential-evidence: systemd 257 prints
LoadCredential as [unprintable] for every unit, so observe_unit's comparison
never passes a target with no extra credential and proves nothing otherwise;
the rule moves to the delivered credential directory.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 14:51:10 +02:00
Meta Vens
07616697af deploy-provenance map: link containment rule, host targets, shared seal path (r2)
Imagination r2 for cut tree-executable-members after Soul s1: link census of
the real PBS and Blender trees, why lexical normalisation does not prove
containment, the leading-dotdot-within-depth rule and its prior art, members
on host targets carried not applied, one seal step for collect and host.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 21:54:00 +02:00
Meta Vens
332dbd0149 deploy-provenance map: tree executable members (body facts, rationale)
Imagination pass for cut tree-executable-members (session
self-2026-10-23-eureka-b): seal, digest and receipt facts, symlink rule,
live binary and install path, disk sizing for the acceptance job.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 19:42:34 +02:00
Meta Vens
2ea0572a4c Docs: member connection limit and the cached presence answer
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-23 04:34:28 +02:00
Meta Vens
9173a0e8e6 idunn-launch answers presence only: the splice, the unix child endpoint and --listener are deleted; the child binds the member bind and the probe reaches it over TCP
PresenceAcceptor serves one connection at a time within a 1 s deadline and never ends on an accept error; a dead presence thread fails the unit. Builds.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-23 01:28:30 +02:00
Meta Vens
d94150d396 idunn-launch: release root is the launcher's own release; docs for foreign workloads; probe, spawner and authority tests
Not built at this commit; verified at the head by the final job.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 19:58:21 +02:00
Meta Vens
491459e6a0 State kind external-directory: process-owned directory, lease-gated like external-file
Not built or tested yet; verified at the end of the cut.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 18:47:20 +02:00
Meta Vens
6e2a31cf31 Body map after reincarnation cut 2: two slots, take_target, forward retry, operator-required
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 02:40:55 +02:00
Meta Vens
2f8671ac35 Reincarnation map: cut 2 installed
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 02:36:25 +02:00
Meta Vens
b119e500ad c2d fix 2/2: a continuity yields only while unproven, and only to a Deploy that can move
serving_proven (Committing, or routing evidence recorded) ends the yield:
yields_to_a_deploy replaces retries_forward, and wait_for_owner reads it, so
a Deploy no longer waits on an owner that will keep serving. deploy_can_move
asks the deployment brake live for a Deploy at its Sealing tail, so a braked
Deploy draws no yield and the yield happens once the brake releases. The
tests of 04389e6 are repaired to reach their worlds (the failures they
showed at 1beca61 were the right ones). Rulings
c2d-yield-only-unproven-to-movable.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 21:43:34 +02:00
Meta Vens
81bfb03712 route-continuity-target invariant 5: the continuity yields to a deployment awaiting the handover
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 20:11:10 +02:00
Meta Vens
e5298584a4 Merge origin/main (bounded_detail hotfix) into idunn/reincarnation-c2
Conflict in begin_post_fencing_abort: kept c2's now_millis binding and
the hotfix's bounded_detail in place of truncate. The owner-wait note
written by wait_for_owner now goes through bounded_detail too; every
other c2/c2b/c2c detail writer already did.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 19:34:20 +02:00
Meta Vens
d9846e8847 Cut c2c: route-continuity invariant 5 states the continuity forward retry
A continuity past its post-fencing deadline is left to the operator and retries
forward on a capped backoff; a stateless deployment aborts to its incumbent; a
stateful deployment is left to the operator (ruling post-fence-forward-retry).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 18:39:33 +02:00
Meta Vens
5b421c3cc7 Deploy provenance target: no per-deploy operator gate, typed provenance on the transaction
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 13:04:27 +02:00
Meta Vens
61383297b2 Reincarnation map: cut 2 phase-split mapped (two slots, one handover CAS)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:59:51 +02:00
Meta Vens
9a0a6a2ce9 Body map after reincarnation cut 1; cut 1 installed on Yggdrasil
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 10:36:21 +02:00
Meta Vens
f079389be0 Reincarnation: continuity never stops (target r2), cut 1 never-stop mapped
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 23:44:14 +02:00
Meta Vens
74a700817f Research: restart budgets and rollout/restart handover prior art (idunn-reincarnation forks)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 23:22:33 +02:00
Meta Vens
f54c776417 Reincarnation map: body facts from the 2026-10-18 reboot, model page, cut sequence
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 23:17:41 +02:00
Meta Vens
c2477d43d4 Reincarnation target: a reboot is not a fault, one owner per target at every instant
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 22:51:31 +02:00
Meta Vens
6667f0f9a6 Watchdog reporting postmortem
First typed Eureka campaign (idunn-watchdog): 8 cuts, 17 Soul verdicts,
55 findings; landed about 2.5x its estimate. Idunn pages the operator on
Discord through Bifrost; closure DM still owed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 10:25:36 +02:00
Meta Vens
102c129891 Topology publishes never wait: one private-lock exchange primitive
exchange_behind_private_lock (drivers.rs) is the single write primitive for
the projection directory: one nonblocking compare-exchange behind a lock only
Idunn can hold. An absent lock is created O_EXCL 0600; a lock that is not a
regular file, ours, mode 0600 is replaced by a fresh 0600 file renamed over it
(a chmod does not revoke a descriptor another uid already holds); a private
lock is opened as is. The topology driver's mutate and the incident store both
go through it; the blocking compare_exchange_snapshot call, publish_projection_mode
(which published the lock 0644 on a false premise that readers open it) and
incident.rs secure_lock are deleted.

mutate now retries only a lost race; a held lock is Err "the topology
projection is locked by another holder" and a no-op, so no caller records a
digest, evidence or phase for a publish that did not land.

Test helpers: the lock holder is a separate flock process, and run_while_held
counts opens of the lock (inotify), so ANY wait on a held lock fails, not only
one past the 30 s ceiling. Tests reproduce the live default ACL and use
setpriv for the other-uid half.

This commit has not been built; the verify run follows.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-01 01:28:05 +02:00
Meta Vens
a909f931ea Merge watchdog idunn-incident: continuity exhaustion is a durable incident
Eureka idunn-watchdog cut idunn-incident, attempts 1-3. Soul verdict
idunn-watchdog:verdict:cut-idunn-incident.s3 holds. Incidents live in
their own incidents.cc (0644, lock private 0600), written with non-blocking
snapshot exchanges; the tick never waits on them. Close rule: running and
no longer exhausted (operator ruling exhaustion-close-rule-op).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 01:15:08 +02:00
Meta Vens
7e4163645d Watchdog target: tick-lock-private is uid-scoped
Operator ruled tick-lock-scope = uid-scoped (target r4).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 23:54:55 +02:00
Meta Vens
8d0786dcaf Watchdog map: topology lock probes C29-C40
Only the daemon writes topology.cc; Odin and Idunn read it lock-free; the
root backup's shared lock survives a private 0600 lock. A chmod does not
revoke an existing holder, so the shared primitive renames a fresh 0600
lock over a non-private one.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 23:30:44 +02:00
Meta Vens
bca3d85394 Watchdog target: no tick waits on a lock someone else can hold
Operator ruled the topology-lock stall into this campaign (target r3).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 23:09:34 +02:00
Meta Vens
b69a8e81ba Secrets map: Heimdall secrets merged at ca2366c after Soul pass 7
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 22:49:57 +02:00
Meta Vens
f1b45666c6 Route map: B5 merged (fcb8ba1) and installed on Yggdrasil
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 22:36:02 +02:00
Meta Vens
85964d0f00 Secrets map: Heimdall batch 6 and Soul pass 6 (hold; invalid index, collation takeover, predicate normaliser)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 20:35:30 +02:00
Meta Vens
1f7c8e8f42 Route map: B5 Soul pass 2 (merge and install after batch 3 pins); P1 reload-owed window recorded
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 20:07:49 +02:00
Meta Vens
dcd0aa3f2b Secrets map: Heimdall batch 5 status and Soul pass 5 (hold; batch 6 in Hands)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 18:50:45 +02:00
Meta Vens
8b9e8dfe11 Route map: Q-S5 ruled (a), B5 first
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 18:42:51 +02:00
Meta Vens
224f006983 Route map: Q-S1..Q-S4 ruled (a); Q-S5 open
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 18:42:42 +02:00
Meta Vens
6854b0f825 Route map: B5 Soul pass 1 (merge after batch 2: lease wedge, reload-skip crash gap)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 18:29:56 +02:00
Meta Vens
5f232a6120 Route map: Q3-ii cut map (snapshot before Ready, roll forward after); Q-S1..S5 open
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 18:16:06 +02:00
Meta Vens
3fad441917 Route map: Q3-ii ruled: snapshot/restore before Ready, roll forward after
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 17:56:54 +02:00
Meta Vens
e00ff5ec40 Route map: Q3-i ruled (issued lease counts as possibly written); Q3-ii open
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 17:54:06 +02:00
Meta Vens
448f554af5 Watchdog map: Bifrost suite probes C21-C28
Only cultcache-ts was renamed in CultLib; Bifrost's tests and three tools
still use the bare name. Production Persona delivery is unaffected: its
release bundles CultLib f67f5122.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 17:15:38 +02:00
Meta Vens
202e5a2e10 Idunn records continuity exhaustion as a durable incident in incidents.cc
Idunn's daemon, at the continuity decision site, writes one
idunn.operator_incident.v1 record per exhaustion into its own published
incidents.cc (--incident-store), never control.cc. The record opens once per
(target, condition), closes on an observed running workload (recovered) or on
the target leaving the admitted set, and retires to incident-history.cc seven
days after closing. A store failure is traced once and never returned into the
tick. idunn status prints each target's incidents. ReportOnce is demoted to a
stderr trace.

Does not build the fixture test until tests/fixtures/idunn.operator_incident.v1.cc
lands in the next commit.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-09-30 16:21:02 +02:00
Meta Vens
436d6445fc Watchdog map: cut probes C1-C20; incidents live in their own incidents.cc
Imagination's cut-mapping probes and rationale. Self collapses the model
page's record and projection rows: control.cc refuses foreign types, so
incidents.cc is both the record and what Bifrost reads.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 16:12:18 +02:00
Meta Vens
487f4f14b8 Watchdog target: a closure notice follows an opening notice
Operator ruled closure-notice = opening-and-closure (target r2).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 15:58:14 +02:00
Meta Vens
153af6ac40 Watchdog reporting map: body facts, model page, crossing rationale
Imagination step 0b for campaign idunn-watchdog. Forks are admitted in the
mind as questions delivery-crossing, paging-conditions, closure-notice.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 15:57:34 +02:00
Meta Vens
495112565b Watchdog reporting target: Idunn decides incidents, Bifrost delivers
First typed Eureka campaign (idunn-watchdog). The typed target and rulings
live in Eureka's mind; this doc holds the rationale and design truths.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 15:48:18 +02:00
Meta Vens
fa830c5f6f Route map: B2 + 3d installed on Yggdrasil (a96ad9d)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 15:33:26 +02:00
Meta Vens
5939abd87e Route map: B2-3d Soul result; the Survival-bound premise is false
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 14:09:24 +02:00
Meta Vens
08d346dfae Map the cut that moves binding secrets out of every printable surface
Operator: "do map the cut that'll ensure it doesn't happen again". Q3 A is
ruled (rotate before prod); Q1 A and Q2 A are Self defaults.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 12:21:48 +02:00
Meta Vens
ecf163ae1c Route map: record 3d A (the actuation ceiling counts only Forward)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 12:15:57 +02:00
Meta Vens
cccfe8e174 x
# Conflicts:
#	src/control_plane.rs
2026-09-30 06:23:11 +02:00
Meta Vens
012853529c Idunn map: storm (b) under Survival-always-counted; B2 Soul rulings
Continuity restarts are Survival; Survival counting is best-effort when
the ledger cannot record it, Forward stays fail-closed (2026-09-30).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 02:54:02 +02:00