Liking cljdoc? Tell your friends :D

fractal.engine.bundle

L1.5 · the BUNDLE identity (yjy): the stamped, content-addressed identity of the model-facing world a session runs under — {harness, doctrine stamp, surface stamps, normalized capability}. The bundle is the general form of rehydration: a head produced under bundle B can only be trusted as an attach/ resume basis when the caller re-presents a compatible world. Surface impls are fns and can never be serialized, so rehydration is IDENTITY VERIFICATION

  • RE-PRESENTATION (the embedder supplies the world again; the engine checks the stamps), never deserialization.

Compatibility is component-wise, mirroring existing semantics:

  • surfaces must MATCH exactly (typed :bundle/surface-mismatch) — restored vars were created against those namespaced fns;
  • doctrine must MATCH on RESUME (the session's own conversation continues under the words it ran with) but is NOT checked on attach (a derived child is a fresh conversation under the caller's doctrine);
  • capability is NEVER matched here — it follows the clamp lattice (narrowing is legal and handled by session/capability). Sessions recorded before bundles existed (no :session/bundle) skip verification (the legacy path, like the capability-profile fallback).
L1.5 · the BUNDLE identity (yjy): the stamped, content-addressed identity of
the model-facing world a session runs under — {harness, doctrine stamp,
surface stamps, normalized capability}. The bundle is the general form of
rehydration: a head produced under bundle B can only be trusted as an attach/
resume basis when the caller re-presents a compatible world. Surface impls
are fns and can never be serialized, so rehydration is IDENTITY VERIFICATION
+ RE-PRESENTATION (the embedder supplies the world again; the engine checks
the stamps), never deserialization.

Compatibility is component-wise, mirroring existing semantics:
- surfaces must MATCH exactly (typed :bundle/surface-mismatch) — restored
  vars were created against those namespaced fns;
- doctrine must MATCH on RESUME (the session's own conversation continues
  under the words it ran with) but is NOT checked on attach (a derived child
  is a fresh conversation under the caller's doctrine);
- capability is NEVER matched here — it follows the clamp lattice (narrowing
  is legal and handled by session/capability).
Sessions recorded before bundles existed (no :session/bundle) skip
verification (the legacy path, like the capability-profile fallback).
raw docstring

assert-attach-compatible!clj

(assert-attach-compatible! recorded computed allow-mismatch?)

ATTACH verification: the derived child must re-present the SOURCE's surfaces (restored vars were created against them); doctrine/capability are the caller's concern (fresh conversation / clamp lattice). allow-mismatch? skips the check explicitly — divergence becomes the embedder's stated choice instead of a silent wrong-world rehydration. nil recorded ⇒ no-op. Returns the computed bundle.

ATTACH verification: the derived child must re-present the SOURCE's surfaces
(restored vars were created against them); doctrine/capability are the
caller's concern (fresh conversation / clamp lattice). `allow-mismatch?`
skips the check explicitly — divergence becomes the embedder's stated
choice instead of a silent wrong-world rehydration. nil recorded ⇒ no-op.
Returns the computed bundle.
sourceraw docstring

assert-resume-compatible!clj

(assert-resume-compatible! recorded computed)

RESUME verification: surfaces AND doctrine must match the recorded bundle. nil recorded (legacy session) ⇒ no-op. Returns the computed bundle.

RESUME verification: surfaces AND doctrine must match the recorded bundle.
nil recorded (legacy session) ⇒ no-op. Returns the computed bundle.
sourceraw docstring

bundle-versionclj

source

describeclj

(describe cfg profile)

The bundle description for a cfg + resolved profile — pure data, suitable for persistence on the session row.

The bundle description for a cfg + resolved profile — pure data, suitable
for persistence on the session row.
sourceraw docstring

stampclj

(stamp cfg profile)

describe + the content-addressed :bundle/hash over the description.

describe + the content-addressed :bundle/hash over the description.
sourceraw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close