errors.mjs
19 lines 660 B
Raw
sha256:baa800aedf841dbf32081aa7b2befa288ac33dfc7175ac55014c55c4d8c742f9 docs: move durable-auth freeze/evidence to local developmen… Human 11 days ago
1 /**
2 * CLI error handling: exit 1 (usage) / 2 (runtime), optional JSON error object. SPEC §4.2, §4.3.
3 */
4
5 /**
6 * Print error and exit. With useJson, writes { "error": message, "code": code } to stderr and exits.
7 * @param {string} message
8 * @param {1|2} code - 1 = usage, 2 = runtime
9 * @param {boolean} useJson - If true, output JSON error object to stderr
10 */
11 export function exitWithError(message, code = 1, useJson = false) {
12 if (useJson) {
13 const err = { error: message, code: code === 1 ? 'USAGE_ERROR' : 'RUNTIME_ERROR' };
14 process.stderr.write(JSON.stringify(err) + '\n');
15 } else {
16 console.error(message);
17 }
18 process.exit(code);
19 }
File History 1 commit
sha256:baa800aedf841dbf32081aa7b2befa288ac33dfc7175ac55014c55c4d8c742f9 docs: move durable-auth freeze/evidence to local developmen… Human 11 days ago