AxonFlow Java SDK v8.0.0
Installation
Maven:
<dependency>
<groupId>com.getaxonflow</groupId>
<artifactId>axonflow-sdk</artifactId>
<version>8.0.0</version>
</dependency>Gradle:
implementation 'com.getaxonflow:axonflow-sdk:8.0.0'Major release. The headline feature is the new decision-history client
API: listDecisions for paging through recorded decisions, plus a
runnable example showing the full record → list → explain audit flow.
Bundled into a major because the v8 line also tightens the telemetry
contract — see Removed at the bottom of this entry for that.
Added
listDecisions(ListDecisionsOptions opts)client method. Pages
over recorded decision history from the orchestrator, mirroringGET /api/v1/decisions. Companion to the v7.4.0getDecisionExplain
method — callers can now both list and drill in. See
examples/list-decisions/.examples/explain-decision/end-to-end runnable example covering
the full decision audit flow: record → list → explain.
Migration guide (v7 → v8)
AxonFlowConfig.Builder.telemetry(Boolean)removed. Code that
called.telemetry(true)or.telemetry(false)on the builder will
fail to compile. Migration: remove the call from your builder chain.
If you were using it to disable telemetry, set
AXONFLOW_TELEMETRY=offin the environment instead — that's the
sole opt-out lever as of v8. If you were using it to force-enable,
the default is now ON for every mode so the override is no longer
needed.AxonFlowConfig.getTelemetry()removed. Code reading the
override field will fail to compile. Same migration: drop the call
site;AXONFLOW_TELEMETRY=offis the only telemetry knob.TelemetryReporter.isEnabledandTelemetryReporter.sendPing
signatures simplified. Both methods previously took the
(mode, configOverride, hasCredentials, ...)parameter shape from
the v7 mode-and-override gate. v8 collapses to a single env-var
signal:isEnabled(String axonflowTelemetry)and
sendPing(String mode, String sdkEndpoint, boolean debug, ...).
Application code does not call these directly; only test harnesses
that exercise the testability surface need to update.
Telemetry
AXONFLOW_TELEMETRY=offis the sole opt-out.AxonFlowConfig.Builder.telemetry(Boolean)+AxonFlowConfig.getTelemetry()removed; sandbox-mode clients (constructed viaMode.SANDBOX) now fire on the same 7-day heartbeat schedule as production (was suppressed pre-v8), taggedstream="sandbox"so dev pings stay distinguishable.- Heartbeat payload v1 schema additions on the wire: new
telemetry_typeanddeployment_modefields, newDeploymentModeconstants class on the SDK side. Existing receivers continue working unchanged — strictly additive.EndpointType.COMMUNITY_SAASis removed (now lives ondeployment_modeinstead).