@ggui-ai/protocol 0.2.0-alpha.3 → 0.3.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/README.md +16 -16
- package/dist/envelope-adapters.d.ts +6 -5
- package/dist/envelope-adapters.d.ts.map +1 -1
- package/dist/envelope-adapters.js +3 -3
- package/dist/envelopes/builders.d.ts +6 -32
- package/dist/envelopes/builders.d.ts.map +1 -1
- package/dist/envelopes/builders.js +3 -25
- package/dist/errors/version-mismatch.d.ts +1 -1
- package/dist/errors/version-mismatch.js +1 -1
- package/dist/gadgets/resolve-app-gadgets.d.ts +10 -0
- package/dist/gadgets/resolve-app-gadgets.d.ts.map +1 -0
- package/dist/gadgets/resolve-app-gadgets.js +19 -0
- package/dist/gadgets/resolve-contract-gadgets.d.ts +6 -6
- package/dist/gadgets/resolve-contract-gadgets.js +5 -5
- package/dist/gadgets/stdlib-gadgets.d.ts +1 -1
- package/dist/gadgets/stdlib-gadgets.d.ts.map +1 -1
- package/dist/gadgets/stdlib-gadgets.js +43 -22
- package/dist/iframe-bridge.d.ts +4 -43
- package/dist/iframe-bridge.d.ts.map +1 -1
- package/dist/iframe-bridge.js +4 -141
- package/dist/index.d.ts +60 -62
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +66 -61
- package/dist/integrations/mcp-apps.d.ts +83 -38
- package/dist/integrations/mcp-apps.d.ts.map +1 -1
- package/dist/integrations/mcp-apps.js +98 -52
- package/dist/recommended-prompts.d.ts +1 -1
- package/dist/recommended-prompts.js +1 -1
- package/dist/registry/blueprint-key.d.ts +3 -0
- package/dist/registry/blueprint-key.d.ts.map +1 -1
- package/dist/registry/blueprint-key.js +9 -0
- package/dist/registry/blueprint-stamp.d.ts +12 -0
- package/dist/registry/blueprint-stamp.d.ts.map +1 -0
- package/dist/registry/blueprint-stamp.js +12 -0
- package/dist/registry/canonicalize-contract.d.ts +31 -2
- package/dist/registry/canonicalize-contract.d.ts.map +1 -1
- package/dist/registry/canonicalize-contract.js +125 -13
- package/dist/registry/portable-blueprint.d.ts +64 -0
- package/dist/registry/portable-blueprint.d.ts.map +1 -0
- package/dist/registry/portable-blueprint.js +103 -0
- package/dist/registry/summarize-contract.d.ts +7 -2
- package/dist/registry/summarize-contract.d.ts.map +1 -1
- package/dist/registry/summarize-contract.js +12 -3
- package/dist/registry/variant-key.d.ts +17 -0
- package/dist/registry/variant-key.d.ts.map +1 -0
- package/dist/registry/variant-key.js +22 -0
- package/dist/schema-learning/derive-contract.d.ts +2 -2
- package/dist/schema-learning/derive-contract.js +2 -2
- package/dist/schema-learning/merge.d.ts.map +1 -1
- package/dist/schema-learning/merge.js +3 -2
- package/dist/schemas/app-theme.d.ts +38 -0
- package/dist/schemas/app-theme.d.ts.map +1 -0
- package/dist/schemas/app-theme.js +43 -0
- package/dist/schemas/blueprint.d.ts +30 -11
- package/dist/schemas/blueprint.d.ts.map +1 -1
- package/dist/schemas/blueprint.js +62 -26
- package/dist/schemas/data-contract.d.ts +28 -30
- package/dist/schemas/data-contract.d.ts.map +1 -1
- package/dist/schemas/data-contract.js +26 -26
- package/dist/schemas/handshake-suggestion.d.ts +2 -4
- package/dist/schemas/handshake-suggestion.d.ts.map +1 -1
- package/dist/schemas/handshake-suggestion.js +5 -14
- package/dist/schemas/mcp.d.ts +240 -58
- package/dist/schemas/mcp.d.ts.map +1 -1
- package/dist/schemas/mcp.js +285 -93
- package/dist/schemas/ops-blueprint.d.ts +12 -12
- package/dist/schemas/ops-blueprint.d.ts.map +1 -1
- package/dist/schemas/ops-blueprint.js +14 -24
- package/dist/screen-blueprints/define.d.ts +2 -2
- package/dist/screen-blueprints/match.d.ts +12 -7
- package/dist/screen-blueprints/match.d.ts.map +1 -1
- package/dist/screen-blueprints/match.js +7 -5
- package/dist/screen-blueprints/types.d.ts +14 -18
- package/dist/screen-blueprints/types.d.ts.map +1 -1
- package/dist/transport/websocket.d.ts +5 -26
- package/dist/transport/websocket.d.ts.map +1 -1
- package/dist/types/app-config.d.ts +0 -1
- package/dist/types/app-config.d.ts.map +1 -1
- package/dist/types/auth.d.ts +1 -46
- package/dist/types/auth.d.ts.map +1 -1
- package/dist/types/blueprint-source.d.ts +123 -0
- package/dist/types/blueprint-source.d.ts.map +1 -0
- package/dist/types/blueprint-source.js +126 -0
- package/dist/types/blueprint.d.ts +25 -18
- package/dist/types/blueprint.d.ts.map +1 -1
- package/dist/types/contract-inference.d.ts +2 -43
- package/dist/types/contract-inference.d.ts.map +1 -1
- package/dist/types/data-contract.d.ts +59 -344
- package/dist/types/data-contract.d.ts.map +1 -1
- package/dist/types/data-contract.js +5 -12
- package/dist/types/events.d.ts +31 -69
- package/dist/types/events.d.ts.map +1 -1
- package/dist/types/{render-event.d.ts → ggui-session-event.d.ts} +15 -15
- package/dist/types/ggui-session-event.d.ts.map +1 -0
- package/dist/types/{render-event.js → ggui-session-event.js} +5 -5
- package/dist/types/handshake-suggestion.d.ts +60 -40
- package/dist/types/handshake-suggestion.d.ts.map +1 -1
- package/dist/types/host-context.d.ts +8 -8
- package/dist/types/host-context.d.ts.map +1 -1
- package/dist/types/host-context.js +5 -5
- package/dist/types/invoke.d.ts +1 -13
- package/dist/types/invoke.d.ts.map +1 -1
- package/dist/types/{canvas-lifecycle.d.ts → lifecycle.d.ts} +35 -37
- package/dist/types/lifecycle.d.ts.map +1 -0
- package/dist/types/{canvas-lifecycle.js → lifecycle.js} +12 -14
- package/dist/types/live-channel.d.ts +48 -104
- package/dist/types/live-channel.d.ts.map +1 -1
- package/dist/types/llm.d.ts +13 -24
- package/dist/types/llm.d.ts.map +1 -1
- package/dist/types/llm.js +23 -53
- package/dist/types/mcp.d.ts +55 -176
- package/dist/types/mcp.d.ts.map +1 -1
- package/dist/types/mcp.js +2 -2
- package/dist/types/oauth-user-id.d.ts +12 -0
- package/dist/types/oauth-user-id.d.ts.map +1 -0
- package/dist/types/oauth-user-id.js +10 -0
- package/dist/types/portable-blueprint.d.ts +53 -0
- package/dist/types/portable-blueprint.d.ts.map +1 -0
- package/dist/types/portable-blueprint.js +8 -0
- package/dist/types/{session.d.ts → render.d.ts} +51 -53
- package/dist/types/render.d.ts.map +1 -0
- package/dist/types/thread.d.ts.map +1 -1
- package/dist/types/thread.js +3 -3
- package/dist/types/ui-generator.d.ts +5 -46
- package/dist/types/ui-generator.d.ts.map +1 -1
- package/dist/types/ui-generator.js +1 -53
- package/dist/validation/ajv-runtime.d.ts +3 -3
- package/dist/validation/ajv-runtime.d.ts.map +1 -1
- package/dist/validation/ajv-runtime.js +6 -5
- package/dist/validation/contract-validator.d.ts +23 -22
- package/dist/validation/contract-validator.d.ts.map +1 -1
- package/dist/validation/contract-validator.js +28 -26
- package/dist/validation/cross-references.d.ts +3 -3
- package/dist/validation/cross-references.js +3 -3
- package/dist/validation/hygiene-rules.d.ts +13 -10
- package/dist/validation/hygiene-rules.d.ts.map +1 -1
- package/dist/validation/hygiene-rules.js +20 -14
- package/dist/validation/is-record.d.ts +17 -0
- package/dist/validation/is-record.d.ts.map +1 -0
- package/dist/validation/is-record.js +18 -0
- package/dist/validation/lint-contract.d.ts +9 -8
- package/dist/validation/lint-contract.d.ts.map +1 -1
- package/dist/validation/lint-contract.js +89 -26
- package/dist/validation/name-invariants.d.ts +4 -4
- package/dist/validation/name-invariants.js +4 -4
- package/dist/validation/reserved-channels.d.ts +43 -46
- package/dist/validation/reserved-channels.d.ts.map +1 -1
- package/dist/validation/reserved-channels.js +14 -177
- package/dist/validation/resolve-stream-channel.d.ts +3 -9
- package/dist/validation/resolve-stream-channel.d.ts.map +1 -1
- package/dist/validation/resolve-stream-channel.js +3 -4
- package/dist/validation/sanitize-error.d.ts +10 -9
- package/dist/validation/sanitize-error.d.ts.map +1 -1
- package/dist/validation/sanitize-error.js +19 -18
- package/dist/validation/schema-compat-invariants.d.ts +1 -1
- package/dist/validation/schema-compat-invariants.js +3 -3
- package/dist/validation/schema-meta-validation.d.ts +21 -8
- package/dist/validation/schema-meta-validation.d.ts.map +1 -1
- package/dist/validation/schema-meta-validation.js +28 -14
- package/dist/validation/schema-subset.d.ts +9 -8
- package/dist/validation/schema-subset.d.ts.map +1 -1
- package/dist/validation/ui-security.d.ts +0 -17
- package/dist/validation/ui-security.d.ts.map +1 -1
- package/dist/validation/ui-security.js +17 -22
- package/dist/validation/zod-to-json-schema.d.ts +1 -1
- package/dist/validation/zod-to-json-schema.d.ts.map +1 -1
- package/dist/validation/zod-to-json-schema.js +4 -3
- package/dist/version.d.ts +783 -9
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +782 -8
- package/package.json +2 -2
- package/dist/bridge/invoke-agent.d.ts +0 -65
- package/dist/bridge/invoke-agent.d.ts.map +0 -1
- package/dist/bridge/invoke-agent.js +0 -113
- package/dist/stream/stream-parser.d.ts +0 -62
- package/dist/stream/stream-parser.d.ts.map +0 -1
- package/dist/stream/stream-parser.js +0 -199
- package/dist/types/canvas-lifecycle.d.ts.map +0 -1
- package/dist/types/credential.d.ts +0 -41
- package/dist/types/credential.d.ts.map +0 -1
- package/dist/types/credential.js +0 -32
- package/dist/types/data-bindings.d.ts +0 -322
- package/dist/types/data-bindings.d.ts.map +0 -1
- package/dist/types/data-bindings.js +0 -29
- package/dist/types/feedback.d.ts +0 -22
- package/dist/types/feedback.d.ts.map +0 -1
- package/dist/types/feedback.js +0 -7
- package/dist/types/mcp-proxy.d.ts +0 -67
- package/dist/types/mcp-proxy.d.ts.map +0 -1
- package/dist/types/mcp-proxy.js +0 -46
- package/dist/types/openrouter-models.d.ts +0 -23
- package/dist/types/openrouter-models.d.ts.map +0 -1
- package/dist/types/openrouter-models.js +0 -4843
- package/dist/types/region.d.ts +0 -26
- package/dist/types/region.d.ts.map +0 -1
- package/dist/types/region.js +0 -36
- package/dist/types/render-event.d.ts.map +0 -1
- package/dist/types/session.d.ts.map +0 -1
- /package/dist/types/{session.js → render.js} +0 -0
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `BlueprintSource` — the single provenance vocabulary for blueprints.
|
|
3
|
+
*
|
|
4
|
+
* One discriminated union, replacing the flat provenance strings that
|
|
5
|
+
* previously lived on three separate seams (catalog entries, screen
|
|
6
|
+
* blueprints, and the runtime cache registry). The discriminant is
|
|
7
|
+
* `kind`; the `llm` arm carries the engine provenance that the flat
|
|
8
|
+
* strings could never express.
|
|
9
|
+
*
|
|
10
|
+
* Arms:
|
|
11
|
+
*
|
|
12
|
+
* - `llm` — engine-generated. `generator` is the slug of the
|
|
13
|
+
* {@link UiGenerator} that produced the component code; `model` is
|
|
14
|
+
* the LLM model id the engine called. Both REQUIRED: every
|
|
15
|
+
* generation mint site has them in scope, and an engine-generated
|
|
16
|
+
* artifact without them is not a real state.
|
|
17
|
+
* - `user` — developer-registered / hand-authored. Covers
|
|
18
|
+
* manifest-declared UIs, operator-registered blueprints, and
|
|
19
|
+
* imported artifacts that carry no engine claim. No engine
|
|
20
|
+
* provenance exists for these, so the arm carries none.
|
|
21
|
+
* - `curated` — hand-authored system blueprint shipped with a
|
|
22
|
+
* deployment's screen-blueprint catalog (a design call made by the
|
|
23
|
+
* catalog author, ranked above generated output by the matcher).
|
|
24
|
+
*
|
|
25
|
+
* Dead-arm verdict (2026-06 provenance trace): the legacy flat
|
|
26
|
+
* vocabularies also declared a `heuristic` arm ("rule-based composer").
|
|
27
|
+
* A repo-wide mint trace found ZERO sites that ever produced it, so the
|
|
28
|
+
* arm is deleted rather than carried. There is intentionally NO
|
|
29
|
+
* legacy/unlabeled arm and NO optional provenance: blueprints are a
|
|
30
|
+
* cache (invalidation = regeneration, never data loss), so unlabeled
|
|
31
|
+
* rows are dropped at the trust boundary, never coerced.
|
|
32
|
+
*/
|
|
33
|
+
import { isRecord } from "../validation/is-record.js";
|
|
34
|
+
/** Closed list of `BlueprintSource` discriminants. */
|
|
35
|
+
export const BLUEPRINT_SOURCE_KINDS = ["llm", "user", "curated"];
|
|
36
|
+
/**
|
|
37
|
+
* Validating narrower for trust boundaries (DB row → union, JSON
|
|
38
|
+
* artifact → union). Returns a CANONICAL rebuild of the union value —
|
|
39
|
+
* stray keys on the input do not ride through — or `null` when the
|
|
40
|
+
* value is not a well-formed `BlueprintSource`. Callers at load seams
|
|
41
|
+
* drop-with-log or reject loudly on `null`; coercing a malformed value
|
|
42
|
+
* into an arm is banned.
|
|
43
|
+
*/
|
|
44
|
+
export function parseBlueprintSource(value) {
|
|
45
|
+
if (!isRecord(value)) {
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
const v = value;
|
|
49
|
+
switch (v["kind"]) {
|
|
50
|
+
case "llm": {
|
|
51
|
+
const generator = v["generator"];
|
|
52
|
+
const model = v["model"];
|
|
53
|
+
if (typeof generator !== "string" || generator.length === 0)
|
|
54
|
+
return null;
|
|
55
|
+
if (typeof model !== "string" || model.length === 0)
|
|
56
|
+
return null;
|
|
57
|
+
return { kind: "llm", generator, model };
|
|
58
|
+
}
|
|
59
|
+
case "user":
|
|
60
|
+
return { kind: "user" };
|
|
61
|
+
case "curated":
|
|
62
|
+
return { kind: "curated" };
|
|
63
|
+
default:
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/** Type-guard form of {@link parseBlueprintSource}. */
|
|
68
|
+
export function isBlueprintSource(value) {
|
|
69
|
+
return parseBlueprintSource(value) !== null;
|
|
70
|
+
}
|
|
71
|
+
// =============================================================================
|
|
72
|
+
// Flat-provenance codec — the storage twin of `BlueprintSource`
|
|
73
|
+
// =============================================================================
|
|
74
|
+
/**
|
|
75
|
+
* Flat-encoded provenance: the SINGLE key vocabulary every store uses
|
|
76
|
+
* when it persists a {@link BlueprintSource} as scalar columns /
|
|
77
|
+
* attributes (vector-store metadata, key-value rows, …). The union is
|
|
78
|
+
* the code shape; storage stays flat — and every store flattens and
|
|
79
|
+
* rebuilds through THIS codec, never through hand-rolled key names.
|
|
80
|
+
*
|
|
81
|
+
* Key vocabulary: `sourceKind` / `sourceGenerator` / `sourceModel`.
|
|
82
|
+
* The `source`-prefixed triple is deliberate: flat rows mix provenance
|
|
83
|
+
* with arbitrary other attributes, and bare `generator` / `model` keys
|
|
84
|
+
* collide with row-level fields that legitimately carry their own
|
|
85
|
+
* generator/model semantics (e.g. a generation-result row). The prefix
|
|
86
|
+
* keeps the provenance keys self-describing, collision-free, and
|
|
87
|
+
* greppable, and mirrors the union access path (`source.kind` →
|
|
88
|
+
* `sourceKind`). No storage engine ergonomics argue against it —
|
|
89
|
+
* attribute names are free-form in every store we target.
|
|
90
|
+
*/
|
|
91
|
+
export const FLAT_BLUEPRINT_SOURCE_KEYS = {
|
|
92
|
+
kind: "sourceKind",
|
|
93
|
+
generator: "sourceGenerator",
|
|
94
|
+
model: "sourceModel",
|
|
95
|
+
};
|
|
96
|
+
/** Flatten a canonical {@link BlueprintSource} into storage keys. */
|
|
97
|
+
export function blueprintSourceToFlat(source) {
|
|
98
|
+
return source.kind === "llm"
|
|
99
|
+
? {
|
|
100
|
+
sourceKind: "llm",
|
|
101
|
+
sourceGenerator: source.generator,
|
|
102
|
+
sourceModel: source.model,
|
|
103
|
+
}
|
|
104
|
+
: { sourceKind: source.kind };
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Validating narrower at the flat-row trust boundary: reassemble the
|
|
108
|
+
* `sourceKind` / `sourceGenerator` / `sourceModel` scalars of an
|
|
109
|
+
* UNTRUSTED row into a canonical {@link BlueprintSource}, or `null`
|
|
110
|
+
* when the row carries no valid provenance (rows written under a
|
|
111
|
+
* retired vocabulary, foreign rows, malformed writes). Callers drop
|
|
112
|
+
* the row — coercing into an arm is banned. Delegates the union
|
|
113
|
+
* rebuild to {@link parseBlueprintSource}, so stray keys never ride
|
|
114
|
+
* through and a non-llm row carrying vestigial generator/model
|
|
115
|
+
* scalars rebuilds to its bare arm.
|
|
116
|
+
*
|
|
117
|
+
* Accepts any object-shaped row (metadata records, unmarshalled rows);
|
|
118
|
+
* only the three codec keys are read.
|
|
119
|
+
*/
|
|
120
|
+
export function flatToBlueprintSource(row) {
|
|
121
|
+
return parseBlueprintSource({
|
|
122
|
+
kind: row.sourceKind,
|
|
123
|
+
generator: row.sourceGenerator,
|
|
124
|
+
model: row.sourceModel,
|
|
125
|
+
});
|
|
126
|
+
}
|
|
@@ -3,24 +3,25 @@
|
|
|
3
3
|
* generated UI code that renders it.
|
|
4
4
|
*
|
|
5
5
|
* Multiple `Blueprint` records MAY share `(appId, contractHash)`; they
|
|
6
|
-
* differ on `
|
|
6
|
+
* differ on `source` and/or {@link BlueprintVariance}. The selector
|
|
7
7
|
* picks one at runtime (an LLM-driven pick layered atop the
|
|
8
8
|
* deterministic fallback ladder; see
|
|
9
9
|
* {@link BlueprintSelector} in `@ggui-ai/mcp-server-core`).
|
|
10
10
|
*
|
|
11
11
|
* Locked decisions:
|
|
12
12
|
*
|
|
13
|
-
* - **Storage shape:
|
|
14
|
-
*
|
|
15
|
-
* `codeS3Url + codeHash`
|
|
16
|
-
*
|
|
17
|
-
* 5-30KB but
|
|
18
|
-
*
|
|
13
|
+
* - **Storage shape: content-addressed body + metadata pointer.**
|
|
14
|
+
* Persistent adapters store the code body content-addressed (keyed
|
|
15
|
+
* by its hash) and keep `codeS3Url + codeHash` as a pointer on the
|
|
16
|
+
* metadata row — row-size limits in typical metadata stores
|
|
17
|
+
* preclude inline storage (typical generated code is 5-30KB but
|
|
18
|
+
* advanced-generator iterative-loop output routinely exceeds
|
|
19
|
+
* them). The in-memory adapter skips the body store (in-process
|
|
19
20
|
* `Map<codeHash, string>`).
|
|
20
21
|
* - **Tenancy.** Scoped per `(appId, contractHash)`. Different apps'
|
|
21
22
|
* contract may coincidentally hash the same; their blueprints
|
|
22
|
-
* must never cross-pollinate.
|
|
23
|
-
*
|
|
23
|
+
* must never cross-pollinate. Rows are keyed by `blueprintId`;
|
|
24
|
+
* lookups go through an indexed `(appId, contractHash)` query.
|
|
24
25
|
* - **`contract` field.** The contract shape is content-keyed by
|
|
25
26
|
* `contractHash` (RFC 8785 / `blueprintKey`), so any two
|
|
26
27
|
* blueprints with the same `contractHash` agree on it
|
|
@@ -30,6 +31,7 @@
|
|
|
30
31
|
* source-of-truth divergence. Implementations MAY denormalize
|
|
31
32
|
* freely; consumers MUST treat `contractHash` as authoritative.
|
|
32
33
|
*/
|
|
34
|
+
import type { BlueprintSource } from './blueprint-source.js';
|
|
33
35
|
import type { DataContract, JsonObject } from './data-contract.js';
|
|
34
36
|
/**
|
|
35
37
|
* Per-axis weights for the {@link BlueprintSearch} multi-axis scoring
|
|
@@ -66,8 +68,8 @@ export interface BlueprintSearchWeights {
|
|
|
66
68
|
* server applies the global default when absent.
|
|
67
69
|
*
|
|
68
70
|
* Wire shape: lives on the per-app `App` record
|
|
69
|
-
* in `@ggui-ai/mcp-server-core` as `App.blueprintSearchConfig?`.
|
|
70
|
-
*
|
|
71
|
+
* in `@ggui-ai/mcp-server-core` as `App.blueprintSearchConfig?`.
|
|
72
|
+
* Persistent adapters carry it as an optional column with
|
|
71
73
|
* default-on-read.
|
|
72
74
|
*/
|
|
73
75
|
export interface AppBlueprintSearchConfig {
|
|
@@ -117,7 +119,7 @@ export interface BlueprintVariance {
|
|
|
117
119
|
* this shape encodes.
|
|
118
120
|
*/
|
|
119
121
|
export interface Blueprint {
|
|
120
|
-
/** Stable, unique blueprint id (e.g. `
|
|
122
|
+
/** Stable, unique blueprint id (e.g. `bp_<uuid>`). Primary key. */
|
|
121
123
|
readonly blueprintId: string;
|
|
122
124
|
/**
|
|
123
125
|
* Canonical RFC 8785 (JCS) hash of the contract shape — same
|
|
@@ -129,7 +131,7 @@ export interface Blueprint {
|
|
|
129
131
|
readonly appId: string;
|
|
130
132
|
/**
|
|
131
133
|
* S3 URL (`s3://<bucket>/<key>`) of the generated code body when
|
|
132
|
-
* cached. Absent → blueprint is pending generation;
|
|
134
|
+
* cached. Absent → blueprint is pending generation; render branches
|
|
133
135
|
* on this to decide cache-hit vs gen-and-persist. OSS in-memory
|
|
134
136
|
* adapters MAY use a non-S3 sentinel (or just leave this absent
|
|
135
137
|
* and rely on `codeHash` to look up code body inline).
|
|
@@ -141,11 +143,16 @@ export interface Blueprint {
|
|
|
141
143
|
*/
|
|
142
144
|
readonly codeHash?: string;
|
|
143
145
|
/**
|
|
144
|
-
*
|
|
145
|
-
*
|
|
146
|
-
*
|
|
146
|
+
* Provenance of the component code — the single
|
|
147
|
+
* {@link BlueprintSource} vocabulary. Generation paths mint the
|
|
148
|
+
* `llm` arm (`{kind: 'llm', generator, model}`) from the engine's
|
|
149
|
+
* own metadata stamp; `ggui_ops_register_blueprint` stamps
|
|
150
|
+
* `{kind: 'user'}` for operator-supplied bytes (no engine claim
|
|
151
|
+
* exists to record). A DIFFERENT axis from {@link createdBy} (who
|
|
152
|
+
* initiated the mint): an `ggui_ops_generate_blueprint` row is
|
|
153
|
+
* `createdBy: 'operator'` AND `source.kind: 'llm'`.
|
|
147
154
|
*/
|
|
148
|
-
readonly
|
|
155
|
+
readonly source: BlueprintSource;
|
|
149
156
|
/**
|
|
150
157
|
* Optional 0-1 validator score from the advanced generator's
|
|
151
158
|
* iterative loop. Sub-threshold variants are stored but not selected
|
|
@@ -171,7 +178,7 @@ export interface Blueprint {
|
|
|
171
178
|
/** ISO-8601 timestamp the row was first inserted. */
|
|
172
179
|
readonly createdAt: string;
|
|
173
180
|
/**
|
|
174
|
-
* `'agent'` when the standard handshake →
|
|
181
|
+
* `'agent'` when the standard handshake → render flow minted the
|
|
175
182
|
* blueprint; `'operator'` when an explicit `ggui_ops_generate_blueprint`
|
|
176
183
|
* call created it.
|
|
177
184
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blueprint.d.ts","sourceRoot":"","sources":["../../src/types/blueprint.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"blueprint.d.ts","sourceRoot":"","sources":["../../src/types/blueprint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEnE;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,sBAAsB;IACrC;;qDAEiD;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,uEAAuE;IACvE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;0CACsC;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;yCACqC;IACrC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B;yCACqC;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAwB;IACvC;8CAC0C;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnD;yCACqC;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,0DAA0D;IAC1D,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC;IAC9B;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,mEAAmE;IACnE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,kEAAkE;IAClE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;;;OASG;IACH,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC;;;;;;;;;OASG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC;IAClC,qDAAqD;IACrD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,GAAG,UAAU,CAAC;IACzC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChD"}
|
|
@@ -171,33 +171,6 @@ export type InferStreamPayload<T, N extends string> = T extends {
|
|
|
171
171
|
} ? N extends keyof C ? C[N] extends {
|
|
172
172
|
readonly schema: infer S;
|
|
173
173
|
} ? SchemaToType<S> : unknown : never : unknown;
|
|
174
|
-
/**
|
|
175
|
-
* Extract contextSpec slot names as a string literal union from a contract.
|
|
176
|
-
*
|
|
177
|
-
* Mirrors {@link InferActionNames} / {@link InferStreamNames}: when the
|
|
178
|
-
* contract declares a `contextSpec` map, returns the keys as a literal
|
|
179
|
-
* union; absent → `never` (so a context-slot lookup for a `'nonExistent'`
|
|
180
|
-
* key against an empty contract is a compile error rather than a silent
|
|
181
|
-
* broad-string fallback).
|
|
182
|
-
*/
|
|
183
|
-
export type InferContextNames<T> = T extends {
|
|
184
|
-
readonly contextSpec: infer S;
|
|
185
|
-
} ? Extract<keyof S, string> : never;
|
|
186
|
-
/**
|
|
187
|
-
* Infer the value type for a specific contextSpec slot, narrowed by
|
|
188
|
-
* its declared `schema`. Mirrors {@link InferActionPayload} /
|
|
189
|
-
* {@link InferStreamPayload}.
|
|
190
|
-
*
|
|
191
|
-
* - Present `contextSpec` + known slot name → `SchemaToType<schema>`.
|
|
192
|
-
* - Present `contextSpec` + unknown slot name → `never`.
|
|
193
|
-
* - Absent `contextSpec` entirely → `unknown` (parallel to the
|
|
194
|
-
* payload-fallback posture on actionSpec / streamSpec).
|
|
195
|
-
*/
|
|
196
|
-
export type InferContextValue<T, N extends string> = T extends {
|
|
197
|
-
readonly contextSpec: infer S;
|
|
198
|
-
} ? N extends keyof S ? S[N] extends {
|
|
199
|
-
readonly schema: infer Sch;
|
|
200
|
-
} ? SchemaToType<Sch> : unknown : never : unknown;
|
|
201
174
|
/**
|
|
202
175
|
* Extract agent-tool names as a string literal union. Used by the
|
|
203
176
|
* generator's `AllWires<T>` completeness manifest to enumerate the
|
|
@@ -238,12 +211,12 @@ export type InferGadgetNames<T> = T extends {
|
|
|
238
211
|
* Discriminated union of all stream emissions in a contract.
|
|
239
212
|
*
|
|
240
213
|
* Each member has `{ channel: ChannelName; payload: PayloadType; complete?: boolean }`
|
|
241
|
-
* — the agent-supplied fields of {@link GguiEmitInput} minus `
|
|
214
|
+
* — the agent-supplied fields of {@link GguiEmitInput} minus `sessionId`
|
|
242
215
|
* (which is caller context, not per-delivery).
|
|
243
216
|
*
|
|
244
217
|
* `mode` / `seq` / transport details are intentionally NOT on this union:
|
|
245
218
|
* `mode` is derived from `streamSpec[channel].mode` server-side,
|
|
246
|
-
* and `seq` is server-assigned via `
|
|
219
|
+
* and `seq` is server-assigned via `GguiSessionStreamBuffer`. Producers that
|
|
247
220
|
* try to set either are drifting against the streamSpec design lock.
|
|
248
221
|
*
|
|
249
222
|
* Falls back to `{ channel: string; payload: JsonValue; complete?: boolean }`
|
|
@@ -353,10 +326,6 @@ export interface ContractTypeMap {
|
|
|
353
326
|
*/
|
|
354
327
|
clientCapabilities?: Record<string, unknown>;
|
|
355
328
|
}
|
|
356
|
-
/** Extract props from a manual ContractTypeMap. */
|
|
357
|
-
export type PropsOf<C extends ContractTypeMap> = C extends {
|
|
358
|
-
props: infer P;
|
|
359
|
-
} ? P : JsonObject;
|
|
360
329
|
/** Extract action names from a manual ContractTypeMap. */
|
|
361
330
|
export type ActionNames<C extends ContractTypeMap> = C extends {
|
|
362
331
|
actions: infer A;
|
|
@@ -384,15 +353,5 @@ export type StreamPayloadOf<C extends ContractTypeMap, N extends StreamNames<C>>
|
|
|
384
353
|
export type AgentToolNames<C extends ContractTypeMap> = C extends {
|
|
385
354
|
agentCapabilities: infer T;
|
|
386
355
|
} ? Extract<keyof T, string> : string;
|
|
387
|
-
/**
|
|
388
|
-
* Extract gadget binding names from a manual ContractTypeMap.
|
|
389
|
-
*
|
|
390
|
-
* Libraries are declarations, not RPC, so there is no payload-type
|
|
391
|
-
* inference. Value types are consumed via the runtime hook
|
|
392
|
-
* (`GadgetHook<TOutput>`), not via a contract-level query.
|
|
393
|
-
*/
|
|
394
|
-
export type GadgetNames<C extends ContractTypeMap> = C extends {
|
|
395
|
-
clientCapabilities: infer T;
|
|
396
|
-
} ? Extract<keyof T, string> : string;
|
|
397
356
|
export {};
|
|
398
357
|
//# sourceMappingURL=contract-inference.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract-inference.d.ts","sourceRoot":"","sources":["../../src/types/contract-inference.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"contract-inference.d.ts","sourceRoot":"","sources":["../../src/types/contract-inference.ts"],"names":[],"mappings":"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"}
|