runtime/entrypoints/binding.entrypoint.ts
runtime/entrypoints/binding.entrypoint.ts is a file in GovLab Quality. 19 lines of code and 4 definitions.
import { bindingClean, bindingFailed, bindingLine } from "#configuration/strings/binding.strings";
import { bindingFindings } from "#core/validators/binding.validator";
import { createGovlabContext } from "@govlab/context";
import { isRegisteredConcept } from "#configuration/quality/generated/canon.generated";
import { loadRuleSources } from "#core/loaders/binding.loader";
import process from "node:process";
const FAILURE = 1;
const rules = loadRuleSources();
const contracts = new Set(createGovlabContext().algo.ids());
const findings = bindingFindings(rules, contracts, isRegisteredConcept);
if (findings.length === 0) {
process.stdout.write(bindingClean(rules.length));
} else {
process.stderr.write(bindingFailed(findings.length));
for (const finding of findings) {
process.stderr.write(bindingLine(finding));
}
process.exitCode = FAILURE;
}