Skip to content

Changelog — page 26

New features, improvements, and fixes in the Fluxzero SDK.

GitHub

1.135.0 (2026-03-29)

No commits were found for this release.

GitHub

1.134.1 (2026-03-29)

Bug Fixes
  • proxy: wait for websocket request ack on close (GitHub)

    Use the runtime append acknowledgement for websocket proxy requests and wait for it during websocket close handling.

    This makes proxy shutdown more robust by ensuring the WS_CLOSE request is accepted by the runtime before the websocket session fully tears down.
    It also gives slightly better observability for websocket proxy traffic, without waiting for the actual request handling result.

GitHub

1.134.0 (2026-03-29)

Features
  • support suppression of pending consumer warnings in test fixtures (GitHub)

    Add `suppressPendingConsumerWarning` to `TestFixture` for tests involving paused or stalled consumers. Update relevant tests to disable warnings when consumers remain pending intentionally.

Changes
  • Revert "fix(test): isolate shared fixture interceptor state" (GitHub)

    This reverts commit e774b24a0dd749625b0b0218abdbc7599919fbff.

GitHub

1.133.0 (2026-03-29)

Features
  • runtime-websocket: negotiate session capabilities (GitHub)

    Send websocket client capabilities and session metadata during the handshake and let the runtime respond with the negotiated settings.

    Use negotiated session ids consistently across websocket logging, metrics, events and tracker state, while keeping legacy runtimes compatible through the existing compression query parameter fallback.

    Also reject custom AbstractWebsocketClient subclasses annotated with @​ClientEndpoint so unsupported extension patterns fail fast with a clear error message.

Bug Fixes
  • isolate shared fixture interceptor state (GitHub)
  • ignore unreachable consumers in fixture waits (GitHub)
GitHub

1.132.0 (2026-03-28)

No commits were found for this release.

GitHub

1.131.1 (2026-03-28)

Bug Fixes
  • repository: skip stale no-op aggregate commits (GitHub)

    A handler can roll back to the same aggregate instance and end up with no unpublished events. Committing that state should not touch the aggregate cache, because there is nothing durable to store and it can interfere with later playback or reload behavior.

    Return early when after == before and there are no unpublished events. If a no-event commit races with a newer cached head, evict that cache entry instead of keeping a stale in-memory state around.

    This complements the earlier fix that evicts inconsistent same-client aggregate histories during event-index backfill. Together they protect playback from both out-of-order cached histories and stale no-op commits.

    Add regressions for preserving backfilled indices, clearing stale no-event commits after backfill, and clearing stale no-event commits against a different cached head.

GitHub

1.131.0 (2026-03-28)

Features
  • tracking: support conditional exclusivity around index bounds (GitHub)

    This adds exclusiveBeforeMinIndex and exclusiveAfterMaxIndex to consumer configuration so shared handlers can move between consumers during index-based splits and merges.

    Conditionally exclusive consumers no longer fully claim handlers during assignment. Instead, DefaultTracking applies a central handler decorator that decides per message index which consumer is allowed to invoke the shared handler. This makes it possible to hand over execution at minIndex or after maxIndexExclusive without duplicating handler invocation inside the overlap window.

    The feature is covered with split and merge tests, and the new configuration is documented in the consumer javadocs with guidance on when to use it.

GitHub

1.130.0 (2026-03-28)

Features
  • tracking: revive max-index trackers after reset (GitHub)

    Trackers that reached maxIndexExclusive previously disconnected permanently, which meant a resetPosition required restarting the client application before reads would resume.

    This change keeps those trackers alive in a suspended state after disconnecting them, polling the stored consumer position every 10 seconds. When the stored lowest index changes and drops below maxIndexExclusive, the tracker resumes reading automatically without an application restart.

    The tracking tests were updated to cover suspend and revive behavior, and the max-index consumer configuration test now uses a shorter consumer timeout to keep the suite fast.

Bug Fixes
  • tracking: stop expired trackers before first read (GitHub)

    Trackers with a maxIndexExclusive in the past could still perform an initial read after redeploy, even when their committed position had already reached that max index. This caused unnecessary reads and noisy lag/behind metrics for effectively inactive consumers.

    This change checks the stored position via GetPosition before the first batch fetch when the configured max index is already in the past. If the consumer has already reached maxIndexExclusive, the tracker disconnects immediately without issuing a read. Regular tracker startup behavior remains unchanged otherwise.

GitHub

1.129.0 (2026-03-27)

Tests
  • modeling: increase timeouts and improve assertions in AggregatePlaybackTest (GitHub)
GitHub

1.128.1 (2026-03-27)

Bug Fixes
  • proxy: wait for close handler in closeProxy test (GitHub)

    Synchronize the flaky websocket shutdown test on the server-side close handler as well as the open handler.
    This avoids asserting published events before the HandleSocketClose callback has finished emitting them.

GitHub

1.128.0 (2026-03-27)

No commits were found for this release.

GitHub

1.127.1 (2026-03-27)

Bug Fixes
  • entity: evict inconsistent aggregate histories (GitHub)

    Prevent cached aggregate histories from staying in an order that no longer matches global event index order when same-client event indices are filled in later.

    This keeps handler playback aligned with the handled event, so consumers do not observe a later no-op state instead of the intended historical version.

    Also keep local baseline versions without event metadata valid, avoiding unnecessary cache eviction and reload failures in aggregate entity flows.

GitHub

1.127.0 (2026-03-27)

Tests
  • javadoc: fix javadoc generation (GitHub)
GitHub

1.126.0 (2026-03-27)

Features
  • search: store document metadata as entries (GitHub)

    Move indexed document metadata from facets to internal document entries so high-cardinality metadata values no longer pollute facet statistics.

    Expose metadata lazily on Document, SerializedDocument, and SearchHit while keeping SerializedDocument metadata out of the wire format. Preserve metadata matching and add regressions for dotted, slashed, and numeric metadata keys.

GitHub

1.125.0 (2026-03-27)

Tests
  • proxy: stabilize closeProxy websocket shutdown test (GitHub)

    Replace fixed sleeps with an explicit websocket-open latch before closing the proxy request handler.
    Add a bounded timeout when waiting for websocket results so regressions fail fast instead of hanging.

GitHub

1.124.0 (2026-03-27)

Features
  • socket-endpoint: support association-based endpoint routing (GitHub)

    Add shared handler association resolution for stateful and socket endpoint handlers.
    Enable @​Association matching for non-socket handlers on @​SocketEndpoint instances while preserving existing behavior when no associations are present.
    Also update tests, javadocs, and agent manuals to document the new routing model.

GitHub

1.123.0 (2026-03-27)

Features
  • stateful: support parameter-based associations (GitHub)

    Allow @​Association on handler parameters and resolve association values from the injected parameter value instead of only the current payload. This also enables stateful matching for resolved parameters such as @​Trigger payloads.

    Add positive and negative stateful regression tests, document parameter-level association in the Javadocs, and update the agent manuals with short valid examples.

GitHub

1.122.0 (2026-03-27)

No commits were found for this release.

GitHub

1.121.0 (2026-03-27)

Features
  • search: add explicit null ordering support for sorting (GitHub)

    Extend sorting methods in the `Search` interface to support explicit null ordering.

    Update the `Document` comparator to handle these new sorting options and extend test coverage for null ordering scenarios.

GitHub

1.120.0 (2026-03-26)

Features
  • casting: support repeatable upcasts and downcasts (GitHub)

    Register repeated @​Upcast and @​Downcast annotations through CastInspector so a single method can participate in multiple revisions.

    Also make the repeatable container annotations public and add chain plus Spring configuration tests to cover discovery and sequential application.


© 2026 Fluxzero