diagnostics: add STEP-099 render source readiness audit

This commit is contained in:
tei
2026-10-06 15:15:12 +09:00
parent e8b451fe70
commit 8a5214d92d
13 changed files with 915 additions and 9 deletions

View File

@@ -19,6 +19,8 @@ export type {
RenderSegmentDefinition,
RenderSegmentDiagnostics,
RenderSegmentLayerDiagnostics,
RenderSourceReadinessDiagnostics,
RenderMutationDiagnostics,
RenderSegmentPlan,
RenderSegmentStrategy,
RetainedRenderSegmentDiagnostics,

View File

@@ -89,6 +89,8 @@ export type RetainedRenderSegmentDiagnostics = Readonly<{
resolvedEndLayerId: string | null;
layerCount: number;
layers: readonly RenderSegmentLayerDiagnostics[];
dependentSourceIds: readonly string[];
unknownDependencies: readonly string[];
cache: Readonly<{
cacheState: string;
contentRevision: number;
@@ -111,8 +113,35 @@ export type ContinuousRenderSegmentDiagnostics = Readonly<{
resolvedEndLayerId: string | null;
layerCount: number;
layers: readonly RenderSegmentLayerDiagnostics[];
dependentSourceIds: readonly string[];
unknownDependencies: readonly string[];
cache: null;
}>;
export type RenderSourceReadinessDiagnostics = Readonly<{
sourceId: string;
sourceType: string;
enabled: boolean;
isLoaded: boolean;
tileBacked: boolean;
tileCount: number | null;
incompleteTileCount: number | null;
loadedTileCount: number | null;
hasFadingTiles: boolean;
lastSourceMutationSequence: number;
lastTileChangedSequence: number;
lastTileActionSequence: number;
lastTileAction: string;
lastMutationReason: string;
}>;
export type RenderMutationDiagnostics = Readonly<{
sequence: number;
contentRevision: number;
eventType: string;
reason: string;
sourceId: string | null;
affectedSegmentIndices: readonly number[];
dependencyScope: string;
}>;
export type RenderSegmentDiagnostics = Readonly<{
schemaVersion: 1;
enabled: boolean;
@@ -134,6 +163,14 @@ export type RenderSegmentDiagnostics = Readonly<{
fastPathHit: number;
fastPathMiss: number;
fullCpuFrame: number;
styleLoaded: boolean;
imageManagerLoaded: boolean;
renderOrchestratorLoaded: boolean;
spriteLoaded: boolean;
hasFadingTiles: boolean;
contentRevision: number;
sources: readonly RenderSourceReadinessDiagnostics[];
lastMutation: RenderMutationDiagnostics;
styleLayers: readonly RenderSegmentLayerDiagnostics[];
segments: readonly (RetainedRenderSegmentDiagnostics | ContinuousRenderSegmentDiagnostics)[];
}>;