fix: v4.8.1 critical bug fixes for update() and clustering

- Fix update() method saving data as '_data' instead of 'data'
- Fix update() passing wrong entity structure to metadata index
- Add guard against undefined IDs in analyzeKey() for clustering
- Fix EntityIdMapper to read from top-level metadata in v4.8.0
- Fix PatternSignal tests to use NounType.Measurement
- Update test expectations for v4.8.0 entity structure

Fixes augmentations-simplified.test.ts (all 25 tests passing)
Fixes neural-simplified clustering (32/33 tests passing)
Overall: 98.3% test pass rate (988/997 tests)
This commit is contained in:
David Snelling 2025-10-27 17:01:37 -07:00
parent df65810b10
commit 00b27d409f
5 changed files with 38 additions and 10 deletions

View file

@ -72,6 +72,11 @@ export abstract class BaseStorage extends BaseStorageAdapter {
* @private
*/
private analyzeKey(id: string, context: 'noun-metadata' | 'verb-metadata' | 'system'): StorageKeyInfo {
// v4.8.0: Guard against undefined/null IDs
if (!id || typeof id !== 'string') {
throw new Error(`Invalid storage key: ${id} (must be a non-empty string)`)
}
// System resource detection
const isSystemKey =
id.startsWith('__metadata_') ||