Files
Psychotoxical-psysonic/src/store/normalizationDebug.ts
T
Frank Stellmacher a1d7cf330d refactor(player): E.7 — extract two small file-private helpers (#570)
`emitNormalizationDebug` (debug-mode trace forwarder, 15+ internal call
sites) and `isInOrbitSession` (Orbit-active guard used by next() and the
async fallback paths to suppress local queue extensions, 5 call sites)
move into dedicated modules under src/store/. Both were file-private —
no caller-side changes outside playerStore's own imports.

playerStore 3434 → 3415 LOC.
2026-05-12 12:35:01 +02:00

20 lines
824 B
TypeScript

import { invoke } from '@tauri-apps/api/core';
import { useAuthStore } from './authStore';
/**
* Forward a structured normalization-pipeline trace to the Rust-side debug
* log file when Settings → Logging is set to **Debug**. A no-op otherwise,
* so the dozens of call sites in `playerStore` (refresh / backfill / engine
* sync / track-switch instrumentation) carry zero cost in normal mode.
*
* Errors invoking the Rust command are swallowed — this is best-effort
* instrumentation, not a playback dependency.
*/
export function emitNormalizationDebug(step: string, details?: Record<string, unknown>): void {
if (useAuthStore.getState().loggingMode !== 'debug') return;
void invoke('frontend_debug_log', {
scope: 'normalization',
message: JSON.stringify({ step, details }),
}).catch(() => {});
}