Generated by seatgen (mesh-catalog, GEN1 and GEN2 on its worktree) from the definitions of CT1 to CT9; module.json names the artifacts of the new seats mesh-builds, mesh-pipeline-runner and git. seatgen -check is clean; every seat package's generated fixture test passes. Builds: design 47 G §341 (a TypeScript contract is emitted as index.js with index.d.ts), §196, §339 (the generator refuses an unknown callers entry), §260, §331. Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
160 lines
4.8 KiB
JavaScript
160 lines
4.8 KiB
JavaScript
// Code generated by seatgen from the seat definitions; DO NOT EDIT.
|
|
|
|
// The contract of the seat "node-build-node", defined whole (seats/node-build-node/seat.json): The Node build module on a node: it takes the asks of the builder and the checker, runs them as steps and answers.
|
|
|
|
export const seat = "node-build-node";
|
|
|
|
export const verbs = {
|
|
current: "current",
|
|
pause: "pause",
|
|
resume: "resume",
|
|
drop: "drop",
|
|
keptArtifact: "kept-artifact",
|
|
steps: "steps",
|
|
};
|
|
|
|
export const accepts = {
|
|
delivery: "delivery",
|
|
check: "check",
|
|
step: "step",
|
|
recheck: "recheck",
|
|
};
|
|
|
|
export const events = {
|
|
stepEnded: "step-ended",
|
|
};
|
|
|
|
export const family = { name: "node-build-node.events", maxAgeDays: 7 };
|
|
|
|
export const stepEndedStream = "SEAT_node-build-node_step-ended";
|
|
|
|
export function stepEndedSubject(node) {
|
|
return "mesh.seat.node-build-node.event.step-ended." + node;
|
|
}
|
|
|
|
export const stepEndedSubjectAll = "mesh.seat.node-build-node.event.step-ended.*";
|
|
|
|
export const deliverySubject = "mesh.seat.node-build-node.accept.delivery";
|
|
|
|
export const checkSubject = "mesh.seat.node-build-node.accept.check";
|
|
|
|
export const stepSubject = "mesh.seat.node-build-node.accept.step";
|
|
|
|
export const recheckSubject = "mesh.seat.node-build-node.accept.recheck";
|
|
|
|
export const states = {
|
|
steps: "steps",
|
|
pauses: "pauses",
|
|
toolchains: "toolchains",
|
|
detectedSteps: "detected-steps",
|
|
};
|
|
|
|
/** The key of one value of the state steps under the form "<node>.<id>". */
|
|
export function stepsByNodeIDKey(node, id) {
|
|
return node + "." + id;
|
|
}
|
|
|
|
/** The parts of a key of the form "<node>.<id>", or undefined for a key of another form. */
|
|
export function parseStepsByNodeIDKey(_key) {
|
|
let _rest = _key;
|
|
const _at0 = _rest.indexOf(".");
|
|
if (_at0 <= 0) return undefined;
|
|
const node = _rest.slice(0, _at0);
|
|
_rest = _rest.slice(_at0 + 1);
|
|
if (_rest === "") return undefined;
|
|
const id = _rest;
|
|
_rest = "";
|
|
if (_rest !== "") return undefined;
|
|
return { node, id };
|
|
}
|
|
|
|
/** The key of one value of the state pauses under the form "paused.<node>". */
|
|
export function pausesByPausedNodeKey(node) {
|
|
return "paused." + node;
|
|
}
|
|
|
|
/** The parts of a key of the form "paused.<node>", or undefined for a key of another form. */
|
|
export function parsePausesByPausedNodeKey(_key) {
|
|
let _rest = _key;
|
|
if (!_rest.startsWith("paused.")) return undefined;
|
|
_rest = _rest.slice(7);
|
|
if (_rest === "") return undefined;
|
|
const node = _rest;
|
|
_rest = "";
|
|
if (_rest !== "") return undefined;
|
|
return { node };
|
|
}
|
|
|
|
/** The key of one value of the state pauses under the form "dropped.<id>". */
|
|
export function pausesByDroppedIDKey(id) {
|
|
return "dropped." + id;
|
|
}
|
|
|
|
/** The parts of a key of the form "dropped.<id>", or undefined for a key of another form. */
|
|
export function parsePausesByDroppedIDKey(_key) {
|
|
let _rest = _key;
|
|
if (!_rest.startsWith("dropped.")) return undefined;
|
|
_rest = _rest.slice(8);
|
|
if (_rest === "") return undefined;
|
|
const id = _rest;
|
|
_rest = "";
|
|
if (_rest !== "") return undefined;
|
|
return { id };
|
|
}
|
|
|
|
/** The key of one value of the state pauses under the form "capacity.<node>". */
|
|
export function pausesByCapacityNodeKey(node) {
|
|
return "capacity." + node;
|
|
}
|
|
|
|
/** The parts of a key of the form "capacity.<node>", or undefined for a key of another form. */
|
|
export function parsePausesByCapacityNodeKey(_key) {
|
|
let _rest = _key;
|
|
if (!_rest.startsWith("capacity.")) return undefined;
|
|
_rest = _rest.slice(9);
|
|
if (_rest === "") return undefined;
|
|
const node = _rest;
|
|
_rest = "";
|
|
if (_rest !== "") return undefined;
|
|
return { node };
|
|
}
|
|
|
|
/** The key of one value of the state toolchains under the form "<node>.<language>". */
|
|
export function toolchainsByNodeLanguageKey(node, language) {
|
|
return node + "." + language;
|
|
}
|
|
|
|
/** The parts of a key of the form "<node>.<language>", or undefined for a key of another form. */
|
|
export function parseToolchainsByNodeLanguageKey(_key) {
|
|
let _rest = _key;
|
|
const _at0 = _rest.indexOf(".");
|
|
if (_at0 <= 0) return undefined;
|
|
const node = _rest.slice(0, _at0);
|
|
_rest = _rest.slice(_at0 + 1);
|
|
if (_rest === "") return undefined;
|
|
const language = _rest;
|
|
_rest = "";
|
|
if (_rest !== "") return undefined;
|
|
return { node, language };
|
|
}
|
|
|
|
/** The key of one value of the state detected-steps under the form "<module>.<artifact>". */
|
|
export function detectedStepsByModuleArtifactKey(module, artifact) {
|
|
return module + "." + artifact;
|
|
}
|
|
|
|
/** The parts of a key of the form "<module>.<artifact>", or undefined for a key of another form. */
|
|
export function parseDetectedStepsByModuleArtifactKey(_key) {
|
|
let _rest = _key;
|
|
const _at0 = _rest.indexOf(".");
|
|
if (_at0 <= 0) return undefined;
|
|
const module = _rest.slice(0, _at0);
|
|
_rest = _rest.slice(_at0 + 1);
|
|
if (_rest === "") return undefined;
|
|
const artifact = _rest;
|
|
_rest = "";
|
|
if (_rest !== "") return undefined;
|
|
return { module, artifact };
|
|
}
|
|
|