fix(ai-chat): OpenAI Chat Completions for multi-turn + provider settings, stream UX & errors" -m "Live-stand fixes (OpenRouter / OpenAI-compatible):

- openai provider: use .chat() (Chat Completions) instead of the default callable
  (Responses API), which gateways reject on multi-turn -> 400.
- updateAiProviderSettings: assemble settings.ai.provider via jsonb_build_object
  with ::text-cast bound params + jsonb_typeof self-heal (postgres.js was
  double-encoding it into an array; the ::text cast avoids 'could not determine
  data type of parameter').
- chat agent: drop the hard maxOutputTokens cap (truncated complex tool calls);
  keep a tiny cap only on the test-connection ping.
- testConnection + chat stream: surface the real provider error (statusCode+message)
  to logs and the UI instead of generic masks; never log the API key.
- chat UI: typing indicator, incremental streaming render, tool 'running' status, Stop.

Also bundled (prior uncommitted ai-chat work):
- history 'AI agent' provenance badge; vector RAG (pgvector image + page_embeddings
  + AI_QUEUE indexer + space-scoped semanticSearch); external MCP servers backend
  (@ai-sdk/mcp client, SSRF IP-pinning, encrypted headers, admin CRUD/Test);
  yjs duplicate-instance fix via pnpm patch (single CJS instance server-side).
This commit is contained in:
vvzvlad
2026-06-17 04:28:29 +03:00
parent 44b340dc1a
commit a4b7919753
44 changed files with 2633 additions and 122 deletions

16
patches/yjs@13.6.30.patch Normal file
View File

@@ -0,0 +1,16 @@
diff --git a/package.json b/package.json
index f8d58d4b537a80a437a147f85b3929a0a1e7c4b6..de51db494e014d3e08b9108d678c8601c3129b75 100644
--- a/package.json
+++ b/package.json
@@ -28,8 +28,9 @@
"exports": {
".": {
"types": "./dist/src/index.d.ts",
- "module": "./dist/yjs.mjs",
- "import": "./dist/yjs.mjs",
+ "browser": "./dist/yjs.mjs",
+ "module": "./dist/yjs.cjs",
+ "import": "./dist/yjs.cjs",
"require": "./dist/yjs.cjs"
},
"./src/index.js": "./src/index.js",