brainy/examples/tests/test-refactored-api.js
David Snelling 8ff382ca3b chore: recovery checkpoint - v3.0 API successfully recovered
CRITICAL CHECKPOINT - DO NOT PUSH TO GITHUB

Recovery Status:
- Successfully recovered brainy.ts from compiled JavaScript
- All core v3.0 API methods functional (add, get, update, delete, relate, find, etc.)
- Neural subsystem intact (562KB embedded patterns, NLP working)
- Augmentation pipeline operational (20+ augmentations)
- HNSW clustering system complete
- Triple Intelligence compiled (needs constructor fix)
- Test suite validates functionality

Changes preserved:
- 898 files with changes from last 3 days
- 144,475 insertions
- All augmentation improvements
- All test coverage enhancements
- Complete v3.0 feature set

This is a LOCAL checkpoint only - contains recovered work after corruption incident.
Created backup in .backups/brainy-full-20250910-151314.tar.gz

Branch: recovery-checkpoint-20250910-151433
Date: Wed Sep 10 03:18:04 PM PDT 2025
2025-09-10 15:18:04 -07:00

71 lines
No EOL
3.1 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env node
import { BrainyData } from './dist/index.js'
console.log('🧠 Testing Refactored API Architecture')
console.log('search(q) = find({like: q})')
console.log('find(q) = NLP processing → complex TripleQuery')
console.log('=' + '='.repeat(50))
const brain = new BrainyData({
storage: { type: 'memory' },
verbose: false
})
await brain.init()
// Add test data
const testData = [
{ data: 'React framework', metadata: { name: 'React', type: 'framework', language: 'JavaScript', year: 2013, popularity: 'high' }},
{ data: 'Vue.js framework', metadata: { name: 'Vue', type: 'framework', language: 'JavaScript', year: 2014, popularity: 'high' }},
{ data: 'Angular framework', metadata: { name: 'Angular', type: 'framework', language: 'TypeScript', year: 2016, popularity: 'medium' }},
]
const ids = []
for (const item of testData) {
const id = await brain.addNoun(item.data, item.metadata)
ids.push(id)
}
console.log(`✅ Added ${ids.length} test items\n`)
console.log('🧪 TESTING NEW ARCHITECTURE:')
console.log('----------------------------')
// Test 1: search() should be simple vector similarity
console.log('1⃣ search("framework") - Simple vector similarity')
const searchResults = await brain.search('framework', { limit: 2 })
console.log(` Found ${searchResults.length} results via vector similarity`)
searchResults.forEach(r => console.log(` - ${r.metadata?.name} (score: ${r.score.toFixed(3)})`))
// Test 2: find() with natural language should do NLP processing
console.log('\n2⃣ find("popular JavaScript frameworks") - NLP processing')
const nlpResults = await brain.find('popular JavaScript frameworks', { limit: 2 })
console.log(` Found ${nlpResults.length} results via NLP processing`)
nlpResults.forEach(r => console.log(` - ${r.metadata?.name} (score: ${(r.fusionScore || r.score || 0).toFixed(3)})`))
// Test 3: find() with structured query should work directly
console.log('\n3⃣ find({like: "React", where: {year: {greaterThan: 2010}}}) - Structured')
const structuredResults = await brain.find({
like: 'React',
where: { year: { greaterThan: 2010 } }
}, { limit: 2 })
console.log(` Found ${structuredResults.length} results via structured query`)
structuredResults.forEach(r => console.log(` - ${r.metadata?.name} (${r.metadata?.year})`))
// Test 4: Verify search() is equivalent to find({like: query})
console.log('\n4⃣ Verification: search(q) ≡ find({like: q})')
const searchVia1 = await brain.search('Vue')
const searchVia2 = await brain.find({like: 'Vue'})
console.log(` search("Vue"): ${searchVia1.length} results`)
console.log(` find({like: "Vue"}): ${searchVia2.length} results`)
console.log(` ✅ Equivalent: ${searchVia1.length === searchVia2.length ? 'YES' : 'NO'}`)
console.log('\n' + '='.repeat(51))
console.log('✅ Refactored API Architecture Complete!')
console.log('Key improvements:')
console.log(' • search(q) = find({like: q}) - Simple vector similarity')
console.log(' • find(q) = NLP processing → intelligent queries')
console.log(' • Clean separation of concerns')
console.log(' • No duplicate code - search() delegates to find()')
process.exit(0)