Files
reverse-engineering-anything/src/domain/reconstructionCoverageScope.fixture.ts
T

188 lines
5.4 KiB
TypeScript

import { createEvidence } from "./evidence.js";
import { createEvidenceBundle } from "./evidenceBundle.js";
import {
completeReconstructionCoverageData,
reconstructionCoverageEvidenceId,
} from "./reconstructionCoverage.fixture.js";
import type {
ReconstructionCoverageData,
ReconstructionClosureResult,
} from "./reconstructionCoverage.js";
const indirectSurface = (coverage: ReconstructionCoverageData): void => {
coverage.surfaces.push({
...coverage.surfaces[0]!,
surface_id: "cli.indirect",
});
coverage.owners.push({
...structuredClone(coverage.owners[0]!),
surface_id: "cli.indirect",
});
};
const conflictingPackageProof = (
coverage: ReconstructionCoverageData,
status: "fail" | "unknown",
): string => {
const evidence = createEvidence(
undefined,
{
id: "package-proof-fixture",
name: "Package proof fixture",
version: "1",
},
{
operation: "record_package_proof",
parameters: {},
result: { status },
authority: "controlled-replay",
confidence: "observed",
},
);
coverage.evidence_bundle = createEvidenceBundle([
...coverage.evidence_bundle.records,
evidence,
]);
coverage.package_proofs.push({
...coverage.package_proofs[0]!,
proof_id: `proof.additional.${status}`,
status,
evidence_ids: [evidence.evidence_id],
});
return evidence.evidence_id;
};
const cases: {
label: string;
status: ReconstructionClosureResult["status"];
codes: readonly string[];
surfaces: number;
change: (coverage: ReconstructionCoverageData) => readonly string[];
}[] = [
{
label: "complete control",
status: "ready",
codes: [],
surfaces: 1,
change: () => [],
},
{
label: "reachable dependency cycle",
status: "ready",
codes: [],
surfaces: 2,
change: (coverage) => {
indirectSurface(coverage);
coverage.surfaces[0]!.dependency_surface_ids = ["cli.indirect"];
coverage.surfaces[1]!.dependency_surface_ids = ["cli.help"];
return [];
},
},
{
label: "missing transitive dependency",
status: "partial",
codes: ["dependency-surface-missing"],
surfaces: 3,
change: (coverage) => {
indirectSurface(coverage);
coverage.surfaces[0]!.dependency_surface_ids = ["cli.indirect"];
coverage.surfaces[1]!.dependency_surface_ids = ["cli.absent"];
return [];
},
},
{
label: "claim-only authority routing",
status: "failed",
codes: ["authority-routing-detected"],
surfaces: 2,
change: (coverage) => {
indirectSurface(coverage);
coverage.claims[0]!.surface_ids = ["cli.indirect"];
const owner = coverage.owners[1]!.ownership;
if (owner.disposition === "implemented")
owner.authority_route = "detected";
return [];
},
},
{
label: "claim-only active contradiction",
status: "failed",
codes: ["active-contradiction"],
surfaces: 2,
change: (coverage) => {
indirectSurface(coverage);
coverage.claims[0]!.surface_ids = ["cli.indirect"];
const evidenceIds = [
reconstructionCoverageEvidenceId("1"),
reconstructionCoverageEvidenceId("5"),
];
coverage.contradictions = [
{
contradiction_id: "contradiction.indirect",
status: "active",
surface_ids: ["cli.indirect"],
claim_ids: [],
evidence_ids: evidenceIds,
},
];
return evidenceIds;
},
},
{
label: "claim-only artifact package coverage",
status: "unknown",
codes: ["package-proof-unknown", "package-proof-unknown"],
surfaces: 2,
change: (coverage) => {
indirectSurface(coverage);
coverage.artifacts.push({
...coverage.artifacts[0]!,
artifact_id: "authority.v2",
artifact_sha256: "9".repeat(64),
});
coverage.surfaces[1]!.artifact_id = "authority.v2";
coverage.claims[0]!.surface_ids = ["cli.indirect"];
coverage.verifier_results[0]!.artifact_sha256s.push("9".repeat(64));
return [];
},
},
{
label: "transitive owner commitment",
status: "unknown",
codes: ["verifier-result-incompatible"],
surfaces: 2,
change: (coverage) => {
indirectSurface(coverage);
coverage.surfaces[0]!.dependency_surface_ids = ["cli.indirect"];
const owner = coverage.owners[1]!.ownership;
if (owner.disposition === "implemented")
owner.owner_sha256 = "9".repeat(64);
return [];
},
},
...([false, true] as const).map((reverse) => ({
label: `conflicting package proofs ${reverse ? "reversed" : "forward"}`,
status: "failed" as const,
codes: ["package-proof-failed"],
surfaces: 1,
change: (coverage: ReconstructionCoverageData) => {
const evidenceId = conflictingPackageProof(coverage, "fail");
if (reverse) coverage.package_proofs.reverse();
return [evidenceId];
},
})),
{
label: "unresolved applicable package proof",
status: "unknown",
codes: ["package-proof-unknown"],
surfaces: 1,
change: (coverage) => [conflictingPackageProof(coverage, "unknown")],
},
];
/** Small authenticated synthetic workspaces shared by domain and public workflows. */
export const reconstructionCoverageScopeCases = () =>
cases.map(({ change, ...expectation }) => {
const coverage = completeReconstructionCoverageData();
return { ...expectation, coverage, evidenceIds: change(coverage) };
});