Files
pikasTech-HWLAB/scripts/src/dev-edge-health-smoke-lib.test.mjs
2026-05-22 23:23:13 +00:00

170 lines
6.0 KiB
JavaScript

import assert from "node:assert/strict";
import test from "node:test";
import { __testHooks } from "./dev-edge-health-smoke-lib.mjs";
test("runtime DB readiness preserves dns resolution classification", () => {
const readiness = __testHooks.summarizeRuntimeDbReadiness(
{
configReady: true,
liveConnected: false,
liveDbEvidence: false,
connectionAttempted: true,
connectionResult: "dns_error",
fields: [
{ name: "HWLAB_CLOUD_DB_URL", present: true },
{ name: "HWLAB_CLOUD_DB_SSL_MODE", present: true }
],
secretRefs: [
{
env: "HWLAB_CLOUD_DB_URL",
secretName: "hwlab-cloud-api-dev-db",
secretKey: "database-url",
present: true,
envInjected: true
}
],
connection: {
attempted: true,
result: "dns_error",
classification: "dns_resolution_failed",
endpointSource: "secret-url-host",
endpointRedacted: true,
valueRedacted: true
},
redaction: { valuesRedacted: true },
safety: { valuesRedacted: true, liveDbEvidence: false },
blocker: "DB endpoint DNS resolution failed from the cloud-api runtime"
},
{
observable: true,
secretName: "hwlab-cloud-api-dev-db",
secretKey: "database-url",
secretPresent: true,
secretKeyPresent: true,
secretValueRead: false,
redacted: true
}
);
assert.equal(readiness.status, "blocked");
assert.equal(readiness.connectionResult, "dns_error");
assert.equal(readiness.connectionClassification, "dns_resolution_failed");
assert.equal(readiness.endpointSource, "secret-url-host");
assert.equal(readiness.optionalPublicDnsAlias.source, "optional-public-dns-alias");
assert.equal(readiness.optionalPublicDnsAlias.requiredForReadiness, false);
assert.equal(readiness.optionalPublicDnsAlias.usedForProbe, false);
assert.equal(readiness.liveConnected, false);
assert.equal(readiness.liveDbEvidence, false);
assert.equal(readiness.secretMaterialRead, false);
assert.equal(readiness.evidence[0].classification, "dns_resolution_failed");
assert.equal(readiness.evidence[0].endpointSource, "secret-url-host");
});
test("runtime DB readiness does not pass when live success uses a non-authoritative DB endpoint source", () => {
const readiness = __testHooks.summarizeRuntimeDbReadiness(
{
configReady: true,
ready: true,
connected: true,
liveConnected: true,
liveDbEvidence: true,
connectionAttempted: true,
connectionResult: "connected",
endpointSource: "optional-public-dns-alias",
fields: [
{ name: "HWLAB_CLOUD_DB_URL", present: true },
{ name: "HWLAB_CLOUD_DB_SSL_MODE", present: true }
],
secretRefs: [
{
env: "HWLAB_CLOUD_DB_URL",
secretName: "hwlab-cloud-api-dev-db",
secretKey: "database-url",
present: true,
envInjected: true
}
],
connection: {
attempted: true,
result: "connected",
classification: "tcp_connected",
endpointSource: "optional-public-dns-alias",
endpointRedacted: true,
valueRedacted: true
},
redaction: { valuesRedacted: true },
safety: { valuesRedacted: true, liveDbEvidence: true }
},
{
observable: true,
secretName: "hwlab-cloud-api-dev-db",
secretKey: "database-url",
secretPresent: true,
secretKeyPresent: true,
secretValueRead: false,
redacted: true
}
);
assert.equal(readiness.status, "blocked");
assert.equal(readiness.liveConnected, true);
assert.equal(readiness.endpointSource, "optional-public-dns-alias");
assert.match(readiness.blocker, /Secret URL host/u);
});
test("parallel blockers keep DB readiness and provider Secret gaps independent", () => {
const edgeHealth = {
runtimeDbReadiness: {
status: "blocked",
connectionResult: "dns_error",
connectionClassification: "dns_resolution_failed",
blocker: "DB endpoint DNS resolution failed from the cloud-api runtime"
},
providerSecretReadiness: {
status: "blocked",
classification: "provider_secret_missing",
blocker: "Code Agent provider Secret hwlab-code-agent-provider/openai-api-key is not present as key-presence evidence"
}
};
const blockers = __testHooks.classifyParallelBlockers(edgeHealth);
assert.deepEqual(
blockers.map((blocker) => blocker.scope),
["cloud-api-db", "code-agent-provider-secret"]
);
assert.equal(blockers[0].classification, "dns_resolution_failed");
assert.equal(blockers[0].sourceIssue, "pikasTech/HWLAB#49");
assert.equal(blockers[1].classification, "provider_secret_missing");
assert.equal(blockers[1].sourceIssue, "pikasTech/HWLAB#143");
assert.ok(blockers[0].impact.separateFrom.includes("pikasTech/HWLAB#143 provider Secret"));
assert.ok(blockers[1].impact.separateFrom.includes("pikasTech/HWLAB#49 DB live readiness"));
});
test("provider Secret blocker remains open even if DB is not blocked", () => {
const blockers = __testHooks.classifyParallelBlockers({
runtimeDbReadiness: { status: "pass" },
providerSecretReadiness: {
status: "blocked",
classification: "provider_secret_missing",
blocker: "Code Agent provider Secret hwlab-code-agent-provider/openai-api-key is not present as key-presence evidence"
}
});
assert.equal(blockers.length, 1);
assert.equal(blockers[0].scope, "code-agent-provider-secret");
assert.equal(blockers[0].type, "agent_blocker");
});
test("milestone impact does not promote DB or provider evidence into M3/M4/M5", () => {
const impact = __testHooks.classifyMilestoneImpact({
runtimeDbReadiness: { status: "blocked" },
providerSecretReadiness: { status: "blocked" }
});
assert.equal(impact.M3.status, "separate_blocker");
assert.deepEqual(impact.M4.blockedBy, ["cloud-api-db-live", "code-agent-provider-secret"]);
assert.deepEqual(impact.M5.blockedBy, ["cloud-api-db-live", "code-agent-provider-secret"]);
assert.match(impact.M5.summary, /cannot be promoted/u);
});