Commit Graph

428 Commits

Author SHA1 Message Date
Peter Steinberger b4a26783f7 refactor(test): consolidate duplicated requireRecord and provider HTTP mock helpers (#119982)
* refactor(test): consolidate duplicated test helpers

* test: remove stale record guard import

* fix(test): remove orphaned record guards

* refactor(test): keep record requirement messages exhaustively typed

* fix(test): keep packages/ai record guard package-local
2026-08-06 14:48:01 -07:00
Vincent Koc 2fc2fc930b improve(ollama): reduce inactive startup cost (#119745)
* improve(ollama): defer optional runtime imports

Punchcard-Session: coral-workshop-workshop-3f

* improve(ollama): isolate lazy runtime modules

* improve(ollama): preserve lazy runtime boundaries
2026-08-06 07:40:22 +08:00
Vincent Koc f70821908e fix(ollama): activate the model selected during setup 2026-08-04 09:39:02 +08:00
Michael Christenson II 7f7a709b1d fix: Ollama missing from onboarding when its service is reachable (#118020) 2026-08-03 17:49:31 -06:00
Peter Steinberger 084833b324 fix(search): propagate cancellation through provider-owned requests (#118895) 2026-08-03 12:46:17 -07:00
Peter Steinberger d857c8eebc fix(ollama): scope embedding credentials to the selected host (#118753) 2026-08-03 10:09:12 -07:00
Peter Steinberger 122181649e test(ollama): consolidate model catalog fixtures (#118491) 2026-08-02 22:28:01 -07:00
Vincent Koc 011691f734 fix(ollama): keep resident model rows private 2026-08-03 12:23:52 +08:00
Vincent Koc cba231bff4 fix(ollama): use only loaded models during guided setup 2026-08-03 12:23:52 +08:00
Vincent Koc 04c8d418e6 refactor(ollama): share resident model discovery 2026-08-03 12:23:52 +08:00
Peter Steinberger b653597020 test(ollama): deduplicate web search fixtures (#118328) 2026-08-02 21:00:03 -07:00
Peter Steinberger c3ea28af61 test(ollama): consolidate stream runtime fixtures (#118419) 2026-08-02 20:39:14 -07:00
Peter Steinberger c6ef95604e refactor(ollama): deduplicate memory embedding test fixtures (#118267) 2026-08-02 17:05:37 -07:00
Peter Steinberger 30c79e4db1 fix(inference): prevent lost cancellation, stuck compaction, and runaway tools (#118146)
* fix(inference): preserve cancellations, compaction, and tool-loop safety

* fix(inference): satisfy Codex and mock-provider type checks

* fix(codex): secure tool-free recovery and restricted turns

* fix(codex): satisfy host-prompt provenance lint
2026-08-02 14:42:01 -07:00
zengLingbiao 397e09e1af fix(ollama): cancel unread auth-failure bodies in web search (#117473)
* fix(ollama): cancel unread auth-failure bodies in web search

(cherry picked from commit 881f191fac)

* fix(ollama): avoid waiting on captured response tees

* chore: keep contributor fix out of release changelog

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-08-02 19:44:19 +08:00
Peter Steinberger 35a1777f68 refactor(providers): consolidate catalog setup helpers (#117824)
* refactor(providers): consolidate catalog setup helpers

* fix(huggingface): narrow discovered model entries
2026-08-01 22:17:52 -07:00
Vincent Koc e07d75dc09 perf(models): skip Ollama row runtime loading (#117465) 2026-08-02 00:30:21 +08:00
Peter Steinberger 568ea29d2e refactor(plugins): inherit shared package boundary settings (#117474) 2026-08-01 09:11:09 -07:00
Peter Steinberger 865a7286c8 fix(ollama): honor model requests and pull completion contracts (#117171)
Co-authored-by: Peter Steinberger <steipete@macos.shared>
2026-07-31 20:19:57 -07:00
Vincent Koc 0e24d596c0 improve(setup): clarify local provider actions 2026-08-01 00:26:40 +08:00
Peter Steinberger c2b0def137 fix(ollama): stream native tool call lifecycle (#116809)
Co-authored-by: Peter Steinberger <steipete@macos.shared>
2026-07-31 05:08:10 -07:00
Leon-SK668 86b1e26993 fix(ollama): resolve web search secret refs (#104829)
* fix(ollama): resolve web search secret refs

* fix(ollama): preserve blocked search secret refs

* fix(ollama): share web search credential policy

* fix(ollama): resolve web search secret refs via shared resolver

Route configured models.providers.ollama.apiKey resolution through the
existing shared resolveWebSearchProviderCredential helper so env-backed
SecretRefs resolve for web search, and resolve the ambient OLLAMA_API_KEY
independently of the configured selected-host key so mixed setups still
reach the Ollama Cloud fallback after both selected-host attempts fail
(regression fixed at web-search-provider.ts:195).

Drop the two optional plugin-SDK resolver hooks (provider normalization
and unavailable-configured-ref callback) added earlier: the fix does not
depend on them, so the shared resolver and its generated plugin-SDK
baseline stay identical to main and no new plugin-SDK contract surface is
introduced. Ollama applies its own non-secret-marker filter locally on
the resolver output instead.

Add a mixed-credential regression test (configured host key plus a
distinct ambient OLLAMA_API_KEY reaching the cloud fallback) and drop the
tests for the removed fail-closed-throw behavior.

* fix(ollama): fail closed on unavailable web search refs

* fix(web-search): resolve env shorthand secret refs

* docs(changelog): note Ollama web-search SecretRef fix

* chore(changelog): remove release-owned entry

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-31 17:57:47 +08:00
Peter Steinberger 3d0f02c223 fix(ollama): honor stop sequences and async payload hooks (#116737)
Co-authored-by: Peter Steinberger <steipete@macos.shared>
2026-07-31 02:57:31 -07:00
wahaha1223 a28219bcee fix(ollama): stop oversized stream records from growing memory (#107473)
* fix(ollama): bound pending NDJSON stream records

* chore(changelog): remove release-owned entry

---------

Co-authored-by: wangmiao0668000666 <wang.miao86@xydigit.com>
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-31 17:57:01 +08:00
zw-xysk d2b869eda7 fix(ollama): models advertise tools when /api/show fails (#109971)
* fix(ollama): do not advertise tools when /api/show fails

Failed show responses left capabilities undefined, which
buildOllamaModelDefinition treats as optimistic supportsTools.
Match setup inspect: return empty capabilities instead.

* test(ollama): cover show-fail tools gate including L3 live HTTP

Unit paths for HTTP error/throw plus real 127.0.0.1 server proving
buildOllamaProvider keeps supportsTools false when /api/show 500s.

* fix(ollama): keep reasoning heuristics when /api/show fails

Distinguish failed inspection from authoritative empty capabilities
so tools stay conservative without suppressing model-name reasoning.

* test(ollama): cover three capability states for tools and reasoning

Failed show keeps reasoning heuristics; authoritative [] disables both.

* fix(ollama): propagate showInspectionFailed through setup configs

Setup inspection failures now use the three-state marker instead of
authoritative empty capabilities, keeping tools off and reasoning heuristics.

* test(ollama): setup show-fail keeps tools off and reasoning heuristics

Cover interactive setup when /api/show returns 500 for deepseek-r1.

* fix(ollama): propagate showInspectionFailed through dynamic model resolve

/models add dynamic path now builds failed-show definitions with tools
off while preserving reasoning name heuristics.

* test(ollama): dynamic resolve covers failed /api/show three-state behavior

Mock builder matches production tools/reasoning contract for inspection failure.

* fix(ollama): keep catalog-missing dynamic resolve fail-closed on show failure

Failed /api/show is an existence probe for unresolved models; return undefined so typos/404s stay rejected. Tag-discovered and setup paths keep showInspectionFailed tools-off behavior.

* chore(changelog): remove release-owned entry

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-31 17:37:48 +08:00
NIO 89bfd2150c fix(ollama): use CJK-aware char estimate for usage fallback (#110073)
* fix(ollama): use CJK-aware char estimate for usage fallback

* fix(ollama): keep CJK estimator plugin-private

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-31 17:37:13 +08:00
dwc1997 2c4886ec40 fix(ollama): release failed setup response bodies before returning (#111802)
* fix(ollama): release failed setup response bodies before returning

* chore(changelog): remove release-owned entry

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-31 17:32:36 +08:00
Vincent Koc 94b85cba5f feat(setup): improve local model onboarding 2026-07-31 08:53:13 +08:00
Vincent Koc 0822e8d39e fix(qa): preserve missing Ollama cache telemetry (#116424) 2026-07-30 16:37:54 +00:00
pash-openai e52354ea13 fix(build): pin typebox to a published release (#116333) 2026-07-30 09:58:51 +00:00
Vincent Koc 69f10e72f2 fix(ollama): retry unreachable setup in place (#116210) 2026-07-30 12:23:56 +08:00
Peter Steinberger 8e1ea3048c refactor(ollama): unify model inspection and setup (#115879) 2026-07-29 08:27:41 -04:00
Peter Steinberger 4232126bba chore: update dependencies across workspace (#115677)
* chore(deps): update dependencies

* fix(deps): restore CI compatibility
2026-07-29 05:16:42 -04:00
Peter Steinberger 42e9558110 fix(qa): bound paired-node gateway startup readiness (#115693) 2026-07-29 03:45:56 -04:00
Peter Steinberger f466ad0e71 fix(ollama): keep active streams within their idle timeout (#115648)
Retain the existing guarded-fetch timeout callback while consuming native Ollama NDJSON. Prove active slow HTTP streams remain alive and genuine stalls still expire.

Reconstructed from the independently reviewed contributor fix for #94251.

Co-authored-by: Henry <henrybrewer93@icloud.com>
2026-07-29 02:27:02 -04:00
Peter Steinberger ddd0b48673 refactor: remove 3,527 lines of runtime and test duplication (#115626)
* refactor: remove obsolete runtime and test duplication

* test: preserve typed cron and realtime fixtures
2026-07-29 02:21:20 -04:00
Peter Steinberger 5da5551a5c fix(qa): verify paired Ollama nodes over the gateway (#115644) 2026-07-29 02:18:16 -04:00
Peter Steinberger 032defb172 fix(nodes): cancel paired local inference when callers disconnect (#115624) 2026-07-29 02:00:22 -04:00
Peter Steinberger 98a066c90e fix(agents): project llama.cpp-safe tool schemas (#115598)
Co-authored-by: Jithin Mohandas <mohandasjithin@gmail.com>
2026-07-29 01:33:32 -04:00
Peter Steinberger 1e82025a54 refactor(ollama): unify local model onboarding (#115543)
* refactor(ollama): unify local model onboarding

* fix(ollama): remove obsolete setup max-lines exemption
2026-07-29 01:24:58 -04:00
Peter Steinberger 087f996874 fix(ollama): enforce one paired-node inference deadline (#115558) 2026-07-29 00:59:16 -04:00
Peter Steinberger 25909ef5da fix(ollama): preserve selected model capabilities during onboarding (#115467) 2026-07-28 21:07:48 -04:00
Peter Steinberger 99ec30b44b feat(plugins): catch code-mode drift between catalogs shipping the same model (#115183)
* feat(plugins): catch code-mode drift between catalogs sharing one model

Adds a contract test that groups bundled catalog rows by shared upstream
model and requires every row in a group to declare compat.codeMode once any
sibling does. Rows sharing a model id group automatically; rows under
different ids opt in with the new manifest-only `upstreamModel` marker.

Moves the kimi catalog into its manifest so the scan can see it, and records
the tier reseller catalogs were silently missing as explicit "capable".

* docs: regenerate docs map for the shared-model code-mode section
2026-07-28 08:52:21 -04:00
Peter Steinberger 107bc4f963 fix: make gateway nodes and local inference reliable under stress (#115185) 2026-07-28 08:41:14 -04:00
Peter Steinberger a92f85e642 fix(node): cancel remote commands and stabilize local inference (#114935) 2026-07-28 01:03:25 -04:00
Peter Steinberger 577a0642fa fix(plugin-sdk): classify loopback hosts consistently (#114832)
* fix(plugin-sdk): expose loopback host classifier

* fix(ollama): remove stale host normalizer import

* chore: keep release notes in PR context
2026-07-27 22:55:44 -04:00
Peter Steinberger 9bcc44301b fix(nodes): preserve gateway connections and local inference (#114857) 2026-07-27 22:28:32 -04:00
RileyJJY 6de4b47203 fix(ollama): release failed discovery bodies (#109967)
* fix(ollama): release failed discovery bodies

* test(ollama): prove failed discovery sockets close

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-27 22:20:15 -04:00
Peter Steinberger 778edf0a81 refactor(providers): consolidate compatible replay policies (#114669) 2026-07-27 14:15:53 -04:00
Peter Steinberger 43ff420492 fix(providers): preserve local model discovery and retry ownership (#114582) 2026-07-27 09:14:23 -04:00