Expand description
Provenance-tagged knowledge graph store.
Every edge in a Roteiro graph carries a Provenance tag recording how it
was produced: deterministically derived from source ASTs, authored by a
human or agent in an ADR/blueprint, or inferred heuristically from docs and
other artifacts. See ADR-0001.
The graph is a set of Nodes addressed by a deterministic natural
Node::key, connected by Edges. Facts extracted from one source blob
are grouped into a FactSet and applied atomically to a Store.
@rto:0001
Structs§
- BlobRef
- A blob in a tree: its repository-relative path and hex object id.
- Edge
- An edge in the knowledge graph, connecting two nodes by their keys.
- EdgeRef
- One end of an edge as seen from a subject node: the relationship, how it was produced, and the node on the other end.
- Explanation
- A node together with its provenance-labelled neighbourhood.
- FactSet
- The set of nodes and edges extracted from a single source blob (or otherwise
assembled together). Applying a fact set to a
crate::Storeis atomic. - File
Node Extractor - Fallback extractor: emits a single
filenode per blob, tagged with its blob hash and basic size metadata. Produces no edges. Used for files with no registered language. - Listing
- A listing of all nodes of one kind.
- Node
- A node in the knowledge graph.
- Node
Summary - A compact node summary (used in listings and as the subject of an
Explanation). - Object
Cache - A content-addressed store of fact sets on disk.
- Registry
- Dispatches extraction to a language-aware extractor by file extension,
falling back to
FileNodeExtractorwhen no language is registered. - Repo
- A discovered git repository.
- Rust
Extractor - Derived extractor for Rust source, backed by tree-sitter. Emits a
filenode, one symbol node perfn/struct/enum/trait/mod(and a few others) withdefines/containsedges reflecting lexical nesting, andimportsedges forusedeclarations. Each function records the simple names it calls inmeta.callsfor later cross-file resolution. - Span
- A byte-offset range within a source blob (
start..end). - Store
- A Roteiro graph store backed by a single
SQLitedatabase. - Sync
Report - A summary of the work a
syncperformed.
Enums§
- Cache
Error - Errors raised by the object cache.
- Direction
- Direction of traversal when querying a node’s neighbours.
- Edge
Kind - The kind of a graph edge (the relationship it records).
- GitError
- Errors raised while reading from a git repository.
- Node
Kind - The kind of a graph node.
- Provenance
- How an edge in the graph was produced.
- Store
Error - Errors raised by the store.
- Sync
Error - Errors raised while syncing.
Constants§
- SCHEMA
- The versioned schema tag emitted on every query result. Bump the version on any breaking change to the shape.
Traits§
- Extractor
- Turns one source blob into the nodes and edges derived from it.
Functions§
- explain
- Explain a node: its record plus every incoming and outgoing edge, each
labelled with provenance. Returns
Noneif no node has that key. - list_
kind - List every node of the given
kind, ordered by key. - sync
- Sync
storeto the repository’sHEADtree, extracting changed blobs withextractorand caching results incache. - sync_
worktree - Sync
storeto the working tree: the committedHEADstate with uncommitted edits to tracked files overlaid on top (a pre-commit preview).