Skip to main content

Enterprise changelog

All notable changes to the licensed fluxrig gears. The format follows Keep a Changelog, and versions follow Semantic Versioning.

Core engine changes are in the main changelog.

VersionDateStatusCore versionSummary
v0.1.22026-10-20Deliveredfluxrig v0.13.0Built for fluxrig v0.13.0 and its reference spec 3.0.0
v0.1.12026-09-28Deliveredfluxrig v0.12.0Reproducible seeded output, and fixes for a data race and a panic
v0.1.02026-09-24Deliveredfluxrig v0.11.0First licensed gears: deterministic traffic generation and authorizer simulation

[v0.1.2] - 2026-10-20​

Changed​

  • Built and tested against fluxrig v0.13.0, and pinned to it. Read the fluxrig v0.13.0 notes before you upgrade: the registry moved to the bus, and the Mixer refuses to start without api.auth_token.
  • The examples and the test scenarios name the engine's reference spec as iso8583-v87-ascii:v3.0.0. That spec now packs a standard ISO 8583 bitmap under its new version. A scenario that names iso8583-v87-ascii:v2.2.0 keeps the old layout, so change the reference and upload the new spec to the Mixer.

[v0.1.1] - 2026-09-28​

Added​

  • sim_source and sim_responder: deterministic_clock (default false). When it is set, $NOW comes from the seed instead of the wall clock, so seeded output is the same on every run.
  • sim_responder: seed (default 0). It seeds the responder the way sim_source.seed seeds the generator, and sim.reset reseeds it.

Fixed​

  • sim_source and sim_responder: output under the same seed varied from run to run, because some choices followed the order of a map. They follow a sorted order now.
  • sim_source: a data race between Start and the generation loop.
  • sim_source: a sim.rate of nan, inf or an extreme value panicked the gear. Every place that reads a rate checks it now, and the interval it gives is held to a safe range.
  • sim_source: the control loop did not stop on its own signal, and sim.start or sim.reset could run two generation loops at once. The old loop now stops before the new one starts.
  • sim_source: a mistyped field key or an unknown macro was accepted silently. It is reported now, as sim_responder already did.

[v0.1.0] - 2026-09-24​

Added​

  • sim_source: deterministic ISO8583 traffic generator. A logic gear: it resolves each message's fields from the spec and emits a fields-only fluxMsg, never packed ISO8583 wire bytes. Spec-driven synthesis, $PAN/$STAN/$RRN/$SEQ/$RAND/$UUID/$NOW/$ENUM/$INVALID/$AUTH macros, constant/ramp rate shapes (poisson and spike fail fast as roadmap), on_load/on_control triggers (on_schedule fails fast as roadmap), runtime sim.start/sim.stop/sim.rate/sim.reset control commands. A timezone setting (local, GMT or a zone name) chooses the clock that $NOW and $RRN render in both gears. The gear writes a date or a time in the layout the spec declares for its field, and it generates an expiry date (DE 14, YYMM) expiry_months ahead (24 by default) so the card it belongs to has not expired. expired_percent makes a share of them already expired, drawn from the seed, for scenarios that exercise the decline for an expired card.
  • sim_responder: authorizer simulator as a pure logic gear. Spec-derived response MTIs via pairs_with, conditional decline rules with per-rule delay override, echo semantics from response_value, conn.id propagation for per-connection reply routing.

Terms​

  • Licensed under the Business Source License 1.1, no Additional Use Grant. Reading the source and any non-production use is free. Production use, of any kind and including your own traffic, needs a commercial licence. Each release converts to Apache License 2.0 four years after it ships. See licensing.
  • A signed licence file, verified once when the Mixer starts. No file, or one that does not verify or does not cover the running build, logs a warning naming the affected gears as running in evaluation mode. It never blocks startup. See the licence file.