Repository navigation
build: compile Anthropic test requirements from explicit inputs - #934
Utkarsh-Sinha0 wants to merge 12 commits into
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Pull request dashboard statusWaiting on the author · refreshed 2026-11-07 04:07 UTC Resolve merge conflicts. Respond to 1 review item (e.g. link a commit, explain why not, ask a follow-up):
Status above doesn't look right?
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8e3f8857fd
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
This comment has been minimized.
This comment has been minimized.
| # Copyright The OpenTelemetry Authors | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
|
|
||
| """Compile a tox oldest/latest environment into a pinned requirements file.""" |
There was a problem hiding this comment.
There was a problem hiding this comment.
Updated in 8941be1. The Anthropic oldest/latest test matrix now installs generated locks, and its handwritten oldest requirements file and manual floor check have been removed. The documentation example now uses Python 3.11.
All three oldest/latest test environments passed locally, along with the generator tests, dependency checks, pre-commit, and typecheck.
| py310-test-instrumentation-genai-anthropic-oldest \ | ||
| --output /tmp/anthropic-py310-oldest.txt |
There was a problem hiding this comment.
Python 3.10 was dropped in #992, so this env no longer exists.
| py310-test-instrumentation-genai-anthropic-oldest \ | |
| --output /tmp/anthropic-py310-oldest.txt | |
| py311-test-instrumentation-genai-anthropic-oldest \ | |
| --output /tmp/anthropic-py311-oldest.txt |
There was a problem hiding this comment.
Updated the example to py311-test-instrumentation-genai-anthropic-oldest. The output now points to the committed Python 3.11 lock used by that test environment.
Assisted-by: GPT-6
Assisted-by: GPT-6
Assisted-by: GPT-6
Assisted-by: GPT-6.1 Sol
Replace tox config parsing with direct uv compile commands, keep latest locks in dependency-update coverage, and validate workspace overrides from the oldest inputs. Assisted-by: GPT-6.1 Sol
lmolkova
left a comment
There was a problem hiding this comment.
Thanks for working on this. Looking at where it ended up, I don't see anything getting easier. check_deps.py stays and gets bigger, and once this rolls out to every package, each one needs 3 .in files, 3 locks, CI compile steps, and Renovate config.
So I don't see a clear benefit right now. Is there a specific reason to go this way that I'm missing? If not, I'd suggest we close this, unless you have an idea for how this could make the existing setup simpler (e.g. replace check_deps.py and the handwritten requirements instead of adding to them).
Compile Anthropic's test requirements from explicit inputs with direct
uv pip compilecommands and install the resulting locks in the existing Python 3.11 oldest/latest and Python 3.15 latest environments. Remove the tox-config generator and the package's handwritten oldest pins and manual floor check, following #418 and the review requests.Use Renovate-recognized lock filenames and group Anthropic latest source/lock updates. Dependency CI recompiles all three locks and rejects stale results, uploading a patch when regeneration changes them. Workspace validation and release cleanup read the new oldest runtime inputs, preserving checks for unreleased editable dependencies.
Validation: all three test environments passed (372/388/388 tests), all 13 conformance scenarios passed, and dependency checks, six regression tests, pre-commit, and typecheck passed. Changed-input detection and byte-identical Windows/Linux generation were verified with uv 0.12.1.
Known limitation: CI supplies a regeneration patch for review; it does not automatically commit that patch.