@ggui-ai/protocol 0.4.0-rc.0 → 0.5.0-rc.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/gadgets/stdlib-gadgets.d.ts +1 -1
- package/dist/gadgets/stdlib-gadgets.js +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/schemas/ops-blueprint.d.ts +1 -1
- package/dist/schemas/ops-blueprint.js +1 -1
- package/dist/types/render.d.ts +0 -5
- package/dist/types/render.d.ts.map +1 -1
- package/dist/version.d.ts +82 -0
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +82 -0
- package/package.json +1 -1
- package/dist/types/capabilities.d.ts +0 -40
- package/dist/types/capabilities.d.ts.map +0 -1
- package/dist/types/capabilities.js +0 -19
|
@@ -12,7 +12,7 @@ export declare const STDLIB_GADGETS_PACKAGE = "@ggui-ai/gadgets";
|
|
|
12
12
|
* in `@ggui-ai/gadgets` asserts the two stay in sync, so a release-time
|
|
13
13
|
* bump to the runtime package without updating this constant fails CI.
|
|
14
14
|
*/
|
|
15
|
-
export declare const STDLIB_GADGETS_VERSION = "0.
|
|
15
|
+
export declare const STDLIB_GADGETS_VERSION = "0.5.0-rc.0";
|
|
16
16
|
/**
|
|
17
17
|
* v1 catalog of stdlib gadget descriptors. Every entry's
|
|
18
18
|
* `package` defaults to {@link STDLIB_GADGETS_PACKAGE}; the
|
|
@@ -39,7 +39,7 @@ export const STDLIB_GADGETS_PACKAGE = '@ggui-ai/gadgets';
|
|
|
39
39
|
* in `@ggui-ai/gadgets` asserts the two stay in sync, so a release-time
|
|
40
40
|
* bump to the runtime package without updating this constant fails CI.
|
|
41
41
|
*/
|
|
42
|
-
export const STDLIB_GADGETS_VERSION = '0.
|
|
42
|
+
export const STDLIB_GADGETS_VERSION = '0.5.0-rc.0';
|
|
43
43
|
/**
|
|
44
44
|
* v1 catalog of stdlib gadget descriptors. Every entry's
|
|
45
45
|
* `package` defaults to {@link STDLIB_GADGETS_PACKAGE}; the
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAI/B,cAAc,sBAAsB,CAAC;AAOrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AAIxC,cAAc,qBAAqB,CAAC;AAIpC,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAK5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAMlE,YAAY,EAEV,SAAS,EACT,YAAY,EACZ,eAAe,EACf,YAAY,EAEZ,WAAW,EACX,eAAe,EAEf,UAAU,GACX,MAAM,gBAAgB,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAI/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AAKnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uCAAuC,CAAC;AACtD,cAAc,qCAAqC,CAAC;AACpD,cAAc,qCAAqC,CAAC;AACpD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC;AAClD,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,oCAAoC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Zod input + output schemas for the operator-class blueprint tools.
|
|
3
|
-
* Four tools, all `audience: 'ops'`, all served on `/
|
|
3
|
+
* Four tools, all `audience: 'ops'`, all served on `/control`:
|
|
4
4
|
*
|
|
5
5
|
* - `ggui_ops_generate_blueprint` — author a new blueprint by
|
|
6
6
|
* dispatching through the registry's selected generator and
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Zod input + output schemas for the operator-class blueprint tools.
|
|
3
|
-
* Four tools, all `audience: 'ops'`, all served on `/
|
|
3
|
+
* Four tools, all `audience: 'ops'`, all served on `/control`:
|
|
4
4
|
*
|
|
5
5
|
* - `ggui_ops_generate_blueprint` — author a new blueprint by
|
|
6
6
|
* dispatching through the registry's selected generator and
|
package/dist/types/render.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { CapabilityPermissions, QualityMetadata } from './capabilities';
|
|
2
1
|
import type { KNOWN_PERMISSION_NAMES } from '../validation/hygiene-rules';
|
|
3
2
|
import type { PropsSpec, StreamSpec, ActionSpec, ContextSpec, ClientCapabilitiesSpec, GadgetDescriptor, JsonSchema, JsonObject } from './data-contract';
|
|
4
3
|
import type { EndUserIdentity } from './auth';
|
|
@@ -182,10 +181,6 @@ export interface ComponentGguiSession<TProps = JsonObject> extends GguiSessionBa
|
|
|
182
181
|
readonly message?: string;
|
|
183
182
|
/** JSON Schema for validating user-submitted form data. */
|
|
184
183
|
readonly schema?: JsonSchema;
|
|
185
|
-
/** Capability permissions granted to this component. */
|
|
186
|
-
readonly capabilities?: CapabilityPermissions;
|
|
187
|
-
/** Quality evaluation metadata. */
|
|
188
|
-
readonly quality?: QualityMetadata;
|
|
189
184
|
/** Generation error message (populated on failure). */
|
|
190
185
|
readonly error?: string;
|
|
191
186
|
/** Stream contract — describes what data the component accepts in
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/types/render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/types/render.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -6,6 +6,75 @@
|
|
|
6
6
|
* schema change; the most recent change anchors {@link PROTOCOL_VERSION}.
|
|
7
7
|
*
|
|
8
8
|
* --------------------------------------------------------------------
|
|
9
|
+
* Ops-tool console-parity slice (2026-07-29, BREAKING on the ops
|
|
10
|
+
* surface only, pre-launch, ggui#400). Rename ledger — same treatment
|
|
11
|
+
* as the `ggui_ops_register_blueprint` → `ggui_ops_save_library_blueprint`
|
|
12
|
+
* split and the r4.1 `ggui_runtime_refresh_bootstrap` retirement:
|
|
13
|
+
*
|
|
14
|
+
* op1. **`ggui_ops_rename_app` + `ggui_ops_update_app_system_prompt`
|
|
15
|
+
* → consolidated `ggui_ops_update_app`.** One partial-update tool
|
|
16
|
+
* carries `displayName?` + `systemPrompt?` + `rateLimitPerMinute?`
|
|
17
|
+
* (at least one required). Clearing sentinels: `systemPrompt: ''`
|
|
18
|
+
* clears the override (unchanged semantics); `rateLimitPerMinute:
|
|
19
|
+
* 0` clears the limit — the console client's empty/0 → null
|
|
20
|
+
* normalization moves server-side so the stored column keeps ONE
|
|
21
|
+
* "unlimited" representation. Both old wire names are appended to
|
|
22
|
+
* the mcp-server RETIRED_TOOL_NAMES regression lock. No shims,
|
|
23
|
+
* pre-launch delete-in-same-slice.
|
|
24
|
+
*
|
|
25
|
+
* op2. **New ops wire names** (additive): `ggui_ops_set_app_theme`
|
|
26
|
+
* (validates with the protocol's `appThemeSchema` — the same
|
|
27
|
+
* validator every `GguiApp.theme` write surface runs),
|
|
28
|
+
* `ggui_ops_rename_org` (owner-or-admin), `ggui_ops_remove_org_member`
|
|
29
|
+
* (role-matrix enforced; owner never removable),
|
|
30
|
+
* `ggui_ops_get_org_balance` (any-member read, allowlisted in
|
|
31
|
+
* SINGLE_CALL_OPS), and the app-scoped `appId?` argument on
|
|
32
|
+
* `ggui_ops_set_provider_key` / `ggui_ops_remove_provider_key`
|
|
33
|
+
* (optional seam — deployments without app-scoped key storage
|
|
34
|
+
* reject it with `app_scoped_keys_unavailable`).
|
|
35
|
+
*
|
|
36
|
+
* op3. **My-blueprint curation trio** (additive, cloud-deployment
|
|
37
|
+
* tools beside `ggui_ops_list_my_blueprints`):
|
|
38
|
+
* `ggui_ops_update_my_blueprint` (rename + description/tags;
|
|
39
|
+
* canonical kebab-case blueprint-name rule),
|
|
40
|
+
* `ggui_ops_delete_my_blueprint`, and
|
|
41
|
+
* `ggui_ops_get_my_blueprint_source` (returns the stored
|
|
42
|
+
* `{source, contract?, fixtureProps?}` definition envelope;
|
|
43
|
+
* allowlisted in SINGLE_CALL_OPS).
|
|
44
|
+
*
|
|
45
|
+
* Conformance-kit verdict: ops tools are not conformance-kit surface —
|
|
46
|
+
* NO protocol stamp roll. Recorded here because retired wire names are
|
|
47
|
+
* ledgered (retired-tool-names regression lock mirrors this entry).
|
|
48
|
+
*
|
|
49
|
+
* --------------------------------------------------------------------
|
|
50
|
+
* Dead capability/quality vocabulary deleted (2026-07-27, pre-launch,
|
|
51
|
+
* ggui#394). `CapabilityPermissions`, `ComponentCapability`, and
|
|
52
|
+
* `QualityMetadata` are removed from the package's public API, along
|
|
53
|
+
* with the never-populated `capabilities?` / `quality?` fields on
|
|
54
|
+
* `ComponentGguiSession` (types/capabilities.ts deleted).
|
|
55
|
+
*
|
|
56
|
+
* cp1. Census before delete: zero producers, zero consumers — the
|
|
57
|
+
* only reference in the repo was the type-level field
|
|
58
|
+
* declaration itself. The `capabilities` name was ALREADY
|
|
59
|
+
* retired contract vocabulary (RETIRED_CONTRACT_FIELDS,
|
|
60
|
+
* hygiene-rules.ts) and hard-rejected at the render/handshake
|
|
61
|
+
* seams, so the surviving session-layer type contradicted the
|
|
62
|
+
* shipped posture.
|
|
63
|
+
* cp2. Not wired into `_meta.ui.csp` because no lossless mapping
|
|
64
|
+
* exists: the live CSP model is origin LISTS derived from
|
|
65
|
+
* publicBaseUrl + gadget descriptors; a six-verb grant list
|
|
66
|
+
* carries no origin data, and hardware grants already flow
|
|
67
|
+
* through per-gadget `permission` → Permissions-Policy.
|
|
68
|
+
* cp3. Quality evaluation stays internal to @ggui-ai/ui-gen (its own
|
|
69
|
+
* local QualityMetadata in evaluation/types.ts is untouched);
|
|
70
|
+
* the protocol carries no scores because nothing downstream of
|
|
71
|
+
* commit consumes them.
|
|
72
|
+
*
|
|
73
|
+
* Conformance-kit verdict: no wire-shape change (nothing ever emitted
|
|
74
|
+
* these fields) — PROTOCOL_VERSION unchanged. Package-API removal
|
|
75
|
+
* only, licensed by the pre-launch no-backward-compat rule.
|
|
76
|
+
*
|
|
77
|
+
* --------------------------------------------------------------------
|
|
9
78
|
* Render failure envelope — in-result isError tool errors (2026-07-23,
|
|
10
79
|
* BREAKING, pre-launch). Ruling B. A `ggui_render` that fails or is
|
|
11
80
|
* rejected is a `tools/call` RESULT carrying `isError: true` — never a
|
|
@@ -40,6 +109,19 @@
|
|
|
40
109
|
* docs/protocol/VERSION-POLICY.md). Recorded here because the wire
|
|
41
110
|
* shape changed even though the stamp did not.
|
|
42
111
|
*
|
|
112
|
+
* Stamp adjudication (re-examined 2026-07-27, pre-beta audit): the
|
|
113
|
+
* "two failure contracts share one stamp" concern was weighed and the
|
|
114
|
+
* stamp DELIBERATELY not rolled. PROTOCOL_VERSION gates the WS
|
|
115
|
+
* subscribe handshake (versionPolicy default 'reject' — a mismatch
|
|
116
|
+
* CLOSES the connection), and ruling B changed the MCP tools/call
|
|
117
|
+
* result surface while leaving every WS envelope untouched. Rolling
|
|
118
|
+
* the stamp would have forced a lockstep UPGRADE_REQUIRED break on
|
|
119
|
+
* every client pinned to 0.4.0-rc.0 at the next server deploy, to
|
|
120
|
+
* version a layer that did not change. MCP-path failure-contract
|
|
121
|
+
* discovery is by package version (exact pins are the pre-launch
|
|
122
|
+
* consumer contract), not by wire handshake. The stamp next moves
|
|
123
|
+
* when the WS envelope layer itself changes, or at the v1.0 freeze.
|
|
124
|
+
*
|
|
43
125
|
* --------------------------------------------------------------------
|
|
44
126
|
* Consolidated cleanliness release (2026-06-12, BREAKING, pre-launch).
|
|
45
127
|
* Four strands from the 2026-06-12 cleanliness + orphan audits, every
|
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAq7EG;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"}
|
package/dist/version.js
CHANGED
|
@@ -6,6 +6,75 @@
|
|
|
6
6
|
* schema change; the most recent change anchors {@link PROTOCOL_VERSION}.
|
|
7
7
|
*
|
|
8
8
|
* --------------------------------------------------------------------
|
|
9
|
+
* Ops-tool console-parity slice (2026-07-29, BREAKING on the ops
|
|
10
|
+
* surface only, pre-launch, ggui#400). Rename ledger — same treatment
|
|
11
|
+
* as the `ggui_ops_register_blueprint` → `ggui_ops_save_library_blueprint`
|
|
12
|
+
* split and the r4.1 `ggui_runtime_refresh_bootstrap` retirement:
|
|
13
|
+
*
|
|
14
|
+
* op1. **`ggui_ops_rename_app` + `ggui_ops_update_app_system_prompt`
|
|
15
|
+
* → consolidated `ggui_ops_update_app`.** One partial-update tool
|
|
16
|
+
* carries `displayName?` + `systemPrompt?` + `rateLimitPerMinute?`
|
|
17
|
+
* (at least one required). Clearing sentinels: `systemPrompt: ''`
|
|
18
|
+
* clears the override (unchanged semantics); `rateLimitPerMinute:
|
|
19
|
+
* 0` clears the limit — the console client's empty/0 → null
|
|
20
|
+
* normalization moves server-side so the stored column keeps ONE
|
|
21
|
+
* "unlimited" representation. Both old wire names are appended to
|
|
22
|
+
* the mcp-server RETIRED_TOOL_NAMES regression lock. No shims,
|
|
23
|
+
* pre-launch delete-in-same-slice.
|
|
24
|
+
*
|
|
25
|
+
* op2. **New ops wire names** (additive): `ggui_ops_set_app_theme`
|
|
26
|
+
* (validates with the protocol's `appThemeSchema` — the same
|
|
27
|
+
* validator every `GguiApp.theme` write surface runs),
|
|
28
|
+
* `ggui_ops_rename_org` (owner-or-admin), `ggui_ops_remove_org_member`
|
|
29
|
+
* (role-matrix enforced; owner never removable),
|
|
30
|
+
* `ggui_ops_get_org_balance` (any-member read, allowlisted in
|
|
31
|
+
* SINGLE_CALL_OPS), and the app-scoped `appId?` argument on
|
|
32
|
+
* `ggui_ops_set_provider_key` / `ggui_ops_remove_provider_key`
|
|
33
|
+
* (optional seam — deployments without app-scoped key storage
|
|
34
|
+
* reject it with `app_scoped_keys_unavailable`).
|
|
35
|
+
*
|
|
36
|
+
* op3. **My-blueprint curation trio** (additive, cloud-deployment
|
|
37
|
+
* tools beside `ggui_ops_list_my_blueprints`):
|
|
38
|
+
* `ggui_ops_update_my_blueprint` (rename + description/tags;
|
|
39
|
+
* canonical kebab-case blueprint-name rule),
|
|
40
|
+
* `ggui_ops_delete_my_blueprint`, and
|
|
41
|
+
* `ggui_ops_get_my_blueprint_source` (returns the stored
|
|
42
|
+
* `{source, contract?, fixtureProps?}` definition envelope;
|
|
43
|
+
* allowlisted in SINGLE_CALL_OPS).
|
|
44
|
+
*
|
|
45
|
+
* Conformance-kit verdict: ops tools are not conformance-kit surface —
|
|
46
|
+
* NO protocol stamp roll. Recorded here because retired wire names are
|
|
47
|
+
* ledgered (retired-tool-names regression lock mirrors this entry).
|
|
48
|
+
*
|
|
49
|
+
* --------------------------------------------------------------------
|
|
50
|
+
* Dead capability/quality vocabulary deleted (2026-07-27, pre-launch,
|
|
51
|
+
* ggui#394). `CapabilityPermissions`, `ComponentCapability`, and
|
|
52
|
+
* `QualityMetadata` are removed from the package's public API, along
|
|
53
|
+
* with the never-populated `capabilities?` / `quality?` fields on
|
|
54
|
+
* `ComponentGguiSession` (types/capabilities.ts deleted).
|
|
55
|
+
*
|
|
56
|
+
* cp1. Census before delete: zero producers, zero consumers — the
|
|
57
|
+
* only reference in the repo was the type-level field
|
|
58
|
+
* declaration itself. The `capabilities` name was ALREADY
|
|
59
|
+
* retired contract vocabulary (RETIRED_CONTRACT_FIELDS,
|
|
60
|
+
* hygiene-rules.ts) and hard-rejected at the render/handshake
|
|
61
|
+
* seams, so the surviving session-layer type contradicted the
|
|
62
|
+
* shipped posture.
|
|
63
|
+
* cp2. Not wired into `_meta.ui.csp` because no lossless mapping
|
|
64
|
+
* exists: the live CSP model is origin LISTS derived from
|
|
65
|
+
* publicBaseUrl + gadget descriptors; a six-verb grant list
|
|
66
|
+
* carries no origin data, and hardware grants already flow
|
|
67
|
+
* through per-gadget `permission` → Permissions-Policy.
|
|
68
|
+
* cp3. Quality evaluation stays internal to @ggui-ai/ui-gen (its own
|
|
69
|
+
* local QualityMetadata in evaluation/types.ts is untouched);
|
|
70
|
+
* the protocol carries no scores because nothing downstream of
|
|
71
|
+
* commit consumes them.
|
|
72
|
+
*
|
|
73
|
+
* Conformance-kit verdict: no wire-shape change (nothing ever emitted
|
|
74
|
+
* these fields) — PROTOCOL_VERSION unchanged. Package-API removal
|
|
75
|
+
* only, licensed by the pre-launch no-backward-compat rule.
|
|
76
|
+
*
|
|
77
|
+
* --------------------------------------------------------------------
|
|
9
78
|
* Render failure envelope — in-result isError tool errors (2026-07-23,
|
|
10
79
|
* BREAKING, pre-launch). Ruling B. A `ggui_render` that fails or is
|
|
11
80
|
* rejected is a `tools/call` RESULT carrying `isError: true` — never a
|
|
@@ -40,6 +109,19 @@
|
|
|
40
109
|
* docs/protocol/VERSION-POLICY.md). Recorded here because the wire
|
|
41
110
|
* shape changed even though the stamp did not.
|
|
42
111
|
*
|
|
112
|
+
* Stamp adjudication (re-examined 2026-07-27, pre-beta audit): the
|
|
113
|
+
* "two failure contracts share one stamp" concern was weighed and the
|
|
114
|
+
* stamp DELIBERATELY not rolled. PROTOCOL_VERSION gates the WS
|
|
115
|
+
* subscribe handshake (versionPolicy default 'reject' — a mismatch
|
|
116
|
+
* CLOSES the connection), and ruling B changed the MCP tools/call
|
|
117
|
+
* result surface while leaving every WS envelope untouched. Rolling
|
|
118
|
+
* the stamp would have forced a lockstep UPGRADE_REQUIRED break on
|
|
119
|
+
* every client pinned to 0.4.0-rc.0 at the next server deploy, to
|
|
120
|
+
* version a layer that did not change. MCP-path failure-contract
|
|
121
|
+
* discovery is by package version (exact pins are the pre-launch
|
|
122
|
+
* consumer contract), not by wire handshake. The stamp next moves
|
|
123
|
+
* when the WS envelope layer itself changes, or at the v1.0 freeze.
|
|
124
|
+
*
|
|
43
125
|
* --------------------------------------------------------------------
|
|
44
126
|
* Consolidated cleanliness release (2026-06-12, BREAKING, pre-launch).
|
|
45
127
|
* Four strands from the 2026-06-12 cleanliness + orphan audits, every
|
package/package.json
CHANGED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Component capability permissions and quality metadata.
|
|
3
|
-
*
|
|
4
|
-
* Components run in a sandboxed context with all capabilities denied by default.
|
|
5
|
-
* Capabilities can be granted by the app developer (per-app) or by the end-user (per-session).
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Software capabilities that can be granted to sandboxed components.
|
|
9
|
-
*
|
|
10
|
-
* Hardware access flows through gadget hooks (`clientCapabilities.gadgets`)
|
|
11
|
-
* — each gadget descriptor declares a `permission` that threads to the
|
|
12
|
-
* iframe's `Permissions-Policy` header. There is no separate
|
|
13
|
-
* `adapters[]` model.
|
|
14
|
-
*/
|
|
15
|
-
export type ComponentCapability = 'network' | 'storage' | 'dom' | 'eval' | 'navigation' | 'device';
|
|
16
|
-
/**
|
|
17
|
-
* Capability permissions for a component.
|
|
18
|
-
* Default posture: all capabilities denied (granted: []).
|
|
19
|
-
*/
|
|
20
|
-
export interface CapabilityPermissions {
|
|
21
|
-
/** Capabilities this component is allowed to use. Default: [] (all denied) */
|
|
22
|
-
granted: ComponentCapability[];
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Quality evaluation metadata attached to produced components.
|
|
26
|
-
* Producers MAY attach quality scores. Renderers MAY display quality indicators.
|
|
27
|
-
*/
|
|
28
|
-
export interface QualityMetadata {
|
|
29
|
-
evaluationRounds: number;
|
|
30
|
-
finalScore: number;
|
|
31
|
-
dimensions: {
|
|
32
|
-
completeness: number;
|
|
33
|
-
visualPolish: number;
|
|
34
|
-
interactivity: number;
|
|
35
|
-
accessibility: number;
|
|
36
|
-
codeQuality: number;
|
|
37
|
-
};
|
|
38
|
-
passed: boolean;
|
|
39
|
-
}
|
|
40
|
-
//# sourceMappingURL=capabilities.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/types/capabilities.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;;;;;;GAOG;AACH,MAAM,MAAM,mBAAmB,GAC3B,SAAS,GACT,SAAS,GACT,KAAK,GACL,MAAM,GACN,YAAY,GACZ,QAAQ,CAAC;AAEb;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,8EAA8E;IAC9E,OAAO,EAAE,mBAAmB,EAAE,CAAC;CAChC;AAMD;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE;QACV,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,MAAM,EAAE,OAAO,CAAC;CACjB"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Component capability permissions and quality metadata.
|
|
3
|
-
*
|
|
4
|
-
* Components run in a sandboxed context with all capabilities denied by default.
|
|
5
|
-
* Capabilities can be granted by the app developer (per-app) or by the end-user (per-session).
|
|
6
|
-
*/
|
|
7
|
-
export {};
|
|
8
|
-
// =============================================================================
|
|
9
|
-
// Hardware grant model
|
|
10
|
-
// =============================================================================
|
|
11
|
-
//
|
|
12
|
-
// Hardware-capability hooks (camera, microphone, geolocation, etc.) flow
|
|
13
|
-
// through the gadget catalog at `DataContract.clientCapabilities.gadgets`.
|
|
14
|
-
// Each gadget descriptor declares a `permission` field whose value is the
|
|
15
|
-
// Web Permissions API name (`KNOWN_PERMISSION_NAMES`); the server projects
|
|
16
|
-
// every declared permission onto the iframe's `Permissions-Policy` header.
|
|
17
|
-
//
|
|
18
|
-
// There is no `adapters[]` allow-list (voice / camera / location /
|
|
19
|
-
// bluetooth). Per-gadget permission threading IS the grant model.
|