Add hierarchical summary frontier system

This commit is contained in:
Youzini-afk
2026-04-09 14:50:41 +08:00
parent c58210dacc
commit e4feda5471
20 changed files with 2234 additions and 73 deletions

View File

@@ -19,6 +19,7 @@ export const BME_RUNTIME_HISTORY_META_KEY = "runtimeHistoryState";
export const BME_RUNTIME_VECTOR_META_KEY = "runtimeVectorIndexState";
export const BME_RUNTIME_BATCH_JOURNAL_META_KEY = "runtimeBatchJournal";
export const BME_RUNTIME_LAST_RECALL_META_KEY = "runtimeLastRecallResult";
export const BME_RUNTIME_SUMMARY_STATE_META_KEY = "runtimeSummaryState";
export const BME_RUNTIME_LAST_PROCESSED_SEQ_META_KEY =
"runtimeLastProcessedSeq";
export const BME_RUNTIME_GRAPH_VERSION_META_KEY = "runtimeGraphVersion";
@@ -347,6 +348,10 @@ export function buildSnapshotFromGraph(graph, options = {}) {
runtimeGraph?.lastRecallResult ?? null,
null,
),
[BME_RUNTIME_SUMMARY_STATE_META_KEY]: toPlainData(
runtimeGraph?.summaryState || {},
{},
),
[BME_RUNTIME_LAST_PROCESSED_SEQ_META_KEY]: Number.isFinite(
Number(runtimeGraph?.lastProcessedSeq),
)
@@ -394,6 +399,10 @@ export function buildGraphFromSnapshot(snapshot, options = {}) {
normalizedSnapshot.meta?.[BME_RUNTIME_LAST_RECALL_META_KEY],
null,
);
runtimeGraph.summaryState = toPlainData(
normalizedSnapshot.meta?.[BME_RUNTIME_SUMMARY_STATE_META_KEY],
runtimeGraph.summaryState || {},
);
runtimeGraph.historyState = {
...(runtimeGraph.historyState || {}),