Skip to content

Status shows a priced lower bound when some legs are unpriced (#516) - #591

Merged
renmengye merged 4 commits into
mainfrom
feat/unpriced-cost
Oct 25, 2026
Merged

renmengye merged 4 commits into
mainfrom
feat/unpriced-cost

Conversation

@renmengye

Copy link
Copy Markdown
Member

Closes #516, as the PI decided on that issue.

  • outerloop status prints session-cost>=$4.2000 (1 unpriced) when some legs have a cost and others don't (a wake killed mid-turn has no usage event). Fully priced runs and runs with nothing priced keep their current output.
  • session_totals gains an additive priced_sessions count. JSON status only gains that field.
  • No dollar-denominated budget check exists: SessionBudget.cost_cap_usd is declared but never enforced. So no budget behaviour changes.
  • docs/session-capture.md describes the lower bound. One parametrized status test; CHANGELOG line.

Gate: ruff check, ruff format --check, mypy, pytest (3071 passed, 7 skipped).

Built by DeepSeek-V4.1-Flash; reviewed by Claude.

@renmengye renmengye added the outerloop:review re-request the advisory review label Oct 25, 2026

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Round 1 — reviewed head 6f40309c — reviewer hermes/gpt-5.6-terra.

terra
Advisory findings from outerloop — the code owner decides. Reply to disagree; the outerloop:no-review label opts this PR out.

Verdict: 1 blocking, 0 advisory.

A failed resumed cumulative leg hides the prior priced cost. The cumulative filter keeps only the newest leg, so a priced Codex or new-Claude leg followed by an unpriced wake yields known_session_cost_usd=0 and no lower-bound status even though the earlier leg has a known cost. (src/outerloop/session_evidence.py:572; high confidence)

A failed resumed cumulative leg hides its earlier priced lower bound.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Round 2 (re-run on the same head) — reviewed head 6f40309c — reviewer summarizer:hermes/gpt-5.6-terra over coverage+credentials+deployment+general+lifecycle+prose.

terra
Advisory findings from outerloop — the code owner decides. Reply to disagree; the outerloop:no-review label opts this PR out.

Verdict: 1 blocking, 1 advisory.

1 finding attached to the lines below.

A resumed cumulative session loses its earlier priced lower bound when its latest wake is unpriced. [credentials+deployment+general+prose] The newest-leg/supersession filter drops an earlier priced cumulative leg when a later resumed wake has no cost, so session_totals reports zero priced sessions and status shows unknown instead of the known lower bound. (src/outerloop/session_evidence.py:567; high confidence)

Merged one blocking defect agreed by credentials, deployment, general, and prose: cumulative resumed sessions discard an earlier priced lower bound after an unpriced wake. Coverage separately identifies the missing end-to-end totals test. Rejected: none; the deployment finding is merged as the status-level manifestation of the same session-totals defect, and the prose finding supplies the same substantive defect rather than a distinct rewrite.

Comment thread tests/test_status.py Resolved
@renmengye renmengye added outerloop:review re-request the advisory review and removed outerloop:review re-request the advisory review labels Oct 25, 2026

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Round 3 — reviewed head 2780ce65 — reviewer hermes/gpt-5.6-terra.

terra
Advisory findings from outerloop — the code owner decides. Reply to disagree; the outerloop:no-review label opts this PR out.

Verdict: 1 blocking, 0 advisory.

1 finding attached to the lines below.

Resumed cumulative sessions do not show the priced lower bound after an unpriced wake.

Comment thread src/outerloop/session_evidence.py Resolved
@renmengye renmengye added outerloop:review re-request the advisory review and removed outerloop:review re-request the advisory review labels Oct 25, 2026

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Round 4 — reviewed head 85517d22 — reviewer hermes/gpt-5.6-terra.

terra
Advisory findings from outerloop — the code owner decides. Reply to disagree; the outerloop:no-review label opts this PR out.

Verdict: no defects found.

@renmengye
renmengye merged commit 488b21b into main Oct 25, 2026
1 check passed
@renmengye
renmengye deleted the feat/unpriced-cost branch October 25, 2026 03:11
@renmengye renmengye mentioned this pull request Oct 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

outerloop:review re-request the advisory review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Decide how run totals show legs whose cost is unknown

1 participant