Skip to content

release: 0.12.0#350

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

release: 0.12.0#350
stainless-app[bot] wants to merge 4 commits intomainfrom
release-please--branches--main--changes--next

Conversation

@stainless-app
Copy link
Copy Markdown
Contributor

@stainless-app stainless-app Bot commented May 8, 2026

Automated Release PR

0.12.0 (2026-05-08)

Full Changelog: v0.11.0...v0.12.0

⚠ BREAKING CHANGES

  • remove AgentexTracingProcessor from default tracing processors (#349)

Features

  • remove AgentexTracingProcessor from default tracing processors (#349) (73eca7a)

Bug Fixes

  • client: add missing f-string prefix in file type error message (dcb1cb4)
  • render .env.example template in agentex init (#351) (6092595)
  • wire SGP_CLIENT_BASE_URL and silence openai-agents tracer in templates (#352) (870324e)

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

  • Removes AgentexTracingProcessorConfig as the default tracing processor (breaking change), fixes a missing f-string prefix in _files.py, and adds SGP_CLIENT_BASE_URL support + set_tracing_disabled(True) across all CLI project templates.
  • The temporal-openai-agents/workflow.py.j2 template calls add_tracing_processor_config unconditionally with potentially empty credentials, unlike the guarded pattern used in acp.py.j2, which will cause runtime tracing errors for users who haven't configured SGP credentials.

Confidence Score: 4/5

Safe to merge with one P1 fix — unconditional tracing registration in the temporal-openai-agents template should be guarded like its sibling.

One P1 finding: the temporal-openai-agents workflow template registers an SGP tracing processor unconditionally, which causes auth errors at runtime for users without SGP credentials. All other changes are clean. P1 ceiling is 4/5.

src/agentex/lib/cli/templates/temporal-openai-agents/project/workflow.py.j2

Important Files Changed

Filename Overview
src/agentex/lib/core/tracing/tracing_processor_manager.py Removes lazy default initialization of AgentexTracingProcessorConfig — breaking change cleanly implemented; no issues.
src/agentex/_files.py Adds missing f-string prefix to TypeError message so the type name is interpolated correctly.
src/agentex/lib/cli/templates/sync-openai-agents/project/acp.py.j2 Adds set_tracing_disabled(True) and SGP_CLIENT_BASE_URL support; conditional guard on credentials is correct.
src/agentex/lib/cli/templates/temporal-openai-agents/project/workflow.py.j2 Adds set_tracing_disabled(True) and SGP_CLIENT_BASE_URL support, but add_tracing_processor_config is called unconditionally — users without SGP credentials get errors on every trace event.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Agent template starts] --> B{Template type?}
    B --> |sync-openai-agents / acp.py.j2| C[set_tracing_disabled - True]
    B --> |temporal-openai-agents / workflow.py.j2| D[set_tracing_disabled - True]

    C --> E{SGP_API_KEY AND SGP_ACCOUNT_ID set?}
    E --> |Yes| F[add_tracing_processor_config with credentials + base_url]
    E --> |No| G[Skip — no processor registered]

    D --> H[add_tracing_processor_config - ALWAYS - even if empty creds]
    H --> I[SGPTracingProcessor registered with empty strings]
    I --> J[Auth errors on every trace event]

    style H fill:#ff6b6b,color:#fff
    style I fill:#ff6b6b,color:#fff
    style J fill:#ff6b6b,color:#fff
    style G fill:#51cf66,color:#fff
    style F fill:#51cf66,color:#fff
Loading

Comments Outside Diff (1)

  1. src/agentex/lib/cli/templates/temporal-openai-agents/project/workflow.py.j2, line 44-50 (link)

    P1 Unconditional SGP tracing registration with empty credentials

    add_tracing_processor_config is called unconditionally regardless of whether SGP_API_KEY and SGP_ACCOUNT_ID are set. Any user who generates this template without SGP credentials will have a tracing processor registered that tries to authenticate against SGP with empty strings on every trace event, producing auth errors at runtime. The sibling template acp.py.j2 guards this call with if SGP_API_KEY and SGP_ACCOUNT_ID: — the same guard should be applied here.

    Prompt To Fix With AI
    This is a comment left during a code review.
    Path: src/agentex/lib/cli/templates/temporal-openai-agents/project/workflow.py.j2
    Line: 44-50
    
    Comment:
    **Unconditional SGP tracing registration with empty credentials**
    
    `add_tracing_processor_config` is called unconditionally regardless of whether `SGP_API_KEY` and `SGP_ACCOUNT_ID` are set. Any user who generates this template without SGP credentials will have a tracing processor registered that tries to authenticate against SGP with empty strings on every trace event, producing auth errors at runtime. The sibling template `acp.py.j2` guards this call with `if SGP_API_KEY and SGP_ACCOUNT_ID:` — the same guard should be applied here.
    
    How can I resolve this? If you propose a fix, please make it concise.

    Fix in Cursor Fix in Claude Code Fix in Codex

Fix All in Cursor Fix All in Claude Code Fix All in Codex

Prompt To Fix All With AI
Fix the following 1 code review issue. Work through them one at a time, proposing concise fixes.

---

### Issue 1 of 1
src/agentex/lib/cli/templates/temporal-openai-agents/project/workflow.py.j2:44-50
**Unconditional SGP tracing registration with empty credentials**

`add_tracing_processor_config` is called unconditionally regardless of whether `SGP_API_KEY` and `SGP_ACCOUNT_ID` are set. Any user who generates this template without SGP credentials will have a tracing processor registered that tries to authenticate against SGP with empty strings on every trace event, producing auth errors at runtime. The sibling template `acp.py.j2` guards this call with `if SGP_API_KEY and SGP_ACCOUNT_ID:` — the same guard should be applied here.

Reviews (4): Last reviewed commit: "release: 0.12.0" | Re-trigger Greptile

@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from cac40be to c646eb3 Compare May 8, 2026 18:27
…plates (#352)

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from c646eb3 to 7ad5b19 Compare May 8, 2026 19:01
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 7ad5b19 to 5eaf474 Compare May 8, 2026 21:16
@stainless-app stainless-app Bot changed the title release: 0.11.1 release: 0.12.0 May 8, 2026
@stainless-app stainless-app Bot force-pushed the release-please--branches--main--changes--next branch from 5eaf474 to ec02cb4 Compare May 8, 2026 21:16
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.

2 participants