Expand description
Core object primitives extracted from the monolith.
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.
- 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).
- Blob
- A blob stores raw file contents.
- Change
Id - A stable change identifier (16 bytes / 128 bits).
- Conflict
Side - Conflict
Symbol - Content
Hash - A BLAKE3 content hash (32 bytes / 256 bits).
- Context
Blob - A collection of logical annotations for a single target.
- Discussion
- Discussion
Turn - Discussions
Blob - File
Change - A single file change with path and kind.
- File
Change Set - A collection of file changes with convenience accessors.
- File
Provenance - Line
Span - 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. - 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. - Review
Signature - Review
Signatures Blob - Risk
Signal - Risk
Signal Blob - Top-level encoded blob. Stored under a [
ContentHash] referenced from [State::risk_signals]. A blob withformat_version > FORMAT_VERSIONis rejected; older versions are read with the missing-field defaults. - 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.
- State
- A state is an immutable snapshot with rich metadata.
- State
Signature - Signature information for a state.
- Structured
Conflict - Symbol
Anchor - Durable symbol-level anchor: a file path plus a symbol name. No line range — line numbers move under reformatting; symbols do not.
- Tree
- A tree represents a directory structure.
- Tree
Entry - A single entry in a tree.
- Verification
- Verification information for a state.
Enums§
- Annotation
Kind - The canonical annotation taxonomy the product surfaces.
- Annotation
Scope - What part of a file an annotation targets.
- Annotation
Status - Annotation
Visibility - Visibility scope for an annotation. Determines which audiences see it on read paths and during bridge export.
- Change
IdParse Error - Error parsing a ChangeId.
- Change
Importance - How important is this change for review.
- Conflict
Error - Conflict
Resolution - Context
Error - Context
Target - A typed target for context entries.
- Diff
Kind - Kind of file change.
- Discussion
Error - Discussion
Resolution - Entry
Type - Entry type in a tree (blob or subtree).
- File
Mode - File mode for tree entries.
- Modification
Kind - What kind of modification was made to a file.
- 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.
- Semantic
Change - A semantic change description.
- Signature
Status - Signature verification result.
- Status
- Lifecycle status of a state.
- Tree
Error - Error type for tree operations.
Constants§
- MAX_
REASON_ LEN - Maximum length of
RiskSignal::reason, in bytes. - REDACTION_
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.
Functions§
- diff_
trees - Collect all file changes between two trees.
- generate_
session_ id - 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.
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).