Skip to content

Changelog

2.30.0 (2026-03-25)

Features

  • add market analytics backend (1f46941)

2.29.0 (2026-03-23)

Features

  • add service level monitoring with open telemetry (b8ee513)

Bug Fixes

  • engine: change price precision to 3 decimal digits (76854d8)
  • openid flow returns state not found (5d25aac)

2.28.0 (2026-02-26)

Features

  • add marketplace replication setup (7bac60e)

2.27.0 (2026-2-12)

Features

  • engine: set minimum expiry time before delivery start from 15 min to 1 min (8aa1e94)

2.26.0 (2026-1-27)

Features

  • mon: add container monitoring service to market (3f56a38)

Bug Fixes

  • API: delivery endpoint accepts wildcard .* for location ID (eed7348)
  • market data: limit orderbook size for websocket connection to reduce latency and network traffic, max price levels 1 , max orders per level 5 (0679b79)
  • order manager: partial filled orders keep partial filled status when child orders expire (af84be9)

2.25.2 (2025-11-5)

Bug Fixes

  • DNS resolution lua Oauth flow (86605fe)
  • infrastructure: fix build files (191055c)
  • verifier: validation error for power measurements , no data points found in delivery window, improve user error message (f21754a)

2.25.1 (2025-10-23)

Bug Fixes

  • verifier: add 5% tolerance to deviation of baseline and metering resolution (0b543cf)

2.25.0 (2025-10-22)

Features

  • verification: add tolerance to baseline and metering data point processing during flexibility calculation (480fee3)

2.24.0 (2025-9-10)

Features

  • order manager: add basic settlement result object (7a38aab)
  • order manager: add initial summary object to order (d332bef)

Bug Fixes

  • request time out if auth server VP not available (29117c2)

2.23.0 (2025-9-5)

Features

  • add service level monitoring with open telemetry (9ca74fe)
  • add service level monitoring with open telemetry, handle VP header to public API backend services, add forward authentication to nginx to authenticate verifiable credentials (3410e96)
  • add smart contract extension, add market oracle and market oracle connector service (dd303f5)
  • did: add forward authentication to nginx to authenticate verifiable credentials (44543c6)
  • handle VP header to public API backend services (3a3b994)
  • order manager: add random process to select seller baseline activation (9e1c53f)
  • verifier: add flexibility verification service (668dbce)

Bug Fixes

  • api: contracts API returns newest contracts first (f944c6a)
  • api: allow 3 decimal digits for price and 2 decimal digits for power value during order creation (283534f)
  • change verifier result to percentage instead of ratio (7ee4424)
  • engine: send empty orderbook to market API during after start up (de78001)
  • ingress: certs were not correctly renewed for did.glocallfexmarket subdomain (1bce38b)
  • market data: country orderbook were not correctly updated (956e498)
  • market data: expired order and deliveries endpoint fix issues with query parameters. (d0ff0a4)
  • market data: replace orderbook instead of deleting in database (d3d8b67)
  • order manager time format to RFC3339 milliseconds (2668489)
  • verifier: add Decimal package for float calculations (58fbcd3)
  • verifier: improve error handling, support cumulative and incremental data points readings (6588988)

Reverts

[2.22.0] (2025-07-24)

Features

  • add smart contract extension, add market oracle and market oracle connector service (dd303f5)

Bug Fixes

  • api: allow 3 decimal digits for price and 2 decimal digits for power value during order creation (283534f)
  • verifier: change result to percentage instead of ratio (7ee4424)
  • engine: send empty orderbook to market API during after start up (de78001)
  • market data: country orderbook were not correctly updated (956e498)
  • market data: expired order and deliveries endpoint fix issues with query parameters. (d0ff0a4)
  • market data: replace orderbook instead of deleting in database (d3d8b67)
  • order manager: time format to RFC3339 milliseconds (2668489)
  • verifier: add Decimal package for float calculations (58fbcd3)
  • verifier: improve error handling, support cumulative and incremental data points readings (6588988)

2.21.1 (2025-5-9)

Bug Fixes

  • api: contracts API returns newest contracts first (f944c6a)

2.21.0 (2025-5-7)

Features

  • order manager: add random process to select seller baseline activation (9e1c53f)
  • verifier: add flexibility verification service (668dbce)

2.20.0 (2025-4-15)

Features

  • dashboard: add new dashboard interface, modify order view (3243b47)

2.19.2 (2025-4-14)

Bug Fixes

  • nginx: charts url fixing typo (ef221f0)
  • order manager: buyer contract id was overriden with seller contract id after verification result was processed (3c6763d)

2.19.1 (2025-4-12)

Bug Fixes

  • market data: orderbook API endptpoint depth parameter 0 returns all price levels (379bf03)

2.19.0 (2025-4-12)

Features

  • order manager: add websocket message for order and contract updates (f0371e7)

Bug Fixes

  • api: add power units W, kW, MW to metering object in verification endpoint. (fb9c10c)
  • api: allow maximum 2 decimals for power and price values during order creation (a8846a7)
  • api: fix power in expired order not a signed value (d0318ce)
  • api: fix trailing slash /orders and /contracts api (1d0a098)
  • docs: fix python examples missing price and wrong side for buy order example (3a888d8)
  • ingress: env variables missing in config (6c7057a)
  • order manager: add European country codes to order validator (b753a20)
  • order manager: reject buy orders with baseline data, add correct response message to user (7d5e4ba)
  • order manager: update verification status for buy orders (744dd53)

2.18.0 (2025-3-29)

Features

  • engine: add partial fill options in time or power domain fro buy orders (301c0da)
  • engine: add partial order creation split strategy, available options power domain first, time domain first, default: power domain first (0b8451d)

Bug Fixes

  • config: add missing ports for dashboard API and charts DB (dcd4689)
  • engine: match buy orders with empty country code/location id with any sell order country code/location id. Resulting trade gets the location object from sell order (bcc94ca)

2.17.0 (2025-3-21)

Features

  • add performance monitoring to market engine (5a66ee0)
  • user manager: add metrics endpoint (a3b4da8)

Bug Fixes

  • market data: add 7 days retention policy for trades and expired order, downgrade DB version (358fda0)

2.16.0 (2025-3-14)

Features

  • add registry sub domain to ingress configuration (d6b624c)
  • add vagrant setup to repository (73ccc1d)
  • merge dashboard into development branch (342df63)
  • user manager: status query parameter for contracts and orders accepts multiple status (a5bfa36)

Bug Fixes

  • dashboard: add timeout to get requests (1523613)
  • order manager: endpoint /orders did not return any orders (38a324b)
  • set mongodb version to 4.2 in Dockerfile (9dd86d7)
  • user manager: contracts endpoint returned no contracts, updated filter to query contracts (1273774)

2.15.0 (2025-2-13)

Features

  • add automatic cert renewal with caddy server (de5f6bf)
  • api: add baseline submit endpoint (ab92321)
  • market api: add deliveries endpoint and trades endpoint (0b54e8b)
  • market api: add side and direction query paramater (965abc9)
  • Rest API: change response formats this will break existing client integration (0627f83)

Bug Fixes

  • add cors configuration for api endpoints (23071ef)
  • dashboard: remove None type from country list (d62f428)
  • market data: fix decode event object , missing key (2290947)
  • order manager: fix last update at time (ee22dc9)
  • order manager: fix last update at time (d50e74a)
  • verifier, settlement: add data object to processing event (a11ae27)

2.14.1 (2024-10-15)

Bug Fixes

  • add cors configuration for api endpoints (23071ef)

2.14.0 (2024-10-14)

Features

  • add dashboard frontend (e98fc0a)
  • change quantity to power in trade API (688debb)
  • change volume to energy terminology (d0d0816)
  • market api: store only the latest order book in db, add limit query parameter to order book api, dashboard minor refactoring (802e6cb)

Bug Fixes

  • market api: add country code to ticker message (96ab2ab)
  • market api: rest api order book endpoint returned orders with false sorting (a9b50ae)

2.13.0 (2024-10-1)

Features

  • add grafana to nginx configuration (4aa62be)
  • add monitoring to ingress controller (3bbd40b)
  • market api add country specific coordinates to ticker and expired order (4a88b3d)

2.12.0 (2024-9-2)

Features

2.11.0 (2024-8-8)

Features

Bug Fixes

  • market api: add country code to ticker message (2b794e9)

2.10.1 (2024-6-28)

Bug Fixes

  • orderbook: remove duplicate price key in orderbook JSON (18c3c9f)

2.10.0 (2024-6-28)

Features

  • market data: add market data api, ticker, orderbook, expired order (07a51c4)

Bug Fixes

  • add market api port to nginx run command (ffc63ea)
  • market data: catch JSON decode error (a3cf450)

2.9.0 (2024-6-19)

Features

  • engine: add partial matching for buy orders (09471f1)

2.8.2 (2024-6-10)

Bug Fixes

  • change name size in orderbook to volume (db2f32b)

2.8.1 (2024-6-5)

Features

  • websocket API: add expired orders to ticker (9936775)

Bug Fixes

  • engine: publish orderbook when orders are cancelled (2e02860)
  • engine: publish trades to websocket api (b1935dc)
  • market data: add location to ticker, add creation timestamp (3e9cb03)
  • market data: handle stream lost exception (660b600)
  • order manager: publish order status updates to websocket api (c7d0e56)
  • websocket API: publish cancel order (e73fab9)
  • websocket API: send live order status updates (52fdd25)

2.8.0 (2024-5-31)

Features

  • engine: handle cancel order request and remove order from orderbook (f5f3815)
  • rest api: refactor rest api , add cancel order endpoint (a2e8780)

Bug Fixes

  • api: add received_at timestamp to verification endpoint (438b7c8)

2.7.1 (2024-5-3)

Bug Fixes

  • add catch exception ChannelClosedByBroker (9a11d34)
  • api: disable ticker updates in WebSocket trading endpoint (d15bf69)
  • close connection after error to message broker (7fef642)
  • market data: orderbook show correct delivery start and end (dca0364)
  • matching engine: average final price between ask and sell order (fd8ac6e)
  • matching engine: set default orderbook depth to 30 price levels (95fabed)
  • scripts: add start up delay for message broker init (abcc2c8)
  • scripts: disable unused services in run commands (79a2716)
  • set backoff time 30s to reconnect to message broker (71724b7)
  • trade-manager: key error during deserializing order object (787269e)

2.7.0 (2024-4-26)

Features

  • api: add Websocket endpoints /ticker and /orderbook for market data updates (57e0ac6)
  • market data: update order book format (1061697)
  • nginx: add new endpoints (3014e0c)

Bug Fixes

  • engine: add regex pattern for location id matching, country code optional during matching (5d418ff)

2.6.0 (2024-4-22)

Features

  • engine: add location matching based on country code and list of location ids (83ac61d)
  • trade manager: send trade updates to websocket API, update message format (bffa6d5)

Bug Fixes

  • api: event type in websocket message set by message producer (295d0e6)

2.5.1 (2024-4-15)

Bug Fixes

  • market data: ticker messages date time read error (0bba717)

2.5.0 (2024-3-28)

Features

  • engine: refactor matching engine (9da5928)

2.4.1 (2024-3-5)

Bug Fixes

  • keycloak favicon (8fd3e90)
  • telegraf add entrypoint (7fb2be3)
  • telegraf add nginx port to config (0a89ff4)

2.4.0 (2024-2-28)

Features

  • add test server, add rate limiting prod server, add ingress controller (dd37ac7)

2.3.0 (2024-2-27)

Features

  • add development server (39dd0ce)
  • add rest API endpoint get order by id (24da1c6)
  • order manager: add event store database for order creation events (04bf7f3)
  • order manager: write order create events to event store and route result to event bus (a6c21d4)

Bug Fixes

  • add changelog script copy to docs (cdef207)
  • api: queues declared with wrong features, disable routing infos in ws message (b5ed3c4)
  • disable unprotected health endpoint , add full api url to ws and rest backend (6440661)
  • frontend: change landing page (41a5a9a)
  • keycloak: decrease background image size (3180f1a)
  • nginx: accept endpoints without trailing slashes (e5f3f74)
  • nginx: increase buffer size, add session secret (b6d1a40)
  • ticker message, trade message format, fix exchange names (45f1e2c)
  • update keycloak theme (27bc647)

2.3.1 (2024-2-25)

Bug Fixes

  • ticker message, trade message format, fix exchange names (45f1e2c)

2.3.0 (2024-2-24)

Features

  • add development server (39dd0ce)
  • add rest API endpoint get order by id (24da1c6)
  • order manager: add event store database for order creation events (04bf7f3)
  • order manager: write order create events to event store and route result to event bus (a6c21d4)

2.2.3 (2024-2-15)

Bug Fixes

  • disable unprotected health endpoint , add full api url to ws and rest backend (6440661)

2.2.2 (2024-2-13)

Bug Fixes

  • frontend: change landing page (41a5a9a)
  • keycloak: decrease background image size (3180f1a)
  • nginx: accept endpoints without trailing slashes (e5f3f74)
  • nginx: increase buffer size, add session secret (b6d1a40)
  • update keycloak theme (27bc647)

2.2.1 (2024-2-8)

Bug Fixes

  • keycloak: padding login screen (7f5f496)
  • scripts move imports after env are loaded (462d393)

2.2.0 (2024-2-8)

Features

  • add glocalflex login theme (6ebbd8b)

Bug Fixes

  • config add api server ports (6bc14d3)
  • nginx: set redirect off (f91987d)

2.1.0 (2024-2-6)

Features

  • cicd: change docker python image to quay.io fedora python base image (73e34dc)
  • keycloak: add proxy config (f5a2b98)
  • keycloak: use http for internal communication, disable session cookie for frontend (6d9c0ac)
  • lb: add load balancer (454b849)

Bug Fixes

  • cicd: deploy stage for production env (8093ea1)
  • cicd: keycloak typo (61cde81)
  • frontend: fix broken link (22ae296)
  • keycloak: change user (084e27d)
  • keycloak: change user, certs permission error (4c38be1)
  • keycloak: login page not loaded correctly (6e629b2)
  • nginx: add resolver (3fcd57d)
  • nginx: change openid redirect url, add realm endpoint (24444e7)
  • nginx: set header for keycloak (5e7f561)

2.0.1 (2024-2-2)

Bug Fixes

  • cicd: pull keycloak from registry during release stage (e415b6b)
  • config: update production IPs (cca6072)
  • keycloak: add redirect url (39296a1)
  • keycloak: add redirect urls (f568402)
  • nginx: check env are set before start (d152004)
  • nginx: syntax error in entrypoint.sh (756c465)

2.0.0 (2024-2-2)

⚠ BREAKING CHANGES

  • core: This will break the original public interface with amqp. This breaks the influxDB integration in the backend as main database for all orders.
  • api: This will break the original public interface with amqp. This breaks the influxDB integration in the backend as main database for all orders.

Features

  • add rabbit username and password configuration for api and order manager (ac4a65d)
  • api_ws: add new excahnge names to configuration (ce110ec)
  • api: add changes to dev branch (38577e4)
  • api: add endpoint order V1 submit, convert to line protocol (d477001)
  • api: add health endpoint (690b73b)
  • api: add health endpoint (789279c)
  • api: add jwt validation function with keycloak (0ebe2b2)
  • api: add packages (7351a1d)
  • api: add rabbitmq backend for exchange api.request and event.create_order (2858300)
  • api: add websocket service (513cb75)
  • api: build and run first version of rest api and websocket server (ef5521a)
  • api: send order in json format to backend MQ (cb9c3d0)
  • api: test websocket and rest order post request (fec0893)
  • api: update location and metering field as struct (7e589cc)
  • api: update websocket api (9fd659b)
  • api: user can connect multiple times to websocket API (e67671c)
  • api: websocket add client.readMessage (2deb082)
  • api: websocket add ping messages to keep connection alive (2312106)
  • auth: add keycloak, postgres and decision point (oathkeeper) (643f008)
  • auth: add login theme keycloak (10dd518)
  • cicd: add services release stage to staging, v2.0.0 (eef8fe3)
  • cicd: update deploy.sh and ci pipeline (48e86ad)
  • ci: remove unused services, add new api, keycloak oathkeeper services (6a6a303)
  • config: add overrides yaml, improve parser (e103eec)
  • config: change to yaml config (8867c2b)
  • config: refactor configuration (b0cde8e)
  • config: rename gflex-core pod (42554ce)
  • core: add api public exchange and event bus exchange, add unit price calculation (ce61530)
  • core: change communication backend to core event exchange and api request exchange (bbb1346)
  • core: tradecloser, read order in json format to backend MQ, rename filled order field to match new API specs (15b06f8)
  • deploy: add command line interface (c70ae8f)
  • deploy: add help text (8b8eb4a)
  • gw: add openresty with openid session support as reverse proxy for keycloak authentication (2ce523b)
  • gw: configure keycloak endpoints (bc80a07)
  • keycloak: add client config (6eab15d)
  • keycloak: add initialization script and cconfiguration (a5f59ed)
  • keycloak: disable custom admin url (e7bb475)
  • keycloak: set hostname to public ip (7ee38ec)
  • keycloak: set IP address as admin url (5039f21)
  • keycloak: update entrypoint wait for start up (d2896b3)
  • mon: add grafana provisioning, prometheus and telegraf (8294496)
  • mon: add prometheus env configuration (b9a72ef)
  • mon: add rabbitmq monitoring with prometheus and grafana (307feb7)
  • mon: update nginx with performance data (5d5e6cb)
  • nginx: remove lua script, replaced with template file (4b9bfc7)
  • nginx: update api v1 routes (4e837fd)
  • nginx: add env to lua scripts (9d225fa)
  • nginx: add ip range to nginx_status (6349d78)
  • nginx: add log format (163e5f5)
  • nginx: add oauth subrequests to api endpoints (f33b9ca)
  • nginx: add route to api reference (481d9a4)
  • nginx: add websocket dev endpoints (9597977)
  • nginx: add websocket reverse proxy (83a0827)
  • nginx: add ws configuration (b546f9a)
  • nginx: disable rabbitmq stream config, disable unused endpoints in nginx.conf, access log read by telegraf and prometheus (60e5cf4)
  • nginx: update ws paths (0f57463)
  • om: add order manager to build (c7170bb)
  • om: add order manager service (7f27de3)
  • order_manager: add event handler new order (71fbad0)
  • order_manager: add communication backend to core event exchange and api request exchange (22f3c68)
  • pdp: add Dockerfile and change oathkeeper configuration (a7dadcd)
  • prefix services with gx (5098be3)
  • rabbitmq: add new exchange names to init script (4480ae9)
  • rabbitmq: disable http auth and cache plugin (637fa23)
  • rabbitmq: init on container boot (d245d46)
  • rabbitmq: remove all user during init (b15a30d)
  • rabbitmq: update init script (c801bf4)
  • scripts: add docs build and run commands to build.sh and run.sh (bbe0f3c)
  • scripts: add monitoring pod (3198334)
  • scripts: add monitoring services to run.sh and build.sh (b1b18be)
  • scripts: add policy decision point to run and build scripts (54510cd)
  • scripts: combine dev run and run scripts, refactor build script (d3a9959)
  • validator_py: set publish message to persistent (c084d23)

Bug Fixes

  • --tls-verify=false in docs.sh (18a39cc)
  • api_ws: remove lock from read and write goroutine (f53994d)
  • api: add "i" character to inlfux line protocol for expiration time to avoid float data type in influxdb (4abde86)
  • api: catch connection error when rabbit MQ is down (ddf017c)
  • api: close rabbitmq connection after request is done (f700f94)
  • api: rest server does not quit when rabbitmq backend is down (fcf840e)
  • auth: keycloak wrong hostname and path url, nginx pdp hardcoded ip address (014b496)
  • ci: add full path to docker image (411a63f)
  • core: fix configuration for event exchange connection for ticker and tradeconfirmer (4501d65)
  • docs: update api rest reference link (b88893a)
  • keycloak: add certs and export config files (52cce80)
  • nginx: update (bdbf910)
  • nginx: update nginx config to serve docs and api reference (c5cbb7d)
  • oathkeeper: use internal server ip in config (4bbec25)
  • om: ctr.log consumed all storage because of unroutable event (4921d1f)
  • postgres: Dockerfile set digest and correct image name (0fb169d)
  • rabbitmq: add debug queue (2ea32c3)
  • rabbitmq: init file path (b33a205)
  • scripts: change image name from telegraf-mon to telegraf (a8b0add)
  • tradecloser: add expired order to orderbook, store trailing orders in orderbook (11acf06)
  • tradecloser: convert numpy int64 to int for end_time (3594c7f)
  • tradecloser: remove wattage from closed deal message (e175c3b)
  • tradeconfirmer: format confirm message to json (400244e)

1.2.0 (2023-08-23)

Features

  • latencyreader: add queueing time calculation (220bfda)
  • tradecloser: publish closed deal to rabbitmq exchange (de965f9)
  • tradecloser: refactor matching engine (3feae2e)
  • trading_engine: add mq client to validator and closer (5ee638d)
  • trading_engine: create a common rabbit mq client class (1fbda18)
  • trading_engine: replace influx udp hooks with rabbit mq messaging for closed deals (7840717)
  • trading-engine: upgrade to Python3.11.4, refactoring latencyreader (61aeb0e)
  • v1.1.15 (9d328ef)

Bug Fixes

  • nginx status in config file, tradecloser receive malformed order entries time in None (cfda647)
  • remove semantic-release/git from config (f39453b)
  • test semantic release (336e683)
  • trade_engine: add influx connector (c37e180)

Performance Improvements

  • add client tests (54e2de6)
  • rabbitmq: add plugins prometheus and stream (3982839)
  • tradecloser: add signal handler SIGINT, SIGTERM (8dcb048)