Reject or throw non-Error values
Promise rejections and async throws should use Error objects.
#Metadata
#Why it matters
Non-Error rejections lose stack traces and are harder to handle consistently in async code.
#Remediation
Reject or throw `new Error(...)` (or a typed Error subclass) instead of a string or other primitive.
#Repository path
The generated metadata points to critiq-rules/libs/rules/catalog/rules/typescript/ts.correctness.promise-reject-non-error.rule.yaml.