feat(confidence-engine): v0.60g1 list investigation summaries
Recover to clean v0.60f then implement only the storage listing contract. - Add listInvestigations() to provider: enumerate by prefix, project lightweight summary (id, scenario, updatedAt, investigationRevision, reportExists, reportGeneratedFromRevision), sort by updatedAt desc - Add application-facing wrapper in investigation-storage.js - Add 8 deterministic tests covering all listing invariants (coexistence, correct IDs, lightweight projection, legacy exclusion, unrelated exclusion, independent update, ordering, malformed skip) - Fix MockStorageMap WebStorage API compatibility (.length + .key(i)) - Portfolio NOT migrated — that is v0.60g2
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
// Owns the canonical identity contract: snapshot.id is the sole save identity.
|
||||
// Delegates to the concrete localStorage provider internally.
|
||||
|
||||
import { loadInvestigation as _load, saveInvestigation as _save, clearInvestigation as _clear } from "./providers/local-storage.js";
|
||||
import { loadInvestigation as _load, saveInvestigation as _save, clearInvestigation as _clear, listInvestigations as _list } from "./providers/local-storage.js";
|
||||
|
||||
/**
|
||||
* Canonical save contract: snapshot.id is the sole identity authority.
|
||||
@@ -32,3 +32,11 @@ export function loadInvestigation(id) {
|
||||
export function clearInvestigation(id) {
|
||||
return _clear(id ?? undefined);
|
||||
}
|
||||
|
||||
/**
|
||||
* Lists all durable-ID Investigation records as lightweight summaries.
|
||||
* Excludes legacy singleton, sessionStorage state, unrelated storage, malformed entries.
|
||||
*/
|
||||
export function listInvestigations() {
|
||||
return _list();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user