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
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@

## Unreleased

## 0.5.0

- Decomposed oversized lifecycle, gateway-runtime, private-I/O, and audit
modules behind their existing compatibility facades, enforced by a
1,200-line production-module size ratchet.
- Added a built-in Kimi K3 Hermes template with an optional compatible endpoint
override and an explicit, private `zeus audit init` Kimi K3 configuration.
- Replaced the vulnerable cryptography and Pillow pins in the hash-locked Hermes
Expand Down
7 changes: 3 additions & 4 deletions docs/ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,9 @@

## Current status

The latest stable release is Zeus v0.4.0. The `main` branch is the
v0.5.0.dev0 development line. Zeus remains alpha software with a local-first,
host-local scope. It owns profiles, processes, lifecycle safety, and
reconciliation evidence on one host.
The latest stable release is Zeus v0.5.0. It remains alpha software with a
local-first, host-local scope. It owns profiles, processes, lifecycle safety,
and reconciliation evidence on one host.

## Shipped

Expand Down
2 changes: 1 addition & 1 deletion docs/openapi.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"openapi": "3.1.0",
"info": {
"title": "Zeus Local API",
"version": "0.5.0.dev0",
"version": "0.5.0",
"description": "Local JSON API for managing Hermes bot profiles and gateway lifecycle."
},
"servers": [
Expand Down
10 changes: 6 additions & 4 deletions tests/test_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -2665,8 +2665,9 @@ def test_valid_key_bypasses_exhausted_global_invalid_auth_bucket(self) -> None:

rows = wait_for_access_rows(state_dir, 4)

limited_row = rows[2]
self.assertEqual(response_headers["x-request-id"], limited_row["request_id"])
limited_row = next(
row for row in rows if row["request_id"] == response_headers["x-request-id"]
)
self.assertEqual(429, limited_row["status"])
self.assertEqual("auth_rate_limited", limited_row["error_code"])
self.assertEqual("/bots", limited_row["route"])
Expand Down Expand Up @@ -2855,8 +2856,9 @@ def test_rate_limited_mutation_creates_no_idempotency_claim_and_is_correlated(se
self.assertEqual(0, claim_count)
rows = wait_for_access_rows(state_dir, 2)

limited_row = rows[1]
self.assertEqual(response_headers["x-request-id"], limited_row["request_id"])
limited_row = next(
row for row in rows if row["request_id"] == response_headers["x-request-id"]
)
self.assertEqual(429, limited_row["status"])
self.assertEqual("mutation_rate_limited", limited_row["error_code"])
self.assertEqual("/bots/{bot_id}/start", limited_row["route"])
Expand Down
2 changes: 1 addition & 1 deletion zeus/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

__all__ = ["__version__"]

__version__ = "0.5.0.dev0"
__version__ = "0.5.0"
Comment thread
brainx marked this conversation as resolved.