Expand description
Core object primitives extracted from the monolith.
Re-exports§
pub use manifest::BuiltManifest;pub use manifest::FsckFinding;pub use manifest::FsckOptions;pub use manifest::FsckReport;pub use manifest::FsckRule;pub use manifest::ManifestBinding;pub use manifest::ManifestBuildError;pub use manifest::ManifestFacet;pub use manifest::ManifestKey;pub use manifest::ManifestNode;pub use manifest::ManifestNodeSource;pub use manifest::ManifestObject;pub use manifest::ManifestObjectKind;pub use manifest::ManifestOwnerKind;pub use manifest::PackRangeAudit;pub use manifest::PackRangeClaim;pub use manifest::PackRecord;pub use manifest::build_manifest;pub use manifest::expand_manifest;pub use manifest::fsck_manifest;pub use manifest::fsck_manifest_with;pub use manifest::fsck_pack_range;pub use tree_walk::TreeIntegrityEvent;pub use tree_walk::walk_tree_integrity;pub use collaboration::*;
Modules§
- collaboration
- manifest
- Canonical manifest/object encodings and fsck rules for the immutable CAS.
- tree_
walk - Tree integrity walking — single traversal for reference and content checks.
Structs§
- Action
- An action records an operation between states.
- Action
Id - Unique identifier for an action (derived from content).
- Agent
- AI agent identity that performed changes on behalf of a principal.
- Annotated
Tag - A byte-exact annotated Git tag object.
- Annotated
TagMarker - The native marker that owns an outer annotated-tag object.
- Annotation
- A stable logical annotation with revision history.
- Annotation
Revision - A single revision of a logical annotation.
- Attribution
- Attribution for a change (who did it).
- Binding
Delta - Content-addressed state binding delta.
- Blob
- A blob stores raw file contents.
- Branch
Created V1 - Branch creation operation body.
- Byte
Span - Half-open byte range in the source blob. Spans are provenance metadata: they are encoded for navigation, but excluded from semantic digests.
- Change
Id - A rewrite-stable logical change identifier (16 bytes / 128 bits).
- Change
Lineage - Conflict
Range - Zero-based, half-open line range (
start_line..end_line). - Conflict
Region - One independently addressable conflict region in a file.
- Conflict
Side - Provenance and integrity information for one side of a conflict region.
- Content
Hash - A BLAKE3 content hash (32 bytes / 256 bits).
- Context
Blob - A collection of logical annotations for a single target.
- Context
Suggestion - Cursor
Moved V1 - Cursor movement operation body.
- Discussion
- Discussion
Reference - One durable entity reference embedded in a discussion turn.
- Discussion
Turn - Discussions
Blob - File
Binding Delta - Complete replacement edges for one source file in a binding delta.
- File
Change - A single file change with path and kind.
- File
Change Set - A collection of file changes with convenience accessors.
- File
Provenance - Import
Binding - One name introduced by an import, in canonical source order.
- Import
Entry - One unresolved, source-local import record.
- KeyBinding
- A signing key’s role within an identity’s provenance chain.
- KeyBinding
Registry - Versioned, authority-signed checkpoint of the key-binding registry.
- Line
Span - Marker
Name - Name of a heddle marker (tag-like construct).
- Native
Tool Call RefV1 - Native harness tool-call identity.
- Occurrence
Entry - One unresolved symbol occurrence, numbered in source order.
- Operation
Id - Origin
- Origin
Set - Principal
- Human identity accountable for changes.
- Producer
Id - Identifies the producer that fired this signal. The
versionlets budgeting and signal-health surfaces age out signals from old producer versions without re-running computation — important when we tune a producer’s heuristics and want to compare apples to apples. - Purge
Evidence - Separately signed evidence authorizing irreversible byte deletion.
- Redaction
- A redaction declaration on a single blob in a single state.
- Redactions
Blob - On-disk blob containing all redactions for a single blob hash. One file
per redacted blob, encoded with
rmp-serde— matches theReviewSignaturesBlobpattern. - Reserved
RefName Error - Rejection when a user thread or marker name occupies
heddle/. - Resolved
Semantic Edge - A resolved occurrence-to-definition edge.
- Resolved
Tree Target - Successful resolution of a path within a tree.
- Reverse
Dependency Index - Content-addressed file → importers map for one state.
- Review
Signature - Review
Signatures Blob - Risk
Signal - Risk
Signal Blob - Top-level encoded blob referenced by a risk-signal state attachment.
- Scope
- Checkout/lane scope identifier for scoped operations.
- Scope
Entry - A deterministic source-local scope.
local_idis assigned in preorder. - Semantic
File Facts - Canonical source-local facts assembled into a
SemanticFileNode. - Semantic
File Node - The per-file semantic node: deterministic source-local facts extracted from one source blob plus their reformat-stable digest.
- Semantic
Graph Query Request - weft#451 Tier-2 request body. Hosted RPC names remain residual in weft.
- Semantic
Graph Query Response - weft#451 Tier-2 response body.
index_presentis false when the state has no attached semantic index; the query then returns empty collections and never computes one. - Semantic
Graph Ref - One persisted reference to a definition, reconstructed without parsing.
- Semantic
Index Root - Root of a state’s semantic index. Attached to a state via
StateAttachmentBody::SemanticIndex. - Semantic
Tree Entry - One child edge of a
SemanticTreeNode. - Semantic
Tree Node - A semantic directory node mirroring a source
Tree. - Session
- Session
Segment - Signal
Anchor - Where in the change a signal fires. Symbol-level is preferred — symbols are durable across renames; line ranges are computed at fire time and drift as code is reformatted.
- SpoolId
- Spool
IdParse Error - State
- Immutable source-history state.
state_idis recomputed from every encoded field; mutable repository metadata lives inStateAttachmentobjects. - State
Attachment - State
Attachment Id - StateId
- Content-addressed identity of an immutable state core.
- State
Signature - Signature information for a state.
- State
Visibility - A visibility-tier declaration on a single state.
- State
Visibility Blob - On-disk blob containing all visibility records for a single state. One
file per state, encoded with
rmp-serde— mirrors theRedactionsBlobsidecar pattern. - Structured
Conflict - Suggestion
Inputs - Suggestion
Signal - Symbol
Anchor - Durable symbol-level anchor: a file path plus a symbol name. No line range — line numbers move under reformatting; symbols do not.
- Symbol
Entry - One symbol defined in a source file.
- Synthetic
Frontier Name - Type-distinct name of a synthetic frontier root.
- Thread
Name - Name of a heddle thread (branch-like construct).
- Timeline
Branch Id - Timeline
Operation Envelope - A v1 timeline operation envelope.
- Timeline
Operation Id - Content-addressed identifier for a timeline operation envelope.
- Timeline
Step Id - Timeline
Tool Payload Metadata - Scrubbed metadata for native tool payloads.
- Tool
Call Finished V1 - Tool-call finish operation body.
- Tool
Call Started V1 - Tool-call start operation body.
- Tree
- Tree
Entry - Verification
- Verification information for a state.
Enums§
- Annotated
TagError - Annotation
Kind - The canonical annotation taxonomy the product surfaces.
- Annotation
Scope - What part of a file an annotation targets.
- Annotation
Status - Change
IdParse Error - Error parsing a ChangeId.
- Change
Importance - How important is this change for review.
- Change
Lineage Kind - Conflict
Error - Context
Error - Context
Suggestion Tier - Context
Target - A typed target for context entries.
- Diff
Kind - Kind of file change.
- Discussion
Error - Discussion
Reference Kind - Kind of entity named by a
DiscussionReference. - Discussion
Resolution - Entry
Type - File
Mode - Import
Kind Tag - Source-level import form. Resolution to repository paths happens later.
- KeyBinding
Error - KeyRole
- Capability granted to a key by an authority-signed registry checkpoint.
- Leaf
Policy - How a tree-path walk classifies and materializes the terminal entry.
- Modification
Kind - What kind of modification was made to a file.
- Occurrence
Role - Role played by a source-level symbol occurrence.
- Operation
- Type of operation performed.
- Operation
IdParse Error - Provenance
Error - Redaction
Error - Errors produced while encoding/decoding redactions.
- Review
Kind - Reviewer roles. New variants append at the tail; the wire format stays
backwards compatible because
serdeemits the snake-case discriminant. - Review
Scope - Reviewer signed off on the whole change, or on a specific list of symbols.
- Review
Signature Error - Risk
Signal Error - Risk
Signal Kind - Why a signal fired. Variants are wire-stable; new variants are appended.
- Scope
Kind - Source-local lexical scope classification.
- Semantic
Change - A semantic change description.
- Semantic
Edge Kind - The relationship represented by a resolved source occurrence.
- Semantic
Entry Kind - The kind of a
SemanticTreeEntry’s target. - Semantic
Graph Query Kind - Graph primitive selected by
heddle semantic refsand the weft#451 wire. - Semantic
Index Error - Signature
Status - Signature verification result.
- Staleness
Status - Result of checking an annotation’s freshness against current code.
- State
Attachment Body - State
Attachment Kind - The kind of a
StateAttachmentBody, with the payload projected away. - State
IdParse Error - State
Visibility Error - Errors produced while encoding/decoding/validating state visibility.
- Status
- Lifecycle status of a state.
- Symbol
Kind Tag - Durable symbol classification shared by semantic extraction, indexes, and review payloads so types, traits, enums, modules and the rest remain first-class without conversion tables.
- Symbol
Namespace - Namespace in which a binding or occurrence participates.
- Synthetic
Frontier Name Error - Why a synthetic frontier name could not be built or parsed.
- Timeline
Branch Reason - Why a timeline branch was created.
- Timeline
Codec Error - Timeline operation codec error.
- Timeline
Cursor Move Reason - Why the timeline cursor moved.
- Timeline
Label - Safety labels attached to timeline operations.
- Timeline
Operation Body V1 - V1 timeline operation body variants.
- Timeline
Operation IdParse Error - Error parsing a timeline operation id.
- Timeline
Operation Kind - Explicit timeline operation kind stored in every operation envelope.
- Timeline
Tool Call Status - Tool-call terminal status.
- Tree
Decode Error - Tree
Entry Target - Tree
Error - Tree
Path Resolve Error - Errors surfaced by
resolve_tree_paththat callers map to their own messages. - Visibility
Tier - Content-side visibility tier. Shared by annotations, discussions, and states so the per-commit visibility tiers and annotation/discussion visibility draw from one vocabulary rather than parallel enums.
Constants§
- GIT_
SYNTHETIC_ FRONTIER_ PREFIX - Git-side prefix for the same roots. Disjoint from
refs/heads/. - HIGH_
SUGGESTION_ THRESHOLD - KEY_
BINDING_ REGISTRY_ SIGNING_ PAYLOAD_ VERSION_ TAG - Domain separator for authority signatures over registry checkpoints.
- KEY_
BINDING_ SIGNING_ PAYLOAD_ VERSION_ TAG - Domain separator for signatures that authorize a
KeyBinding. - MAJOR_
REWRITE_ THRESHOLD_ PCT - MAX_
REASON_ LEN - Maximum length of
RiskSignal::reason, in bytes. - MEDIUM_
SUGGESTION_ THRESHOLD - PURGE_
SIGNING_ PAYLOAD_ VERSION_ TAG - Domain separator for a destructive purge authorization.
- REDACTION_
SIGNING_ PAYLOAD_ VERSION_ TAG - Stable byte prefix the signing payload begins with. Bumping this invalidates signatures written with an older prefix unless verification also gains explicit version dispatch. Version 3 separates reversible redaction authority from destructive purge authority.
- RESERVED_
REF_ SEGMENT - First path segment reserved for Heddle-internal refs.
- STATE_
VISIBILITY_ SIGNING_ PAYLOAD_ VERSION_ TAG - Stable byte prefix the signing payload begins with. Bumping this versions the payload format itself; old signatures with the old prefix continue to verify exactly as they did when written.
- SUGGESTION_
WINDOW - SYNTHETIC_
FRONTIER_ PREFIX - Wire and local-store prefix for synthetic frontier roots.
- TIMELINE_
OPERATION_ SCHEMA_ VERSION - Current timeline operation schema version.
Traits§
- Object
Source - Read-only object access needed by object graph walkers.
Functions§
- annotation_
status_ for_ source - Check an annotation’s staleness against already-loaded source bytes.
- annotation_
status_ for_ source_ with_ symbol_ resolver - Check an annotation’s staleness with an injected symbol resolver.
- compute_
dir_ semantic_ digest - Compute a directory node’s
semantic_digestover its entries. - compute_
file_ scaffold_ hash - Hash the file’s scaffold: the residual non-definition top-level token
stream (every leaf under the file root not covered by an extracted symbol’s
span). This is what binds
use-decl swaps,impl Traitheaders, attribute edits,macro_rules!bodies and definition-free files (re-export-only libs, top-level statements) into the file digest — semantic content that lives outside any extracted symbol. - compute_
file_ semantic_ digest - Compute a file node’s
semantic_digestover its scaffold and canonical source-local facts. Spans are deliberately excluded from this identity. - compute_
symbol_ semantic_ hash - Compute a symbol’s normalization-stable
semantic_hash. - diff_
trees - Collect all file changes between two trees.
- diff_
trees_ visit - Diff two trees with internal iteration, invoking
visitorfor eachFileChangein traversal order. - extract_
line_ range - Extract bytes for a line range from source content.
- generate_
discussion_ id - generate_
session_ id - is_
reserved_ heddle_ namespace - True when
nameoccupies the reservedheddle/namespace. - parse_
commit_ extension_ headers - Parse the extension headers from a raw git commit object’s content bytes
(the bytes
git cat-file commit <sha>prints — i.e. gix’sCommit::data), in their exact on-the-wire order, ready to store inState::extra_headers. - resolve_
current_ symbol - Resolve a symbol using the stored line range.
- resolve_
tree_ path - Walk
pathfromrootthrough nested subtrees and resolve the terminal entry according topolicy. - score_
suggestions - signing_
payload - Build the deterministic byte payload that a
ReviewSignatureis computed over. Re-implementing this in another language (TypeScript, Python) must produce byte-identical output for verification to round-trip. - split_
path - Split a repository-relative path into its first component and the remainder.
- validate_
tree_ entry_ name
Type Aliases§
- Discussion
Id - Stable opaque identifier for a discussion. Generated server-side at open
time. We use a
Stringrather thanChangeIdto leave room for whatever id scheme the discussion service ends up choosing (likely a UUID).