Skip to main content

Module world_doors

Module world_doors 

Source
Expand description

ONT-4: the world doors, in one implementation.

harness.v1.world.load|save|compile|decompile|import|export and supercode world <verb> are two transports over the functions here, which are themselves a thin wrapper over the ONT-3 codecs (supercode_interchange::world::codec). Nothing in this module decides anything a codec does not: it picks the codec the caller named, keeps the io bookkeeping a decompile needs, and shapes the answer for the wire.

One rule the wire adds: a vault VALUE never leaves. A load or a compile answers with the vault’s KEY NAMES only — the caller that needs a value reads the home’s own .env. That rule is why import and export exist as verbs of their own: a migration moves credentials between homes, and composed from the value-level verbs by a client it could not — the credential would have to cross the wire. Here it stays in this process.

Structs§

RefusalRow
A refused write, on the wire.
WorldDecompiled
What a decompile did.
WorldImported
What an import did: the world as saved, the vault’s key names, and the unmodeled files carried by path.
WorldRead
What a load or a compile answers: the world, and the vault’s key names.
WorldSaved
What a save answers.

Enums§

HomeFlavor
Which layout a folder is read as (harness.v1.world.load’s flavor).
SourceFlavor
What kind of home decompile’s source is.
WorldHarness
Which source harness a world is compiled from or decompiled back to.

Functions§

compile
harness.v1.world.compile: read another harness’s home as one world value.
decompile
harness.v1.world.decompile: write a world back as the source harness’s home.
export
harness.v1.world.export: our folder becomes another harness’s home.
import
harness.v1.world.import: another harness’s home becomes our folder.
load
harness.v1.world.load: read a home folder as one world value.
save
harness.v1.world.save: write a world into our own folder.