From f2c87f65604006032e8a82a40463218d2fb8119f Mon Sep 17 00:00:00 2001 From: jfet97 Date: Tue, 20 Jan 2026 10:35:14 +0100 Subject: [PATCH] fix: propagate exit code from child command execution --- .changeset/seven-seas-call.md | 5 +++++ packages/cli/src/index.ts | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 .changeset/seven-seas-call.md diff --git a/.changeset/seven-seas-call.md b/.changeset/seven-seas-call.md new file mode 100644 index 000000000..eeb189875 --- /dev/null +++ b/.changeset/seven-seas-call.md @@ -0,0 +1,5 @@ +--- +"@effect-app/cli": patch +--- + +propagate exit code diff --git a/packages/cli/src/index.ts b/packages/cli/src/index.ts index 8613be89c..3cf3cc079 100644 --- a/packages/cli/src/index.ts +++ b/packages/cli/src/index.ts @@ -446,7 +446,10 @@ Effect : wrapOption.value yield* Effect.logInfo(`Spawning child command: ${val}`) - yield* runGetExitCode(val) + const exitCode = yield* runGetExitCode(val) + if (exitCode !== 0) { + return yield* Effect.sync(() => process.exit(exitCode)) + } } return