diff --git a/npm/packages/ruvector/.ruvector/intelligence.json b/npm/packages/ruvector/.ruvector/intelligence.json index 0e7d1450..e79e50a5 100644 --- a/npm/packages/ruvector/.ruvector/intelligence.json +++ b/npm/packages/ruvector/.ruvector/intelligence.json @@ -127,7 +127,8 @@ "total_memories": 0, "total_trajectories": 0, "total_errors": 0, - "session_count": 0, - "last_session": 0 - } + "session_count": 1, + "last_session": 1767194227 + }, + "trajectories": [] } \ No newline at end of file diff --git a/npm/packages/ruvector/bin/cli.js b/npm/packages/ruvector/bin/cli.js index b8187255..38a05b41 100755 --- a/npm/packages/ruvector/bin/cli.js +++ b/npm/packages/ruvector/bin/cli.js @@ -2609,22 +2609,37 @@ class Intelligence { } sessionEnd() { - // Ensure stats exists with defaults + // Ensure data structure exists with defaults + if (!this.data) { + this.data = { patterns: {}, memories: [], trajectories: [], errors: [], agents: {}, edges: [], stats: {} }; + } if (!this.data.stats) { this.data.stats = { total_patterns: 0, total_memories: 0, total_trajectories: 0, total_errors: 0, session_count: 0, last_session: 0 }; } + if (!this.data.trajectories) { + this.data.trajectories = []; + } + const lastSession = this.data.stats.last_session || 0; const duration = this.now() - (this.sessionStartTime || lastSession); - const actions = (this.data.trajectories || []).filter(t => t.timestamp >= lastSession).length; + const actions = this.data.trajectories.filter(t => t && t.timestamp >= lastSession).length; // Force learning cycle (only if engine already initialized) - const eng = this.getEngineIfReady(); - if (eng) { - eng.forceLearn(); + try { + const eng = this.getEngineIfReady(); + if (eng) { + eng.forceLearn(); + } + } catch (e) { + // Ignore engine errors on session end } // Save all data - this.save(); + try { + this.save(); + } catch (e) { + // Ignore save errors on session end + } return { duration, actions }; } diff --git a/npm/packages/ruvector/package.json b/npm/packages/ruvector/package.json index ecc297d1..6b04930b 100644 --- a/npm/packages/ruvector/package.json +++ b/npm/packages/ruvector/package.json @@ -1,6 +1,6 @@ { "name": "ruvector", - "version": "0.1.67", + "version": "0.1.68", "description": "High-performance vector database for Node.js with automatic native/WASM fallback", "main": "dist/index.js", "types": "dist/index.d.ts",