Problem
#1366 added a request header, X-Otari-Code-Execution, that picks who runs a provider-native code-execution declaration. It is the constant CODE_EXECUTION_HEADER in api/routes/_tools.py, read by the chat, messages and responses routes.
RFC 6648 (BCP 178) says creators of new parameters "SHOULD NOT prefix their parameter names with 'X-' or similar constructs": https://datatracker.ietf.org/doc/html/rfc6648. Otari's other headers already follow it: Otari-Key, Otari-Router, Otari-Router-Task, Otari-Conversation-Id.
The header has not shipped: no release tag contains #1366. So it can be renamed now, with no deprecation.
Proposal
Rename it to Otari-Code-Execution. The literal appears in these files on main:
src/gateway/api/routes/_tools.py, src/gateway/api/routes/_pipeline.py
src/gateway/core/config.py and src/gateway/services/tenancy/workspace_code_execution_policy_service.py (field descriptions)
src/gateway/AGENTS.md, docs/tools.md
tests/integration/test_code_execution_executor.py
demo/code-exec/plot_with_openai_sdk.py
- the generated
docs/public/openapi.json and web/src/client/schema.ts
Then regenerate the public artifacts and the dashboard client, as "Generated Artifacts" in AGENTS.md lists them.
Acceptance
Part of #1470.
Problem
#1366 added a request header,
X-Otari-Code-Execution, that picks who runs a provider-native code-execution declaration. It is the constantCODE_EXECUTION_HEADERinapi/routes/_tools.py, read by the chat, messages and responses routes.RFC 6648 (BCP 178) says creators of new parameters "SHOULD NOT prefix their parameter names with 'X-' or similar constructs": https://datatracker.ietf.org/doc/html/rfc6648. Otari's other headers already follow it:
Otari-Key,Otari-Router,Otari-Router-Task,Otari-Conversation-Id.The header has not shipped: no release tag contains #1366. So it can be renamed now, with no deprecation.
Proposal
Rename it to
Otari-Code-Execution. The literal appears in these files onmain:src/gateway/api/routes/_tools.py,src/gateway/api/routes/_pipeline.pysrc/gateway/core/config.pyandsrc/gateway/services/tenancy/workspace_code_execution_policy_service.py(field descriptions)src/gateway/AGENTS.md,docs/tools.mdtests/integration/test_code_execution_executor.pydemo/code-exec/plot_with_openai_sdk.pydocs/public/openapi.jsonandweb/src/client/schema.tsThen regenerate the public artifacts and the dashboard client, as "Generated Artifacts" in
AGENTS.mdlists them.Acceptance
git grep "X-Otari-Code-Execution"finds nothing.Otari-Code-Executionon each of chat, messages and responses, and the choice applies.make openapi-check,make postman-checkand the dashboard client drift check pass.Part of #1470.