Repository navigation
0.7.0 — Corj namespace integration
Application-exception now integrates CORJ 13 and re-exports its exact frozen Corj utility object. The standalone restoreExpectedValues export is removed without an alias. The package's typed-failure and reporting APIs retain their current names.
Migrating from 0.6.x
Before:
import { makeDiagnosticReport, restoreExpectedValues } from 'application-exception';
const report = makeDiagnosticReport(caught);
const full = restoreExpectedValues(report);After:
import { Corj, makeDiagnosticReport } from 'application-exception';
const report = makeDiagnosticReport(caught);
const full = Corj.restoreExpectedValues(report);With import * as appex from 'application-exception', change appex.restoreExpectedValues(report) to appex.Corj.restoreExpectedValues(report).
Migration checklist:
- Replace the
restoreExpectedValuesimport withCorjand qualify restoration calls. - If you import CORJ utilities directly, use the named
Corjexport and follow the CORJ 13 migration notes. - Update mocks and runtime export assertions for
Corjreplacing standalone restoration. - Keep existing
defineException,makeDiagnosticReport,makePublicReport,makeReportPair, redaction, trust, and decoding calls.
Redaction resolution now uses Corj.resolveRedactPolicy internally. Dependency range is caught-object-report-json ^13.0.0. Report formats, byte limits, diagnostic schema v6, public v3/v4 decoding, fingerprint semantics and cross-copy trust are unchanged.
For upgrades from 0.5.x or earlier, apply the 0.6.0 migration changes as well.
Validation: 340 tests pass with 100% coverage, plus strict types, build, packed package checks, Node ESM, Bun, Chromium and 45 documentation snippets. GitHub CI passed on Node 18, 20 and 24, Bun and browser; an independent installation of the release tarball verified namespace identity and reporting integration.