Skip to content

chore: release main - #506

Open
stainless-app[bot] wants to merge 4 commits into
mainfrom
release-please--branches--main--changes--next
Open

chore: release main#506
stainless-app[bot] wants to merge 4 commits into
mainfrom
release-please--branches--main--changes--next

Conversation

@stainless-app

@stainless-app stainless-app Bot commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

✨ Stainless prepared a new release

agentex-client: 0.26.0

0.26.0 (2026-09-01)

Full Changelog: agentex-client-v0.25.0...agentex-client-v0.26.0

Features

  • tracing: add opt-in commit SHA stamping for SGP spans (#505) (76252a9)
agentex-sdk: 0.26.0

0.26.0 (2026-09-01)

Full Changelog: agentex-sdk-v0.25.0...agentex-sdk-v0.26.0

Chores

  • agentex-sdk: Synchronize agentex versions

This pull request is managed by Stainless's GitHub App.

The semver version number is based on included commit messages. Alternatively, you can manually set the version number in the title of this pull request.

For a better experience, it is recommended to use either rebase-merge or squash-merge when merging this pull request.

🔗 Stainless website
📚 Read the docs
🙋 Reach out for help or questions

Greptile Summary

The release updates both packages to version 0.26.0 and adds opt-in source-revision metadata to SGP spans.

  • Exposes a process-wide API for enabling and disabling commit SHA stamping.
  • Adds __commit_sha__ to copied SGP metadata without mutating shared span data.
  • Updates package manifests, changelogs, environment models, and tracing tests.

Confidence Score: 4/5

The PR is not yet safe to merge because the previously reported commit-length validation defect remains.

The validator continues to accept 41–63-character hexadecimal strings and exports them unchanged as commit metadata, so opted-in deployments can publish a value that cannot identify a valid Git object.

Files Needing Attention: src/agentex/lib/core/tracing/code_revision.py; tests/lib/core/tracing/test_code_revision.py

Important Files Changed

Filename Overview
src/agentex/lib/core/tracing/code_revision.py Adds the opt-in process-wide commit revision registry and configuration resolution.
src/agentex/lib/core/tracing/processors/sgp_tracing_processor.py Adds the enabled revision to copied dictionary-shaped SGP metadata while preserving caller span data.
tests/lib/core/tracing/test_code_revision.py Covers opt-in state, source precedence, fallback behavior, and representative accepted and rejected values.
tests/lib/core/tracing/processors/test_sgp_tracing_processor.py Verifies SGP-only stamping, preservation of existing metadata, and non-dictionary behavior.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart LR
    A[Agent calls code_revision.enable] --> B{Resolve configured value}
    B --> C[Store process-wide commit SHA]
    C --> D[SGP processor builds span]
    D --> E[Copy span metadata]
    E --> F[Add __commit_sha__]
    F --> G[Export span to SGP]
Loading

Reviews (2): Last reviewed commit: "chore: release main" | Re-trigger Greptile

Context used:

stainless-app Bot and others added 2 commits August 27, 2026 02:57

# A git object name: 40 hex for SHA-1, 64 for SHA-256, or an abbreviation down to
# git's own 7-character minimum.
_GIT_SHA_RE = re.compile(r"[0-9a-fA-F]{7,64}")

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Reject invalid commit lengths

If an opted-in deployment supplies a 41–63-character hexadecimal value, this regex accepts it even though it cannot be a SHA-1 or SHA-256 object name, causing SGP to store misleading __commit_sha__ metadata that cannot identify a real commit.

Suggested change
_GIT_SHA_RE = re.compile(r"[0-9a-fA-F]{7,64}")
_GIT_SHA_RE = re.compile(r"(?:[0-9a-fA-F]{7,40}|[0-9a-fA-F]{64})")

Knowledge Base Used: Tracing pipeline

Prompt To Fix With AI
This is a comment left during a code review.
Path: src/agentex/lib/core/tracing/code_revision.py
Line: 32

Comment:
**Reject invalid commit lengths**

If an opted-in deployment supplies a 41–63-character hexadecimal value, this regex accepts it even though it cannot be a SHA-1 or SHA-256 object name, causing SGP to store misleading `__commit_sha__` metadata that cannot identify a real commit.

```suggestion
_GIT_SHA_RE = re.compile(r"(?:[0-9a-fA-F]{7,40}|[0-9a-fA-F]{64})")
```

**Knowledge Base Used:** [Tracing pipeline](https://app.greptile.com/scale-ai/-/custom-context/knowledge-base/scaleapi/scale-agentex-python/-/docs/tracing-pipeline.md)

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Fix in Cursor Fix in Claude Code Fix in Codex

@stainless-app
stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from cff5e24 to cab4bd6 Compare September 1, 2026 22:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant