diff --git a/.changeset/ninety-pumas-allow.md b/.changeset/ninety-pumas-allow.md new file mode 100644 index 0000000000..60387e866f --- /dev/null +++ b/.changeset/ninety-pumas-allow.md @@ -0,0 +1,5 @@ +--- +"@effect/platform": patch +--- + +improve /platform/WorkerError messages diff --git a/packages/platform/src/WorkerError.ts b/packages/platform/src/WorkerError.ts index 4841a3c4b3..0c425a38c9 100644 --- a/packages/platform/src/WorkerError.ts +++ b/packages/platform/src/WorkerError.ts @@ -3,6 +3,7 @@ */ import * as Schema from "@effect/schema/Schema" import type * as Cause from "effect/Cause" +import * as Inspectable from "effect/Inspectable" import * as Predicate from "effect/Predicate" import * as internal from "./internal/workerError.js" @@ -49,23 +50,21 @@ export class WorkerError extends Schema.TaggedError()("WorkerError" * @since 1.0.0 */ static readonly encodeCause: (a: Cause.Cause) => Schema.CauseEncoded = Schema - .encodeSync( - this.Cause - ) + .encodeSync(this.Cause) /** * @since 1.0.0 */ static readonly decodeCause: (u: Schema.CauseEncoded) => Cause.Cause = Schema - .decodeSync( - this.Cause - ) + .decodeSync(this.Cause) /** * @since 1.0.0 */ get message() { - const message = this.error instanceof Error ? this.error.message : String(this.error) + const message = Predicate.hasProperty(this.error, "message") + ? this.error.message + : Inspectable.toStringUnknown(this.error, undefined) return `${this.reason}: ${message}` } }