Skip to content

0.7.0 — Corj namespace integration

Choose a tag to compare

@dany-fedorov dany-fedorov released this 20 Sep 21:07
· 23 commits to main since this release

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 restoreExpectedValues import with Corj and qualify restoration calls.
  • If you import CORJ utilities directly, use the named Corj export and follow the CORJ 13 migration notes.
  • Update mocks and runtime export assertions for Corj replacing 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.