@ggui-ai/mcp-server-handlers 0.5.0-rc.2 → 0.6.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.
@@ -114,7 +114,7 @@ interface StreamEntry {
114
114
  \`\`\`
115
115
 
116
116
  In the source, declare with \`const stream = useStream<PayloadType>('channel')\`
117
- and read latest as \`stream.latest\` or iterate \`stream.history\`.
117
+ and read latest as \`stream.latest\` or iterate \`stream.all\`.
118
118
 
119
119
  ## AgentCapabilitiesSpec entry
120
120
 
@@ -136,7 +136,20 @@ export function createSearchBlueprintsHandler(deps) {
136
136
  * never surfaced with coerced labels.
137
137
  */
138
138
  async function searchSemantic(deps, scope, query, limit) {
139
- const vector = await deps.embedding.embed(query);
139
+ // An unavailable embedding provider (e.g. the local model failed its
140
+ // native load) must degrade to "no semantic hits", never fail the
141
+ // whole merged search — the manifest branch is embedding-independent
142
+ // by contract and its hits must survive. This branch races the
143
+ // manifest branch in a Promise.all, so a rejection here would
144
+ // otherwise discard the manifest's correct results (bit us 2026-08-04
145
+ // when a dual-sharp libvips collision broke the local embedder in CI).
146
+ let vector;
147
+ try {
148
+ vector = await deps.embedding.embed(query);
149
+ }
150
+ catch {
151
+ return [];
152
+ }
140
153
  const raw = await deps.vectors.query(scope, vector, limit);
141
154
  const hits = [];
142
155
  for (const r of raw) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ggui-ai/mcp-server-handlers",
3
- "version": "0.5.0-rc.2",
3
+ "version": "0.6.0",
4
4
  "description": "MCP tool handler logic for the ggui protocol. Pure over @ggui-ai/mcp-server-core seams and consumed by @ggui-ai/mcp-server. Never imports AWS, HTTP transports, or CLI concerns.",
5
5
  "keywords": [
6
6
  "ggui",
@@ -69,17 +69,17 @@
69
69
  },
70
70
  "dependencies": {
71
71
  "zod": "^4.3.6",
72
- "@ggui-ai/ui-registry": "0.5.0-rc.2",
73
- "@ggui-ai/ui-gen": "0.5.0-rc.2",
74
- "@ggui-ai/negotiator": "0.5.0-rc.2",
75
- "@ggui-ai/mcp-server-core": "0.5.0-rc.2",
76
- "@ggui-ai/protocol": "0.5.0-rc.2"
72
+ "@ggui-ai/protocol": "0.6.0",
73
+ "@ggui-ai/ui-gen": "0.6.0",
74
+ "@ggui-ai/ui-registry": "0.6.0",
75
+ "@ggui-ai/negotiator": "0.6.0",
76
+ "@ggui-ai/mcp-server-core": "0.6.0"
77
77
  },
78
78
  "devDependencies": {
79
79
  "@types/node": "^22.0.0",
80
80
  "typescript": "^5.0.0",
81
81
  "vitest": "^3.2.6",
82
- "@ggui-ai/protocol-conformance": "0.5.0-rc.2"
82
+ "@ggui-ai/protocol-conformance": "0.6.0"
83
83
  },
84
84
  "repository": {
85
85
  "type": "git",