Skip to content

Changelog

Recent releases and what's new in Centrali.

v3.0.6

Released: February 2026

  • Upsert Records — Create or update records atomically with a single API call. Match on any combination of fields to determine whether to insert or update.
  • SDK Support — New centrali.upsertRecord() method with full TypeScript support
  • NATS Event Improvements — Events are now deferred to post-commit, ensuring consumers only see committed data
  • Compute api.queryRecords response aligned with REST API / SDK — The response now includes data (array of records) and meta (pagination info), matching the shape returned by the REST API and SDK. The legacy items, total, page, and pageSize top-level fields are still returned for backward compatibility but are now deprecated. Accessing them will log a deprecation warning in your function logs. They will be removed in the next major version.
// Upsert: create if not found, update if exists
const result = await centrali.upsertRecord('Product', {
  match: { sku: 'WIDGET-001' },
  data: {
    sku: 'WIDGET-001',
    name: 'Updated Widget',
    price: 29.99
  }
});
// result.action === 'created' or 'updated'

// queryRecords — new shape (recommended)
const orders = await api.queryRecords('orders');
orders.data;          // Record[]
orders.meta.total;    // number
orders.meta.page;     // number
orders.meta.pageSize; // number

// queryRecords — old shape (deprecated, logs warnings)
orders.items;    // use orders.data instead
orders.total;    // use orders.meta.total instead

v3.0.5 — Transaction Safety

Released: January 2026

  • Transaction Fixes — Side effects (NATS events, webhooks) now execute only after successful transaction commit
  • Array Payload Rejection — API now returns clear errors for invalid array payloads
  • Business Key Preservation — Match keys are stripped from update data to prevent accidental overwrites

v3.0.4 — Query Validation Improvements

Released: January 2026

  • Schemaless Query Support — Fixed query validation that incorrectly blocked filters on schemaless and auto-evolving structures
  • Helpful Error Messages — Query validation errors now include hints about available fields and valid operators

v3.0.3 — Numeric Sort Fix

Released: January 2026

  • Numeric Sort Ordering — Fixed numeric fields being sorted lexicographically instead of numerically in JSONB columns
  • CORS Wildcard Patterns — Added support for wildcard patterns with protocol prefixes in CORS configuration

v3.0.2 — Partial Update Validation

Released: December 2025

  • Partial Updates — Record updates now correctly validate only the fields being changed, not the entire record
  • Schema Discovery Config — Structures are initialized with proper schema discovery configuration on creation

v3.0.1 — Data Service Fixes

Released: December 2025

  • Lock Status Checks — Fixed edge case where empty update payloads could bypass lock status checks
  • Persisted Field Computation — Existing data is now correctly merged before computing persisted/computed fields

For the full commit history, see our GitHub repository.