Skip to content

feat(AIC-3685)!: make the internal provider helpers private - #224

Merged
jeffdupont merged 2 commits into
mainfrom
jdupont/aic-3685-private-helpers
Oct 27, 2026
Merged

jeffdupont merged 2 commits into
mainfrom
jdupont/aic-3685-private-helpers

Conversation

@jeffdupont

@jeffdupont jeffdupont commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

Jira: AIC-3685

What changed

  • launchdarkly_ai_claude_agents: build_prompt, build_tool_mcp and partition_tools are removed from __all__ and the package root, and renamed _build_prompt, _build_tool_mcp, _partition_tools in handler.py. Internal callers (handler.py, native_graph.py), tests and agents.md are updated.
  • launchdarkly_ai_openai_agents: build_output_type is removed from __all__ and the package root, and renamed _build_output_type in utils.py. Tests are updated.
  • No deprecated aliases.
  • API reports regenerated with make api-report.

Pre-1.0 cleanup: these four names are no longer importable. Nothing has shipped as 1.0, so there is no compatibility promise to keep. The ! only gives the 0.x minor bump. The monorepo API-surface lists (api-surface/python/) are updated in a companion ai-sdks-monorepo PR.

vercel-agents has its own, unrelated build_output_type in handler.py (different signature, not exported, not in its API report). It is left unchanged.

Testing

  • make api-report (wrote 14 reports) and make api-report-check: pass
  • make lint, make format-check, make typecheck: pass
  • make test: 3631 passed, 2 failed. The 2 failures (packages/client/tests/test_lifecycle.py::TestInitClientSDKKeyPath::test_uses_options_sdk_key_over_env_var and ::test_retries_after_a_failed_init_instead_of_replaying_it) fail the same way on an untouched origin/main checkout in the same location. They pick up staging URIs from a local .env, so they are a local environment issue, not caused by this change.

🤖 Generated with Claude Code


Note

Overview
Breaking (pre-1.0): Several provider helper functions are no longer part of the public Python API.

In launchdarkly_ai_claude_agents, build_prompt, build_tool_mcp, and partition_tools are renamed to _build_prompt, _build_tool_mcp, and _partition_tools, dropped from __init__ / __all__, and removed from the generated API report. launchdarkly_ai_openai_agents does the same for build_output_type → _build_output_type in utils.py.

Call sites inside each package (handler.py, native_graph.py), tests, and agents.md are updated to the private names. No deprecated aliases—external code that imported these helpers must stop or copy the logic. API reports were regenerated with make api-report.

Reviewed by Cursor Bugbot for commit 11fd3f6. Bugbot is set up for automated code reviews on this repo. Configure here.

build_prompt, build_tool_mcp and partition_tools (launchdarkly_ai_claude_agents)
and build_output_type (launchdarkly_ai_openai_agents) are no longer exported.
They are renamed with a leading underscore where they are defined. No
deprecated aliases: the packages are 0.x, so this ships as a minor bump.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@jeffdupont
jeffdupont marked this pull request as ready for review October 27, 2026 17:53
@jeffdupont
jeffdupont requested a review from a team as a code owner October 27, 2026 17:53
…ate-helpers

# Conflicts:
#	packages/openai-agents/api-report/launchdarkly_ai_openai_agents.txt
#	packages/openai-agents/src/launchdarkly_ai_openai_agents/__init__.py
@jeffdupont
jeffdupont merged commit 9afdb94 into main Oct 27, 2026
9 checks passed
@jeffdupont
jeffdupont deleted the jdupont/aic-3685-private-helpers branch October 27, 2026 22:33
@github-actions github-actions Bot mentioned this pull request Oct 27, 2026
XieX added a commit that referenced this pull request Oct 28, 2026
Picks up #223, #224 and #225 so the API compatibility check diffs against the
current base instead of attributing their declared breaking changes to this PR.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
jeffdupont added a commit that referenced this pull request Oct 28, 2026
Conflicts resolved by keeping both sides:
- claude-agents: ClaudeNativeGraphOptions export plus main's skills handler.
- openai-agents: OpenAINativeGraphOptions plus main's create_openai_agents_handler
  rename; build_output_type stays private, as main made it in #224.
- opencode-agents handler: main's secrets import plus this branch's NativeTool.
- API reports regenerated with make api-report.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.

3 participants