This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
+12 more
Summary
AI summaryUpdates Test plan, Summary by CodeRabbit, and Dedup semantics across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Adds low-balance warning banner on successful API fetch when balance < $2. Adds low-balance warning banner on successful API fetch when balance < $2. Source: llm_adapter@2026-05-28 Confidence: high |
— |
| Feature | Low |
Deduplicates low-balance warnings within a hivemind process session. Deduplicates low-balance warnings within a hivemind process session. Source: llm_adapter@2026-05-28 Confidence: high |
— |
| Feature | Low |
Makes low-balance banner transient, not persisting in `state.shown`. Makes low-balance banner transient, not persisting in `state.shown`. Source: llm_adapter@2026-05-28 Confidence: high |
— |
| Feature | Low |
Suppresses low-balance warning when balance ≤ 0, letting 402 banner take precedence. Suppresses low-balance warning when balance ≤ 0, letting 402 banner take precedence. Source: llm_adapter@2026-05-28 Confidence: high |
— |
| Feature | Low |
Gracefully no‑ops when `X-Activeloop-Balance-Cents` header is missing (backward compatibility). Gracefully no‑ops when `X-Activeloop-Balance-Cents` header is missing (backward compatibility). Source: llm_adapter@2026-05-28 Confidence: high |
— |
| Feature | Low |
Tolerates malformed `X-Activeloop-Balance-Cents` header values without crashing. Tolerates malformed `X-Activeloop-Balance-Cents` header values without crashing. Source: llm_adapter@2026-05-28 Confidence: high |
— |
| Feature | Low |
Swallows rejection from `enqueueNotification` cleanly, preventing crashes. Swallows rejection from `enqueueNotification` cleanly, preventing crashes. Source: llm_adapter@2026-05-28 Confidence: high |
— |
| Performance | Low |
Adds 7 vitest cases covering low‑balance behavior, deduplication, error tolerance, and non‑throwing enqueue failure. Adds 7 vitest cases covering low‑balance behavior, deduplication, error tolerance, and non‑throwing enqueue failure. Source: llm_adapter@2026-05-28 Confidence: high |
— |
| Bugfix | Low |
Ensures existing balance‑exhausted and retry tests still pass, avoiding regressions. Ensures existing balance‑exhausted and retry tests still pass, avoiding regressions. Source: llm_adapter@2026-05-28 Confidence: high |
— |
| Bugfix | Low |
Keeps TypeScript compilation clean with `tsc --noEmit --skipLibCheck`. Keeps TypeScript compilation clean with `tsc --noEmit --skipLibCheck`. Source: llm_adapter@2026-05-28 Confidence: high |
— |
Full changelog
Summary
- New
maybeSignalLowBalance(resp)reads theX-Activeloop-Balance-Centsresponse header on every fetch — when below $2, enqueues a one-shot mid-session warning banner pointing the user at the billing page - Mirrors the existing
maybeSignalBalanceExhausted(402 path) but fires on the success path so users get warned before the hard wall - Suppresses on balance ≤ 0 so the louder 402 banner takes over without overlapping copy
Dedup semantics
- Process-local flag collapses repeats within a hivemind process to one enqueue
transient: trueso the banner doesn't persist instate.shown— when the backend's rearm path dismisses the warning row after a top-up, the header stops appearing below threshold and the banner silences naturally; a future dip refires- Matches user's spec: "showing once is enough"
Backend dependency
Reads a header that doesn't exist on main yet — paired with activeloopai/deeplake-api#245. The new code no-ops gracefully when the header is absent (older backend), so this PR is safe to ship ahead of the backend deploy.
Test plan
- [x] 7 vitest cases in
tests/shared/deeplake-api-low-balance.test.tscovering:- enqueue when header < threshold on a successful response
- no enqueue when header ≥ threshold (boundary contract)
- no enqueue when header absent (older-backend compat)
- process-local dedup across multiple requests
- zero-balance suppression (402 banner takes over)
- malformed header value tolerated
enqueueNotificationrejection swallowed cleanly
- [x] Existing
deeplake-api-balance-exhausted.test.tsanddeeplake-api-retry.test.tsstill pass — no regression in the 402 path - [x]
tsc --noEmit --skipLibCheckclean
Untested
- Real session-start drain rendering the banner (only the enqueue contract is verified)
- End-to-end with the backend PR landed (next: smoke against beta)
Summary by CodeRabbit
-
New Features
- Low-balance warnings now appear during API operations when a reported balance is below the threshold; each warning is shown once per session and tolerates malformed or missing server headers.
-
Tests
- Expanded coverage for low-balance behavior, deduplication, error-tolerance, and non-throwing behavior when notification delivery fails or responses are minimal.
- Test helper updated to reset the session low-balance signal.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
Track Hivemind turns agent traces into skills and shares with your team
Get notified when new releases ship.
Sign up freeAbout Hivemind turns agent traces into skills and shares with your team
All releases →Related context
Related tools
Earlier breaking changes
- v0.7.52 Removes `hivemind tasks` CLI and related code surfaces.
- v0.7.51 Removes `hivemind tasks` CLI and related code surfaces.
- v0.7.19 Module name skilify replaced with skillify; affects all imports
- v0.7.19 CLI command skilify removed; renamed to skillify without deprecation alias
- v0.7.18 CLI subcommand renamed from `skilify` to `skillify`; no deprecation alias.
Beta — feedback welcome: [email protected]