Repository navigation
chore: release v0.5.0 - #18
Merged
Merged
Conversation
A gateway that speaks POST /v1/systemone is the proxy case the TypeSafe SDK already has: the key in TYPESAFE_API_KEY, the address in TYPESAFE_BASE_URL, TYPESAFE_DEFAULT_MODEL when the model id differs. Document it as such instead of adding a parallel provider, and make the path first-class: - setup offers "Other System One gateway" when asking which host a pasted key is for, asks for the URL and model, and stores the three variables together; an unusable URL stores nothing. - TYPESAFE_BASE_URL is validated before any request (absolute http(s), no credentials, query or fragment, not ending in /v1/systemone). Failures are a configuration problem in doctor and setup and never echo the value. Supersedes #16, keeping its goal and dropping the separate JEV_CODE_* variable set, the custom retry default, and the unrelated ignore-file changes.
OpenAI opened /v1/decisions to every developer on 2026-10-06 and published a
reference. The request jev-code already sent matches it, so existing setups keep
working; the changes follow what the reference adds:
- A question the model declines comes back as { type: "refusal", name }. The
wire lists those ids under `refused`, and every tool reports the item as
status "refused" with the cautious outcome instead of "invalid_response",
since a retry will not change it.
- Score probabilities are keyed by the level index the API returns.
- doctor quotes a 403 instead of calling it a preview restriction.
- Docs drop the preview caveats; CI runs the live tests against OpenAI when an
OPENAI_API_KEY secret is set.
vitest.config.ts excluded tests/e2e for every run, so `npm run test:e2e` exited with "No test files found" and the CI live job could never exercise a host. Exclude the suite only when JEV_CODE_E2E is unset. Found while running the live tests against OpenAI's Decisions API for v0.5.0; both pass against gpt-6-luna.
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.
What
Release v0.5.0. It carries two features:
/v1/decisionsto every developer on October 6, 2026 and published an API reference. The request jev-code already sent matches it, so existingJEV_CODE_PROVIDER=openaisetups keep working. What the reference adds is handled: a question the model declines ({ "type": "refusal", "name": ... }) is reported asstatus: "refused"with the cautious outcome instead ofinvalid_response, andjev_asklists such ids underrefused. Score probabilities are keyed by the level index the API returns. Docs drop the preview caveats,doctor --livequotes a403instead of calling it a preview restriction, and CI runs the live tests against OpenAI when anOPENAI_API_KEYsecret exists.Commits:
61178cb(#17),da8d682(Decisions API),21e5a1e(a test-runner fix found while testing live), and the release commit (npm version 0.5.0, which synced the plugin manifest, skill metadata,.mcp.json, and the pinned commands in the README and guides, plus the dated changelog heading).Verified live against OpenAI's Decisions API with a temporary key, which was never written to the repository, CI, or this PR:
doctor --livegpt-6-lunanpm run test:e2eexamples/payloadsstatus; score probabilities keyed0to3Testing live exposed that
npm run test:e2enever found the suite:vitest.config.tsexcludedtests/e2efor every run, so the CI live job could not have run either.21e5a1efixes that. Refusals did not occur on these inputs; they are covered by unit tests through the real wire.How to verify
After merging, publish with:
Checklist
npm run checkpassesCHANGELOG.mdentry, dated under 0.5.0