/** * Reading the text off a thrown value, for the deploy path. * * Its own module because both consumers are on the money path and neither may import the other: * `orchestrator.ts` already imports `../universe/package-universe.ts`, so putting it in either would * make a cycle, and a second hand-rolled copy is how the two drifted in the first place. */ /** What a value with no readable text is called, so the report says so instead of inventing one. */ export declare const UNREADABLE_ERROR = "an error whose message could not be read"; /** * The text of a thrown value — TOTAL, because every caller is a catch block whose job is to keep the * deploy report alive. * * Reading a thrown value is itself an operation that can throw: a `message` getter that raises, a * null-prototype object `String()` cannot convert to a primitive, a hostile `toString`. Those come * off the wire like any other error, and a throw here happens INSIDE the catch — so it discards the * original error, escapes `runDeploy` and costs the whole report the deploy just earned. An error * we cannot name is still an error we must report, so it degrades rather than raising. * * The degraded form still says everything it can: the constructor name usually survives a hostile * `message`, and on an error with nothing else readable it is the only diagnostic left — a * `TimeoutError` and a `ZodError` send a reader to different places. */ export declare function errorText(err: unknown): string; //# sourceMappingURL=error-text.d.ts.map