MCPcopy Create free account
hub / github.com/SethGammon/Citadel / registerLoop

Function registerLoop

core/loops/registry.js:40–50  ·  view source on GitHub ↗
(projectRoot, contractOrOptions = {}, options = {})

Source from the content-addressed store, hash-verified

38}
39
40function registerLoop(projectRoot, contractOrOptions = {}, options = {}) {
41 const root = path.resolve(projectRoot || process.cwd());
42 const contract = contractOrOptions.version
43 ? { ...contractOrOptions }
44 : createLoopContract(contractOrOptions);
45 const validation = validateLoopContract(contract);
46 if (!validation.pass) throw new Error(`Invalid loop contract: ${validation.errors.join('; ')}`);
47 contract.updatedAt = nowIso(options);
48 writeJson(loopPath(root, contract.id), contract);
49 return contract;
50}
51
52function readLoop(projectRoot, id) {
53 const root = path.resolve(projectRoot || process.cwd());

Callers 3

test-loops.jsFile · 0.85
mainFunction · 0.85
mainFunction · 0.85

Calls 5

createLoopContractFunction · 0.85
validateLoopContractFunction · 0.85
loopPathFunction · 0.85
nowIsoFunction · 0.70
writeJsonFunction · 0.70

Tested by

no test coverage detected