Skip to content

Release 0.4.0 - #161

Merged
hiyouga merged 8 commits into
mainfrom
dev
Jul 20, 2026
Merged

Release 0.4.0#161
hiyouga merged 8 commits into
mainfrom
dev

Conversation

@hiyouga

@hiyouga hiyouga commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Promote dev to main for the 0.4.0 release. Version is already bumped to 0.4.0 in both packages (#160).

Highlights since 0.3.3

Both CI suites (Python 3.11 and Node 20, including live-API e2e) are green on dev as of #160.

Suggest merging with a merge commit (not squash) to preserve dev history, matching the 0.3.3 release, then tagging v0.4.0.

🤖 Generated with Claude Code

https://claude.ai/code/session_01J8bNMvyPJ7muyDs4Fh9ZLF

hiyouga and others added 8 commits June 10, 2026 17:43
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…f accumulating (#158)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…tream produced (#159)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 20, 2026 11:43

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Release 0.4.0 by promoting the dev line of changes to main, including a breaking data-model update to preserve wire-level replay fidelity across providers and tightening streaming/error behavior across both the Python and TypeScript SDKs.

Changes:

  • Replace per-item signature / phase fields with a single opaque fidelity payload across content items (breaking; enables exact replay, including reasoning-field spelling).
  • Harden streaming behavior: contextual tool-call JSON parse errors (ToolCallArgumentParseError) and rejection of thinking-only responses (EmptyResponseError) under a shared AgentHubError base class.
  • Restructure skills documentation into a “reference/” layout, update changelog detail files, and bump package metadata to 0.4.0.

Reviewed changes

Copilot reviewed 58 out of 60 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src_ts/tests/tool-call-arguments.test.ts Adds TS regression coverage for streamed tool-call argument parsing errors.
src_ts/tests/reasoning-fidelity.test.ts Adds TS coverage for reasoning-field replay fidelity and phase-based concatenation.
src_ts/tests/empty-response.test.ts Adds TS coverage for rejecting thinking-only / empty responses and error hierarchy.
src_ts/src/types.ts Introduces Fidelity and migrates content items to fidelity?: ....
src_ts/src/openai/client.ts Records/replays exact reasoning field; routes tool-call JSON parsing through shared helper.
src_ts/src/kimi_k2_6/client.ts Same reasoning-field fidelity + tool-call parse hardening for Kimi.
src_ts/src/index.ts Exports new error types from the TS package root.
src_ts/src/gpt5_5/client.ts Moves phase/reasoning signature handling into fidelity; shared tool-call argument parsing.
src_ts/src/glm5_1/client.ts Same reasoning-field fidelity + tool-call parse hardening for GLM.
src_ts/src/gemini3/client.ts Migrates Gemini thought signatures into fidelity.signature.
src_ts/src/errors.ts Adds AgentHubError, EmptyResponseError, ToolCallArgumentParseError, and parseToolCallArguments.
src_ts/src/deepseek_v4/client.ts Records reasoning-field fidelity and uses shared tool-call argument parsing.
src_ts/src/claude5/index.ts Exports Claude5Client.
src_ts/src/claude5/client.ts Migrates Claude thinking signatures into fidelity.signature; shared tool-call argument parsing.
src_ts/src/claude4_6/client.ts Migrates Claude thinking signatures into fidelity.signature; shared tool-call argument parsing.
src_ts/src/baseClient.ts Updates concatenation rules to key off fidelity; validates non-thinking output.
src_ts/src/autoClient.ts Updates TS auto-routing to include Claude 5 and avoids embedding misrouting.
src_ts/package.json Bumps TS package to 0.4.0 and normalizes repository links.
src_ts/package-lock.json Locks TS version bump to 0.4.0.
src_py/tests/test_tool_call_arguments.py Adds Python regression coverage for streamed tool-call argument parsing errors.
src_py/tests/test_reasoning_fidelity.py Adds Python coverage for reasoning-field replay fidelity and phase-based concatenation.
src_py/tests/test_empty_response.py Adds Python coverage for rejecting thinking-only / empty responses and error hierarchy.
src_py/pyproject.toml Bumps Python package to 0.4.0 and adds project URLs.
src_py/agenthub/types.py Introduces Fidelity and migrates content items to fidelity.
src_py/agenthub/openai/client.py Records/replays exact reasoning field; routes tool-call JSON parsing through shared helper.
src_py/agenthub/kimi_k2_6/client.py Same reasoning-field fidelity + tool-call parse hardening for Kimi.
src_py/agenthub/gpt5_5/client.py Moves phase/reasoning signature handling into fidelity; shared tool-call argument parsing.
src_py/agenthub/glm5_1/client.py Same reasoning-field fidelity + tool-call parse hardening for GLM.
src_py/agenthub/gemini3/client.py Migrates Gemini thought signatures into fidelity.signature and null-guards content parts.
src_py/agenthub/errors.py Adds AgentHubError, EmptyResponseError, ToolCallArgumentParseError, and parse_tool_call_arguments.
src_py/agenthub/deepseek_v4/client.py Records reasoning-field fidelity and uses shared tool-call argument parsing.
src_py/agenthub/claude5/client.py Migrates Claude thinking signatures into fidelity.signature; shared tool-call argument parsing.
src_py/agenthub/claude5/init.py Exports Claude5Client from the Python claude5 module.
src_py/agenthub/claude4_6/client.py Migrates Claude thinking signatures into fidelity.signature; shared tool-call argument parsing.
src_py/agenthub/base_client.py Updates concatenation rules to key off fidelity; validates non-thinking output.
src_py/agenthub/auto_client.py Updates Python auto-routing to include Claude 5 and avoids embedding misrouting.
src_py/agenthub/init.py Exports new Python error types from the package root.
skills/agenthub-typescript/SKILL.md Rehomes model/docs content into reference pages; updates examples and fidelity guidance.
skills/agenthub-typescript/reference/models.md Adds TS model-selection reference page.
skills/agenthub-typescript/reference/integrations.md Adds TS tracer/playground integrations reference page.
skills/agenthub-typescript/reference/data-models.md Adds TS data model + tool-streaming protocol + error reference page.
skills/agenthub-typescript/reference/api.md Adds TS API reference page.
skills/agenthub-python/SKILL.md Rehomes model/docs content into reference pages; updates examples and fidelity guidance.
skills/agenthub-python/reference/models.md Adds Python model-selection reference page.
skills/agenthub-python/reference/integrations.md Adds Python tracer/playground integrations reference page.
skills/agenthub-python/reference/data-models.md Adds Python data model + tool-streaming protocol + error reference page.
skills/agenthub-python/reference/api.md Adds Python API reference page.
README.md Updates README examples to use fidelity.signature and notes Claude 5 in the matrix.
llmsdk_docs/gpt5_5/README.md Adds reasoning doc link in GPT-5.5 snapshot index.
llmsdk_docs/gpt5_5/docs/reasoning.md Snapshots reasoning/phase guidance for GPT-5.x reasoning models.
llmsdk_docs/claude5/README.md Adds Claude 5 docs index.
llmsdk_docs/claude5/docs/introducing-claude-fable-5-and-claude-mythos-5.md Snapshots Claude 5 release notes / behavior notes.
changelog/README.md Introduces per-entry changelog detail file convention.
changelog/2026-07-20-reasoning-field-fidelity.md Adds migration + rationale for the breaking fidelity change.
changelog/2026-07-17-agenthub-dev-skill.md Documents addition of the agenthub-dev workflow skill and changelog details dir.
CHANGELOG.md Adds 0.4.0 release line and links to detail files.
.gitignore Ignores api_captures/ used for raw live API capture artifacts.
.agents/skills/agenthub-dev/SKILL.md Adds a fixed workflow skill for model-support development in this repo.
Files not reviewed (1)
  • src_ts/package-lock.json: Generated file
Comments suppressed due to low confidence (1)

src_py/agenthub/claude5/client.py:209

  • item["fidelity"]["signature"] is accessed unconditionally for Claude thinking items. If a caller passes a history without fidelity.signature (e.g., hand-built history or pre-0.4.0 history that wasn’t migrated), this will raise a KeyError. Consider validating presence and raising a clearer error.

Comment thread src_py/agenthub/gpt5_5/client.py
Comment thread src_py/agenthub/claude4_6/client.py
@hiyouga
hiyouga merged commit 1bd8c15 into main Jul 20, 2026
4 of 6 checks passed
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.

4 participants