Repository navigation
0.6.0: Descriptive APIs and report byte limits
This release adopts descriptive APIs and corj 12, with breaking changes and no compatibility aliases.
| Previous API | New API |
|---|---|
toDiagnosticReport |
makeDiagnosticReport |
toPublicReport |
makePublicReport |
toReports |
makeReportPair |
createRedactionPolicy |
makeRedactionPolicy |
createTrustRealm |
makeTrustRealm |
CapturedReports |
ReportPair |
ToReportsOptions |
ReportPairOptions |
PublicOverride |
PublicPolicyOverride |
CorjReportChild |
CorjReportNode |
AppexCorjOptions |
DiagnosticReportCorjOptions / PublicReportCorjOptions |
Policy details callback |
detailsSelector |
Single-report public override |
policyOverride |
Nested corj.maxReportSize |
Top-level maxReportBytes |
Instance details, kind definition public, and the pair's public audience bag retain their meanings.
maxReportBytes measures complete compact JSON in UTF-8. Diagnostic reports retain the existing default cap and accept limits of at least 512 bytes. Public limits are opt-in and at least 2,048 bytes; an over-budget public report drops as_json whole, then shortens message without splitting Unicode pairs. null disables the total cap; independent component caps still apply.
Caller option bags remain mutable, and later changes affect later reports. Unknown policy keys and obsolete option spellings are rejected. Public CORJ options are limited to inspection, maxDepth, maxChildren, childrenSources, fingerprintParts, and onReportingError; diagnostic CORJ options exclude redact, maxReportSize, and reportSizeUnit.
Diagnostic reports use corj/v0.15, with the new schemas/diagnostic-report-v6.json. Historical schemas remain available. Public reports stay v4, the decoder still accepts v3/v4, and realm-v1 interoperability is preserved.
Validation: 339 tests with 100% coverage; types, build, packed consumers on Node ESM, Bun and Chromium; 44 documentation snippets; independent Sol medium review. GitHub CI covers Node 18/20/24, Bun, and browser.
Published from the exact verified tarball; this manual release does not claim GitHub Actions provenance.