Critical fix for GCS/S3 native storage adapters crashing on metadata index keys. Problem: - GCS and S3 adapters crashed with "Invalid UUID format" errors - System keys like __metadata_field_index__status are NOT UUIDs - Adapters incorrectly tried to shard all metadata keys as UUIDs Solution: - Move sharding/routing logic from adapters to BaseStorage class - Add analyzeKey() method to detect system keys vs entity UUIDs - System keys route to _system/ directory (no sharding) - Entity UUIDs route to sharded directories (256 shards) - All adapters now implement 4 primitive operations: * writeObjectToPath(path, data) * readObjectFromPath(path) * deleteObjectFromPath(path) * listObjectsUnderPath(prefix) Benefits: - Impossible for future adapters to repeat this mistake - Zero breaking changes, full backward compatibility - No data migration required - Cleaner architecture with better separation of concerns Updated adapters: GcsStorage, S3CompatibleStorage, OPFSStorage, FileSystemStorage, MemoryStorage Added: docs/architecture/data-storage-architecture.md Updated: README.md with architecture docs link |
||
|---|---|---|
| .. | ||
| API_SURFACE_DESIGN.md | ||
| augmentation-system-audit.md | ||
| augmentations-actual.md | ||
| augmentations.md | ||
| CLUSTERING_ALGORITHMS_ANALYSIS.md | ||
| data-storage-architecture.md | ||
| distributed-storage.md | ||
| METADATA_ARCHITECTURE.md | ||
| noun-verb-taxonomy.md | ||
| overview.md | ||
| PERFORMANCE_ANALYSIS.md | ||
| storage-architecture.md | ||
| triple-intelligence.md | ||
| zero-config.md | ||