Skip to content

보안(deps): Update openai requirement from <3,>=1.0.0 to >=1.0.0,<4 - #114

Closed
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/pip/openai-gte-1.0.0-and-lt-4
Closed

보안(deps): Update openai requirement from <3,>=1.0.0 to >=1.0.0,<4#114
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/pip/openai-gte-1.0.0-and-lt-4

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 19, 2026

Copy link
Copy Markdown
Contributor

Updates the requirements on openai to permit the latest version.

Release notes

Sourced from openai's releases.

v3.1.0

3.1.0 (2026-08-14)

Features

  • api: add WebSocket stream IDs (#3612) (d9029e3)
  • api: add workload identity access token issued event (#3601) (df274d4)
  • api: deprecate Sora video APIs (#3610) (721cb1c)
  • api: Ultrafast tier, structured MCP and websocket errors, separate websocket events (#3617) (f38355e)

Chores

  • remove Stainless attribution and infrastructure (#3599) (a1eeab5)
Changelog

Sourced from openai's changelog.

3.1.0 (2026-08-14)

Features

  • api: add WebSocket stream IDs (#3612) (d9029e3)
  • api: add workload identity access token issued event (#3601) (df274d4)
  • api: deprecate Sora video APIs (#3610) (721cb1c)
  • api: Ultrafast tier, structured MCP and websocket errors, separate websocket events (#3617) (f38355e)

Chores

  • remove Stainless attribution and infrastructure (#3599) (a1eeab5)

3.0.0 (2026-08-12)

⚠ BREAKING CHANGES

  • api: HTTPX2 is now the default HTTP client, and httpx is no longer installed automatically. Applications using custom HTTPX clients, transports, or configuration objects must migrate to their HTTPX2 equivalents or use the temporary, runtime-only legacy HTTPX escape hatch. See the HTTPX2 migration guide.

Features

  • api: migrate to HTTPX2 (#3594)

2.54.0 (2026-08-11)

Features

  • api: Add new Responses model identifiers (#3595) (0652787)

Bug Fixes

  • api: clarify audio upload metadata requirements (#3596) (28888f9)

Chores

  • api: Update generated-file header attribution to Castiron (#3583) (ea17fda)

2.53.0 (2026-08-03)

Features

  • api: Add gpt-5.5 and tool name/namespace to Responses types (#3569) (dd1202d)

... (truncated)

Commits

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [openai](https://github.com/openai/openai-python) to permit the latest version.
- [Release notes](https://github.com/openai/openai-python/releases)
- [Changelog](https://github.com/openai/openai-python/blob/main/CHANGELOG.md)
- [Commits](openai/openai-python@v1.0.0...v3.1.0)

---
updated-dependencies:
- dependency-name: openai
  dependency-version: 3.1.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added the dependencies Pull requests that update a dependency file label Aug 19, 2026
@dependabot @github

dependabot Bot commented on behalf of github Aug 19, 2026

Copy link
Copy Markdown
Contributor Author

Labels

The following labels could not be found: security. Please create it before Dependabot can add it to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@dependabot
dependabot Bot requested a review from eddmpython as a code owner August 19, 2026 09:50
@dependabot dependabot Bot added the dependencies Pull requests that update a dependency file label Aug 19, 2026
@eddmpython

Copy link
Copy Markdown
Owner

머지하지 않고 닫는다. 상한을 <4 로 열면 openai 3.x 가 들어오는데, 그 버전에서 dataHub remote client 의 httpx 경로가 깨진다.

tests/dataHub/controlPlane/testRemote.py::testRemoteClientAndDistributedWorkerCompleteJob
  dartlab/dataHub/... response = self._client.post(
  httpx/_client.py  assert isinstance(response.stream, SyncByteStream)
E AssertionError

처음에는 분산 워커 테스트라 flake 로 보고 gh run rerun --failed 로 재판별했으나 2/2 재현했다.
환경 대조로 원인이 openai 버전임을 확정했다.

환경 openai httpx httpcore 결과
로컬 2.38.0 0.28.1 1.0.9 pass
master CI (run 32259668017) 2.54.0 0.28.1 1.0.9 pass
이 PR (run 32239632709) 3.3.0 0.28.1 1.0.9 fail

httpx 와 httpcore 는 세 환경 모두 같다. 달라진 것은 openai 뿐이다. 나머지 19 개 체크는 통과하므로
빌드나 타입 문제가 아니라 런타임 동작 회귀다.

pyproject 의 openai>=1.0.0,<3 상한을 유지한다. 3.x 로 올리려면 dataHub remote client 가
httpx 응답 스트림 계약을 어떻게 쓰는지 먼저 맞춰야 하고, 그건 별도 작업이다.

이 저장소의 pip 상한 완화 판단 근거는 "CI 게이트가 lock 이 아니라 pip install -e . 신선 해석이므로
PR green = PyPI 사용자와 동일 환경 검증" 이다. 이번은 그 게이트가 정확히 제 역할을 해서 회귀를
사전에 잡은 사례다.

@eddmpython eddmpython closed this Aug 19, 2026
@dependabot @github

dependabot Bot commented on behalf of github Aug 19, 2026

Copy link
Copy Markdown
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot
dependabot Bot deleted the dependabot/pip/openai-gte-1.0.0-and-lt-4 branch August 19, 2026 14:20
eddmpython added a commit that referenced this pull request Aug 19, 2026
증상. 정기 범프 PR 이 매일 열리는데 대부분 머지할 수 없다. #116(pyproc 0.0.22)을 닫자
#118(0.0.23)이 즉시 열렸다. 같은 breaking 이라 닫아도 다음 버전으로 반복된다.

원인. 세 가지가 겹쳐 npm 정기 범프의 실익이 사실상 0 이다.

1. 머지율이 낮다. dependabot PR 66 건을 생태계별로 세면 npm 24 건 중 머지 1 건(4.2%),
   pip 20 건 중 5 건(25.0%), uv 9 건 중 2 건(22.2%)이다. 유일하게 머지된 npm PR #64 는
   28 분 뒤 핫픽스 68697bd("사이트 빌드 복구 ... Deploy Site red")을 불렀다.
2. 루트 package.json 의 overrides 11 개를 dependabot 이 갱신하지 않는다. 그 패키지의 정기
   범프는 lockfile 불일치로 `npm ci` 에서 죽는다(#115 svelte 5.56.3 vs 5.56.9).
3. pyproc 은 0.0.22 부터 landing 이 쓰는 공개 표면이 사라져 머지 자체가 불가능하다.

이 저장소는 이미 같은 결론에 도달한 적이 있다. 2026-07-09 커밋 4fe3a31
"개선: dependabot 정기 버전 범프를 pip 로 한정" 이 같은 근거를 적어 두었다. 다만 그 구현이
`allow: [pyproc]` 이었고, allow 는 정기 범프뿐 아니라 보안 업데이트도 막는다. nanoid high
경보가 닫히지 못한 원인이 그것이었다.

변경. npm 블록을 `open-pull-requests-limit: 0` 으로 바꿨다. github-actions 블록이 이미 쓰는
형태이고, 공식 문서가 이 용도를 명시한다. `open-pull-requests-limit` 제목에는 version 아이콘만
붙고 본문에 "Security update pull requests are not subject to this limit and do not count
toward it" 이라고 적혀 있으며, "If you only require security updates and want to exclude
version updates, you can set open-pull-requests-limit to 0" 이 권장 수단으로 제시된다.

직전 커밋 f1a35ef 에서 넣었던 `ignore` 를 제거한다. 그때 "version-update:semver-* 는 정기
갱신에만 적용되므로 보안 업데이트는 major 라도 흐른다" 고 적었으나, 공식 문서를 원문으로
확인한 결과 그 서술의 근거가 없다. `ignore` 는 version 아이콘과 shield 아이콘을 둘 다 달고
있고 문서는 "will prevent security and version updates for those dependencies" 라고 쓴다.
"update-types only affects version updates, not security updates" 라는 예외 문장은
`allow` 절 안에만 있으며 `ignore` 쪽에는 대응 문장이 없다. 근거 없는 가정으로 보안 경로에
필터를 걸어 두었던 것이라 걷어낸다.

같은 커밋에서 판단한 group 제거는 유지한다. 다만 그때 적은 원인("workspace 묶음 PR 결함")은
이미 그 커밋에서 override 미갱신으로 정정했다.

pip 블록은 그대로 둔다. 머지율이 npm 의 6 배이고 pyproject 상한 완화는 CI 가 `pip install -e .`
신선 해석으로 검증한다. 실제로 openai 상한 완화 PR(#114)은 그 게이트가 회귀를 잡아냈다.

결과. 세 생태계 모두 allow 와 ignore 가 없어 보안 업데이트가 막히지 않는다. 정기 범프는 pip
에서만 열린다. npm 의존성을 올리는 일은 렌더 눈검수를 동반한 별도 작업으로 다룬다.

검증. YAML 파싱으로 세 블록의 limit(pip 2, github-actions 0, npm 0)과 allow·ignore 부재를
확인했다. dependabot 계약 테스트 15 건 통과.

가드. 계약 테스트가 npm 블록에 `open-pull-requests-limit: 0` 이 있고 `groups:` 와 `ignore:` 가
없는지 검사한다. 전체 파일에 `allow:` 가 없는지도 계속 검사한다.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant