steroids-cli 0.4.47
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +640 -0
- package/dist/cli/colors.d.ts +110 -0
- package/dist/cli/colors.d.ts.map +1 -0
- package/dist/cli/colors.js +228 -0
- package/dist/cli/colors.js.map +1 -0
- package/dist/cli/env.d.ts +159 -0
- package/dist/cli/env.d.ts.map +1 -0
- package/dist/cli/env.js +227 -0
- package/dist/cli/env.js.map +1 -0
- package/dist/cli/errors.d.ts +166 -0
- package/dist/cli/errors.d.ts.map +1 -0
- package/dist/cli/errors.js +244 -0
- package/dist/cli/errors.js.map +1 -0
- package/dist/cli/flags.d.ts +75 -0
- package/dist/cli/flags.d.ts.map +1 -0
- package/dist/cli/flags.js +232 -0
- package/dist/cli/flags.js.map +1 -0
- package/dist/cli/help.d.ts +97 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/help.js +275 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/index.d.ts +13 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +29 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/interactive.d.ts +58 -0
- package/dist/cli/interactive.d.ts.map +1 -0
- package/dist/cli/interactive.js +127 -0
- package/dist/cli/interactive.js.map +1 -0
- package/dist/cli/output.d.ts +116 -0
- package/dist/cli/output.d.ts.map +1 -0
- package/dist/cli/output.js +178 -0
- package/dist/cli/output.js.map +1 -0
- package/dist/commands/about.d.ts +7 -0
- package/dist/commands/about.d.ts.map +1 -0
- package/dist/commands/about.js +259 -0
- package/dist/commands/about.js.map +1 -0
- package/dist/commands/ai.d.ts +6 -0
- package/dist/commands/ai.d.ts.map +1 -0
- package/dist/commands/ai.js +382 -0
- package/dist/commands/ai.js.map +1 -0
- package/dist/commands/backup.d.ts +3 -0
- package/dist/commands/backup.d.ts.map +1 -0
- package/dist/commands/backup.js +528 -0
- package/dist/commands/backup.js.map +1 -0
- package/dist/commands/completion.d.ts +3 -0
- package/dist/commands/completion.d.ts.map +1 -0
- package/dist/commands/completion.js +405 -0
- package/dist/commands/completion.js.map +1 -0
- package/dist/commands/config.d.ts +3 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +665 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/disputes.d.ts +3 -0
- package/dist/commands/disputes.d.ts.map +1 -0
- package/dist/commands/disputes.js +499 -0
- package/dist/commands/disputes.js.map +1 -0
- package/dist/commands/gc.d.ts +3 -0
- package/dist/commands/gc.d.ts.map +1 -0
- package/dist/commands/gc.js +300 -0
- package/dist/commands/gc.js.map +1 -0
- package/dist/commands/git.d.ts +3 -0
- package/dist/commands/git.d.ts.map +1 -0
- package/dist/commands/git.js +458 -0
- package/dist/commands/git.js.map +1 -0
- package/dist/commands/health.d.ts +3 -0
- package/dist/commands/health.d.ts.map +1 -0
- package/dist/commands/health.js +604 -0
- package/dist/commands/health.js.map +1 -0
- package/dist/commands/hooks.d.ts +6 -0
- package/dist/commands/hooks.d.ts.map +1 -0
- package/dist/commands/hooks.js +529 -0
- package/dist/commands/hooks.js.map +1 -0
- package/dist/commands/init.d.ts +6 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +200 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/llm.d.ts +7 -0
- package/dist/commands/llm.d.ts.map +1 -0
- package/dist/commands/llm.js +285 -0
- package/dist/commands/llm.js.map +1 -0
- package/dist/commands/locks.d.ts +3 -0
- package/dist/commands/locks.d.ts.map +1 -0
- package/dist/commands/locks.js +431 -0
- package/dist/commands/locks.js.map +1 -0
- package/dist/commands/logs.d.ts +3 -0
- package/dist/commands/logs.d.ts.map +1 -0
- package/dist/commands/logs.js +487 -0
- package/dist/commands/logs.js.map +1 -0
- package/dist/commands/loop-phases.d.ts +11 -0
- package/dist/commands/loop-phases.d.ts.map +1 -0
- package/dist/commands/loop-phases.js +204 -0
- package/dist/commands/loop-phases.js.map +1 -0
- package/dist/commands/loop.d.ts +3 -0
- package/dist/commands/loop.d.ts.map +1 -0
- package/dist/commands/loop.js +396 -0
- package/dist/commands/loop.js.map +1 -0
- package/dist/commands/projects.d.ts +6 -0
- package/dist/commands/projects.d.ts.map +1 -0
- package/dist/commands/projects.js +362 -0
- package/dist/commands/projects.js.map +1 -0
- package/dist/commands/purge.d.ts +3 -0
- package/dist/commands/purge.d.ts.map +1 -0
- package/dist/commands/purge.js +516 -0
- package/dist/commands/purge.js.map +1 -0
- package/dist/commands/runners.d.ts +3 -0
- package/dist/commands/runners.d.ts.map +1 -0
- package/dist/commands/runners.js +1076 -0
- package/dist/commands/runners.js.map +1 -0
- package/dist/commands/scan.d.ts +3 -0
- package/dist/commands/scan.d.ts.map +1 -0
- package/dist/commands/scan.js +291 -0
- package/dist/commands/scan.js.map +1 -0
- package/dist/commands/sections-commands.d.ts +9 -0
- package/dist/commands/sections-commands.d.ts.map +1 -0
- package/dist/commands/sections-commands.js +282 -0
- package/dist/commands/sections-commands.js.map +1 -0
- package/dist/commands/sections-graph.d.ts +25 -0
- package/dist/commands/sections-graph.d.ts.map +1 -0
- package/dist/commands/sections-graph.js +180 -0
- package/dist/commands/sections-graph.js.map +1 -0
- package/dist/commands/sections.d.ts +3 -0
- package/dist/commands/sections.d.ts.map +1 -0
- package/dist/commands/sections.js +376 -0
- package/dist/commands/sections.js.map +1 -0
- package/dist/commands/stats.d.ts +6 -0
- package/dist/commands/stats.d.ts.map +1 -0
- package/dist/commands/stats.js +324 -0
- package/dist/commands/stats.js.map +1 -0
- package/dist/commands/tasks.d.ts +3 -0
- package/dist/commands/tasks.d.ts.map +1 -0
- package/dist/commands/tasks.js +1115 -0
- package/dist/commands/tasks.js.map +1 -0
- package/dist/commands/web.d.ts +7 -0
- package/dist/commands/web.d.ts.map +1 -0
- package/dist/commands/web.js +204 -0
- package/dist/commands/web.js.map +1 -0
- package/dist/config/ai-setup.d.ts +27 -0
- package/dist/config/ai-setup.d.ts.map +1 -0
- package/dist/config/ai-setup.js +432 -0
- package/dist/config/ai-setup.js.map +1 -0
- package/dist/config/browser.d.ts +9 -0
- package/dist/config/browser.d.ts.map +1 -0
- package/dist/config/browser.js +200 -0
- package/dist/config/browser.js.map +1 -0
- package/dist/config/json-schema.d.ts +28 -0
- package/dist/config/json-schema.d.ts.map +1 -0
- package/dist/config/json-schema.js +84 -0
- package/dist/config/json-schema.js.map +1 -0
- package/dist/config/loader.d.ts +152 -0
- package/dist/config/loader.d.ts.map +1 -0
- package/dist/config/loader.js +270 -0
- package/dist/config/loader.js.map +1 -0
- package/dist/config/schema.d.ts +34 -0
- package/dist/config/schema.d.ts.map +1 -0
- package/dist/config/schema.js +437 -0
- package/dist/config/schema.js.map +1 -0
- package/dist/config/validator.d.ts +32 -0
- package/dist/config/validator.d.ts.map +1 -0
- package/dist/config/validator.js +187 -0
- package/dist/config/validator.js.map +1 -0
- package/dist/database/connection.d.ts +35 -0
- package/dist/database/connection.d.ts.map +1 -0
- package/dist/database/connection.js +208 -0
- package/dist/database/connection.js.map +1 -0
- package/dist/database/queries.d.ts +218 -0
- package/dist/database/queries.d.ts.map +1 -0
- package/dist/database/queries.js +613 -0
- package/dist/database/queries.js.map +1 -0
- package/dist/database/schema.d.ts +8 -0
- package/dist/database/schema.d.ts.map +1 -0
- package/dist/database/schema.js +160 -0
- package/dist/database/schema.js.map +1 -0
- package/dist/disputes/behavior.d.ts +106 -0
- package/dist/disputes/behavior.d.ts.map +1 -0
- package/dist/disputes/behavior.js +150 -0
- package/dist/disputes/behavior.js.map +1 -0
- package/dist/disputes/create.d.ts +59 -0
- package/dist/disputes/create.d.ts.map +1 -0
- package/dist/disputes/create.js +222 -0
- package/dist/disputes/create.js.map +1 -0
- package/dist/disputes/index.d.ts +21 -0
- package/dist/disputes/index.d.ts.map +1 -0
- package/dist/disputes/index.js +76 -0
- package/dist/disputes/index.js.map +1 -0
- package/dist/disputes/markdown.d.ts +41 -0
- package/dist/disputes/markdown.d.ts.map +1 -0
- package/dist/disputes/markdown.js +261 -0
- package/dist/disputes/markdown.js.map +1 -0
- package/dist/disputes/queries.d.ts +83 -0
- package/dist/disputes/queries.d.ts.map +1 -0
- package/dist/disputes/queries.js +180 -0
- package/dist/disputes/queries.js.map +1 -0
- package/dist/disputes/resolve.d.ts +57 -0
- package/dist/disputes/resolve.d.ts.map +1 -0
- package/dist/disputes/resolve.js +171 -0
- package/dist/disputes/resolve.js.map +1 -0
- package/dist/disputes/stale.d.ts +98 -0
- package/dist/disputes/stale.d.ts.map +1 -0
- package/dist/disputes/stale.js +205 -0
- package/dist/disputes/stale.js.map +1 -0
- package/dist/disputes/types.d.ts +92 -0
- package/dist/disputes/types.d.ts.map +1 -0
- package/dist/disputes/types.js +100 -0
- package/dist/disputes/types.js.map +1 -0
- package/dist/git/push.d.ts +26 -0
- package/dist/git/push.d.ts.map +1 -0
- package/dist/git/push.js +97 -0
- package/dist/git/push.js.map +1 -0
- package/dist/git/status.d.ts +61 -0
- package/dist/git/status.d.ts.map +1 -0
- package/dist/git/status.js +251 -0
- package/dist/git/status.js.map +1 -0
- package/dist/hooks/events.d.ts +72 -0
- package/dist/hooks/events.d.ts.map +1 -0
- package/dist/hooks/events.js +120 -0
- package/dist/hooks/events.js.map +1 -0
- package/dist/hooks/index.d.ts +19 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +48 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/integration.d.ts +69 -0
- package/dist/hooks/integration.d.ts.map +1 -0
- package/dist/hooks/integration.js +179 -0
- package/dist/hooks/integration.js.map +1 -0
- package/dist/hooks/merge.d.ts +115 -0
- package/dist/hooks/merge.d.ts.map +1 -0
- package/dist/hooks/merge.js +161 -0
- package/dist/hooks/merge.js.map +1 -0
- package/dist/hooks/orchestrator.d.ts +115 -0
- package/dist/hooks/orchestrator.d.ts.map +1 -0
- package/dist/hooks/orchestrator.js +226 -0
- package/dist/hooks/orchestrator.js.map +1 -0
- package/dist/hooks/payload.d.ts +294 -0
- package/dist/hooks/payload.d.ts.map +1 -0
- package/dist/hooks/payload.js +267 -0
- package/dist/hooks/payload.js.map +1 -0
- package/dist/hooks/script-runner.d.ts +63 -0
- package/dist/hooks/script-runner.d.ts.map +1 -0
- package/dist/hooks/script-runner.js +221 -0
- package/dist/hooks/script-runner.js.map +1 -0
- package/dist/hooks/templates.d.ts +104 -0
- package/dist/hooks/templates.d.ts.map +1 -0
- package/dist/hooks/templates.js +327 -0
- package/dist/hooks/templates.js.map +1 -0
- package/dist/hooks/webhook-runner.d.ts +69 -0
- package/dist/hooks/webhook-runner.d.ts.map +1 -0
- package/dist/hooks/webhook-runner.js +208 -0
- package/dist/hooks/webhook-runner.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +281 -0
- package/dist/index.js.map +1 -0
- package/dist/locking/cleanup.d.ts +70 -0
- package/dist/locking/cleanup.d.ts.map +1 -0
- package/dist/locking/cleanup.js +157 -0
- package/dist/locking/cleanup.js.map +1 -0
- package/dist/locking/queries.d.ts +116 -0
- package/dist/locking/queries.d.ts.map +1 -0
- package/dist/locking/queries.js +255 -0
- package/dist/locking/queries.js.map +1 -0
- package/dist/locking/section-lock.d.ts +74 -0
- package/dist/locking/section-lock.d.ts.map +1 -0
- package/dist/locking/section-lock.js +207 -0
- package/dist/locking/section-lock.js.map +1 -0
- package/dist/locking/task-lock.d.ts +92 -0
- package/dist/locking/task-lock.d.ts.map +1 -0
- package/dist/locking/task-lock.js +246 -0
- package/dist/locking/task-lock.js.map +1 -0
- package/dist/migrations/index.d.ts +7 -0
- package/dist/migrations/index.d.ts.map +1 -0
- package/dist/migrations/index.js +37 -0
- package/dist/migrations/index.js.map +1 -0
- package/dist/migrations/manifest.d.ts +92 -0
- package/dist/migrations/manifest.d.ts.map +1 -0
- package/dist/migrations/manifest.js +270 -0
- package/dist/migrations/manifest.js.map +1 -0
- package/dist/migrations/runner.d.ts +84 -0
- package/dist/migrations/runner.d.ts.map +1 -0
- package/dist/migrations/runner.js +351 -0
- package/dist/migrations/runner.js.map +1 -0
- package/dist/orchestrator/coder.d.ts +32 -0
- package/dist/orchestrator/coder.d.ts.map +1 -0
- package/dist/orchestrator/coder.js +174 -0
- package/dist/orchestrator/coder.js.map +1 -0
- package/dist/orchestrator/coordinator.d.ts +28 -0
- package/dist/orchestrator/coordinator.d.ts.map +1 -0
- package/dist/orchestrator/coordinator.js +256 -0
- package/dist/orchestrator/coordinator.js.map +1 -0
- package/dist/orchestrator/reviewer.d.ts +35 -0
- package/dist/orchestrator/reviewer.d.ts.map +1 -0
- package/dist/orchestrator/reviewer.js +241 -0
- package/dist/orchestrator/reviewer.js.map +1 -0
- package/dist/orchestrator/task-selector.d.ts +102 -0
- package/dist/orchestrator/task-selector.d.ts.map +1 -0
- package/dist/orchestrator/task-selector.js +341 -0
- package/dist/orchestrator/task-selector.js.map +1 -0
- package/dist/prompts/coder.d.ts +36 -0
- package/dist/prompts/coder.d.ts.map +1 -0
- package/dist/prompts/coder.js +315 -0
- package/dist/prompts/coder.js.map +1 -0
- package/dist/prompts/prompt-helpers.d.ts +51 -0
- package/dist/prompts/prompt-helpers.d.ts.map +1 -0
- package/dist/prompts/prompt-helpers.js +312 -0
- package/dist/prompts/prompt-helpers.js.map +1 -0
- package/dist/prompts/reviewer.d.ts +40 -0
- package/dist/prompts/reviewer.d.ts.map +1 -0
- package/dist/prompts/reviewer.js +438 -0
- package/dist/prompts/reviewer.js.map +1 -0
- package/dist/providers/api-models.d.ts +65 -0
- package/dist/providers/api-models.d.ts.map +1 -0
- package/dist/providers/api-models.js +323 -0
- package/dist/providers/api-models.js.map +1 -0
- package/dist/providers/claude.d.ts +53 -0
- package/dist/providers/claude.d.ts.map +1 -0
- package/dist/providers/claude.js +229 -0
- package/dist/providers/claude.js.map +1 -0
- package/dist/providers/codex.d.ts +53 -0
- package/dist/providers/codex.d.ts.map +1 -0
- package/dist/providers/codex.js +214 -0
- package/dist/providers/codex.js.map +1 -0
- package/dist/providers/gemini.d.ts +58 -0
- package/dist/providers/gemini.d.ts.map +1 -0
- package/dist/providers/gemini.js +242 -0
- package/dist/providers/gemini.js.map +1 -0
- package/dist/providers/index.d.ts +13 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +49 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/interface.d.ts +173 -0
- package/dist/providers/interface.d.ts.map +1 -0
- package/dist/providers/interface.js +96 -0
- package/dist/providers/interface.js.map +1 -0
- package/dist/providers/invocation-logger.d.ts +114 -0
- package/dist/providers/invocation-logger.d.ts.map +1 -0
- package/dist/providers/invocation-logger.js +298 -0
- package/dist/providers/invocation-logger.js.map +1 -0
- package/dist/providers/openai.d.ts +53 -0
- package/dist/providers/openai.d.ts.map +1 -0
- package/dist/providers/openai.js +232 -0
- package/dist/providers/openai.js.map +1 -0
- package/dist/providers/registry.d.ts +100 -0
- package/dist/providers/registry.d.ts.map +1 -0
- package/dist/providers/registry.js +178 -0
- package/dist/providers/registry.js.map +1 -0
- package/dist/runners/activity-log.d.ts +65 -0
- package/dist/runners/activity-log.d.ts.map +1 -0
- package/dist/runners/activity-log.js +148 -0
- package/dist/runners/activity-log.js.map +1 -0
- package/dist/runners/cron.d.ts +26 -0
- package/dist/runners/cron.d.ts.map +1 -0
- package/dist/runners/cron.js +176 -0
- package/dist/runners/cron.js.map +1 -0
- package/dist/runners/daemon.d.ts +71 -0
- package/dist/runners/daemon.d.ts.map +1 -0
- package/dist/runners/daemon.js +245 -0
- package/dist/runners/daemon.js.map +1 -0
- package/dist/runners/global-db.d.ts +31 -0
- package/dist/runners/global-db.d.ts.map +1 -0
- package/dist/runners/global-db.js +230 -0
- package/dist/runners/global-db.js.map +1 -0
- package/dist/runners/hang-detector.d.ts +38 -0
- package/dist/runners/hang-detector.d.ts.map +1 -0
- package/dist/runners/hang-detector.js +136 -0
- package/dist/runners/hang-detector.js.map +1 -0
- package/dist/runners/heartbeat.d.ts +39 -0
- package/dist/runners/heartbeat.d.ts.map +1 -0
- package/dist/runners/heartbeat.js +79 -0
- package/dist/runners/heartbeat.js.map +1 -0
- package/dist/runners/lock.d.ts +47 -0
- package/dist/runners/lock.d.ts.map +1 -0
- package/dist/runners/lock.js +150 -0
- package/dist/runners/lock.js.map +1 -0
- package/dist/runners/orchestrator-loop.d.ts +20 -0
- package/dist/runners/orchestrator-loop.d.ts.map +1 -0
- package/dist/runners/orchestrator-loop.js +285 -0
- package/dist/runners/orchestrator-loop.js.map +1 -0
- package/dist/runners/projects.d.ts +96 -0
- package/dist/runners/projects.d.ts.map +1 -0
- package/dist/runners/projects.js +255 -0
- package/dist/runners/projects.js.map +1 -0
- package/dist/runners/wakeup.d.ts +34 -0
- package/dist/runners/wakeup.d.ts.map +1 -0
- package/dist/runners/wakeup.js +291 -0
- package/dist/runners/wakeup.js.map +1 -0
- package/migrations/001_initial_schema.sql +106 -0
- package/migrations/002_add_commit_sha.sql +12 -0
- package/migrations/003_add_section_priority.sql +13 -0
- package/migrations/004_add_section_dependencies.sql +18 -0
- package/migrations/005_add_audit_actor_model.sql +10 -0
- package/migrations/006_add_task_invocations.sql +33 -0
- package/migrations/007_add_file_anchor.sql +14 -0
- package/migrations/manifest.json +62 -0
- package/package.json +49 -0
package/dist/cli/env.js
ADDED
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Environment variable support for Steroids CLI
|
|
4
|
+
*
|
|
5
|
+
* Provides centralized access to environment variables and their mappings
|
|
6
|
+
* to CLI flags and configuration options.
|
|
7
|
+
*
|
|
8
|
+
* Environment variables override defaults but are themselves overridden by
|
|
9
|
+
* explicit CLI flags.
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ENV_VAR_DOCS = exports.ENV_VARS = void 0;
|
|
13
|
+
exports.isTruthy = isTruthy;
|
|
14
|
+
exports.isFalsy = isFalsy;
|
|
15
|
+
exports.getEnv = getEnv;
|
|
16
|
+
exports.isEnvTrue = isEnvTrue;
|
|
17
|
+
exports.isEnvFalse = isEnvFalse;
|
|
18
|
+
exports.getEnvString = getEnvString;
|
|
19
|
+
exports.isCI = isCI;
|
|
20
|
+
exports.getCISystem = getCISystem;
|
|
21
|
+
exports.shouldDisableColors = shouldDisableColors;
|
|
22
|
+
exports.isAutoMigrateEnabled = isAutoMigrateEnabled;
|
|
23
|
+
exports.getEnvSnapshot = getEnvSnapshot;
|
|
24
|
+
/**
|
|
25
|
+
* All supported environment variables for Steroids CLI
|
|
26
|
+
*/
|
|
27
|
+
exports.ENV_VARS = {
|
|
28
|
+
/** Custom config path (maps to --config) */
|
|
29
|
+
STEROIDS_CONFIG: 'STEROIDS_CONFIG',
|
|
30
|
+
/** Output as JSON (maps to --json) */
|
|
31
|
+
STEROIDS_JSON: 'STEROIDS_JSON',
|
|
32
|
+
/** Minimal output (maps to --quiet) */
|
|
33
|
+
STEROIDS_QUIET: 'STEROIDS_QUIET',
|
|
34
|
+
/** Detailed output (maps to --verbose) */
|
|
35
|
+
STEROIDS_VERBOSE: 'STEROIDS_VERBOSE',
|
|
36
|
+
/** Skip hook execution (maps to --no-hooks) */
|
|
37
|
+
STEROIDS_NO_HOOKS: 'STEROIDS_NO_HOOKS',
|
|
38
|
+
/** Disable colors (maps to --no-color) */
|
|
39
|
+
STEROIDS_NO_COLOR: 'STEROIDS_NO_COLOR',
|
|
40
|
+
/** Auto-migrate database without prompting */
|
|
41
|
+
STEROIDS_AUTO_MIGRATE: 'STEROIDS_AUTO_MIGRATE',
|
|
42
|
+
/** Command timeout duration (maps to --timeout) */
|
|
43
|
+
STEROIDS_TIMEOUT: 'STEROIDS_TIMEOUT',
|
|
44
|
+
/** Don't wait for locks (maps to --no-wait) */
|
|
45
|
+
STEROIDS_NO_WAIT: 'STEROIDS_NO_WAIT',
|
|
46
|
+
/** Standard NO_COLOR env var (also maps to --no-color) */
|
|
47
|
+
NO_COLOR: 'NO_COLOR',
|
|
48
|
+
/** CI environment detection (various systems set this) */
|
|
49
|
+
CI: 'CI',
|
|
50
|
+
/** Continuous Integration (legacy) */
|
|
51
|
+
CONTINUOUS_INTEGRATION: 'CONTINUOUS_INTEGRATION',
|
|
52
|
+
/** GitHub Actions */
|
|
53
|
+
GITHUB_ACTIONS: 'GITHUB_ACTIONS',
|
|
54
|
+
/** GitLab CI */
|
|
55
|
+
GITLAB_CI: 'GITLAB_CI',
|
|
56
|
+
/** CircleCI */
|
|
57
|
+
CIRCLECI: 'CIRCLECI',
|
|
58
|
+
/** Travis CI */
|
|
59
|
+
TRAVIS: 'TRAVIS',
|
|
60
|
+
/** Jenkins */
|
|
61
|
+
JENKINS_URL: 'JENKINS_URL',
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Check if a value is truthy for boolean environment variables
|
|
65
|
+
*
|
|
66
|
+
* Accepts: '1', 'true' (case-insensitive), 'yes', 'on'
|
|
67
|
+
* Rejects: '0', 'false', 'no', 'off', undefined, empty string
|
|
68
|
+
*/
|
|
69
|
+
function isTruthy(value) {
|
|
70
|
+
if (!value)
|
|
71
|
+
return false;
|
|
72
|
+
const normalized = value.toLowerCase().trim();
|
|
73
|
+
return normalized === '1' || normalized === 'true' || normalized === 'yes' || normalized === 'on';
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Check if a value is falsy for boolean environment variables
|
|
77
|
+
*
|
|
78
|
+
* Accepts: '0', 'false' (case-insensitive), 'no', 'off'
|
|
79
|
+
* Empty string and undefined are treated as "not set" (returns false)
|
|
80
|
+
*/
|
|
81
|
+
function isFalsy(value) {
|
|
82
|
+
if (!value)
|
|
83
|
+
return false;
|
|
84
|
+
const normalized = value.toLowerCase().trim();
|
|
85
|
+
return normalized === '0' || normalized === 'false' || normalized === 'no' || normalized === 'off';
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Get environment variable value
|
|
89
|
+
*/
|
|
90
|
+
function getEnv(key) {
|
|
91
|
+
return process.env[exports.ENV_VARS[key]];
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Check if environment variable is set to truthy value
|
|
95
|
+
*/
|
|
96
|
+
function isEnvTrue(key) {
|
|
97
|
+
return isTruthy(getEnv(key));
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Check if environment variable is set to falsy value
|
|
101
|
+
*/
|
|
102
|
+
function isEnvFalse(key) {
|
|
103
|
+
return isFalsy(getEnv(key));
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Get environment variable as string or default
|
|
107
|
+
*/
|
|
108
|
+
function getEnvString(key, defaultValue) {
|
|
109
|
+
return getEnv(key) ?? defaultValue;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Detect if running in CI environment
|
|
113
|
+
*/
|
|
114
|
+
function isCI() {
|
|
115
|
+
return !!(getEnv('CI') ||
|
|
116
|
+
getEnv('CONTINUOUS_INTEGRATION') ||
|
|
117
|
+
getEnv('GITHUB_ACTIONS') ||
|
|
118
|
+
getEnv('GITLAB_CI') ||
|
|
119
|
+
getEnv('CIRCLECI') ||
|
|
120
|
+
getEnv('TRAVIS') ||
|
|
121
|
+
getEnv('JENKINS_URL'));
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Detect which CI system is running (if any)
|
|
125
|
+
*/
|
|
126
|
+
function getCISystem() {
|
|
127
|
+
if (getEnv('GITHUB_ACTIONS'))
|
|
128
|
+
return 'GitHub Actions';
|
|
129
|
+
if (getEnv('GITLAB_CI'))
|
|
130
|
+
return 'GitLab CI';
|
|
131
|
+
if (getEnv('CIRCLECI'))
|
|
132
|
+
return 'CircleCI';
|
|
133
|
+
if (getEnv('TRAVIS'))
|
|
134
|
+
return 'Travis CI';
|
|
135
|
+
if (getEnv('JENKINS_URL'))
|
|
136
|
+
return 'Jenkins';
|
|
137
|
+
if (getEnv('CI'))
|
|
138
|
+
return 'Generic CI';
|
|
139
|
+
return null;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Check if colors should be disabled based on env vars
|
|
143
|
+
*/
|
|
144
|
+
function shouldDisableColors() {
|
|
145
|
+
return !!(getEnv('NO_COLOR') !== undefined ||
|
|
146
|
+
isEnvTrue('STEROIDS_NO_COLOR'));
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Check if auto-migration is enabled
|
|
150
|
+
*/
|
|
151
|
+
function isAutoMigrateEnabled() {
|
|
152
|
+
return isEnvTrue('STEROIDS_AUTO_MIGRATE');
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Get all relevant environment variables for debugging
|
|
156
|
+
*/
|
|
157
|
+
function getEnvSnapshot() {
|
|
158
|
+
const snapshot = {};
|
|
159
|
+
for (const key of Object.keys(exports.ENV_VARS)) {
|
|
160
|
+
const value = getEnv(key);
|
|
161
|
+
if (value !== undefined) {
|
|
162
|
+
snapshot[key] = value;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
return snapshot;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Environment variable documentation for help text
|
|
169
|
+
*/
|
|
170
|
+
exports.ENV_VAR_DOCS = {
|
|
171
|
+
[exports.ENV_VARS.STEROIDS_CONFIG]: {
|
|
172
|
+
description: 'Custom config file path',
|
|
173
|
+
values: 'Path to config file',
|
|
174
|
+
mapsTo: '--config',
|
|
175
|
+
},
|
|
176
|
+
[exports.ENV_VARS.STEROIDS_JSON]: {
|
|
177
|
+
description: 'Output as JSON',
|
|
178
|
+
values: '1, true',
|
|
179
|
+
mapsTo: '--json',
|
|
180
|
+
},
|
|
181
|
+
[exports.ENV_VARS.STEROIDS_QUIET]: {
|
|
182
|
+
description: 'Minimal output',
|
|
183
|
+
values: '1, true',
|
|
184
|
+
mapsTo: '--quiet',
|
|
185
|
+
},
|
|
186
|
+
[exports.ENV_VARS.STEROIDS_VERBOSE]: {
|
|
187
|
+
description: 'Detailed output',
|
|
188
|
+
values: '1, true',
|
|
189
|
+
mapsTo: '--verbose',
|
|
190
|
+
},
|
|
191
|
+
[exports.ENV_VARS.STEROIDS_NO_HOOKS]: {
|
|
192
|
+
description: 'Skip hook execution',
|
|
193
|
+
values: '1, true',
|
|
194
|
+
mapsTo: '--no-hooks',
|
|
195
|
+
},
|
|
196
|
+
[exports.ENV_VARS.STEROIDS_NO_COLOR]: {
|
|
197
|
+
description: 'Disable colored output',
|
|
198
|
+
values: '1, true',
|
|
199
|
+
mapsTo: '--no-color',
|
|
200
|
+
},
|
|
201
|
+
[exports.ENV_VARS.STEROIDS_AUTO_MIGRATE]: {
|
|
202
|
+
description: 'Auto-migrate database without prompting',
|
|
203
|
+
values: '1, true',
|
|
204
|
+
mapsTo: 'auto-migrate behavior',
|
|
205
|
+
},
|
|
206
|
+
[exports.ENV_VARS.STEROIDS_TIMEOUT]: {
|
|
207
|
+
description: 'Command timeout duration',
|
|
208
|
+
values: 'Duration (e.g., 30s, 5m, 1h)',
|
|
209
|
+
mapsTo: '--timeout',
|
|
210
|
+
},
|
|
211
|
+
[exports.ENV_VARS.STEROIDS_NO_WAIT]: {
|
|
212
|
+
description: "Don't wait for locks to be released",
|
|
213
|
+
values: '1, true',
|
|
214
|
+
mapsTo: '--no-wait',
|
|
215
|
+
},
|
|
216
|
+
[exports.ENV_VARS.NO_COLOR]: {
|
|
217
|
+
description: 'Standard no-color.org variable',
|
|
218
|
+
values: 'Any value',
|
|
219
|
+
mapsTo: '--no-color',
|
|
220
|
+
},
|
|
221
|
+
[exports.ENV_VARS.CI]: {
|
|
222
|
+
description: 'Detected CI environment',
|
|
223
|
+
values: 'Any value',
|
|
224
|
+
mapsTo: 'Non-interactive mode',
|
|
225
|
+
},
|
|
226
|
+
};
|
|
227
|
+
//# sourceMappingURL=env.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/cli/env.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error codes and exit codes for Steroids CLI
|
|
3
|
+
*
|
|
4
|
+
* Provides consistent, semantic error codes that map to appropriate
|
|
5
|
+
* exit codes for shell scripting and automation.
|
|
6
|
+
*
|
|
7
|
+
* Error codes are used in JSON output for machine-parseable errors.
|
|
8
|
+
* Exit codes follow standard Unix conventions.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Standard error codes used throughout the CLI
|
|
12
|
+
*
|
|
13
|
+
* These codes appear in the JSON error.code field and are mapped
|
|
14
|
+
* to appropriate exit codes for process termination.
|
|
15
|
+
*/
|
|
16
|
+
export declare enum ErrorCode {
|
|
17
|
+
/** Operation completed successfully */
|
|
18
|
+
SUCCESS = "SUCCESS",
|
|
19
|
+
/** Unspecified error (generic fallback) */
|
|
20
|
+
GENERAL_ERROR = "GENERAL_ERROR",
|
|
21
|
+
/** Invalid command arguments or flags */
|
|
22
|
+
INVALID_ARGUMENTS = "INVALID_ARGUMENTS",
|
|
23
|
+
/** Configuration file error or invalid config */
|
|
24
|
+
CONFIG_ERROR = "CONFIG_ERROR",
|
|
25
|
+
/** Requested resource not found (generic) */
|
|
26
|
+
NOT_FOUND = "NOT_FOUND",
|
|
27
|
+
/** Access denied or insufficient permissions */
|
|
28
|
+
PERMISSION_DENIED = "PERMISSION_DENIED",
|
|
29
|
+
/** Resource is locked by another process */
|
|
30
|
+
RESOURCE_LOCKED = "RESOURCE_LOCKED",
|
|
31
|
+
/** Health check failed */
|
|
32
|
+
HEALTH_FAILED = "HEALTH_FAILED",
|
|
33
|
+
/** Specific: Task not found */
|
|
34
|
+
TASK_NOT_FOUND = "TASK_NOT_FOUND",
|
|
35
|
+
/** Specific: Section not found */
|
|
36
|
+
SECTION_NOT_FOUND = "SECTION_NOT_FOUND",
|
|
37
|
+
/** Specific: Task is locked by a runner */
|
|
38
|
+
TASK_LOCKED = "TASK_LOCKED",
|
|
39
|
+
/** Steroids not initialized in this directory */
|
|
40
|
+
NOT_INITIALIZED = "NOT_INITIALIZED",
|
|
41
|
+
/** Database migration required */
|
|
42
|
+
MIGRATION_REQUIRED = "MIGRATION_REQUIRED",
|
|
43
|
+
/** Hook execution failed */
|
|
44
|
+
HOOK_FAILED = "HOOK_FAILED",
|
|
45
|
+
/** Validation error */
|
|
46
|
+
VALIDATION_ERROR = "VALIDATION_ERROR",
|
|
47
|
+
/** Internal error */
|
|
48
|
+
INTERNAL_ERROR = "INTERNAL_ERROR",
|
|
49
|
+
/** Feature not implemented */
|
|
50
|
+
NOT_IMPLEMENTED = "NOT_IMPLEMENTED"
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Unix exit codes for process termination
|
|
54
|
+
*
|
|
55
|
+
* These follow standard Unix conventions:
|
|
56
|
+
* - 0: Success
|
|
57
|
+
* - 1: General error
|
|
58
|
+
* - 2-125: Specific errors
|
|
59
|
+
* - 126-255: Reserved by shell
|
|
60
|
+
*/
|
|
61
|
+
export declare enum ExitCode {
|
|
62
|
+
/** Success - operation completed without errors */
|
|
63
|
+
SUCCESS = 0,
|
|
64
|
+
/** General error - unspecified failure */
|
|
65
|
+
GENERAL_ERROR = 1,
|
|
66
|
+
/** Invalid arguments - bad command line input */
|
|
67
|
+
INVALID_ARGUMENTS = 2,
|
|
68
|
+
/** Configuration error - config file or settings problem */
|
|
69
|
+
CONFIG_ERROR = 3,
|
|
70
|
+
/** Not found - requested resource doesn't exist */
|
|
71
|
+
NOT_FOUND = 4,
|
|
72
|
+
/** Permission denied - access not allowed */
|
|
73
|
+
PERMISSION_DENIED = 5,
|
|
74
|
+
/** Resource locked - locked by another process */
|
|
75
|
+
RESOURCE_LOCKED = 6,
|
|
76
|
+
/** Health check failed - system health issues */
|
|
77
|
+
HEALTH_FAILED = 7
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Map error codes to exit codes
|
|
81
|
+
*
|
|
82
|
+
* This mapping determines what exit code the process should use
|
|
83
|
+
* when terminating due to a specific error.
|
|
84
|
+
*/
|
|
85
|
+
export declare const ERROR_CODE_TO_EXIT_CODE: Record<ErrorCode, ExitCode>;
|
|
86
|
+
/**
|
|
87
|
+
* Get the exit code for a given error code
|
|
88
|
+
*
|
|
89
|
+
* @param errorCode - The error code to map
|
|
90
|
+
* @returns The corresponding exit code
|
|
91
|
+
*/
|
|
92
|
+
export declare function getExitCode(errorCode: ErrorCode): ExitCode;
|
|
93
|
+
/**
|
|
94
|
+
* Get the exit code for an error code string
|
|
95
|
+
*
|
|
96
|
+
* Useful when you have a string error code from JSON or user input.
|
|
97
|
+
*
|
|
98
|
+
* @param errorCodeStr - The error code as a string
|
|
99
|
+
* @returns The corresponding exit code, or GENERAL_ERROR if unknown
|
|
100
|
+
*/
|
|
101
|
+
export declare function getExitCodeFromString(errorCodeStr: string): ExitCode;
|
|
102
|
+
/**
|
|
103
|
+
* CLI Error class that includes error code and exit code
|
|
104
|
+
*
|
|
105
|
+
* Use this for errors that should result in process termination
|
|
106
|
+
* with a specific exit code.
|
|
107
|
+
*/
|
|
108
|
+
export declare class CliError extends Error {
|
|
109
|
+
readonly code: ErrorCode;
|
|
110
|
+
readonly exitCode: ExitCode;
|
|
111
|
+
readonly details?: Record<string, unknown>;
|
|
112
|
+
constructor(code: ErrorCode, message: string, details?: Record<string, unknown>);
|
|
113
|
+
/**
|
|
114
|
+
* Check if this error should terminate the process
|
|
115
|
+
*/
|
|
116
|
+
shouldExit(): boolean;
|
|
117
|
+
/**
|
|
118
|
+
* Exit the process with this error's exit code
|
|
119
|
+
*/
|
|
120
|
+
exit(): never;
|
|
121
|
+
/**
|
|
122
|
+
* Convert error to JSON-serializable object
|
|
123
|
+
*/
|
|
124
|
+
toJSON(): {
|
|
125
|
+
code: string;
|
|
126
|
+
message: string;
|
|
127
|
+
details?: Record<string, unknown>;
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Create a CliError for task not found
|
|
132
|
+
*/
|
|
133
|
+
export declare function taskNotFoundError(taskId: string): CliError;
|
|
134
|
+
/**
|
|
135
|
+
* Create a CliError for section not found
|
|
136
|
+
*/
|
|
137
|
+
export declare function sectionNotFoundError(sectionId: string): CliError;
|
|
138
|
+
/**
|
|
139
|
+
* Create a CliError for task locked
|
|
140
|
+
*/
|
|
141
|
+
export declare function taskLockedError(taskId: string, lockedBy?: string): CliError;
|
|
142
|
+
/**
|
|
143
|
+
* Create a CliError for not initialized
|
|
144
|
+
*/
|
|
145
|
+
export declare function notInitializedError(): CliError;
|
|
146
|
+
/**
|
|
147
|
+
* Create a CliError for migration required
|
|
148
|
+
*/
|
|
149
|
+
export declare function migrationRequiredError(): CliError;
|
|
150
|
+
/**
|
|
151
|
+
* Create a CliError for invalid arguments
|
|
152
|
+
*/
|
|
153
|
+
export declare function invalidArgumentsError(message: string): CliError;
|
|
154
|
+
/**
|
|
155
|
+
* Create a CliError for config error
|
|
156
|
+
*/
|
|
157
|
+
export declare function configError(message: string, details?: Record<string, unknown>): CliError;
|
|
158
|
+
/**
|
|
159
|
+
* Create a CliError for permission denied
|
|
160
|
+
*/
|
|
161
|
+
export declare function permissionDeniedError(message: string): CliError;
|
|
162
|
+
/**
|
|
163
|
+
* Create a CliError for hook failed
|
|
164
|
+
*/
|
|
165
|
+
export declare function hookFailedError(hookName: string, exitCode?: number): CliError;
|
|
166
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/cli/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Error codes and exit codes for Steroids CLI
|
|
4
|
+
*
|
|
5
|
+
* Provides consistent, semantic error codes that map to appropriate
|
|
6
|
+
* exit codes for shell scripting and automation.
|
|
7
|
+
*
|
|
8
|
+
* Error codes are used in JSON output for machine-parseable errors.
|
|
9
|
+
* Exit codes follow standard Unix conventions.
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.CliError = exports.ERROR_CODE_TO_EXIT_CODE = exports.ExitCode = exports.ErrorCode = void 0;
|
|
13
|
+
exports.getExitCode = getExitCode;
|
|
14
|
+
exports.getExitCodeFromString = getExitCodeFromString;
|
|
15
|
+
exports.taskNotFoundError = taskNotFoundError;
|
|
16
|
+
exports.sectionNotFoundError = sectionNotFoundError;
|
|
17
|
+
exports.taskLockedError = taskLockedError;
|
|
18
|
+
exports.notInitializedError = notInitializedError;
|
|
19
|
+
exports.migrationRequiredError = migrationRequiredError;
|
|
20
|
+
exports.invalidArgumentsError = invalidArgumentsError;
|
|
21
|
+
exports.configError = configError;
|
|
22
|
+
exports.permissionDeniedError = permissionDeniedError;
|
|
23
|
+
exports.hookFailedError = hookFailedError;
|
|
24
|
+
/**
|
|
25
|
+
* Standard error codes used throughout the CLI
|
|
26
|
+
*
|
|
27
|
+
* These codes appear in the JSON error.code field and are mapped
|
|
28
|
+
* to appropriate exit codes for process termination.
|
|
29
|
+
*/
|
|
30
|
+
var ErrorCode;
|
|
31
|
+
(function (ErrorCode) {
|
|
32
|
+
/** Operation completed successfully */
|
|
33
|
+
ErrorCode["SUCCESS"] = "SUCCESS";
|
|
34
|
+
/** Unspecified error (generic fallback) */
|
|
35
|
+
ErrorCode["GENERAL_ERROR"] = "GENERAL_ERROR";
|
|
36
|
+
/** Invalid command arguments or flags */
|
|
37
|
+
ErrorCode["INVALID_ARGUMENTS"] = "INVALID_ARGUMENTS";
|
|
38
|
+
/** Configuration file error or invalid config */
|
|
39
|
+
ErrorCode["CONFIG_ERROR"] = "CONFIG_ERROR";
|
|
40
|
+
/** Requested resource not found (generic) */
|
|
41
|
+
ErrorCode["NOT_FOUND"] = "NOT_FOUND";
|
|
42
|
+
/** Access denied or insufficient permissions */
|
|
43
|
+
ErrorCode["PERMISSION_DENIED"] = "PERMISSION_DENIED";
|
|
44
|
+
/** Resource is locked by another process */
|
|
45
|
+
ErrorCode["RESOURCE_LOCKED"] = "RESOURCE_LOCKED";
|
|
46
|
+
/** Health check failed */
|
|
47
|
+
ErrorCode["HEALTH_FAILED"] = "HEALTH_FAILED";
|
|
48
|
+
/** Specific: Task not found */
|
|
49
|
+
ErrorCode["TASK_NOT_FOUND"] = "TASK_NOT_FOUND";
|
|
50
|
+
/** Specific: Section not found */
|
|
51
|
+
ErrorCode["SECTION_NOT_FOUND"] = "SECTION_NOT_FOUND";
|
|
52
|
+
/** Specific: Task is locked by a runner */
|
|
53
|
+
ErrorCode["TASK_LOCKED"] = "TASK_LOCKED";
|
|
54
|
+
/** Steroids not initialized in this directory */
|
|
55
|
+
ErrorCode["NOT_INITIALIZED"] = "NOT_INITIALIZED";
|
|
56
|
+
/** Database migration required */
|
|
57
|
+
ErrorCode["MIGRATION_REQUIRED"] = "MIGRATION_REQUIRED";
|
|
58
|
+
/** Hook execution failed */
|
|
59
|
+
ErrorCode["HOOK_FAILED"] = "HOOK_FAILED";
|
|
60
|
+
/** Validation error */
|
|
61
|
+
ErrorCode["VALIDATION_ERROR"] = "VALIDATION_ERROR";
|
|
62
|
+
/** Internal error */
|
|
63
|
+
ErrorCode["INTERNAL_ERROR"] = "INTERNAL_ERROR";
|
|
64
|
+
/** Feature not implemented */
|
|
65
|
+
ErrorCode["NOT_IMPLEMENTED"] = "NOT_IMPLEMENTED";
|
|
66
|
+
})(ErrorCode || (exports.ErrorCode = ErrorCode = {}));
|
|
67
|
+
/**
|
|
68
|
+
* Unix exit codes for process termination
|
|
69
|
+
*
|
|
70
|
+
* These follow standard Unix conventions:
|
|
71
|
+
* - 0: Success
|
|
72
|
+
* - 1: General error
|
|
73
|
+
* - 2-125: Specific errors
|
|
74
|
+
* - 126-255: Reserved by shell
|
|
75
|
+
*/
|
|
76
|
+
var ExitCode;
|
|
77
|
+
(function (ExitCode) {
|
|
78
|
+
/** Success - operation completed without errors */
|
|
79
|
+
ExitCode[ExitCode["SUCCESS"] = 0] = "SUCCESS";
|
|
80
|
+
/** General error - unspecified failure */
|
|
81
|
+
ExitCode[ExitCode["GENERAL_ERROR"] = 1] = "GENERAL_ERROR";
|
|
82
|
+
/** Invalid arguments - bad command line input */
|
|
83
|
+
ExitCode[ExitCode["INVALID_ARGUMENTS"] = 2] = "INVALID_ARGUMENTS";
|
|
84
|
+
/** Configuration error - config file or settings problem */
|
|
85
|
+
ExitCode[ExitCode["CONFIG_ERROR"] = 3] = "CONFIG_ERROR";
|
|
86
|
+
/** Not found - requested resource doesn't exist */
|
|
87
|
+
ExitCode[ExitCode["NOT_FOUND"] = 4] = "NOT_FOUND";
|
|
88
|
+
/** Permission denied - access not allowed */
|
|
89
|
+
ExitCode[ExitCode["PERMISSION_DENIED"] = 5] = "PERMISSION_DENIED";
|
|
90
|
+
/** Resource locked - locked by another process */
|
|
91
|
+
ExitCode[ExitCode["RESOURCE_LOCKED"] = 6] = "RESOURCE_LOCKED";
|
|
92
|
+
/** Health check failed - system health issues */
|
|
93
|
+
ExitCode[ExitCode["HEALTH_FAILED"] = 7] = "HEALTH_FAILED";
|
|
94
|
+
})(ExitCode || (exports.ExitCode = ExitCode = {}));
|
|
95
|
+
/**
|
|
96
|
+
* Map error codes to exit codes
|
|
97
|
+
*
|
|
98
|
+
* This mapping determines what exit code the process should use
|
|
99
|
+
* when terminating due to a specific error.
|
|
100
|
+
*/
|
|
101
|
+
exports.ERROR_CODE_TO_EXIT_CODE = {
|
|
102
|
+
[ErrorCode.SUCCESS]: ExitCode.SUCCESS,
|
|
103
|
+
[ErrorCode.GENERAL_ERROR]: ExitCode.GENERAL_ERROR,
|
|
104
|
+
[ErrorCode.INVALID_ARGUMENTS]: ExitCode.INVALID_ARGUMENTS,
|
|
105
|
+
[ErrorCode.CONFIG_ERROR]: ExitCode.CONFIG_ERROR,
|
|
106
|
+
[ErrorCode.NOT_FOUND]: ExitCode.NOT_FOUND,
|
|
107
|
+
[ErrorCode.PERMISSION_DENIED]: ExitCode.PERMISSION_DENIED,
|
|
108
|
+
[ErrorCode.RESOURCE_LOCKED]: ExitCode.RESOURCE_LOCKED,
|
|
109
|
+
[ErrorCode.HEALTH_FAILED]: ExitCode.HEALTH_FAILED,
|
|
110
|
+
// Specific error codes map to generic exit codes
|
|
111
|
+
[ErrorCode.TASK_NOT_FOUND]: ExitCode.NOT_FOUND,
|
|
112
|
+
[ErrorCode.SECTION_NOT_FOUND]: ExitCode.NOT_FOUND,
|
|
113
|
+
[ErrorCode.TASK_LOCKED]: ExitCode.RESOURCE_LOCKED,
|
|
114
|
+
[ErrorCode.NOT_INITIALIZED]: ExitCode.CONFIG_ERROR,
|
|
115
|
+
[ErrorCode.MIGRATION_REQUIRED]: ExitCode.CONFIG_ERROR,
|
|
116
|
+
[ErrorCode.HOOK_FAILED]: ExitCode.GENERAL_ERROR,
|
|
117
|
+
[ErrorCode.VALIDATION_ERROR]: ExitCode.INVALID_ARGUMENTS,
|
|
118
|
+
[ErrorCode.INTERNAL_ERROR]: ExitCode.GENERAL_ERROR,
|
|
119
|
+
[ErrorCode.NOT_IMPLEMENTED]: ExitCode.GENERAL_ERROR,
|
|
120
|
+
};
|
|
121
|
+
/**
|
|
122
|
+
* Get the exit code for a given error code
|
|
123
|
+
*
|
|
124
|
+
* @param errorCode - The error code to map
|
|
125
|
+
* @returns The corresponding exit code
|
|
126
|
+
*/
|
|
127
|
+
function getExitCode(errorCode) {
|
|
128
|
+
return exports.ERROR_CODE_TO_EXIT_CODE[errorCode] ?? ExitCode.GENERAL_ERROR;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Get the exit code for an error code string
|
|
132
|
+
*
|
|
133
|
+
* Useful when you have a string error code from JSON or user input.
|
|
134
|
+
*
|
|
135
|
+
* @param errorCodeStr - The error code as a string
|
|
136
|
+
* @returns The corresponding exit code, or GENERAL_ERROR if unknown
|
|
137
|
+
*/
|
|
138
|
+
function getExitCodeFromString(errorCodeStr) {
|
|
139
|
+
const errorCode = errorCodeStr;
|
|
140
|
+
if (errorCode in exports.ERROR_CODE_TO_EXIT_CODE) {
|
|
141
|
+
return exports.ERROR_CODE_TO_EXIT_CODE[errorCode];
|
|
142
|
+
}
|
|
143
|
+
return ExitCode.GENERAL_ERROR;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* CLI Error class that includes error code and exit code
|
|
147
|
+
*
|
|
148
|
+
* Use this for errors that should result in process termination
|
|
149
|
+
* with a specific exit code.
|
|
150
|
+
*/
|
|
151
|
+
class CliError extends Error {
|
|
152
|
+
code;
|
|
153
|
+
exitCode;
|
|
154
|
+
details;
|
|
155
|
+
constructor(code, message, details) {
|
|
156
|
+
super(message);
|
|
157
|
+
this.name = 'CliError';
|
|
158
|
+
this.code = code;
|
|
159
|
+
this.exitCode = getExitCode(code);
|
|
160
|
+
this.details = details;
|
|
161
|
+
// Maintains proper stack trace for where error was thrown (V8 only)
|
|
162
|
+
if (Error.captureStackTrace) {
|
|
163
|
+
Error.captureStackTrace(this, CliError);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Check if this error should terminate the process
|
|
168
|
+
*/
|
|
169
|
+
shouldExit() {
|
|
170
|
+
return this.exitCode !== ExitCode.SUCCESS;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Exit the process with this error's exit code
|
|
174
|
+
*/
|
|
175
|
+
exit() {
|
|
176
|
+
process.exit(this.exitCode);
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Convert error to JSON-serializable object
|
|
180
|
+
*/
|
|
181
|
+
toJSON() {
|
|
182
|
+
return {
|
|
183
|
+
code: this.code,
|
|
184
|
+
message: this.message,
|
|
185
|
+
details: this.details,
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
exports.CliError = CliError;
|
|
190
|
+
/**
|
|
191
|
+
* Create a CliError for task not found
|
|
192
|
+
*/
|
|
193
|
+
function taskNotFoundError(taskId) {
|
|
194
|
+
return new CliError(ErrorCode.TASK_NOT_FOUND, `Task not found: ${taskId}`, { taskId });
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Create a CliError for section not found
|
|
198
|
+
*/
|
|
199
|
+
function sectionNotFoundError(sectionId) {
|
|
200
|
+
return new CliError(ErrorCode.SECTION_NOT_FOUND, `Section not found: ${sectionId}`, { sectionId });
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Create a CliError for task locked
|
|
204
|
+
*/
|
|
205
|
+
function taskLockedError(taskId, lockedBy) {
|
|
206
|
+
return new CliError(ErrorCode.TASK_LOCKED, `Task is locked: ${taskId}${lockedBy ? ` (locked by: ${lockedBy})` : ''}`, { taskId, lockedBy });
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Create a CliError for not initialized
|
|
210
|
+
*/
|
|
211
|
+
function notInitializedError() {
|
|
212
|
+
return new CliError(ErrorCode.NOT_INITIALIZED, 'Steroids not initialized. Run: steroids init');
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Create a CliError for migration required
|
|
216
|
+
*/
|
|
217
|
+
function migrationRequiredError() {
|
|
218
|
+
return new CliError(ErrorCode.MIGRATION_REQUIRED, 'Database migration required. Run: steroids migrate');
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Create a CliError for invalid arguments
|
|
222
|
+
*/
|
|
223
|
+
function invalidArgumentsError(message) {
|
|
224
|
+
return new CliError(ErrorCode.INVALID_ARGUMENTS, message);
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Create a CliError for config error
|
|
228
|
+
*/
|
|
229
|
+
function configError(message, details) {
|
|
230
|
+
return new CliError(ErrorCode.CONFIG_ERROR, message, details);
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Create a CliError for permission denied
|
|
234
|
+
*/
|
|
235
|
+
function permissionDeniedError(message) {
|
|
236
|
+
return new CliError(ErrorCode.PERMISSION_DENIED, message);
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Create a CliError for hook failed
|
|
240
|
+
*/
|
|
241
|
+
function hookFailedError(hookName, exitCode) {
|
|
242
|
+
return new CliError(ErrorCode.HOOK_FAILED, `Hook failed: ${hookName}${exitCode !== undefined ? ` (exit code: ${exitCode})` : ''}`, { hookName, exitCode });
|
|
243
|
+
}
|
|
244
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/cli/errors.ts"],"names":[],"mappings":"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"}
|