Expand description
The direct landing writer: from a computed Projection and the
receipt as it stands to the files on disk and the receipt written
last.
Every landing renders afresh from this binary and the target at invocation. The writer decides each destination by its recorded kind alone, validates every destination before the first write, holds one target lock through the receipt write, opens the target directory once and writes every file relative to that held directory so a component swapped for a link after validation redirects nothing, and replaces each destination through a same-directory temporary file and a rename. The set is not transactional: a failure names every completed path, leaves the previous receipt, and the rerun lands the rest.
SATISFIES landing:ownership-is-elementary SATISFIES landing:a-partial-landing-is-visible-and-rerunnable SATISFIES landing:a-landing-leaves-a-record
Structs§
- Collision
- One destination the landing refuses before any write: a whole-file destination present on disk with no receipt entry attributing it, or a document whose markers offer the block no place.
- Decision
- One decided destination.
- Held
- One target directory held open for a whole landing verb.
- Landed
- What a landing completed.
- Prepared
- The landing decided and ready: the projection, every decision in projection order with the released destinations after them, every collision, and the configuration the landing writes first.
Enums§
Constants§
- INTERRUPT_
VAR - The environment variable the interruption proof sets to the relative destination whose rename is to fail on purpose.
- PAUSE_
VAR - The environment variable naming a directory the proof pauses through
once validation is over and the target is held:
validatedappears there, and the landing waits forproceed.
Functions§
- decide
- Decide every destination from the receipt and the disk, collecting every collision rather than stopping at the first.
- land
- Land
preparedintotarget. - licence_
refusal - The refusal a licence condition answers, before any write.
- prepare
- Gather the target’s evidence once, compute the projection, and decide every destination, writing nothing.
- refusal
- The one refusal for every collision, before any write.
- release_
unavailable - The refusal a selected release automation this release cannot land answers, before any write: silently omitting the declared release would write a record that claims an automation nothing landed.