2.8 KiB
Executable File
Essence Specification (.ess)
"Every Essence is sealed with a Merkle root. If a single bit flips, the Warding rejects it."
1. File Format
An Essence is not a single file — it is a logical bundle stored in the Tomb:
/var/lib/sorcery-go/tomb/
├── epitaphs/ # metadata sidecars
│ └── <merkle_root>.json # the Sarcophagus
└── blobs/ # content-addressed file bytes
├── ab/
│ ├── abc123... # one file, named by its sha256
│ └── abd456...
└── cd/
└── cdef789...
2. Sarcophagus (Epitaph)
Every Essence has an Epitaph — a JSON sidecar that records the metadata.
{
"essence_id": "9f4e2a8b...",
"spell_name": "wget",
"version": "1.21.4",
"variant_hash": "7c3d1e9f...",
"arch": "x86_64",
"linkage": "dynamic",
"config": {
"ssl": true,
"ipv6": true,
"nls": false
},
"files": {
"/usr/bin/wget": "abc123...",
"/usr/share/man/man1/wget.1.gz": "def456..."
},
"created_at": "2026-03-17T22:07:18Z",
"toolchain": "gcc-15.1.0-musl",
"license": "GPL-3.0-or-later"
}
3. Variant Hash
The Variant Hash is the "Soul" of a binary. Every unique combination of
(version, y/n flags, arch, toolchain, linkage) produces a unique hash:
variant_hash = sha256(spell_name || version || sorted(flags) || arch || toolchain || linkage)
Two different flag combinations never collide in the Tomb — this lets the Coven simultaneously hold multiple "flavors" of the same spell.
4. Merkle Root
The essence_id is the Merkle root of the file set:
merkle_root = sha256( concat( sort(paths) || file_hashes ) )
If any file in the Sarcophagus changes — even by a single bit — the
recomputed root diverges from the stored essence_id and the Warding
rejects the Essence as Tainted.
5. Linkage Specification
| Type | Libc | Use Case |
|---|---|---|
dynamic |
glibc | Standard LXC fleet (small footprint, central patching) |
static |
musl | Portable Tool Bin (runs on any Linux kernel) |
hermetic |
musl + bundle | AppImage-style self-contained Essence |
6. Multi-Arch Essences
The arch field prevents the Hydration engine from accidentally mapping
x86_64 binaries into an AArch64 container:
{
"arch": "aarch64",
"instruction_set": "ARMv8-A",
"merkle_root": "9f4e2a8b..."
}
7. PGP Attestation
While the Coven handles internal Merkle sealing, the Grimoire itself is expected to be PGP-signed by the High Mage:
gpg --detach-sign -a grimoire/libs/openssl/DETAILS
sorcery-go cast openssl --verify-pgp
The Tablet records who signed each spell — the WebUI shows a "Trusted Source" badge next to the Essence in the Tomb.