fix(translator): ESM-safe registry + tool-id pairing + responses max_tokens; add real-creds tests
- translator/index.js: replace require() with static side-effect imports (ESM-safe), lazy-init registry maps to survive circular import order - openai-responses->openai: map max_output_tokens -> max_tokens (avoid leaking field upstream) - gemini/antigravity -> openai: derive deterministic tool_call id from name so functionCall/functionResponse pair correctly (fixes provider tool-pairing 400s) - add offline unit tests (finish-reason, usage, session-manager, ollama malformed args, const guard) - add real-creds integration tests (provider-cases + all-formats matrix: 6 inbound formats x 4 scenarios) Includes co-located provider registry refactor (pricing/capabilities/media providers) and sessionManager updates. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -27,7 +27,7 @@ describe("Antigravity → OpenAI", () => {
|
||||
|
||||
// antigravity-to-openai.js:167 — functionCall without id gets a random Date.now() id
|
||||
// KNOWN BUG: unstable id breaks matching with its functionResponse
|
||||
it.fails("functionCall without id keeps a stable matchable id", () => {
|
||||
it("functionCall without id keeps a stable matchable id", () => {
|
||||
const out = AG2O({
|
||||
contents: [
|
||||
{ role: "model", parts: [{ functionCall: { name: "search", args: { q: "x" } } }] },
|
||||
|
||||
Reference in New Issue
Block a user