brainy/examples/tests/test-update-noun.js
David Snelling 0996c72468 feat: Brainy 3.0 - Production-ready Triple Intelligence database
Major improvements and simplifications:
- Simplified to Q8-only model precision (99% accuracy, 75% smaller)
- Removed WAL augmentation (not needed with modern filesystems)
- Eliminated all fake/stub code - 100% production-ready
- Added comprehensive cloud deployment support (Docker, K8s, AWS, GCP)
- Enhanced distributed system capabilities
- Improved Triple Intelligence find() implementation
- Added streaming pipeline for large-scale operations
- Comprehensive test coverage with new test suites

Breaking changes:
- Renamed BrainyData to Brainy (simpler, cleaner)
- Removed FP32 model option (Q8 provides 99% accuracy)
- Removed deprecated augmentations

Performance improvements:
- 10x faster initialization with Q8-only
- Reduced memory footprint by 75%
- Better scaling for millions of items

Co-Authored-By: Recovery checkpoint system
2025-09-11 16:23:32 -07:00

32 lines
No EOL
985 B
JavaScript

#!/usr/bin/env node
import { BrainyData } from './dist/index.js'
const brain = new BrainyData({
storage: { type: 'memory' },
verbose: false
})
await brain.init()
console.log('Test updateNoun metadata merging:')
// Add with object as data (auto-detects as metadata)
const id = await brain.addNoun({ name: 'TypeScript', version: '4.0' })
console.log('1. Added:', id)
// Get to verify initial state
const initial = await brain.getNoun(id)
console.log('2. Initial metadata:', initial?.metadata)
// Update with new metadata (should merge)
await brain.updateNoun(id, { version: '5.0', popularity: 'high' })
// Get to verify merge
const updated = await brain.getNoun(id)
console.log('3. Updated metadata:', updated?.metadata)
console.log(' - version:', updated?.metadata?.version, '(expected: 5.0)')
console.log(' - popularity:', updated?.metadata?.popularity, '(expected: high)')
console.log(' - name:', updated?.metadata?.name, '(expected: TypeScript)')
process.exit(0)