Commit graph

4 commits

Author SHA1 Message Date
ae6fbd8c4c fix: add includeVFS parameter to getRelations() - VFS now visible
CRITICAL BUG FIX - VFS Files Were Completely Invisible

Workshop Team Issue:
- Import created 569 VFS files
- vfs.readdir('/') returned 0 items
- VFS was 100% unusable

Root Cause:
v4.4.0 added includeVFS to brain.find() but FORGOT brain.getRelations().
PathResolver.getChildren() calls getRelations() to find VFS relationships,
but those were being excluded by default - making ALL VFS files invisible!

Fix:
1. Add includeVFS parameter to GetRelationsParams interface
2. Wire includeVFS filtering in brain.getRelations()
   - Excludes VFS relationships by default (metadata.isVFS != true)
   - Include them when includeVFS: true
3. Update VFS to mark all relationships with metadata: { isVFS: true }
   - 7 relate() calls updated in VirtualFileSystem.ts
4. Update PathResolver to use includeVFS: true
   - resolveChild() line 200
   - getChildren() line 229

Impact:
- VFS is now fully functional again
- Consistent with v4.4.0 architecture (VFS separate from knowledge graph)
- All APIs now have includeVFS where needed

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 15:59:41 -07:00
f8d2d37b82 fix: VFS where clause field names + isVFS flag
CRITICAL FIX: VFS was using incorrect field names in where clauses
- Metadata index stores flat fields: path, vfsType, name
- VFS queried with: 'metadata.path', 'metadata.vfsType' (wrong!)
- Fixed to use correct field names in where clauses

Changes:
- initializeRoot() now uses correct where clause (no workaround needed)
- Added isVFS flag to all VFS entities (mkdir, writeFile, root)
- Updated VFSMetadata type to include isVFS field
- Removed PathResolver fallback (production code, no fallbacks)

This fixes:
- Duplicate root entities (Workshop team had ~10 roots!)
- VFS queries now work correctly with metadata index
- Clean separation between VFS and knowledge graph entities

Production-ready: No mocks, no fallbacks, no workarounds
2025-10-24 11:12:27 -07:00
4f76dac7be feat: refactor VFS to use proper Brainy graph relationships
- Replace metadata path queries with brain.getRelations() API
- Use graph traversal for parent-child relationships via VerbType.Contains
- Remove fallback metadata queries - trust graph relationships completely
- Fix getChildren() to properly query relationship graph
- Update getRelated() and getRelationships() to use native Brainy APIs

This enables full graph benefits: indexes, optimizations, and visualizations
now work correctly with VFS. The filesystem structure is now a true graph
using Brainy's native relationship system.

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-25 14:51:08 -07:00
b3c4f348ab feat: implement complete VFS with Knowledge Layer integration
Add production-ready Virtual File System with intelligent Knowledge Layer:

Core VFS Features:
- Complete file system operations (read, write, mkdir, etc.)
- Intelligent PathResolver with 4-layer caching system
- Chunked storage for large files with real compression
- Embedding generation for semantic operations
- File relationships and metadata tracking
- Import functionality from local filesystem

Knowledge Layer Integration:
- EventRecorder for complete file history and temporal coupling
- SemanticVersioning with content-based change detection
- PersistentEntitySystem for character/entity tracking across files
- ConceptSystem for universal concept mapping and graphs
- GitBridge for import/export between VFS and Git repositories

Architecture:
- KnowledgeAugmentation properly integrated into Brainy augmentation system
- KnowledgeLayer wrapper provides real-time VFS operation interception
- Background processing ensures VFS operations remain fast
- All components use real Brainy embed() method for embeddings
- Support for creative writing, coding projects, and project management

Technical Implementation:
- Fixed all stub/mock implementations with real working code
- TypeScript compilation passes without errors
- Comprehensive test suite demonstrating all features
- Documentation covering architecture and usage patterns
- Backwards compatible with existing Brainy functionality

This enables scenarios like writing books with persistent characters,
managing coding projects with concept tracking, and complete project
coordination with intelligent file relationships.
2025-09-24 17:31:48 -07:00