NeoGraph 0.16.0
A C++20 Graph Agent Engine Library — LangGraph for C++
Loading...
Searching...
No Matches
neograph::ContextArtifactOrderEntry Struct Reference

Check what an epoch declares about the request prefix of its predecessor. More...

#include <runtime_context.h>

Collaboration diagram for neograph::ContextArtifactOrderEntry:
[legend]

Detailed Description

Check what an epoch declares about the request prefix of its predecessor.

An epoch without a claim, or one that Breaks, is accepted as it stands: a break only has to name its reason, and an epoch that breaks without needing to costs a cache entry, not correctness. The one exception: when the predecessor is loadable and has another assembly layout, the epoch has to say Breaks(LayoutChange), since the request then differs from its first byte. An Extends claim is structural and must hold:

  • the predecessor is the epoch's predecessor (same id, run and feed) and records its artifact order, which an epoch of version 1 does not;
  • raw_from_sequence is the same and raw_through_sequence is larger;
  • the Stable and Slow artifacts are the same, in the same order;
  • every KeepInPlace artifact of the predecessor is still selected, and each one the epoch selects covers a range inside its RAW window;
  • under the stable-first layout, the artifacts of the epoch form a layout the assembler accepts (validate_context_layout). What the claim promises depends on the layout. Under Legacy it says that the Stable and Slow artifacts and their recorded order are unchanged and that the RAW window only grew; the legacy assembler orders by placement, priority and producer and does not read the recorded order, so the claim does not promise the same start of the request. Under StableFirst the recorded order is the order of the request, and the start of the request up to the end of the Slow artifacts is the predecessor's (host instructions and tools aside, which the epoch does not own). artifacts are the artifacts the epoch selects and predecessor_artifacts those of the predecessor, each matching its epoch's artifact_ids. Pass a null predecessor when none can be loaded: an Extends claim is then refused. Throws ContextStabilityError. An artifact and the key a host orders it by.

Definition at line 529 of file runtime_context.h.


The documentation for this struct was generated from the following file: