Skip to content

Build(deps): Bump github.com/SnapdragonPartners/maestro-llms from 0.4.2 to 0.7.1#230

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/go_modules/github.com/SnapdragonPartners/maestro-llms-0.7.1
Open

Build(deps): Bump github.com/SnapdragonPartners/maestro-llms from 0.4.2 to 0.7.1#230
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/go_modules/github.com/SnapdragonPartners/maestro-llms-0.7.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 4, 2026

Copy link
Copy Markdown
Contributor

Bumps github.com/SnapdragonPartners/maestro-llms from 0.4.2 to 0.7.1.

Release notes

Sourced from github.com/SnapdragonPartners/maestro-llms's releases.

v0.7.1 — reasoning + billable output normalization (ADR-0016)

Patch release. Investigated as a Gemini bug, shipped as the cross-provider normalization the toolkit was missing.

The bug

A chat to gemini-3.1-pro-preview-customtools with MaxTokens=1024 returned OutputTokens=36, StopReason=MAX_TOKENS. Confusing because 36 is nowhere near 1024 — the model had silently burned ~988 tokens on thinking and the toolkit dropped them. Worse, the bug wasn't Gemini-specific: every provider's wire output_tokens had a different meaning, so Usage.OutputTokens was silently inconsistent across providers.

Fix (ADR-0016)

Two new fields on llms.Usage:

ReasoningTokens      int  // separately-metered thinking; ADDITIVE to OutputTokens
BillableOutputTokens int  // what the provider charges as \"output\"

OutputTokens is redefined as visible-only across every adapter. Budget math holds: a length truncation fires when Input + Output + Reasoning approaches the cap. Cost math: read BillableOutputTokens (one field, one semantic, no per-provider branching).

Provider OutputTokens ReasoningTokens BillableOutputTokens
Gemini CandidatesTokenCount ThoughtsTokenCount Candidates + Thoughts
OpenAI Responses wire − OutputTokensDetails.ReasoningTokens OutputTokensDetails.ReasoningTokens wire.OutputTokens
OpenAI Chat Completions (vLLM) same subtraction via CompletionTokensDetails same wire.CompletionTokens
Anthropic wire.OutputTokens (includes thinking when on; not separable) 0 (SDK has no field) mirrors OutputTokens
Ollama eval_count 0 mirrors OutputTokens

Breaking semantic for OpenAI o-series

Pre-v0.7.1, Usage.OutputTokens was the OpenAI wire output_tokens, which for o-series silently included reasoning. Now it's visible-only. Migration: code reading OutputTokens as the billing-relevant number should read BillableOutputTokens instead (carries the exact same value the old field did). Non-reasoning OpenAI calls are unaffected — reasoning_tokens=0 makes the subtraction a no-op.

Pre-1.0 is the right time to make this consistent; carrying the inconsistency to v1.0 would have been worse.

Demo bonus (examples/chat)

The bubble footer surfaces the breakdown so a max_tokens stop on a small visible output is self-explanatory:

gemini-3.1-pro-preview-customtools · max tokens · 12 in / 102 out / 918 reasoning · 1020 billable · 10875 ms

Non-reasoning models keep the terse <in> in / <out> out form (billable would just duplicate out).

Compatibility

Additive new fields. Existing fields keep their names. The only semantic shift is OpenAI o-series OutputTokens. No MAESTRO_DIVERGENCES.md row — Maestro never surfaced either field; nothing to diverge from.

Pre-1.0; v0.x minor versions may break.

🤖 Generated with Claude Code

... (truncated)

Commits
  • 6d9a7aa fix(usage): surface reasoning-model thinking budget (ADR-0016) (#47)
  • e15081a examples(chat): runs-locally web demo wiring every provider (#46)
  • 7b8b393 feat(vllm): self-hosted vLLM provider (ADR-0015) (#45)
  • c849e5a docs(adr-0013): amend future-variant framing (append-only) (#44)
  • 70aff1b feat(llms): EstimateTextTokens text-level token helper (ADR-0013) (#43)
  • ab578ab feat(models): model listing + per-family upgrade detection (ADR-0012) (#42)
  • 5b5bee9 docs: v0.5 wrap — CLAUDE.md + README versioning (#41)
  • ab4caa6 feat(toolloop): implement llms/toolloop helper (ADR-0011) (#40)
  • 98303c4 docs(toolloop): tool loop design proposal + ADR-0011 (#39)
  • See full diff in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [github.com/SnapdragonPartners/maestro-llms](https://github.com/SnapdragonPartners/maestro-llms) from 0.4.2 to 0.7.1.
- [Release notes](https://github.com/SnapdragonPartners/maestro-llms/releases)
- [Commits](SnapdragonPartners/maestro-llms@v0.4.2...v0.7.1)

---
updated-dependencies:
- dependency-name: github.com/SnapdragonPartners/maestro-llms
  dependency-version: 0.7.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file go Pull requests that update go code labels Jun 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants