Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .mike.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ version_selector: true
title_switch: true
versions_file: docs/versions/versions.json
versions:
- 3.2.4
- 3.2.3
- 3.2.2
- 3.2.1
Expand Down Expand Up @@ -33,4 +34,4 @@ versions:
- 0.0.1
- latest
aliases:
latest: 3.2.3
latest: 3.2.4
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,16 @@ Release Notes

___

v3.2.4 (2026-10-15)
-------------------

Redis persistence off the request path
--------------------------------------

Persisting events and metrics to Redis no longer happens under the buffer lock. The in-memory append stays on the request path and the Redis write runs as a tracked background task that `stop_auto_flush` drains, so a slow or failing Redis no longer delays requests. A Redis failure can no longer re-enter persistence, which removes a deadlock that blocked every later `send_event` once Redis started failing. In-flight writes are capped at `buffer_size`: past the cap an item stays in memory only, counts as a persist failure, and one warning is logged per backlog episode. Items flushed or evicted before their write starts are never written, and a failed write no longer leaves tracking state behind. Unpadded base64url project keys are accepted, and the startup encryption error now includes the underlying cause. Lockstep release with the agent family at 3.2.4.

___

v3.2.3 (2026-10-12)
-------------------

Expand Down
20 changes: 15 additions & 5 deletions docs/release-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,16 @@ The parity release: agent feature surface locked across all four language ports

___

v3.2.4 (2026-10-15)
-------------------

Redis persistence off the request path
--------------------------------------

Persisting events and metrics to Redis no longer happens under the buffer lock. The in-memory append stays on the request path and the Redis write runs as a tracked background task that `stop_auto_flush` drains, so a slow or failing Redis no longer delays requests. A Redis failure can no longer re-enter persistence, which removes a deadlock that blocked every later `send_event` once Redis started failing. In-flight writes are capped at `buffer_size`: past the cap an item stays in memory only, counts as a persist failure, and one warning is logged per backlog episode. Items flushed or evicted before their write starts are never written, and a failed write no longer leaves tracking state behind. Unpadded base64url project keys are accepted, and the startup encryption error now includes the underlying cause. Lockstep release with the agent family at 3.2.4.

___

v3.2.3 (2026-10-12)
-------------------

Expand All @@ -44,10 +54,10 @@ ___
v3.2.1 (2026-10-07)
-------------------

TITLE (v3.2.1)
------------
The lockstep release: version alignment with the engines at 4.3.1 (v3.2.1)
--------------------------------------------------------------------------

CONTENT
No agent behavior changes. Shipped so the agents family moves in lockstep with the engines at 4.3.1 while guard-agent-ts carries the js/polynomial-redos fix (linear `stripTrailingSlashes` replacing anchored quantifier regexes in `config.ts`/`transport.ts`, CodeQL HIGH).

___

Expand All @@ -72,8 +82,8 @@ ___
v3.0.2 (2026-09-23)
-------------------

TITLE (v3.0.2)
------------
Payload signatures now cover the uncompressed body (v3.0.2)
-----------------------------------------------------------

### Fixed

Expand Down
3 changes: 2 additions & 1 deletion docs/versions/versions.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
{
"3.2.4": "3.2.4",
"3.2.3": "3.2.3",
"3.2.2": "3.2.2",
"3.2.1": "3.2.1",
Expand Down Expand Up @@ -28,5 +29,5 @@
"0.1.1": "0.1.1",
"0.1.0": "0.1.0",
"0.0.1": "0.0.1",
"latest": "3.2.3"
"latest": "3.2.4"
}
2 changes: 1 addition & 1 deletion guard_agent/_version.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
"""Single source of truth for the package version, importable without side-effects."""

__version__ = "3.2.3"
__version__ = "3.2.4"
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "guard-agent"
version = "3.2.3"
version = "3.2.4"
description = "Framework-agnostic telemetry and monitoring agent for the Guard security ecosystem (fastapi-guard, flaskapi-guard, djangoapi-guard, tornadoapi-guard)"
authors = [
{name = "Renzo Franceschini", email = "rennf93@guard-core.com"}
Expand Down
Loading