chore: 0.4.1 #11

Merged
jlxq0 merged 1 commit from chore/0.4.1 into main 2026-08-28 03:48:36 +00:00
Owner

Ships #10.

What a client sees change: both rate limits carry data.class, so one predicate tells a caller "unreadable" from "empty", and error_class counts a Hevy 429 as rate_limited in the same event where the audit outcome already did.

The series this makes possible begins here and has nothing behind it. Every Hevy 429 until now was recorded as error_class="other", so "how often is a Hevy read rate-limited" becomes answerable from this release forward and cannot be compared to before. The first number anyone quotes is a rate from a start date, not a baseline.

Release check

Not the ArgoCD tile and not /health. In order: confirm a docker task exists on the tag ref and succeeded; read the running container's digest by container name app, per pod, against what the tag build pushed; then reproduce -32029 against production with concurrent calls and confirm the deployed envelope carries data.class, rather than reading the tree and calling it done.

Ships #10. What a client sees change: both rate limits carry `data.class`, so one predicate tells a caller "unreadable" from "empty", and `error_class` counts a Hevy 429 as `rate_limited` in the same event where the audit outcome already did. **The series this makes possible begins here and has nothing behind it.** Every Hevy 429 until now was recorded as `error_class="other"`, so "how often is a Hevy read rate-limited" becomes answerable from this release forward and cannot be compared to before. The first number anyone quotes is a rate from a start date, not a baseline. ## Release check Not the ArgoCD tile and not `/health`. In order: confirm a `docker` task **exists** on the tag ref and succeeded; read the running container's digest by container name `app`, per pod, against what the tag build pushed; then reproduce `-32029` against production with concurrent calls and confirm the deployed envelope carries `data.class`, rather than reading the tree and calling it done.
chore: 0.4.1
All checks were successful
CI / cargo (pull_request) Successful in 48s
CI / docker (pull_request) Successful in 48s
add4cc5cff
Ships the rate-limit classification fix. Behaviour visible to a client:
both rate limits now carry data.class, so one predicate tells a caller
'unreadable' from 'empty', and error_class counts a Hevy 429 as
rate_limited in the same event where the outcome already did.

The metric series that answers 'how often is a Hevy read rate-limited'
begins at this release and has no history behind it, because every Hevy
429 until now was recorded as error_class=other.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NCiHcHN6LrhiuLXbG9SBYG
jlxq0 merged commit cb6a324ef2 into main 2026-08-28 03:48:36 +00:00
jlxq0 deleted branch chore/0.4.1 2026-08-28 03:48:36 +00:00
Sign in to join this conversation.
No reviewers
No labels
waiting-on-julian
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
jlxq0/hevy-mcp!11
No description provided.