mirror of
https://github.com/samvallad33/vestige.git
synced 2026-06-22 21:28:08 +02:00
feat: Vestige v2.0.0 "Cognitive Leap" — 3D dashboard, HyDE search, WebSocket events
The biggest release in Vestige history. Complete visual and cognitive overhaul. Dashboard: - SvelteKit 2 + Three.js 3D neural visualization at localhost:3927/dashboard - 7 interactive pages: Graph, Memories, Timeline, Feed, Explore, Intentions, Stats - WebSocket event bus with 16 event types, real-time 3D animations - Bloom post-processing, GPU instanced rendering, force-directed layout - Dream visualization mode, FSRS retention curves, command palette (Cmd+K) - Keyboard shortcuts, responsive mobile layout, PWA installable - Single binary deployment via include_dir! (22MB) Engine: - HyDE query expansion (intent classification + 3-5 semantic variants + centroid) - fastembed 5.11 with optional Nomic v2 MoE + Qwen3 reranker + Metal GPU - Emotional memory module (#29) - Criterion benchmark suite Backend: - Axum WebSocket at /ws with heartbeat + event broadcast - 7 new REST endpoints for cognitive operations - Event emission from MCP tools via shared broadcast channel - CORS for SvelteKit dev mode Distribution: - GitHub issue templates (bug report, feature request) - CHANGELOG with comprehensive v2.0 release notes - README updated with dashboard docs, architecture diagram, comparison table 734 tests passing, zero warnings, 22MB release binary. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
26cee040a5
commit
c2d28f3433
321 changed files with 32695 additions and 4727 deletions
|
|
@ -148,6 +148,30 @@ pub struct KnowledgeNode {
|
|||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub valid_until: Option<DateTime<Utc>>,
|
||||
|
||||
// ========== Utility Tracking (MemRL v1.9.0) ==========
|
||||
/// Utility score = times_useful / times_retrieved (0.0 to 1.0)
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub utility_score: Option<f64>,
|
||||
/// Number of times this memory was retrieved in search
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub times_retrieved: Option<i32>,
|
||||
/// Number of times this memory was subsequently useful
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub times_useful: Option<i32>,
|
||||
|
||||
// ========== Emotional Memory (v2.0.0) ==========
|
||||
/// Emotional valence: -1.0 (negative) to 1.0 (positive)
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub emotional_valence: Option<f64>,
|
||||
/// Flashbulb memory flag: ultra-high-fidelity encoding
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub flashbulb: Option<bool>,
|
||||
|
||||
// ========== Temporal Hierarchy (v2.0.0) ==========
|
||||
/// Temporal level for summary nodes: None=leaf, "daily"/"weekly"/"monthly"
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub temporal_level: Option<String>,
|
||||
|
||||
// ========== Semantic Embedding ==========
|
||||
/// Whether this node has an embedding vector
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
|
|
@ -181,6 +205,12 @@ impl Default for KnowledgeNode {
|
|||
tags: vec![],
|
||||
valid_from: None,
|
||||
valid_until: None,
|
||||
utility_score: None,
|
||||
times_retrieved: None,
|
||||
times_useful: None,
|
||||
emotional_valence: None,
|
||||
flashbulb: None,
|
||||
temporal_level: None,
|
||||
has_embedding: None,
|
||||
embedding_model: None,
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue