CultLib/packages/cultcache-ts/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens b304df5e47 Promote the swarm document catalog into cultcache-ts
Odin carried defineOdinDocuments: 45 CultCache document-type definitions for
documents that cross service boundaries. Eve surfaces and provider
advertisements, Ghostlight, Heimdall, Idunn, Muninn, Sleipnir, Aetheria,
VoidBot, Stonks. Almost none of it is Odin. It lived there because Odin was
written first.

That was tolerable while Odin was the only consumer of consequence. It stops
being tolerable when Hermodr moves to its own repository, because the choice
then is a published contract or two definitions of one wire format, and the
second is the failure the Hermodr extraction exists to remove.

The catalog is now defineSwarmDocuments here, beside defineDocumentType, which
is what builds it. defineDocumentType stays injected rather than imported: that
is how it worked in Odin, it keeps the catalog clear of the generic signature in
./document, and it lets a caller supply another runtime.

Ported as a mechanical transform rather than retyped, then verified rather than
assumed: serialising all 45 definitions from both implementations against the
same probe gives byte-identical output and identical key sets. The 43 callbacks
that gained annotations are named DocumentValue rather than bare any, because
these definitions predate typing and read fields defensively, and pretending
otherwise would be inventing types nobody has verified.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-06 19:40:37 +02:00
..
cult-cache-inspector.ts Recover schema-stamped cache records across runtimes 2026-06-27 14:34:53 +01:00
cult-cache.ts Recover schema-stamped cache records across runtimes 2026-06-27 14:34:53 +01:00
document.ts Bring language packages into CultLib monorepo 2026-05-30 00:39:39 +01:00
index.ts Promote the swarm document catalog into cultcache-ts 2026-09-06 19:40:37 +02:00
single-file-messagepack-backing-store.ts Add single-file document handles 2026-06-27 15:46:25 +01:00
swarm-documents.ts Promote the swarm document catalog into cultcache-ts 2026-09-06 19:40:37 +02:00
types.ts Bring language packages into CultLib monorepo 2026-05-30 00:39:39 +01:00