trellis
Version:
Agentic State Engine — event-sourced causal graph with branching, decision traces, and realtime sync for AI-native applications
54 lines • 1.82 kB
TypeScript
/**
* Embedding Types
*
* Types for the semantic embedding and vector search system.
*
* @see TRL-18
*/
export type ChunkType = 'issue_title' | 'issue_desc' | 'milestone_msg' | 'decision_rationale' | 'summary_md' | 'code_entity' | 'doc_comment' | 'markdown';
export interface ChunkMeta {
/** Unique chunk ID, e.g. "issue:TRL-5:title", "file:src/engine.ts:chunk:0" */
id: string;
/** EAV entity ID this chunk belongs to */
entityId: string;
/** Original text content */
content: string;
/** Chunk classification */
chunkType: ChunkType;
/** Source file path (nullable for non-file entities) */
filePath?: string;
/** When this chunk was last updated */
updatedAt: string;
}
export interface EmbeddingRecord extends ChunkMeta {
/** 384-dimensional embedding vector */
embedding: Float32Array;
}
export interface SearchResult {
/** Chunk metadata */
chunk: ChunkMeta;
/** Cosine similarity score (0..1) */
score: number;
}
export interface SearchOptions {
/** Max results to return (default: 10) */
limit?: number;
/** Filter by chunk type(s) */
types?: ChunkType[];
/** Filter by file path prefix */
filePrefix?: string;
/** Minimum similarity threshold (default: 0.0) */
minScore?: number;
}
export interface EmbeddingModelConfig {
/** Model name for transformers.js (default: "Xenova/all-MiniLM-L6-v2") */
modelName: string;
/** Embedding dimension (default: 384) */
dimension: number;
/** Cache directory for model files */
cacheDir?: string;
}
export declare const DEFAULT_MODEL_CONFIG: EmbeddingModelConfig;
/** New chunk types for generic graph entities */
export type GraphChunkType = ChunkType | 'entity_summary' | 'entity_fact' | 'entity_link';
//# sourceMappingURL=types.d.ts.map