init with react+axum+spacetimedb
Some checks failed
CI / verify (push) Has been cancelled

This commit is contained in:
2026-04-26 18:06:23 +08:00
commit cbc27bad4a
20199 changed files with 883714 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
import type {
NarrativeQaReport,
StoryEngineMemoryState,
} from '../../types';
export interface NarrativeTelemetrySnapshot {
averageActiveThreadCount: number;
companionReactionDensity: number;
endingFamilyCount: number;
unresolvedPayoffCount: number;
}
export function buildTelemetrySnapshot(params: {
memory: StoryEngineMemoryState;
qaReport?: NarrativeQaReport | null;
}) {
return {
averageActiveThreadCount: params.memory.activeThreadIds.length,
companionReactionDensity: params.memory.recentCompanionReactions?.length ?? 0,
endingFamilyCount: params.memory.endingState ? 1 : 0,
unresolvedPayoffCount:
params.qaReport?.issues.filter((issue) => issue.category === 'payoff').length ?? 0,
} satisfies NarrativeTelemetrySnapshot;
}
export function captureNarrativeTelemetry(params: {
memory: StoryEngineMemoryState;
qaReport?: NarrativeQaReport | null;
}) {
const snapshot = buildTelemetrySnapshot(params);
return {
...snapshot,
summary: `当前平均活跃线程 ${snapshot.averageActiveThreadCount},队友反应密度 ${snapshot.companionReactionDensity},未回收 payoff ${snapshot.unresolvedPayoffCount}`,
};
}