Skip to content

feat: claim-coupled decay for session_budget (eval 75-77, 77/77) - #19

Open
kindrat86 wants to merge 1 commit into
mainfrom
feat/claim-coupled-decay-rescue
Open

feat: claim-coupled decay for session_budget (eval 75-77, 77/77)#19
kindrat86 wants to merge 1 commit into
mainfrom
feat/claim-coupled-decay-rescue

Conversation

@kindrat86

Copy link
Copy Markdown
Owner

Summary

Rescues the claim-coupled decay feature that was stranded on a stale local branch (authored 2026-08-12, never PR'd). Ports it onto current main.

What it does

When a transaction stamps an unverified_claims count, the session_budget rule switches from spend-based decay to claim-based tightening:

per-call cap = max_session * decay_factor ** unverified_claims

An agent carrying 3 unproven assertions gets a tighter admission threshold than one at 0, regardless of elapsed time or spend. Malformed counts fall back to spend-based decay. Suggested by @yun520-1 on OpenClaw #42475.

Changes

  • core/engine.py + agentshield/engine.py: claim-coupled decay in _check_session_budget
  • tests/eval_gym.py + agentshield/eval_gym.py: 3 new scenarios (75-77), both copies kept in sync (fixes the twin-drift the original commit introduced by only touching tests/)
  • Honesty sweep: stale 74 -> 77 scenario count across README, PACKAGE_README, core/api.py (blog meta + nurture emails), public/*.html, content/*.md, scripts

Verification

  • Eval gym: 77/77 passing across 12 categories (verified on both tests/eval_gym.py and agentshield/eval_gym.py)

Port the claim-coupled decay feature (authored 2026-08-12, suggested by
@yun520-1 on OpenClaw #42475). When a transaction stamps an
unverified_claims count, session_budget decay switches from spend-based to
claim-based tightening: per-call cap = max_session * decay_factor **
unverified_claims. Malformed counts fall back to spend-based decay.

Adds 3 eval scenarios (75-77), bringing the eval gym to 77/77 across 12
categories. Sweeps the stale 74 -> 77 scenario count across marketing copy
(README, PACKAGE_README, core/api.py blog meta + nurture emails,
public/*.html, content/*.md, scripts).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants