Files
AtreidesAssetsFree/server/registers.mjs
T

21 lines
870 B
JavaScript
Raw Normal View History

2026-10-29 11:57:29 +01:00
// Generated, do not edit. sha256:6d030f08e2df0805a10aaaf982941c7fff895ab138d87d0dfa035a84ed9a5d86
import { createRegistry } from '../shared/registry.js';
const needs = (keys) => (entry) => {
for (const k of keys) if (entry[k] === undefined) throw new Error(`'${entry.id}' lacks '${k}'`);
};
export const apiRoutes = createRegistry('api route', { validate: needs(['method', 'path', 'run']) });
export const dataModules = createRegistry('data module', { validate: needs(['module']) });
export const services = createRegistry('service');
export const mcpTools = createRegistry('mcp tool', {
validate: (e) => {
needs(['tool'])(e);
if (e.tool.name !== e.id) throw new Error(`mcp tool '${e.id}' carries the name '${e.tool.name}'`);
},
});
export const healthChecks = createRegistry('health check', { validate: needs(['severity', 'run', 'countsFrom']) });