@ggui-ai/protocol 0.6.2 → 0.7.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/dist/errors/resource-read.d.ts +105 -0
- package/dist/errors/resource-read.d.ts.map +1 -0
- package/dist/errors/resource-read.js +107 -0
- package/dist/gadgets/resolve-app-gadgets.d.ts +12 -6
- package/dist/gadgets/resolve-app-gadgets.d.ts.map +1 -1
- package/dist/gadgets/resolve-app-gadgets.js +19 -8
- package/dist/gadgets/stdlib-gadgets.d.ts +1 -1
- package/dist/gadgets/stdlib-gadgets.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/schemas/data-contract.d.ts +26 -20
- package/dist/schemas/data-contract.d.ts.map +1 -1
- package/dist/schemas/data-contract.js +31 -24
- package/dist/schemas/mcp.d.ts +58 -16
- package/dist/schemas/mcp.d.ts.map +1 -1
- package/dist/schemas/mcp.js +58 -12
- package/dist/transport/websocket.d.ts +2 -5
- package/dist/transport/websocket.d.ts.map +1 -1
- package/dist/types/data-contract.d.ts.map +1 -1
- package/dist/types/live-channel.d.ts +14 -37
- package/dist/types/live-channel.d.ts.map +1 -1
- package/dist/types/mcp.d.ts +33 -25
- package/dist/types/mcp.d.ts.map +1 -1
- package/dist/types/mcp.js +19 -2
- package/dist/validation/hygiene-rules.d.ts +2 -2
- package/dist/validation/hygiene-rules.js +2 -2
- package/dist/version.d.ts +177 -0
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +177 -0
- package/package.json +1 -1
package/dist/schemas/mcp.js
CHANGED
|
@@ -7,12 +7,12 @@
|
|
|
7
7
|
* Two consumption patterns, both anchored here:
|
|
8
8
|
*
|
|
9
9
|
* - **Wired raw shapes** (`*InputShape`): handlers in
|
|
10
|
-
* `@ggui-ai/mcp-server-handlers` (and the hosted pod's
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
10
|
+
* `@ggui-ai/mcp-server-handlers` (and the hosted pod's discover
|
|
11
|
+
* tool) import the SHAPE directly as their `inputSchema` and
|
|
12
|
+
* validate with `z.object(shape)` — unknown keys are STRIPPED.
|
|
13
|
+
* The shape is the one authored copy of the validation rules AND
|
|
14
|
+
* the agent-facing `.describe()` strings that ship via
|
|
15
|
+
* `tools/list`.
|
|
16
16
|
*
|
|
17
17
|
* - **Lifecycle triad** (`ggui_handshake` / `ggui_update`): the
|
|
18
18
|
* handlers carry deliberate input divergences (handshake's
|
|
@@ -115,12 +115,6 @@ export const renderBlueprintInputShape = {
|
|
|
115
115
|
export const renderBlueprintInputSchema = z.object(renderBlueprintInputShape);
|
|
116
116
|
export const discoverInputShape = {};
|
|
117
117
|
export const discoverInputSchema = z.object(discoverInputShape);
|
|
118
|
-
export const requestCredentialInputShape = {
|
|
119
|
-
serviceId: z.string().min(1),
|
|
120
|
-
reason: z.string().optional(),
|
|
121
|
-
sessionId: z.string().optional(),
|
|
122
|
-
};
|
|
123
|
-
export const requestCredentialInputSchema = z.object(requestCredentialInputShape);
|
|
124
118
|
// ── Post-Phase-B — canonical tool triad ──
|
|
125
119
|
//
|
|
126
120
|
// `ggui_handshake` → `ggui_render` → `ggui_update` / `ggui_consume`.
|
|
@@ -414,6 +408,58 @@ export const renderErrorSchema = z.object({
|
|
|
414
408
|
.string()
|
|
415
409
|
.describe('Human-readable failure detail — fold into the next attempt or surface to the operator.'),
|
|
416
410
|
});
|
|
411
|
+
/**
|
|
412
|
+
* Canonical failure codes for a `resources/read` on a render locator
|
|
413
|
+
* (`ui://ggui/render/{sessionId}/{blueprintKey}`). Closed enum.
|
|
414
|
+
*
|
|
415
|
+
* This is a DIFFERENT surface from {@link renderErrorCodeSchema}: that
|
|
416
|
+
* one classifies a `ggui_render` tool call that ran and failed, and
|
|
417
|
+
* rides in the tool result. This one classifies a resource read that
|
|
418
|
+
* cannot return a mount, and rides on a JSON-RPC error — a read either
|
|
419
|
+
* yields a live mount or fails, never a successful result wrapping a
|
|
420
|
+
* dead shell. That is what makes the contract host-checkable.
|
|
421
|
+
*
|
|
422
|
+
* - `NOT_FOUND` — no live render and no restorable record. The
|
|
423
|
+
* locator never existed, aged out, was erased, or the caller may
|
|
424
|
+
* not read it. Denial is deliberately reported as absence: a
|
|
425
|
+
* distinguishable "denied" would turn the read into an oracle for
|
|
426
|
+
* the existence of other callers' renders.
|
|
427
|
+
* - `BLUEPRINT_UNRESOLVABLE` — a record exists, but the component
|
|
428
|
+
* behind it cannot be resolved: removed, taken down, or the record
|
|
429
|
+
* carries no component reference at all.
|
|
430
|
+
* - `NOT_SUPPORTED` — this deployment keeps no durable record, so an
|
|
431
|
+
* evicted locator can never be restored. A property of the server,
|
|
432
|
+
* identical for every caller and every locator.
|
|
433
|
+
* - `NOT_MOUNTABLE` — the render resolved, but no delivery channel is
|
|
434
|
+
* available to mount it.
|
|
435
|
+
*/
|
|
436
|
+
export const resourceReadErrorCodeSchema = z.enum([
|
|
437
|
+
'NOT_FOUND',
|
|
438
|
+
'BLUEPRINT_UNRESOLVABLE',
|
|
439
|
+
'NOT_SUPPORTED',
|
|
440
|
+
'NOT_MOUNTABLE',
|
|
441
|
+
]);
|
|
442
|
+
/**
|
|
443
|
+
* Failure shape for a `resources/read` that cannot return a mount.
|
|
444
|
+
* Projected onto a JSON-RPC error by `resourceReadErrorToJsonRpc` —
|
|
445
|
+
* `code` lands on `error.data.code`, so hosts can branch on the
|
|
446
|
+
* classification without parsing prose.
|
|
447
|
+
*
|
|
448
|
+
* `message` is caller-facing and `detail` is operator-facing. NEITHER
|
|
449
|
+
* is preserved on `NOT_FOUND`: the mapper substitutes a constant there
|
|
450
|
+
* so a denied read and a genuine miss are byte-identical on the wire.
|
|
451
|
+
* Put diagnostics for that case in the server's own logs.
|
|
452
|
+
*/
|
|
453
|
+
export const resourceReadErrorSchema = z.object({
|
|
454
|
+
code: resourceReadErrorCodeSchema.describe('Canonical failure class. NOT_FOUND: no live render and no restorable record (also the response when the caller may not read this locator). BLUEPRINT_UNRESOLVABLE: a record exists but the component behind it is gone. NOT_SUPPORTED: this server keeps no durable record, so an evicted locator can never be restored. NOT_MOUNTABLE: the render resolved but no delivery channel is available.'),
|
|
455
|
+
message: z
|
|
456
|
+
.string()
|
|
457
|
+
.describe('Human-readable failure detail. Replaced by a constant on NOT_FOUND.'),
|
|
458
|
+
detail: z
|
|
459
|
+
.string()
|
|
460
|
+
.optional()
|
|
461
|
+
.describe('Extra diagnostic context for operators. Dropped on NOT_FOUND so a denied read cannot be told apart from a miss.'),
|
|
462
|
+
});
|
|
417
463
|
/**
|
|
418
464
|
* Wire-output shape — `{sessionId, resourceUri?, action, contractHash,
|
|
419
465
|
* cache, error?, nextStep?}`. `contractHash` (data-contract identity)
|
|
@@ -22,14 +22,14 @@
|
|
|
22
22
|
*/
|
|
23
23
|
import type { ActionEnvelope } from '../types/events';
|
|
24
24
|
import type { JsonObject } from '../types/data-contract';
|
|
25
|
-
import type { SubscribePayload, AckPayload, ErrorPayload, RenderPayload, StreamEnvelope, PropsUpdatePayload,
|
|
25
|
+
import type { SubscribePayload, AckPayload, ErrorPayload, RenderPayload, StreamEnvelope, PropsUpdatePayload, ChannelSubscribePayload, ChannelUnsubscribePayload, ChannelPayloadFrame, ChannelErrorPayload, DrainAckPayload } from '../types/live-channel';
|
|
26
26
|
import type { HostContextObservedPayload } from '../types/host-context';
|
|
27
27
|
import type { GguiSessionEvent } from '../types/ggui-session-event';
|
|
28
28
|
/**
|
|
29
29
|
* WebSocket message types for client-server communication.
|
|
30
30
|
* Each type maps to a specific payload shape in the {@link WebSocketMessage} discriminated union.
|
|
31
31
|
*/
|
|
32
|
-
export type WebSocketMessageType = 'action' | 'subscribe' | 'ping' | 'pong' | 'ack' | 'error' | 'render' | 'data' | 'props_update' | '
|
|
32
|
+
export type WebSocketMessageType = 'action' | 'subscribe' | 'ping' | 'pong' | 'ack' | 'error' | 'render' | 'data' | 'props_update' | 'channel_subscribe' | 'channel_unsubscribe' | 'channel_payload' | 'channel_error' | 'drain_ack' | 'host_context_observed' | 'render_event';
|
|
33
33
|
/** Fields shared by all WebSocket message variants. */
|
|
34
34
|
interface WsMessageBase {
|
|
35
35
|
requestId?: string;
|
|
@@ -88,9 +88,6 @@ export type WebSocketMessage = (WsMessageBase & {
|
|
|
88
88
|
}) | (WsMessageBase & {
|
|
89
89
|
type: 'props_update';
|
|
90
90
|
payload: PropsUpdatePayload;
|
|
91
|
-
}) | (WsMessageBase & {
|
|
92
|
-
type: 'system';
|
|
93
|
-
payload: SystemPayload;
|
|
94
91
|
}) | (WsMessageBase & {
|
|
95
92
|
type: 'channel_subscribe';
|
|
96
93
|
payload: ChannelSubscribePayload;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../src/transport/websocket.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EACV,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,
|
|
1
|
+
{"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../src/transport/websocket.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-contract.d.ts","sourceRoot":"","sources":["../../src/types/data-contract.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"data-contract.d.ts","sourceRoot":"","sources":["../../src/types/data-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,9 +53,10 @@ export interface SubscribePayload {
|
|
|
53
53
|
* the last envelope the client observed.
|
|
54
54
|
*
|
|
55
55
|
* Honored only by implementations that expose
|
|
56
|
-
* `GguiSessionStreamBuffer`-backed replay.
|
|
57
|
-
*
|
|
58
|
-
*
|
|
56
|
+
* `GguiSessionStreamBuffer`-backed replay. Both first-party
|
|
57
|
+
* deployments do: OSS `@ggui-ai/mcp-server` (in-memory buffer) and
|
|
58
|
+
* hosted cloud (Redis-backed buffer). A deployment that binds no
|
|
59
|
+
* buffer silently ignores the field.
|
|
59
60
|
*/
|
|
60
61
|
fromSeq?: number;
|
|
61
62
|
/**
|
|
@@ -276,11 +277,16 @@ export interface StreamEnvelope {
|
|
|
276
277
|
* `SubscribePayload.fromSeq`);
|
|
277
278
|
* - dedupe deliveries (at-least-once semantics).
|
|
278
279
|
*
|
|
279
|
-
* OPTIONAL because
|
|
280
|
-
*
|
|
281
|
-
*
|
|
282
|
-
*
|
|
283
|
-
*
|
|
280
|
+
* OPTIONAL because stamping is best-effort on two levels: the buffer
|
|
281
|
+
* seam itself is optional, and even a bound buffer only stamps on
|
|
282
|
+
* success. Any implementation backed by a `GguiSessionStreamBuffer`
|
|
283
|
+
* — OSS `@ggui-ai/mcp-server` (in-memory) and hosted cloud
|
|
284
|
+
* (Redis-backed) alike — stamps `seq` on every successfully
|
|
285
|
+
* buffered delivery through the same record-then-broadcast path,
|
|
286
|
+
* but a delivery whose buffer record fails degrades to unstamped
|
|
287
|
+
* rather than blocking the emit. A deployment that binds no buffer
|
|
288
|
+
* at all emits every delivery without `seq`. Clients treat any
|
|
289
|
+
* unstamped delivery as single-shot with no replay possible.
|
|
284
290
|
*/
|
|
285
291
|
seq?: number;
|
|
286
292
|
/**
|
|
@@ -426,35 +432,6 @@ export interface PropsUpdatePayload {
|
|
|
426
432
|
/** New props — full replacement */
|
|
427
433
|
props: JsonObject;
|
|
428
434
|
}
|
|
429
|
-
/**
|
|
430
|
-
* System-level event actions sent from platform to client.
|
|
431
|
-
*
|
|
432
|
-
* - `auth_required` — Agent needs user to authorize an OAuth service.
|
|
433
|
-
* - `credential_ready` — User completed OAuth; credential is available.
|
|
434
|
-
*/
|
|
435
|
-
export type SystemAction = 'auth_required' | 'credential_ready';
|
|
436
|
-
/**
|
|
437
|
-
* Payload for system message (Server → Client).
|
|
438
|
-
* Carries platform-level events such as OAuth consent requests.
|
|
439
|
-
*/
|
|
440
|
-
export interface SystemPayload {
|
|
441
|
-
action: SystemAction;
|
|
442
|
-
serviceId: string;
|
|
443
|
-
/** Human-readable service name (e.g., "Google", "Slack") */
|
|
444
|
-
displayName?: string;
|
|
445
|
-
/** OAuth scopes the agent is requesting */
|
|
446
|
-
scopes?: string[];
|
|
447
|
-
/** URL the user should open to initiate the OAuth consent flow */
|
|
448
|
-
consentUrl?: string;
|
|
449
|
-
/** Human-readable message explaining why access is needed */
|
|
450
|
-
message?: string;
|
|
451
|
-
/** Status of the credential (used with credential_ready) */
|
|
452
|
-
status?: string;
|
|
453
|
-
/** App ID requesting access (used with auth_required for app-scoped grants) */
|
|
454
|
-
appId?: string;
|
|
455
|
-
/** GguiSession ID for WebSocket context (used with auth_required) */
|
|
456
|
-
sessionId?: string;
|
|
457
|
-
}
|
|
458
435
|
/**
|
|
459
436
|
* Payload for `drain_ack` (Server → Client). Sent by `ggui_consume` after
|
|
460
437
|
* it pops an `ActionEnvelope` off a render's pending-events pipe, so
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live-channel.d.ts","sourceRoot":"","sources":["../../src/types/live-channel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,KAAK,EACV,UAAU,EACV,SAAS,EACT,iBAAiB,EAClB,MAAM,iBAAiB,CAAC;AAEzB;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;OAUG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB
|
|
1
|
+
{"version":3,"file":"live-channel.d.ts","sourceRoot":"","sources":["../../src/types/live-channel.ts"],"names":[],"mappings":"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"}
|
package/dist/types/mcp.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { z } from 'zod';
|
|
2
2
|
import type { JsonObject, JsonSchema, JsonValue } from './data-contract';
|
|
3
3
|
import type { GguiSession, GguiSessionStatus } from './render';
|
|
4
|
-
import type { consumeInputSchema, getSessionInputSchema, handshakeInputSchema, handshakeOutputSchema, renderBlueprintInputSchema, renderCacheMarkerSchema, renderErrorCodeSchema, renderErrorSchema, renderInputSchema, renderOutputSchema,
|
|
4
|
+
import type { consumeInputSchema, getSessionInputSchema, handshakeInputSchema, handshakeOutputSchema, renderBlueprintInputSchema, renderCacheMarkerSchema, renderErrorCodeSchema, renderErrorSchema, renderInputSchema, renderOutputSchema, resourceReadErrorCodeSchema, resourceReadErrorSchema, searchBlueprintsInputSchema, updateInputSchema, updateOutputSchema, declareToolCatalogOutputSchema } from '../schemas/mcp';
|
|
5
5
|
export type { GguiSessionStatus } from './render';
|
|
6
6
|
/** Target screen size category for responsive layout */
|
|
7
7
|
export type Screen = 'mobile' | 'tablet' | 'desktop' | 'universal';
|
|
@@ -259,28 +259,6 @@ export interface GguiRenderBlueprintOutput {
|
|
|
259
259
|
*/
|
|
260
260
|
contentType: string;
|
|
261
261
|
}
|
|
262
|
-
/**
|
|
263
|
-
* Input for ggui_request_credential — request OAuth consent from the user.
|
|
264
|
-
* Called by agents when MCP proxy returns 401 (credential_required).
|
|
265
|
-
* Derived from `requestCredentialInputSchema`.
|
|
266
|
-
*/
|
|
267
|
-
export type GguiRequestCredentialInput = z.infer<typeof requestCredentialInputSchema>;
|
|
268
|
-
/**
|
|
269
|
-
* Output from ggui_request_credential — consent result.
|
|
270
|
-
*/
|
|
271
|
-
export interface GguiRequestCredentialOutput {
|
|
272
|
-
/** Whether the user granted consent */
|
|
273
|
-
granted: boolean;
|
|
274
|
-
/** Grant mode (once or always) — only present when granted=true */
|
|
275
|
-
mode?: 'once' | 'always';
|
|
276
|
-
/** Service display info */
|
|
277
|
-
service?: {
|
|
278
|
-
name: string;
|
|
279
|
-
icon: string;
|
|
280
|
-
};
|
|
281
|
-
/** Reason for denial (timeout, user denied, error) */
|
|
282
|
-
reason?: string;
|
|
283
|
-
}
|
|
284
262
|
/**
|
|
285
263
|
* MCP JSON-RPC request.
|
|
286
264
|
* Generic `TParams` defaults to {@link JsonObject} for the request parameters.
|
|
@@ -398,6 +376,19 @@ export type RenderErrorCode = z.infer<typeof renderErrorCodeSchema>;
|
|
|
398
376
|
* tool result is `isError: true`. Derived from {@link renderErrorSchema}.
|
|
399
377
|
*/
|
|
400
378
|
export type RenderError = z.infer<typeof renderErrorSchema>;
|
|
379
|
+
/**
|
|
380
|
+
* Canonical failure code for a `resources/read` on a render locator
|
|
381
|
+
* (SPEC §7.9 Plane 1). Derived from
|
|
382
|
+
* {@link resourceReadErrorCodeSchema} — the schema is the source of
|
|
383
|
+
* truth. Distinct from {@link RenderErrorCode}, which classifies a
|
|
384
|
+
* `ggui_render` tool call rather than a resource read.
|
|
385
|
+
*/
|
|
386
|
+
export type ResourceReadErrorCode = z.infer<typeof resourceReadErrorCodeSchema>;
|
|
387
|
+
/**
|
|
388
|
+
* Failure shape for a `resources/read` that cannot return a mount.
|
|
389
|
+
* Derived from {@link resourceReadErrorSchema}.
|
|
390
|
+
*/
|
|
391
|
+
export type ResourceReadError = z.infer<typeof resourceReadErrorSchema>;
|
|
401
392
|
export type GguiUpdateInput = z.infer<typeof updateInputSchema>;
|
|
402
393
|
export type GguiUpdateOutput = z.infer<typeof updateOutputSchema>;
|
|
403
394
|
/**
|
|
@@ -416,8 +407,10 @@ export type DeclareToolCatalogOutput = z.infer<typeof declareToolCatalogOutputSc
|
|
|
416
407
|
* JSON-RPC error. `PRODUCTION_FAILED` is now an in-result tool-error
|
|
417
408
|
* code on the `ggui_render` failure envelope (SPEC §7.9 Plane 3 /
|
|
418
409
|
* §7.1; see {@link RenderErrorCode}). The slot stays unassigned so a
|
|
419
|
-
* future canonical code can't silently collide with stale consumers
|
|
420
|
-
*
|
|
410
|
+
* future canonical code can't silently collide with stale consumers.
|
|
411
|
+
*
|
|
412
|
+
* `-32006` is assigned to `MOUNT_UNAVAILABLE`; new canonical codes come
|
|
413
|
+
* at `-32007` onwards.
|
|
421
414
|
*/
|
|
422
415
|
export declare const MCP_ERROR_CODES: {
|
|
423
416
|
readonly PARSE_ERROR: -32700;
|
|
@@ -429,6 +422,21 @@ export declare const MCP_ERROR_CODES: {
|
|
|
429
422
|
readonly SESSION_NOT_FOUND: -32002;
|
|
430
423
|
readonly APP_NOT_FOUND: -32003;
|
|
431
424
|
readonly CAPABILITY_DENIED: -32005;
|
|
425
|
+
/**
|
|
426
|
+
* A `resources/read` identified the resource but cannot return a
|
|
427
|
+
* mount for it — the component behind it is gone, the server keeps no
|
|
428
|
+
* durable record to restore from, or nothing can deliver it. See
|
|
429
|
+
* {@link ResourceReadErrorCode} for the classification carried on
|
|
430
|
+
* `error.data.code`.
|
|
431
|
+
*
|
|
432
|
+
* Deliberately NOT `INTERNAL_ERROR`. These outcomes are deterministic
|
|
433
|
+
* and correctly served: the server is working, and retrying the same
|
|
434
|
+
* read will fail the same way. Reporting them as `-32603` would tell
|
|
435
|
+
* hosts the server malfunctioned and invite a retry that cannot
|
|
436
|
+
* succeed. A read for a resource that does not exist (or that the
|
|
437
|
+
* caller may not see) is `SESSION_NOT_FOUND` instead.
|
|
438
|
+
*/
|
|
439
|
+
readonly MOUNT_UNAVAILABLE: -32006;
|
|
432
440
|
};
|
|
433
441
|
/**
|
|
434
442
|
* Platform-specific error codes (-32010 range).
|
package/dist/types/mcp.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/types/mcp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/types/mcp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,2BAA2B,EAC3B,uBAAuB,EACvB,2BAA2B,EAC3B,iBAAiB,EACjB,kBAAkB,EAClB,8BAA8B,EAC/B,MAAM,gBAAgB,CAAC;AAExB,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAQlD,wDAAwD;AACxD,MAAM,MAAM,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;AAEnE;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,YAAY;IAC3B,kDAAkD;IAClD,EAAE,EAAE,MAAM,CAAC;IACX;;;;OAIG;IACH,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAAC;IACrC;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAElE;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,aAAa,CAAC,QAAQ,GAAG,SAAS;IACjD,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,OAAO,EAAE,QAAQ,CAAC;IAElB;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,kEAAkE;IAClE,QAAQ,EAAE,OAAO,CAAC;IAElB;;;;;OAKG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAID;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAExE;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,WAAW,CAAC;AAM/C;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,iBAAiB;IAChC,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,wCAAwC;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,iEAAiE;IACjE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE,SAAS,GAAG,IAAI,CAAC;IACtC;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,kEAAkE;IAClE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,uDAAuD;IACvD,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B;6EACyE;IACzE,MAAM,EAAE,iBAAiB,CAAC;IAC1B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,mBAAmB,EAAE,qBAAqB,CAAC;KAC1E,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAC7C,OAAO,2BAA2B,CACnC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,+CAA+C;IAC/C,OAAO,EAAE,KAAK,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,OAAO,CAAC;YAAC,WAAW,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACrF,SAAS,EAAE,MAAM,EAAE,CAAC;QACpB,0EAA0E;QAC1E,QAAQ,EAAE,OAAO,CAAC;QAClB,SAAS,EAAE,OAAO,CAAC;QACnB;6EACqE;QACrE,KAAK,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;IACH,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAC5C,OAAO,0BAA0B,CAClC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,WAAW,yBAAyB;IACxC,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,kCAAkC;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB;AAMD;;;GAGG;AACH,MAAM,WAAW,UAAU,CAAC,OAAO,GAAG,UAAU;IAC9C,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW,CAAC,OAAO,GAAG,SAAS;IAC9C,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,+EAA+E;IAC/E,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,UAAU;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACvC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IAEF,YAAY,CAAC,EAAE;QACb,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACxC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;CAC/B;AAUD,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACtE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAExE;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE;QACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;KACtB,CAAC;IACF;;;;;OAKG;IACH,QAAQ,CAAC,yBAAyB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACxD;AAED,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAElE;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAElE;;;;;;GAMG;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAMtF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;IAW1B;;;;;;;;;;;;;OAaG;;CAEK,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;;;;;CAMvB,CAAC"}
|
package/dist/types/mcp.js
CHANGED
|
@@ -9,8 +9,10 @@
|
|
|
9
9
|
* JSON-RPC error. `PRODUCTION_FAILED` is now an in-result tool-error
|
|
10
10
|
* code on the `ggui_render` failure envelope (SPEC §7.9 Plane 3 /
|
|
11
11
|
* §7.1; see {@link RenderErrorCode}). The slot stays unassigned so a
|
|
12
|
-
* future canonical code can't silently collide with stale consumers
|
|
13
|
-
*
|
|
12
|
+
* future canonical code can't silently collide with stale consumers.
|
|
13
|
+
*
|
|
14
|
+
* `-32006` is assigned to `MOUNT_UNAVAILABLE`; new canonical codes come
|
|
15
|
+
* at `-32007` onwards.
|
|
14
16
|
*/
|
|
15
17
|
export const MCP_ERROR_CODES = {
|
|
16
18
|
PARSE_ERROR: -32700,
|
|
@@ -23,6 +25,21 @@ export const MCP_ERROR_CODES = {
|
|
|
23
25
|
SESSION_NOT_FOUND: -32002,
|
|
24
26
|
APP_NOT_FOUND: -32003,
|
|
25
27
|
CAPABILITY_DENIED: -32005,
|
|
28
|
+
/**
|
|
29
|
+
* A `resources/read` identified the resource but cannot return a
|
|
30
|
+
* mount for it — the component behind it is gone, the server keeps no
|
|
31
|
+
* durable record to restore from, or nothing can deliver it. See
|
|
32
|
+
* {@link ResourceReadErrorCode} for the classification carried on
|
|
33
|
+
* `error.data.code`.
|
|
34
|
+
*
|
|
35
|
+
* Deliberately NOT `INTERNAL_ERROR`. These outcomes are deterministic
|
|
36
|
+
* and correctly served: the server is working, and retrying the same
|
|
37
|
+
* read will fail the same way. Reporting them as `-32603` would tell
|
|
38
|
+
* hosts the server malfunctioned and invite a retry that cannot
|
|
39
|
+
* succeed. A read for a resource that does not exist (or that the
|
|
40
|
+
* caller may not see) is `SESSION_NOT_FOUND` instead.
|
|
41
|
+
*/
|
|
42
|
+
MOUNT_UNAVAILABLE: -32006,
|
|
26
43
|
};
|
|
27
44
|
/**
|
|
28
45
|
* Platform-specific error codes (-32010 range).
|
|
@@ -196,8 +196,8 @@ export declare function checkGadgetHookNames(contract: DataContract): HygieneWar
|
|
|
196
196
|
export declare function checkDuplicateGadgetHooks(contract: DataContract): HygieneWarning[];
|
|
197
197
|
/**
|
|
198
198
|
* Registry-side catalog lint — runs on an `App.gadgets` descriptor
|
|
199
|
-
* array at registration time (ggui.json load,
|
|
200
|
-
*
|
|
199
|
+
* array at registration time (ggui.json load, config push,
|
|
200
|
+
* `ggui gadget install`). Pure function; returns warnings. The caller
|
|
201
201
|
* (registration handler) treats any code in
|
|
202
202
|
* {@link FATAL_CATALOG_LINT_CODES} as a hard reject.
|
|
203
203
|
*
|
|
@@ -381,8 +381,8 @@ export function checkDuplicateGadgetHooks(contract) {
|
|
|
381
381
|
}
|
|
382
382
|
/**
|
|
383
383
|
* Registry-side catalog lint — runs on an `App.gadgets` descriptor
|
|
384
|
-
* array at registration time (ggui.json load,
|
|
385
|
-
*
|
|
384
|
+
* array at registration time (ggui.json load, config push,
|
|
385
|
+
* `ggui gadget install`). Pure function; returns warnings. The caller
|
|
386
386
|
* (registration handler) treats any code in
|
|
387
387
|
* {@link FATAL_CATALOG_LINT_CODES} as a hard reject.
|
|
388
388
|
*
|
package/dist/version.d.ts
CHANGED
|
@@ -6,6 +6,183 @@
|
|
|
6
6
|
* schema change; the most recent change anchors {@link PROTOCOL_VERSION}.
|
|
7
7
|
*
|
|
8
8
|
* --------------------------------------------------------------------
|
|
9
|
+
* Typed `resources/read` failures (2026-08-09, additive, pre-launch,
|
|
10
|
+
* ggui#430). A read of a render locator
|
|
11
|
+
* (`ui://ggui/render/{sessionId}/{blueprintKey}`) gains a closed failure
|
|
12
|
+
* union and a canonical JSON-RPC number, so the read has exactly two
|
|
13
|
+
* exits: a live mount, or a typed error. Before this, an unresolvable
|
|
14
|
+
* read returned a SUCCESS-shaped result carrying a loading shell that
|
|
15
|
+
* would never come alive — the same class of defect ruling B fixed for
|
|
16
|
+
* `ggui_render`, on the resource surface instead of the tool surface.
|
|
17
|
+
*
|
|
18
|
+
* rr1. **New closed enum `ResourceReadErrorCode`** = NOT_FOUND |
|
|
19
|
+
* BLUEPRINT_UNRESOLVABLE | NOT_SUPPORTED | NOT_MOUNTABLE, with
|
|
20
|
+
* `resourceReadErrorSchema {code, message, detail?}`. Deliberately
|
|
21
|
+
* NOT an extension of `renderErrorCodeSchema` (rb2): that enum
|
|
22
|
+
* classifies a `ggui_render` tool call that ran and failed and
|
|
23
|
+
* rides IN the tool result; this one classifies a resource read
|
|
24
|
+
* and rides ON a JSON-RPC error. Two surfaces, two closed enums,
|
|
25
|
+
* same UPPER_SNAKE house style.
|
|
26
|
+
*
|
|
27
|
+
* rr2. **`-32006 MOUNT_UNAVAILABLE` claimed** — the first draw from
|
|
28
|
+
* the `-32006` onwards range that rb4 reserved when it retired
|
|
29
|
+
* `-32004`. The next free canonical slot is `-32007`. It covers
|
|
30
|
+
* BLUEPRINT_UNRESOLVABLE / NOT_SUPPORTED / NOT_MOUNTABLE.
|
|
31
|
+
* Deliberately NOT `INTERNAL_ERROR`: a component that is gone, a
|
|
32
|
+
* server that keeps no durable record, and a render with no
|
|
33
|
+
* delivery channel are all deterministic outcomes of a correctly
|
|
34
|
+
* functioning server, and `-32603` would report a malfunction and
|
|
35
|
+
* invite a retry that cannot succeed. The fine-grained class rides
|
|
36
|
+
* on `error.data.code`.
|
|
37
|
+
*
|
|
38
|
+
* rr3. **NOT_FOUND maps to `-32002`**, which MCP uses for a missing
|
|
39
|
+
* resource and which this table already assigns to a missing
|
|
40
|
+
* session — for a locator keyed by `sessionId` those are one
|
|
41
|
+
* condition, not two.
|
|
42
|
+
*
|
|
43
|
+
* rr4. **NOT_FOUND carries a CONSTANT body.** The mapper substitutes
|
|
44
|
+
* a fixed message and drops `detail`, so a read refused by the
|
|
45
|
+
* authorization check and a read of a locator that never existed
|
|
46
|
+
* are byte-identical on the wire. Anything that varies between the
|
|
47
|
+
* two makes the read an existence oracle for other callers'
|
|
48
|
+
* renders. The mapper closes the message half; the ordering half
|
|
49
|
+
* is a server obligation — a branch whose outcome VARIES WITH THE
|
|
50
|
+
* LOCATOR MUST NOT run before the authorization check, because
|
|
51
|
+
* reaching one tells the caller the locator resolved for somebody.
|
|
52
|
+
* A deployment-global answer is not such a branch: NOT_SUPPORTED
|
|
53
|
+
* is identical for every locator on the server that emits it, so
|
|
54
|
+
* answering it early discloses nothing. (Scoped this way in the
|
|
55
|
+
* same slice the conformance catalog landed, which grades the
|
|
56
|
+
* indistinguishability the rule exists to produce and deliberately
|
|
57
|
+
* does not grade ordering. The unscoped form would have declared
|
|
58
|
+
* a correct substrate-less server non-conformant.)
|
|
59
|
+
*
|
|
60
|
+
* rr5. **A read that cannot mount is now an ERROR, not a
|
|
61
|
+
* success-shaped shell.** This is the observable wire change, and
|
|
62
|
+
* it is what rr1–rr4 exist to give a shape to. Every failure
|
|
63
|
+
* branch of the render-locator read used to return a result whose
|
|
64
|
+
* `contents` carried a loading shell — a page that waited forever
|
|
65
|
+
* for a render that was never coming. Those branches now throw,
|
|
66
|
+
* and the transport serializes them as the JSON-RPC errors above;
|
|
67
|
+
* the shell builder behind them is DELETED rather than left
|
|
68
|
+
* unreferenced, so no branch can produce one. Reads that CAN
|
|
69
|
+
* mount are unchanged byte for byte. A host that treated any
|
|
70
|
+
* successful read as mountable was right only by accident and is
|
|
71
|
+
* now right by construction; a host that never handled the error
|
|
72
|
+
* exit at all now has one to handle. The invariant this buys is
|
|
73
|
+
* the whole point: any successful `contents` result IS a live
|
|
74
|
+
* mount.
|
|
75
|
+
*
|
|
76
|
+
* Conformance-kit verdict: additive, minor-intent while `draft-`, so
|
|
77
|
+
* PROTOCOL_VERSION is unchanged — no WS envelope moved, and the change
|
|
78
|
+
* is confined to the MCP resource surface (same reasoning as rb's stamp
|
|
79
|
+
* adjudication).
|
|
80
|
+
*
|
|
81
|
+
* The kit arbitrates this surface now. `resource-read-conformance` in
|
|
82
|
+
* `@ggui-ai/protocol-conformance` binds the `resources/read` method:
|
|
83
|
+
* `runResourceReadConformance()` drives an adopter-supplied scenario
|
|
84
|
+
* driver through a 12-case catalog and grades the two numbers (rr1–rr3),
|
|
85
|
+
* the closed classification on `error.data.code`, NOT_FOUND's absent
|
|
86
|
+
* `detail` and constant message (rr4), the refused-equals-missing byte
|
|
87
|
+
* identity across every server shape, and rr5's invariant on a live row
|
|
88
|
+
* and a re-minted one alike. What it does NOT arbitrate is `tools/call`:
|
|
89
|
+
* no driver is bound to that method, so the `ggui_consume` and
|
|
90
|
+
* `ggui_emit` obligations stay kit-invisible and this entry closes
|
|
91
|
+
* nothing for them.
|
|
92
|
+
*
|
|
93
|
+
* Because that catalog exists and ships, the package-version decision
|
|
94
|
+
* below is stated outright rather than made conditional on a driver
|
|
95
|
+
* that has yet to arrive.
|
|
96
|
+
*
|
|
97
|
+
* Five things stay ungraded on purpose and MUST NOT be read as
|
|
98
|
+
* obligations: the ORDER in which a substrate-less server answers
|
|
99
|
+
* NOT_SUPPORTED; `detail` wording on any code; the NOT_FOUND message
|
|
100
|
+
* literal (its constancy is the obligation, not its prose); `-32603`
|
|
101
|
+
* message text; and the NUMBER a URI naming no locator receives —
|
|
102
|
+
* including negatively, since MCP itself assigns the resource-missing
|
|
103
|
+
* number to a read of a URI a server does not serve, and banning it
|
|
104
|
+
* would make every framework that leans on that assignment
|
|
105
|
+
* non-conformant. On that last one the law is classification-only:
|
|
106
|
+
* such a URI MUST NOT carry one of the four codes on `error.data.code`.
|
|
107
|
+
*
|
|
108
|
+
* Package version — the classification is MADE here, not deferred.
|
|
109
|
+
* The resource-read surface and the new canonical code are a MINOR for
|
|
110
|
+
* the `@ggui-ai/*` wave: additive under the version policy's minor rule
|
|
111
|
+
* (every fixture that passed against the current wave still passes; the
|
|
112
|
+
* delta is new surface), pre-1.0 and pre-launch. TWO packages carry
|
|
113
|
+
* minor-class changes into that wave — `@ggui-ai/protocol` (the closed
|
|
114
|
+
* enum, the canonical number, the projection) and
|
|
115
|
+
* `@ggui-ai/protocol-conformance` (the catalog that decides them).
|
|
116
|
+
*
|
|
117
|
+
* What is deferred is only the mechanical write. Every `@ggui-ai/*`
|
|
118
|
+
* package carries ONE wave version, and a wave cut moves all of them to
|
|
119
|
+
* it in a single commit — no package's number can move on its own — so
|
|
120
|
+
* the release owner takes both bumps together at the next cut. One
|
|
121
|
+
* deferral, one owner, two named packages. Nothing about what the
|
|
122
|
+
* change IS remains open.
|
|
123
|
+
*
|
|
124
|
+
* #457 (2026-08-10): the substrate stores' `durability` declaration —
|
|
125
|
+
* a MINOR surface that SHIPPED IN 0.7.0 (the wave was published from
|
|
126
|
+
* main after it landed; an earlier revision of this note deferred it
|
|
127
|
+
* to the next cut, which the publish overtook). `@ggui-ai/mcp-server-core`
|
|
128
|
+
* adds a required member to three published ports (pre-launch
|
|
129
|
+
* no-compat: every in-tree impl moved in the same slice; out-of-tree
|
|
130
|
+
* implementors add one literal) and `@ggui-ai/protocol-conformance`
|
|
131
|
+
* adds the `all-ephemeral` wiring arm + its fusion case (additive —
|
|
132
|
+
* the catalog's public-API additive-only rule holds; the SPEC §7.10.4
|
|
133
|
+
* amendment defines "durable" as declared, which was previously
|
|
134
|
+
* undefined, not different).
|
|
135
|
+
*
|
|
136
|
+
* On the kit's half, one thing is worth saying plainly rather than
|
|
137
|
+
* calling its delta "purely additive": `parseCase` rejects unknown
|
|
138
|
+
* keys, so a case file with a typo'd key throws instead of being
|
|
139
|
+
* quietly ignored. That strictness is free on a sub-module with no
|
|
140
|
+
* prior published version — nothing can be built against it yet — but
|
|
141
|
+
* extending it over the existing fixture catalog would be a MAJOR, not
|
|
142
|
+
* a minor, and must be adjudicated as one.
|
|
143
|
+
*
|
|
144
|
+
* --------------------------------------------------------------------
|
|
145
|
+
* Credential-broker surface retired (2026-08-08, BREAKING, pre-launch,
|
|
146
|
+
* ggui#436). The `system` frame's auth vocabulary and the
|
|
147
|
+
* `ggui_request_credential` tool leave the protocol entirely.
|
|
148
|
+
* Credential ceremony for an agent's own MCP tools is the AGENT HOST's
|
|
149
|
+
* responsibility — it owns the runtime, the user relationship, and the
|
|
150
|
+
* consent chrome. ggui's wire deliberately carries no auth frames.
|
|
151
|
+
*
|
|
152
|
+
* rc1. **`SystemPayload` / `SystemAction` deleted**, and `'system'`
|
|
153
|
+
* leaves `WebSocketMessageType` + the `WebSocketMessage` union.
|
|
154
|
+
* The vocabulary was `auth_required` / `credential_ready` and
|
|
155
|
+
* nothing else — with the broker gone there is no other action to
|
|
156
|
+
* carry, so the frame class dies with it rather than surviving as
|
|
157
|
+
* an empty discriminator.
|
|
158
|
+
*
|
|
159
|
+
* rc2. **`requestCredentialInputSchema` /
|
|
160
|
+
* `requestCredentialInputShape` / `GguiRequestCredentialInput` /
|
|
161
|
+
* `GguiRequestCredentialOutput` deleted.** The only handler that
|
|
162
|
+
* ever implemented the tool (the hosted pod's
|
|
163
|
+
* `tools/request-credential.ts`) was deleted the day before in
|
|
164
|
+
* the same issue: it pushed its consent overlay through an API
|
|
165
|
+
* Gateway WebSocket leg the pod never had, so the tool could not
|
|
166
|
+
* function. `ggui_request_credential` is appended to the
|
|
167
|
+
* mcp-server RETIRED_TOOL_NAMES regression lock.
|
|
168
|
+
*
|
|
169
|
+
* rc3. **Client lanes deleted, not stubbed.** `@ggui-ai/react`'s
|
|
170
|
+
* `GguiRenderProps.onSystemMessage` (+ its dispatch arm),
|
|
171
|
+
* `@ggui-ai/iframe-runtime`'s `channels/system.ts` handler and
|
|
172
|
+
* its `auth-required` `ObservabilityEvent` arm
|
|
173
|
+
* (`AuthRequiredEvent`), and both SDKs' `SystemPayload` /
|
|
174
|
+
* `SystemAction` re-exports go. The observability event was a
|
|
175
|
+
* projection of `SystemPayload` — with no payload to project it
|
|
176
|
+
* has no producer.
|
|
177
|
+
*
|
|
178
|
+
* Conformance-kit verdict: no kit fixture asserted the `system` frame
|
|
179
|
+
* and no first-party server ever emitted one (the pod's broker was the
|
|
180
|
+
* only would-be emitter and it was pre-transport dead) — same posture
|
|
181
|
+
* as the 2026-07-27 dead-vocabulary entry. PROTOCOL_VERSION unchanged;
|
|
182
|
+
* rolling it would force a lockstep UPGRADE_REQUIRED break on every
|
|
183
|
+
* pinned client to version a frame class that never flew.
|
|
184
|
+
*
|
|
185
|
+
* --------------------------------------------------------------------
|
|
9
186
|
* Ops-tool console-parity slice (2026-07-29, BREAKING on the ops
|
|
10
187
|
* surface only, pre-launch, ggui#400). Rename ledger — same treatment
|
|
11
188
|
* as the `ggui_ops_register_blueprint` → `ggui_ops_save_library_blueprint`
|
package/dist/version.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsmFG;AACH,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,uBAAuB,qBAAmB,CAAC;AAExD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,yBAAyB,EAAE,SAAS,MAAM,EAErD,CAAC"}
|