[codex] Add OpenAI compatibility guardrail report#987
Open
mimeding wants to merge 1 commit intoosaurus-ai:mainfrom
Open
[codex] Add OpenAI compatibility guardrail report#987mimeding wants to merge 1 commit intoosaurus-ai:mainfrom
mimeding wants to merge 1 commit intoosaurus-ai:mainfrom
Conversation
89d100e to
bd1f58f
Compare
Contributor
Author
|
Author-side cleanup complete; this PR is now ready for review. Verification:
Historical failures were from stale DerivedData module resolution and stale FluidAudio locks; current head has the PR cold-DerivedData path and FluidAudio |
3db134b to
ed0e77b
Compare
Business rationale: OpenAI-compatible clients are a key multi-provider harness surface, and maintainers need a repeatable local report that catches response-shape, streaming, tool-call, and validation regressions before users hit them. Coding rationale: the guardrail stays in scripts rather than app code because it exercises a running server as a black-box compatibility contract; Makefile and docs entries make it discoverable, while artifacts under results/openai_compat keep request and response evidence available for review. Co-authored-by: Michael Meding <mmeding@Michaels-Mac-Studio.local>
ed0e77b to
137754e
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Business rationale
OpenAI-compatible clients are part of the Osaurus multi-provider harness, and users notice immediately when familiar Chat Completions response shapes, streaming frames, tool-call deltas, or validation errors drift. This PR gives maintainers a repeatable local report with saved artifacts, so API compatibility changes can be reviewed against concrete evidence instead of manual curl snippets.
Coding rationale
The guardrail stays as a script because it needs to exercise a running Osaurus server as a black-box API contract, not import app internals. The Makefile target gives contributors a stable entry point while still allowing
HOST,MODEL,OUT_DIR, andREQUIRE_TOOL_CALLSoverrides. The script records request, status, headers, body, and streaming chunk artifacts so failures are inspectable after the run. The branch was rebuilt as one clean commit on currentorigin/main, dropping unrelated stale stack history from earlier PR dependencies.What changed
scripts/openai_compat_report.shbeyond streaming-only checks.REQUIRE_TOOL_CALLS=1.n > 1.results/openai_compat/and a Markdown summary atresults/openai_compat_report.mdby default.make compat-openaiand documented it indocs/DEVELOPER_TOOLS.md.Validation
bash -n scripts/openai_compat_report.shshellcheck scripts/openai_compat_report.shmake -n compat-openai HOST=http://localhost:1337 MODEL=foundationgit diff --check HEAD~1..HEADswift build --package-path Packages/OsaurusCoreswift build --package-path Packages/OsaurusCore -c releaseswift test --package-path Packages/OsaurusCore— initial run hit one unrelated suite issue; immediate rerun passed with 1436 tests in 192 suites.Non-scope
Residual risks
REQUIRE_TOOL_CALLS=1is set.