import assert from "node:assert/strict"; import { readFile } from "node:fs/promises"; import { test } from "node:test"; import ts from "typescript"; const sourceRoot = new URL("../src/", import.meta.url); async function read(relativePath) { return readFile(new URL(relativePath, sourceRoot), "utf8"); } test("Worker 006 telemetry remains a bounded system feature slice", async () => { const [ productModel, workspaceHub, core, computeWorkspace, pipelineStages, networkWorkspace, telemetryPolling, contourSettings, contourContract, pollIntervalContract, telemetryStyles, styles, ] = await Promise.all([ read("productModel.ts"), read("workspaces/Workspaces.tsx"), read("core/system/workerTelemetry.ts"), read("workspaces/system/ComputeModulesWorkspace.tsx"), read("components/system/WorkerPipelineStages.tsx"), read("workspaces/system/NetworkWorkspace.tsx"), read("core/system/useWorkerTelemetry.ts"), read("components/system/ComputeContourSettingsWindow.tsx"), read("core/system/computeContours.ts"), read("core/system/telemetryPollInterval.ts"), read("styles/system-telemetry.css"), read("styles.css"), ]); assert.match(productModel, /kind: "compute-modules"/); assert.match(productModel, /kind: "network-monitor"/); assert.match(workspaceHub, //); assert.match(workspaceHub, //); assert.doesNotMatch(workspaceHub, /worker-telemetry|worker-profile|DESKTOP-OPJ8J04/); assert.match(core, /\/api\/v1\/system\/worker-telemetry/); assert.match(core, /\/api\/v1\/system\/worker-profile/); assert.match(core, /share_percent/); assert.doesNotMatch(core, /@nodedc\/ui-react/); assert.match(computeWorkspace, /useWorkerTelemetry/); assert.match(computeWorkspace, /telemetry_poll_interval_seconds/); assert.match(computeWorkspace, />\s*Обновить\s*\s*Обновить\s* { const source = await read("core/system/telemetryPollInterval.ts"); const javascript = ts.transpileModule(source, { compilerOptions: { module: ts.ModuleKind.ES2022, target: ts.ScriptTarget.ES2022, }, }).outputText; const contract = await import( `data:text/javascript;base64,${Buffer.from(javascript).toString("base64")}` ); assert.equal(contract.parseTelemetryPollIntervalDraft(""), null); assert.equal(contract.parseTelemetryPollIntervalDraft("0"), null); assert.equal(contract.parseTelemetryPollIntervalDraft("0,1"), null); assert.equal(contract.parseTelemetryPollIntervalDraft("0.1"), null); assert.equal(contract.parseTelemetryPollIntervalDraft("1"), 1); assert.equal(contract.parseTelemetryPollIntervalDraft("60"), 60); assert.equal(contract.parseTelemetryPollIntervalDraft("61"), null); assert.deepEqual(contract.resolveTelemetryPollIntervalDraft("", 3), { accepted: false, draft: "3", seconds: 3, }); assert.deepEqual(contract.resolveTelemetryPollIntervalDraft("01", 3), { accepted: true, draft: "1", seconds: 1, }); assert.equal(contract.normalizeWorkerTelemetryPollMilliseconds(100), 1_000); assert.equal(contract.normalizeWorkerTelemetryPollMilliseconds(3_000), 3_000); });