UNPKG

@sentzunhat/zacatl

Version:

A modular, high-performance TypeScript microservice framework for Node.js, featuring layered architecture, dependency injection, and robust validation for building scalable APIs and distributed systems.

25 lines (24 loc) 929 B
/** * Structured command specification and result types (scripts-only). * * Simplified versions designed for build scripts that cannot depend on src/. * For production code, use types from `src/utils/command-runner`. */ /** Default safe values for RunnerPolicy */ export const DEFAULT_RUNNER_POLICY = { timeoutMs: 30000, maxOutputBytes: 1048576, maxConcurrency: 4, inheritEnv: false, }; /** * Applies defaults to a partial policy object. * @param input - Partial policy with some or all fields * @returns - Full RunnerPolicy with defaults applied */ export const applyPolicyDefaults = (input) => ({ timeoutMs: input.timeoutMs ?? DEFAULT_RUNNER_POLICY.timeoutMs, maxOutputBytes: input.maxOutputBytes ?? DEFAULT_RUNNER_POLICY.maxOutputBytes, maxConcurrency: input.maxConcurrency ?? DEFAULT_RUNNER_POLICY.maxConcurrency, inheritEnv: input.inheritEnv ?? DEFAULT_RUNNER_POLICY.inheritEnv, });