@juspay/neurolink 12.22.1 → 12.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,8 +1,15 @@
1
- ## [12.22.1](https://github.com/juspay/neurolink/compare/v12.22.0...v12.22.1) (2026-09-24)
1
+ ## [12.23.0](https://github.com/juspay/neurolink/compare/v12.22.1...v12.23.0) (2026-09-24)
2
+
3
+ ### Features
4
+
5
+ - **(mcp):** let external server registration require a minimum discovered tool count ([178b10f](https://github.com/juspay/neurolink/commit/178b10f6b2e1a3b1fb44dd1de0f4174fca237fb1)), closes [#1621](https://github.com/juspay/neurolink/issues/1621)
6
+ - **(providers):** onboard FriendliAI as a tier-2 catalog provider ([6c3fc67](https://github.com/juspay/neurolink/commit/6c3fc677da2e0e1ab7f42f07cf4073709b11e71d))
2
7
 
3
8
  ### Bug Fixes
4
9
 
5
- - **(pdf):** load one pdfjs-dist so image conversion survives consumer installs ([efcb34c](https://github.com/juspay/neurolink/commit/efcb34c9898181328438ed2ed3c6eef4fb4af55b))
10
+ - **(bedrock):** stop double-emitting generation:end on generate and stream ([5caf5ed](https://github.com/juspay/neurolink/commit/5caf5ed1f8011eb99ca81f499826185c6c9cd555)), closes [#1741](https://github.com/juspay/neurolink/issues/1741)
11
+ - **(catalog):** reject a fallback model that cannot fall back ([a774305](https://github.com/juspay/neurolink/commit/a774305b12e379b022ff57907850f31e0aadb549)), closes [#1648](https://github.com/juspay/neurolink/issues/1648)
12
+ - **(recraft):** label generated image bytes with their real mime type ([dd7604c](https://github.com/juspay/neurolink/commit/dd7604c5289e7c84bb8d744136cc5100b630d812))
6
13
 
7
14
  ## [11.2.3](https://github.com/juspay/neurolink/compare/v11.2.2...v11.2.3) (2026-08-19)
8
15
 
@@ -96,21 +96,26 @@ function normalizeVisionProvider(provider) {
96
96
  }
97
97
  }
98
98
  /**
99
- * Vision-capable models for 8 of the 9 JSON-catalog providers, derived from
100
- * models.catalog[*].vision. Only a provider with ≥1 vision model gets a key
101
- * here — an absent key and a present-but-empty array are handled identically
102
- * by supportsVision()/getSupportedModels()/getVisionProviders() below (all
103
- * three treat "no entry" and "empty array" the same way), so omitting the
104
- * all-empty providers (cerebras, together-ai, fireworks, perplexity — none
105
- * has a vision model in the current catalog) changes nothing at runtime.
99
+ * Derived from 15 of the 16 JSON-catalog providers (every one except
100
+ * Mistral — see below), by reading models.catalog[*].vision. Derivation
101
+ * does not mean vision-capable: only a provider with ≥1 vision model gets a
102
+ * key here, so of those 15 only 8 (api-route, baseten, cerebras, fireworks,
103
+ * groq, io-intelligence, sambanova, xai) currently contribute a row. The
104
+ * other 7 (cloudflare, gmicloud, inception-labs, mancer, perplexity,
105
+ * together-ai, upstage) have no vision model in the current catalog and are
106
+ * omitted — an absent key and a present-but-empty array are handled
107
+ * identically by supportsVision()/getSupportedModels()/getVisionProviders()
108
+ * below (all three treat "no entry" and "empty array" the same way), so
109
+ * omitting them changes nothing at runtime. This list moves as the catalog
110
+ * JSON does; re-derive rather than trust these names to stay current.
106
111
  * Fireworks previously had 3 hand-written vision entries
107
112
  * ("phi-3-vision-128k-instruct", "llama-v3p2-90b/11b-vision-instruct");
108
113
  * none of those model ids exist in the catalog's current (fully refreshed)
109
- * roster, so they are gone along with the rest of that roster, not silently
110
- * dropped by this derivation.
114
+ * roster, but three different models (two Kimi variants, one Qwen) now carry
115
+ * vision: true, so Fireworks is derived here rather than omitted.
111
116
  *
112
- * Mistral is the 9th catalog provider but is excluded here and stays fully
113
- * hand-written in VISION_CAPABILITIES.mistral below: its JSON vision list
117
+ * Mistral is the remaining catalog provider but is excluded here and stays
118
+ * fully hand-written in VISION_CAPABILITIES.mistral below: its JSON vision list
114
119
  * (14 exact model ids) diverges from the hand list in both directions — the
115
120
  * hand list carries bare-name fallback entries ("mistral-small",
116
121
  * "mistral-medium", "magistral-small", "magistral-medium") that widen