Skip to content

feat(api): expose image tool call metadata - #2709

Open
markstuart-oai wants to merge 1 commit into
mainfrom
castiron/promotions/pr-122
Open

feat(api): expose image tool call metadata#2709
markstuart-oai wants to merge 1 commit into
mainfrom
castiron/promotions/pr-122

Conversation

@markstuart-oai

Copy link
Copy Markdown
Contributor

Summary

Expose image tool call metadata properties and service-account API-key expiry options.

Changes

  • Expose optional, nullable action, background, output format, and revised prompt on image tool calls.
  • Preserve existing quality, custom dimensions, and legacy image-call input types.
  • Add optional service-account API-key expiry controls and expiry timestamps.
  • Refresh API documentation links.

Castiron-Internal-PR: openai/openai-node-internal#122
Castiron-Source-SHA: 21b1cca8b8d9e7ba0f83301fff98ac98fc83efa9
Castiron-Public-Base-SHA: 81b6bfe
@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Castiron custom code

✅ No new custom-code files detected.

32 mixed files remain; 0 existing customizations changed; 15 generated baselines changed.

Compared 81b6bfe8f5aa47b0414948c9. Generated baselines verified.

File Result Current custom patch
src/resources/audio/transcriptions.ts Generated baseline changed +32 / −13
src/resources/audio/translations.ts Generated baseline changed +21 / −3
src/resources/beta/assistants.ts Generated baseline changed +3 / −0
src/resources/beta/responses/responses.ts Generated baseline changed +12 / −0
src/resources/beta/threads/runs/runs.ts Generated baseline changed +91 / −1
src/resources/beta/threads/threads.ts Generated baseline changed +369 / −0
src/resources/chat/completions/completions.ts Generated baseline changed +187 / −3
src/resources/embeddings.ts Generated baseline changed +15 / −2
src/resources/files.ts Generated baseline changed +11 / −0
src/resources/fine-tuning/checkpoints/permissions.ts Generated baseline changed +4 / −4
src/resources/images.ts Generated baseline changed +7 / −1
src/resources/responses/responses.ts Generated baseline changed +158 / −41
src/resources/vector-stores/file-batches.ts Generated baseline changed +49 / −0
src/resources/vector-stores/files.ts Generated baseline changed +48 / −0
src/resources/webhooks/webhooks.ts Generated baseline changed +74 / −2
17 existing customizations unchanged
  • api.md
  • scripts/castiron/README.md
  • scripts/castiron/custom_code_report.py
  • scripts/castiron/test_custom_code_report.py
  • src/client.ts
  • src/resources/beta/beta.ts
  • src/resources/beta/index.ts
  • src/resources/beta/responses/internal-base.ts
  • src/resources/beta/threads/index.ts
  • src/resources/beta/threads/runs/index.ts
  • src/resources/chat/completions/index.ts
  • src/resources/conversations/index.ts
  • src/resources/responses/internal-base.ts
  • src/resources/skills/skills.ts
  • src/resources/skills/versions/versions.ts
  • src/resources/webhooks/index.ts
  • tests/lib/data-residency.test.ts

A changed generated baseline means this report cannot reliably identify which handwritten lines changed.

Inspect the custom-code diff

Download the exact patch produced by this run (requires repository access):

gh run download 34317510301 --repo openai/openai-node \
  --name castiron-custom-code-34317510301-1 --dir /tmp/castiron-custom-code-34317510301-1
git apply --stat /tmp/castiron-custom-code-34317510301-1/custom-code.patch
cat /tmp/castiron-custom-code-34317510301-1/custom-code.patch

Or reproduce it from an SDK checkout containing the vendored reporter:

git fetch --no-tags origin 81b6bfe8f5aabe233572253cfb61f37531bc91d6 47b0414948c975ec0c84a9d539a202ff2b8799ca
python3 scripts/castiron/custom_code_report.py report \
  --base 81b6bfe8f5aabe233572253cfb61f37531bc91d6 \
  --head 47b0414948c975ec0c84a9d539a202ff2b8799ca --fetch --require-head-hash --public \
  --out /tmp/castiron-custom-code-47b0414948c9
cat /tmp/castiron-custom-code-47b0414948c9/custom-code.patch

This is the current full custom patch for mixed files, not an attribution of only the handwritten lines changed by this PR.

Full report and patch

@markstuart-oai
markstuart-oai marked this pull request as ready for review September 9, 2026 06:04
@markstuart-oai
markstuart-oai requested a review from a team as a code owner September 9, 2026 06:04
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 9, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-09T06:07:09.591918Z 47b0414 Draft marked ready
🔒 Security Review Completed 2026-09-09T06:08:43.270875Z 47b0414 Draft marked ready
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@openai-sdks

openai-sdks Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

OkTest Summary

236/236 SDK tests passed in 11.002s for Node SDK PR #2709.

Test results — 42 files
Test Result Time
tests/chat-completions-complex-body.test.ts ✅ Passed 174ms
tests/chat-completions-create.test.ts ✅ Passed 200ms
tests/chat-completions-stream.test.ts ✅ Passed 148ms
tests/files-content-binary.test.ts ✅ Passed 227ms
tests/files-create-multipart.test.ts ✅ Passed 250ms
tests/files-list-pagination.test.ts ✅ Passed 166ms
tests/initialize-config.test.ts ✅ Passed 190ms
tests/instance-isolation.test.ts ✅ Passed 176ms
tests/models-list.test.ts ✅ Passed 237ms
tests/responses-background-lifecycle.test.ts ✅ Passed 291ms
tests/responses-body-method-errors.test.ts ✅ Passed 343ms
tests/responses-cancel-timeout.test.ts ✅ Passed 232ms
tests/responses-cancel.test.ts ✅ Passed 243ms
tests/responses-compact-retries.test.ts ✅ Passed 235ms
tests/responses-compact.test.ts ✅ Passed 218ms
tests/responses-create-advanced-stream.test.ts ✅ Passed 123ms
tests/responses-create-advanced.test.ts ✅ Passed 282ms
tests/responses-create-disconnect.test.ts ✅ Passed 1.07s
tests/responses-create-errors.test.ts ✅ Passed 220ms
tests/responses-create-malformed-api-responses.test.ts ✅ Passed 184ms
tests/responses-create-retries.test.ts ✅ Passed 248ms
tests/responses-create-stream-failures.test.ts ✅ Passed 133ms
tests/responses-create-stream-timeout.test.ts ✅ Passed 2.171s
tests/responses-create-stream-wire.test.ts ✅ Passed 2.68s
tests/responses-create-stream.test.ts ✅ Passed 99ms
tests/responses-create-terminal-states.test.ts ✅ Passed 244ms
tests/responses-create-timeout.test.ts ✅ Passed 278ms
tests/responses-create.test.ts ✅ Passed 261ms
tests/responses-delete.test.ts ✅ Passed 237ms
tests/responses-input-items-errors.test.ts ✅ Passed 187ms
tests/responses-input-items-list.test.ts ✅ Passed 194ms
tests/responses-input-items-options.test.ts ✅ Passed 233ms
tests/responses-input-tokens-count-timeout.test.ts ✅ Passed 264ms
tests/responses-input-tokens-count.test.ts ✅ Passed 215ms
tests/responses-malformed-inputs.test.ts ✅ Passed 2.309s
tests/responses-not-found-errors.test.ts ✅ Passed 312ms
tests/responses-parse.test.ts ✅ Passed 209ms
tests/responses-retrieve-retries.test.ts ✅ Passed 306ms
tests/responses-retrieve.test.ts ✅ Passed 287ms
tests/responses-stored-method-errors.test.ts ✅ Passed 670ms
tests/retry-behavior.test.ts ✅ Passed 2.986s
tests/sdk-error-shape.test.ts ✅ Passed 309ms

View OkTest run #34317482861

SDK merge (84e7f3e2cc85) · head (47b0414948c9) · base (81b6bfe8f5aa) · OkTest (08ec4299e769)

@jbeckwith-oai jbeckwith-oai left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewed the exact public promotion. Its SDK content matches the already-reviewed internal candidate, apart from the expected public generation marker. Legacy required fields and input bindings remain intact; new image metadata preserves optional/null behavior and custom sizes, service-account expiry remains optional, and exact-head CI is green.

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.

2 participants