Skip to content

build(deps): bump headroom-ai from 0.37.0 to 0.42.0 in /python - #165

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/python/headroom-ai-0.42.0
Open

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/python/headroom-ai-0.42.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Nov 3, 2026

Copy link
Copy Markdown
Contributor

Bumps headroom-ai from 0.37.0 to 0.42.0.

Release notes

Sourced from headroom-ai's releases.

Release v0.42.0

0.42.0 (2026-10-26)

Features

  • pipeline: put per-request saved tokens on OutcomeSnapshot (#4231) (8cedf7b)
  • proxy: let turn hooks rewrite OpenAI Responses requests on HTTP and WebSocket (#4232) (fbf7bc3)
  • proxy: report the same tool savings on gateway /v1/compress as the proxy path (#4467) (a904210)
  • savings: add the per-request counterfactual savings record (#4236) (2912b7b)

Bug Fixes

  • batch: preserve live contexts during capacity cleanup (#4210) (2cbdd22)
  • batch: preserve native Gemini continuation tools (#4211) (8757458)
  • cache: bound the router's compression cache, keep the rest in SQLite (#4357) (b196424)
  • cache: keep indented lines intact in OpenAI whitespace normalization (#4343) (2480100)
  • cache: keep prefix-tracker state across a graceful proxy restart (#4299) (62b3bed)
  • ccr: recognize client-owned MCP retrieval aliases (#4165) (89545fb)
  • ccr: stream the buffered CCR upstream request so idle-killing networks cannot cut it (#4206) (ca6ba34)
  • ci: pin checkout in release notification smoke workflow (#4399) (70273db)
  • copilot: detect COPILOT_API_URL in cli-main.js for Copilot CLI >= 1.0.93 (#4450) (043fe09)
  • copilot: preserve native inline OAuth identity (#4144) (ad62166)
  • deps: bump rustls to 0.23.46 for RUSTSEC-2026-0346..0349 (#4222) (132dbc7)
  • deps: patch OpenClaw Undici and narrow E2E audit exceptions (#4453) (1be699f)
  • deps: require hf-xet>=1.6.0 so a Hub download can't crash Python at exit (#4192) (9e5dac7)
  • deps: require mcp>=1.30.0 for CVE-2026-59951 (#4239) (2f7a83a)
  • gateway: keep input_includes_cache when re-drive usage is merged (#4423) (3f94144)
  • gemini: keep snake_case inline_data and function parts when compressing (#4290) (4bf1bf5)
  • image: clear last_result before each compress() call (#4341) (19c91a8)
  • image: flatten transparent images onto white before re-encoding as JPEG (#4296) (9f5cfcf)
  • install: keep the HuggingFace cache on a writable mount in Docker presets (#4207) (#4209) (7b6cb77)
  • kompress: skip the local model download when a remote endpoint is set (#4234) (ff36931)
  • kompress: time each model-load stage and stop false not-ready warnings during warm-up (#4195) (89b229c)
  • learn: anchor the managed block on its last start marker, append when no end marker (#4342) (45dacc1)
  • learn: keep the digest's loop section inside its budget (#4269) (506ba16)
  • logs: count omitted levels from dropped lines (#4141) (023dd1b)
  • mcp: accept the JSONC opencode config that wrap and install already accept (#4297) (9202948)
  • memory: bound retrieval queries before embedding (#4244) (8c07cf4)
  • memory: ignore incidental cwd prose (#4166) (3765439)
  • memory: log storage and SQLite failures that currently make retrieval miss silently (#4111) (4e6e955)
  • memory: resolve partial IDs beyond the first 1000 records (#4389) (c4ea31b)
  • memory: treat a cwd with no UTF-8 form as unresolved instead of raising (#4167) (760c05e)
  • openai: read Responses cache_write_tokens instead of inferring writes (#4237) (4630602)
  • openai: recompress cached Responses units whose CCR entries expired (#4146) (8f7b419)
  • opencode: do not rewrite an OpenCode config that fails to parse (#4424) (0fe0a59)
  • opencode: restore process env keys on transport dispose (#4430) (d17bac8)
  • pricing: suppress litellm's Provider List banner that corrupts perf JSON (#4197) (e01ad35)
  • proxy: accept HEADROOM_MEMORY_INJECTION_MODE=tool (#4395) (f89c928)

... (truncated)

Changelog

Sourced from headroom-ai's changelog.

0.42.0 (2026-10-26)

Features

  • pipeline: put per-request saved tokens on OutcomeSnapshot (#4231) (8cedf7b)
  • proxy: let turn hooks rewrite OpenAI Responses requests on HTTP and WebSocket (#4232) (fbf7bc3)
  • proxy: report the same tool savings on gateway /v1/compress as the proxy path (#4467) (a904210)
  • savings: add the per-request counterfactual savings record (#4236) (2912b7b)

Bug Fixes

  • batch: preserve live contexts during capacity cleanup (#4210) (2cbdd22)
  • batch: preserve native Gemini continuation tools (#4211) (8757458)
  • cache: bound the router's compression cache, keep the rest in SQLite (#4357) (b196424)
  • cache: keep indented lines intact in OpenAI whitespace normalization (#4343) (2480100)
  • cache: keep prefix-tracker state across a graceful proxy restart (#4299) (62b3bed)
  • ccr: recognize client-owned MCP retrieval aliases (#4165) (89545fb)
  • ccr: stream the buffered CCR upstream request so idle-killing networks cannot cut it (#4206) (ca6ba34)
  • ci: pin checkout in release notification smoke workflow (#4399) (70273db)
  • copilot: detect COPILOT_API_URL in cli-main.js for Copilot CLI >= 1.0.93 (#4450) (043fe09)
  • copilot: preserve native inline OAuth identity (#4144) (ad62166)
  • deps: bump rustls to 0.23.46 for RUSTSEC-2026-0346..0349 (#4222) (132dbc7)
  • deps: patch OpenClaw Undici and narrow E2E audit exceptions (#4453) (1be699f)
  • deps: require hf-xet>=1.6.0 so a Hub download can't crash Python at exit (#4192) (9e5dac7)
  • deps: require mcp>=1.30.0 for CVE-2026-59951 (#4239) (2f7a83a)
  • gateway: keep input_includes_cache when re-drive usage is merged (#4423) (3f94144)
  • gemini: keep snake_case inline_data and function parts when compressing (#4290) (4bf1bf5)
  • image: clear last_result before each compress() call (#4341) (19c91a8)
  • image: flatten transparent images onto white before re-encoding as JPEG (#4296) (9f5cfcf)
  • install: keep the HuggingFace cache on a writable mount in Docker presets (#4207) (#4209) (7b6cb77)
  • kompress: skip the local model download when a remote endpoint is set (#4234) (ff36931)
  • kompress: time each model-load stage and stop false not-ready warnings during warm-up (#4195) (89b229c)
  • learn: anchor the managed block on its last start marker, append when no end marker (#4342) (45dacc1)
  • learn: keep the digest's loop section inside its budget (#4269) (506ba16)
  • logs: count omitted levels from dropped lines (#4141) (023dd1b)
  • mcp: accept the JSONC opencode config that wrap and install already accept (#4297) (9202948)
  • memory: bound retrieval queries before embedding (#4244) (8c07cf4)
  • memory: ignore incidental cwd prose (#4166) (3765439)
  • memory: log storage and SQLite failures that currently make retrieval miss silently (#4111) (4e6e955)
  • memory: resolve partial IDs beyond the first 1000 records (#4389) (c4ea31b)
  • memory: treat a cwd with no UTF-8 form as unresolved instead of raising (#4167) (760c05e)
  • openai: read Responses cache_write_tokens instead of inferring writes (#4237) (4630602)
  • openai: recompress cached Responses units whose CCR entries expired (#4146) (8f7b419)
  • opencode: do not rewrite an OpenCode config that fails to parse (#4424) (0fe0a59)
  • opencode: restore process env keys on transport dispose (#4430) (d17bac8)
  • pricing: suppress litellm's Provider List banner that corrupts perf JSON (#4197) (e01ad35)
  • proxy: accept HEADROOM_MEMORY_INJECTION_MODE=tool (#4395) (f89c928)
  • proxy: bound per-model state keyed by the client model string (#4407) (33e5f67)

... (truncated)

Commits
  • 17d38e5 chore: release 0.42.0 (#4228)
  • a904210 feat(proxy): report the same tool savings on gateway /v1/compress as the prox...
  • 3fef15d fix(offline): keep litellm's pricing table local under HEADROOM_OFFLINE (#4242)
  • 8c07cf4 fix(memory): bound retrieval queries before embedding (#4244)
  • 9ac1b52 fix(zcode): skip providers that point at the Headroom proxy itself (#4413)
  • 023dd1b fix(logs): count omitted levels from dropped lines (#4141)
  • 89545fb fix(ccr): recognize client-owned MCP retrieval aliases (#4165)
  • bebe24c fix(proxy): keep negative compression savings across restart (#4406)
  • 45dacc1 fix(learn): anchor the managed block on its last start marker, append when no...
  • 5f308e1 fix(proxy): skip memory tool injection on streamed OpenAI requests (#4451)
  • Additional commits viewable 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 [headroom-ai](https://github.com/headroomlabs-ai/headroom) from 0.37.0 to 0.42.0.
- [Release notes](https://github.com/headroomlabs-ai/headroom/releases)
- [Changelog](https://github.com/headroomlabs-ai/headroom/blob/main/CHANGELOG.md)
- [Commits](headroomlabs-ai/headroom@v0.37.0...v0.42.0)

---
updated-dependencies:
- dependency-name: headroom-ai
  dependency-version: 0.42.0
  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 python Pull requests that update python code labels Nov 3, 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.

Dependabot bump of headroom-ai 0.37.0 → 0.42.0 in python/requirements-headroom.txt, a Dependabot-tracking anchor file that's never actually installed from.

Should fix: action.yml's headroom_version input default was not updated to match — it's still "0.37.0" — contrary to the explicit instruction in this very file's own header comment. Since action.yml's default is what's actually installed at runtime, merging as-is leaves the real pin at 0.37.0 while Dependabot believes the bump is done (and won't reopen a PR for 0.42.0). This dependency isn't covered by dependabot.yml's automated investigate job (that only runs for the anthropics/claude-code-action upstream pin), so there's no automation keeping the two in sync here — see the inline comment.

Title and description are Dependabot's own standard, specific form and already complete, so I left them as-is. No other changes in this diff.

# the two in sync by hand (see README.md's "Context compression (Headroom)" section): when this file's
# version bumps, update action.yml's default to match in the same PR.
headroom-ai[proxy]==0.37.0
headroom-ai[proxy]==0.42.0

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟠 Should fix [policy]: this file's own header comment (lines 1-5) says to "update action.yml's default to match in the same PR" whenever this pin bumps, but action.yml's headroom_version input still defaults to "0.37.0" (action.yml:378). This file is a Dependabot-tracking anchor only — it is "never installed from directly by action.yml" (per its own comment) — so action.yml's default is what actually gets installed at runtime (action.yml:1322). Merging as-is leaves the action still installing 0.37.0 while this anchor now says 0.42.0, which also means Dependabot will consider the 0.42.0 bump already applied and won't reopen a PR for it, permanently stalling the real pin at 0.37.0 until someone notices by hand.

This is a non-upstream (headroom-ai, not anthropics/claude-code-action) dependency bump, so .github/workflows/dependabot.yml's investigate job — which only runs for is-upstream == true — never touches this; nothing in the automated pipeline keeps the two in sync for this dependency, so this review is the actual backstop the file's comment relies on.

If you'd like me to fix this, comment:

@claude bump action.yml's headroom_version input default from "0.37.0" to "0.42.0" to match python/requirements-headroom.txt

@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown

🗜️ Headroom context compression

Metric Value
Requests proxied 19
Tokens saved 61749
Aggregate savings 3.2% of all tokens sent
Average per-request compression 4%

This branch has not been deployed

No deployments
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 python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants