agentic-flow 1.5.0 → 1.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,22 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.5.2] - 2025-10-11
9
+
10
+ ### Fixed
11
+ - **Critical:** Fixed Float32Array buffer parsing in database queries
12
+ - Properly convert binary blob to Float32Array (buffer.length / 4 bytes per float)
13
+ - Resolves "Vector dimension mismatch: 1024 vs 4096" error
14
+ - Demo and all ReasoningBank features now work correctly
15
+
16
+ ## [1.5.1] - 2025-10-11
17
+
18
+ ### Fixed
19
+ - **Critical:** Fixed vector dimension mismatch in ReasoningBank demo
20
+ - Ensured consistent embedding dimensions (1024) across seeding and retrieval
21
+ - Fixed OpenAI fallback to use config dimensions instead of hardcoded 1536
22
+ - Demo now works correctly without OpenAI API key
23
+
8
24
  ## [1.5.0] - 2025-10-11
9
25
 
10
26
  ### 🧠 Major Feature: Reasoning Agents System with ReasoningBank Integration
@@ -148,11 +148,16 @@ export function fetchMemoryCandidates(options) {
148
148
  query += ` ORDER BY p.confidence DESC, p.usage_count DESC`;
149
149
  const stmt = db.prepare(query);
150
150
  const rows = stmt.all(...params);
151
- return rows.map((row) => ({
152
- ...row,
153
- pattern_data: JSON.parse(row.pattern_data),
154
- embedding: new Float32Array(Buffer.from(row.embedding))
155
- }));
151
+ return rows.map((row) => {
152
+ const buffer = Buffer.from(row.embedding);
153
+ // Create Float32Array from buffer - buffer length / 4 bytes per float
154
+ const float32Array = new Float32Array(buffer.buffer, buffer.byteOffset, buffer.length / 4);
155
+ return {
156
+ ...row,
157
+ pattern_data: JSON.parse(row.pattern_data),
158
+ embedding: float32Array
159
+ };
160
+ });
156
161
  }
157
162
  /**
158
163
  * Store a new reasoning memory
@@ -37,9 +37,10 @@ export async function computeEmbedding(text) {
37
37
  */
38
38
  async function openaiEmbed(text, model) {
39
39
  const apiKey = process.env.OPENAI_API_KEY;
40
+ const config = loadConfig();
40
41
  if (!apiKey) {
41
42
  console.warn('[WARN] OPENAI_API_KEY not set, falling back to hash embeddings');
42
- return hashEmbed(text, 1536); // OpenAI default dimension
43
+ return hashEmbed(text, config.embeddings.dimensions); // Use config dimension
43
44
  }
44
45
  try {
45
46
  const response = await fetch('https://api.openai.com/v1/embeddings', {
@@ -62,7 +63,8 @@ async function openaiEmbed(text, model) {
62
63
  catch (error) {
63
64
  console.error('[ERROR] OpenAI embedding failed:', error);
64
65
  console.warn('[WARN] Falling back to hash embeddings');
65
- return hashEmbed(text, 1536);
66
+ const config = loadConfig();
67
+ return hashEmbed(text, config.embeddings.dimensions);
66
68
  }
67
69
  }
68
70
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentic-flow",
3
- "version": "1.5.0",
3
+ "version": "1.5.2",
4
4
  "description": "Production-ready AI agent orchestration platform with 66 specialized agents, 213 MCP tools, ReasoningBank learning memory, and autonomous multi-agent swarms. Built by @ruvnet with Claude Agent SDK, neural networks, memory persistence, GitHub integration, and distributed consensus protocols.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",