@ggui-ai/mcp-server-handlers 0.25.0 → 0.26.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.
Files changed (101) hide show
  1. package/README.md +2 -2
  2. package/dist/credits/index.d.ts +2 -2
  3. package/dist/credits/index.d.ts.map +1 -1
  4. package/dist/credits/index.js +1 -1
  5. package/dist/credits/list-credit-transactions.d.ts +21 -7
  6. package/dist/credits/list-credit-transactions.d.ts.map +1 -1
  7. package/dist/credits/list-credit-transactions.js +12 -2
  8. package/dist/index.d.ts +2 -2
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +1 -1
  11. package/dist/ops-blueprint/cache-mirror.d.ts +41 -0
  12. package/dist/ops-blueprint/cache-mirror.d.ts.map +1 -0
  13. package/dist/ops-blueprint/cache-mirror.js +19 -0
  14. package/dist/ops-blueprint/delete.d.ts +18 -0
  15. package/dist/ops-blueprint/delete.d.ts.map +1 -1
  16. package/dist/ops-blueprint/delete.js +21 -2
  17. package/dist/ops-blueprint/errors.d.ts +11 -0
  18. package/dist/ops-blueprint/errors.d.ts.map +1 -1
  19. package/dist/ops-blueprint/errors.js +14 -0
  20. package/dist/ops-blueprint/generate.d.ts +1 -3
  21. package/dist/ops-blueprint/generate.d.ts.map +1 -1
  22. package/dist/ops-blueprint/generate.js +47 -58
  23. package/dist/ops-blueprint/list.d.ts.map +1 -1
  24. package/dist/ops-blueprint/list.js +1 -2
  25. package/dist/ops-blueprint/register.d.ts +17 -6
  26. package/dist/ops-blueprint/register.d.ts.map +1 -1
  27. package/dist/ops-blueprint/register.js +77 -45
  28. package/dist/ops-blueprint/update.d.ts +3 -2
  29. package/dist/ops-blueprint/update.d.ts.map +1 -1
  30. package/dist/ops-blueprint/update.js +4 -3
  31. package/dist/renders/blueprint-coverage.d.ts +23 -4
  32. package/dist/renders/blueprint-coverage.d.ts.map +1 -1
  33. package/dist/renders/blueprint-coverage.js +45 -5
  34. package/dist/renders/blueprint-durability.d.ts.map +1 -1
  35. package/dist/renders/blueprint-durability.js +5 -0
  36. package/dist/renders/blueprint-matcher.d.ts +28 -0
  37. package/dist/renders/blueprint-matcher.d.ts.map +1 -1
  38. package/dist/renders/blueprint-matcher.js +39 -7
  39. package/dist/renders/blueprint-registry.d.ts +52 -1
  40. package/dist/renders/blueprint-registry.d.ts.map +1 -1
  41. package/dist/renders/blueprint-registry.js +137 -10
  42. package/dist/renders/build-seed-pool.d.ts.map +1 -1
  43. package/dist/renders/build-seed-pool.js +6 -0
  44. package/dist/renders/consume.d.ts +3 -2
  45. package/dist/renders/consume.d.ts.map +1 -1
  46. package/dist/renders/consume.js +23 -14
  47. package/dist/renders/cross-app-refused.d.ts +3 -2
  48. package/dist/renders/cross-app-refused.d.ts.map +1 -1
  49. package/dist/renders/cross-app-refused.js +5 -3
  50. package/dist/renders/decide-handshake.d.ts +28 -0
  51. package/dist/renders/decide-handshake.d.ts.map +1 -1
  52. package/dist/renders/decide-handshake.js +39 -4
  53. package/dist/renders/export-registry.d.ts +8 -1
  54. package/dist/renders/export-registry.d.ts.map +1 -1
  55. package/dist/renders/export-registry.js +3 -0
  56. package/dist/renders/fits.d.ts.map +1 -1
  57. package/dist/renders/fits.js +23 -1
  58. package/dist/renders/handshake.d.ts +6 -42
  59. package/dist/renders/handshake.d.ts.map +1 -1
  60. package/dist/renders/handshake.js +1 -1
  61. package/dist/renders/index.d.ts +5 -4
  62. package/dist/renders/index.d.ts.map +1 -1
  63. package/dist/renders/index.js +4 -3
  64. package/dist/renders/installed-blueprints-provider.d.ts.map +1 -1
  65. package/dist/renders/installed-blueprints-provider.js +3 -1
  66. package/dist/renders/match-precision/pairs.d.ts +5 -4
  67. package/dist/renders/match-precision/pairs.d.ts.map +1 -1
  68. package/dist/renders/match-precision/topk-probe.js +13 -8
  69. package/dist/renders/record-committed-one-shot.d.ts +18 -3
  70. package/dist/renders/record-committed-one-shot.d.ts.map +1 -1
  71. package/dist/renders/record-committed-one-shot.js +14 -7
  72. package/dist/renders/refresh-ws-token.d.ts +9 -12
  73. package/dist/renders/refresh-ws-token.d.ts.map +1 -1
  74. package/dist/renders/refresh-ws-token.js +13 -10
  75. package/dist/renders/render-identity.d.ts +14 -5
  76. package/dist/renders/render-identity.d.ts.map +1 -1
  77. package/dist/renders/render-identity.js +25 -12
  78. package/dist/renders/render-read-gate.d.ts +27 -1
  79. package/dist/renders/render-read-gate.d.ts.map +1 -1
  80. package/dist/renders/render-read-gate.js +17 -5
  81. package/dist/renders/render.d.ts +36 -19
  82. package/dist/renders/render.d.ts.map +1 -1
  83. package/dist/renders/render.js +174 -17
  84. package/dist/renders/report-render-failure.d.ts +69 -0
  85. package/dist/renders/report-render-failure.d.ts.map +1 -0
  86. package/dist/renders/report-render-failure.js +83 -0
  87. package/dist/renders/runtime-pull.d.ts.map +1 -1
  88. package/dist/renders/runtime-pull.js +6 -0
  89. package/dist/renders/slice-meta-derivation.d.ts +8 -1
  90. package/dist/renders/slice-meta-derivation.d.ts.map +1 -1
  91. package/dist/renders/slice-meta-derivation.js +1 -0
  92. package/dist/renders/submit-action.d.ts +41 -71
  93. package/dist/renders/submit-action.d.ts.map +1 -1
  94. package/dist/renders/submit-action.js +225 -78
  95. package/dist/renders/sync-context.d.ts +3 -1
  96. package/dist/renders/sync-context.d.ts.map +1 -1
  97. package/dist/renders/sync-context.js +38 -8
  98. package/dist/types.d.ts +71 -1
  99. package/dist/types.d.ts.map +1 -1
  100. package/dist/types.js +32 -0
  101. package/package.json +8 -8
@@ -1,5 +1,6 @@
1
1
  import { isEnumerableVectorStore, } from '@ggui-ai/mcp-server-core';
2
2
  import { flatToBlueprintSource, } from '@ggui-ai/protocol';
3
+ import { readGeneratorBuild } from './blueprint-registry.js';
3
4
  /**
4
5
  * Enumerate every reusable TEMPLATE blueprint stored under `scope` in a
5
6
  * vector store, with its inline component code — the export source for a
@@ -52,6 +53,7 @@ export async function listRegistryBlueprintsForExport(vectorStore, scope) {
52
53
  }
53
54
  }
54
55
  const intentRaw = m['intent'];
56
+ const build = readGeneratorBuild(m, entry.key);
55
57
  out.push({
56
58
  contract,
57
59
  componentCode: codeRaw,
@@ -60,6 +62,7 @@ export async function listRegistryBlueprintsForExport(vectorStore, scope) {
60
62
  ...(typeof intentRaw === 'string' && intentRaw.length > 0
61
63
  ? { intent: intentRaw }
62
64
  : {}),
65
+ ...(build !== undefined ? { build } : {}),
63
66
  });
64
67
  }
65
68
  return out;
@@ -1 +1 @@
1
- {"version":3,"file":"fits.d.ts","sourceRoot":"","sources":["../../src/renders/fits.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEjE,MAAM,MAAM,OAAO,GAAG,YAAY,GAAG,SAAS,GAAG,WAAW,CAAC;AAC7D;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,SAAS,CAAC;AAC/C,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,eAAe,CAAC;AAExD,gFAAgF;AAChF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,mEAAmE;AACnE,MAAM,WAAW,eAAe;IAC9B,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,eAAe,CAAC,EAAE,kBAAkB,CAAC;IAC9C,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,UAAW,SAAQ,eAAe;IACjD,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC;IACjC,6DAA6D;IAC7D,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,QAAQ,CAAC,eAAe,CAAC,EAAE,kBAAkB,CAAC;IAC9C,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;CAC1C;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,qEAAqE;IACrE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IACrD,0FAA0F;IAC1F,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;CAC1C;AAED,qEAAqE;AACrE,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,2EAA2E;IAC3E,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;CAC1C;AAID,sIAAsI;AACtI,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AASD;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,aAAa,EAAE,SAAS,GAAG,SAAS,EAAE,WAAW,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAK3H;AAoCD,wBAAgB,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,GAAG,UAAU,CAY7E"}
1
+ {"version":3,"file":"fits.d.ts","sourceRoot":"","sources":["../../src/renders/fits.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEjE,MAAM,MAAM,OAAO,GAAG,YAAY,GAAG,SAAS,GAAG,WAAW,CAAC;AAC7D;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,SAAS,CAAC;AAC/C,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,eAAe,CAAC;AAExD,gFAAgF;AAChF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,mEAAmE;AACnE,MAAM,WAAW,eAAe;IAC9B,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,eAAe,CAAC,EAAE,kBAAkB,CAAC;IAC9C,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,UAAW,SAAQ,eAAe;IACjD,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC;IACjC,6DAA6D;IAC7D,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,QAAQ,CAAC,eAAe,CAAC,EAAE,kBAAkB,CAAC;IAC9C,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;CAC1C;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,qEAAqE;IACrE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IACrD,0FAA0F;IAC1F,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;CAC1C;AAED,qEAAqE;AACrE,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,2EAA2E;IAC3E,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;CAC1C;AAID,sIAAsI;AACtI,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AASD;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,aAAa,EAAE,SAAS,GAAG,SAAS,EAAE,WAAW,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAK3H;AAuDD,wBAAgB,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,GAAG,UAAU,CAY7E"}
@@ -41,11 +41,24 @@ export function jsonSchemaTypesCompatible(candidateType, requestType) {
41
41
  return true;
42
42
  return asked.some((r) => accepted.some((c) => c === r || (r === 'integer' && c === 'number')));
43
43
  }
44
+ /**
45
+ * Two arms, one per side's `required`, each with a compatible type: a prop
46
+ * the CANDIDATE requires must be declared by the request with a type the
47
+ * candidate accepts (the cached interface cannot render without it); a prop
48
+ * the REQUEST requires must be declared by the candidate, again with a type
49
+ * the candidate accepts (a required prop is always sent, and a render carrying
50
+ * a key the served contract does not declare, or a value its type refuses, is
51
+ * refused every time, so such a candidate cannot serve the request). An
52
+ * optional request prop the candidate lacks, or declares with another type,
53
+ * stays a coverage matter, reported on the hit, never a miss here: it is
54
+ * refused only when it is sent.
55
+ */
44
56
  function checkDataShape(candidate, request) {
45
57
  if (candidate === undefined || request === undefined)
46
58
  return 'not-evaluated';
59
+ const offered = candidate.propsSpec?.properties ?? {};
47
60
  const declared = request.propsSpec?.properties ?? {};
48
- for (const [name, entry] of Object.entries(candidate.propsSpec?.properties ?? {})) {
61
+ for (const [name, entry] of Object.entries(offered)) {
49
62
  if (entry.required !== true)
50
63
  continue;
51
64
  const asked = declared[name];
@@ -54,6 +67,15 @@ function checkDataShape(candidate, request) {
54
67
  if (!jsonSchemaTypesCompatible(entry.schema.type, asked.schema.type))
55
68
  return 'miss';
56
69
  }
70
+ for (const [name, entry] of Object.entries(declared)) {
71
+ if (entry.required !== true)
72
+ continue;
73
+ const served = offered[name];
74
+ if (served === undefined)
75
+ return 'miss';
76
+ if (!jsonSchemaTypesCompatible(served.schema.type, entry.schema.type))
77
+ return 'miss';
78
+ }
57
79
  return 'hit';
58
80
  }
59
81
  function checkSurface(candidate, request) {
@@ -2,7 +2,7 @@ import { DomainError } from '@ggui-ai/protocol';
2
2
  import type { GeneratorId } from '@ggui-ai/protocol';
3
3
  import { z } from 'zod';
4
4
  import { type Blueprint, type BlueprintDraft, type BlueprintSourceKind, type BlueprintVariance, type GadgetDescriptor, type DataContract, type HandshakeSuggestion, type JsonSchema, type PropsSchemaProfile, type ServerCapabilities } from '@ggui-ai/protocol';
5
- import type { AppMetadataStore, KeyValueStore, TelemetrySink, VariantSelectionContext, VariantSelectionDecision } from '@ggui-ai/mcp-server-core';
5
+ import type { AppMetadataStore, KeyValueStore, TelemetrySink } from '@ggui-ai/mcp-server-core';
6
6
  import { type HandlerContext } from '../types.js';
7
7
  import type { GguiLifecycleEmitter } from './lifecycle.js';
8
8
  /**
@@ -170,39 +170,6 @@ export interface HandshakeNegotiator {
170
170
  readonly gadgets?: readonly GadgetDescriptor[];
171
171
  readonly ctx: HandlerContext;
172
172
  }): Promise<HandshakeNegotiatorResult> | HandshakeNegotiatorResult;
173
- /**
174
- * Optional LLM-driven variant selection. When a negotiator
175
- * exposes this method, the variant-selector orchestration
176
- * ({@link selectVariantWithLlm}) can dispatch the per-call LLM
177
- * pick into the same negotiator that owns the rest of the
178
- * handshake decision pipeline. Implementations:
179
- *
180
- * - Read each candidate's `variance` (persona / aesthetic /
181
- * context / seedPrompt) + `validatorScore` +
182
- * `isOperatorDefault` and compare to the context's `intent`
183
- * + `variance` signals.
184
- * - Return a {@link VariantSelectionDecision} carrying the
185
- * chosen `blueprintId`, a `[0, 1]` calibrated confidence, and
186
- * a human-readable reason.
187
- *
188
- * Calibration is load-bearing: the orchestration thresholds on
189
- * `confidence` to decide LLM-pick vs deterministic-ladder
190
- * fallback. An impl that always returns `1.0` defeats the
191
- * fallback; an impl that always returns `0.0` defeats the LLM
192
- * layer. The default threshold is `0.6`
193
- * ({@link DEFAULT_VARIANT_SELECTION_CONFIDENCE_THRESHOLD}).
194
- *
195
- * Absent → the orchestration falls straight through to the
196
- * deterministic ladder. This is the default posture when no LLM
197
- * is bound.
198
- */
199
- selectVariant?(input: {
200
- /** Pre-filtered candidate shortlist (≤ shortlistSize per the orchestration). */
201
- readonly candidates: readonly Blueprint[];
202
- /** Per-call inputs — see {@link VariantSelectionContext}. */
203
- readonly context: VariantSelectionContext;
204
- readonly ctx: HandlerContext;
205
- }): Promise<VariantSelectionDecision>;
206
173
  }
207
174
  /**
208
175
  * A handshake the server DECLINED (ggui#523 item 3): the draft could
@@ -368,14 +335,11 @@ export interface GguiHandshakeHandlerDeps {
368
335
  * - `selectionReasonHash` — sha256 prefix of `blueprintMeta.selectedReason`
369
336
  * / `suggestion.rationale`; the text itself
370
337
  * never rides (ggui#1343)
371
- * - `selectionConfidence` — surfaced when the negotiator's
372
- * `selectVariant` ran AND the
373
- * orchestration carried confidence
374
- * into `blueprintMeta.selectedReason`;
375
- * absent on negotiators that don't
376
- * implement the optional `selectVariant`
377
- * seam (the deterministic ladder
378
- * doesn't carry a confidence axis).
338
+ * - `selectionConfidence` — surfaced when
339
+ * `blueprintMeta.selectedReason` carries a
340
+ * `conf=<n>` suffix (a reader rule: this
341
+ * package writes none, a negotiator may);
342
+ * absent otherwise.
379
343
  *
380
344
  * Lossy + non-throwing per the {@link TelemetrySink} contract;
381
345
  * absent dep is a NoopTelemetrySink semantic equivalent.
@@ -1 +1 @@
1
- {"version":3,"file":"handshake.d.ts","sourceRoot":"","sources":["../../src/renders/handshake.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handshake.d.ts","sourceRoot":"","sources":["../../src/renders/handshake.ts"],"names":[],"mappings":"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"}
@@ -179,7 +179,7 @@ export function createGguiHandshakeHandler(deps) {
179
179
  // reference generator reads descriptions statically — a pin in
180
180
  // handshake.test.ts holds it byte-equal to the constant.
181
181
  description: deps.description ??
182
- "Negotiate a contract for a UI you want to deliver. Call BEFORE ggui_render. Input: {intent, blueprintDraft: {contract, variance?, generator?}} \u2014 `intent` names the TASK (stored with the interface, shown to later requests), never the end user. NEGOTIATION: the server PRIORITIZES reusing a similar contract it already built, so it returns a PROPOSED contract, not your draft echoed: `suggestion` carries the proposal, a short `proposedContractSummary`, and origin = cache (built before) | agent (your draft, clean, as-is) | synth (your draft repaired; see suggestion.validationFindings). When origin = cache and the saved interface was picked by the reuse judge from this app's own pool, suggestion.blueprintMeta.matchedIntent carries its stated purpose (\u2264 280 chars): if it names a different task than your intent, call ggui_handshake again with forceCreate: true instead of rendering it. FORGIVING: the proposal is ALWAYS protocol-conforming \u2014 accept it; do NOT re-call ggui_handshake in a loop hoping for a different origin. `action: 'declined'` = nothing passed the contract gate (no proposal, no render for that handshakeId): fix the draft per suggestion.validationFindings and handshake once more. AGENT TOOLS: key `agentCapabilities.tools` by the BARE MCP tool name (after any `mcp__<server>__` prefix), NOT the host's connection label; `toolInfo` with its `inputSchema` is REQUIRED; set `serverInfo.name` to the server handle from that prefix (`mcp__todo__todo_add` \u2192 'todo'); if a tool has NO prefix, OMIT `serverInfo` \u2014 never invent a name. An action's OPTIONAL `nextStep: '<toolName>'` MUST name a tool declared in `agentCapabilities.tools`. THEN call the paired ggui_render (`props` is REQUIRED): OMIT `override` to ACCEPT the proposed contract (the normal path); `override: {variance}` re-aims the variant and keeps the agreed contract; `override: {contract}` commits your OWN new contract (STRICT \u2014 it must already conform; the server will not repair an override, so render fails). Then ggui_consume \u2192 react \u2192 repeat. SCHEMA ON THE WIRE: the response also carries `propsSchema` \u2014 the EXACT JSON Schema the paired ggui_render will enforce (enum fields list their full vocabulary; present whenever the proposal's props shape differs from your draft), plus `propsSchemaHash`/`propsSchemaProfile`; when present, generate `props` that satisfy it, never guess from your draft. The server never substitutes an empty contract for yours. A `proposedContractSummary` starting with `PARTIAL` = your draft MINUS the refused entries (listed in validationFindings): render it, re-declaring the dropped entries via `override: {contract}` on that render, or do a corrected re-handshake. A REPAIRED draft (origin = synth) keeps every member you declared on each action (description, example, icon, confirm, oneShot, nextStep) except the one a finding names; a member or a whole action the repair could not keep is its own finding \u2014 REPAIR_MEMBER_DROPPED at actionSpec.<name>.<member>, REPAIR_ENTRY_DROPPED at actionSpec.<name> (the message carries the gate's reason; a salvaged or PARTIAL proposal names each cut with the gate's code at the cut path) \u2014 re-declare it via `override: {contract}` on the render or re-handshake; `oneShot` is never inferred, only declared. A different variance resolves a distinct cached component. CONTRACT SHAPE \u2014 DataContract = up to six top-level specs: propsSpec (initial render data), actionSpec (user gestures that drive the agent's next turn), contextSpec (observable client state), streamSpec (live update channels), agentCapabilities (MCP tools the AGENT may call \u2014 the catalog actionSpec[*].nextStep and streamSpec[*].source.tool must resolve into), clientCapabilities (browser gadget hooks the COMPONENT imports). EVERY entry under propsSpec.properties / actionSpec / streamSpec / contextSpec is a WRAPPER object whose JSON Schema sits in its `schema:` field \u2014 never a flat JSON Schema at the entry level. Wrappers reject unrecognized keys. Placement test: needs next-turn reasoning \u21d2 actionSpec; observed state only \u21d2 contextSpec. ActionEntry uses OPTIONAL `nextStep: '<toolName>'` to hint the agent's intended next tool call \u2014 when present, the tool MUST also be declared in `agentCapabilities.tools`; OMIT it entirely when the agent should decide freely. AGENT TOOLS, more: `version` is optional metadata (include it only if your host surfaces it from `initialize`); a version difference alone never blocks reuse. The prefix-derived `serverInfo.name` lets the server reuse a UI built against the same (server, tool) for a later turn or a different agent. COVERAGE: when origin = cache the proposal may not cover every field of your draft; suggestion.validationFindings flags any COVERAGE_GAP, one per uncovered surface. DEFAULT TO ACCEPT (reuse-and-refine is the priority) \u2014 override only if the user must directly see or act on a flagged surface, since the cached UI cannot show it; a COVERAGE_GAP on a prop notes whether that prop was required or optional in your draft to inform that call. Also when origin = cache the proposed UI may have been built for a DIFFERENT variance than you requested; suggestion.validationFindings flags a VARIANCE_GAP (built for X, you asked Y). DEFAULT TO ACCEPT here too (reuse-and-refine) \u2014 re-aim the variance only if the persona/aesthetic difference is user-observable and matters for this interaction. VARIANCE is design-shaping signals only, and a STRICT four-key object: persona / aesthetic / context / seedPrompt \u2014 no other keys exist (`mood` is not one; put tonal intent in `aesthetic`); per-user runtime data belongs in `props` / contextSpec, NOT in variance. STRICTNESS: variance, blueprintDraft, and every wrapper entry (propsSpec.properties / actionSpec / streamSpec / contextSpec / agentCapabilities.tools) reject unrecognized keys \u2014 misplaced fields fail the call or surface as validationFindings rather than being ignored. PLACEMENT RULE: actionSpec = events that drive the agent's next turn; contextSpec = observable state. Test: needs next-turn reasoning? actionSpec. No? contextSpec.",
182
+ "Negotiate a contract for a UI you want to deliver. Call BEFORE ggui_render. Input: {intent, blueprintDraft: {contract, variance?, generator?}} \u2014 `intent` names the TASK (stored with the interface, shown to later requests), never the end user. NEGOTIATION: the server PRIORITIZES reusing a similar contract it already built, so it returns a PROPOSED contract, not your draft echoed: `suggestion` carries the proposal, a short `proposedContractSummary`, and origin = cache (built before) | agent (your draft, clean, as-is) | synth (your draft repaired; see suggestion.validationFindings). When origin = cache and the saved interface was picked by the reuse judge from this app's own pool, suggestion.blueprintMeta.matchedIntent carries its stated purpose (\u2264 280 chars): if it names a different task than your intent, call ggui_handshake again with forceCreate: true instead of rendering it. FORGIVING: the proposal is ALWAYS protocol-conforming \u2014 accept it; do NOT re-call ggui_handshake in a loop hoping for a different origin. `action: 'declined'` = nothing passed the contract gate (no proposal, no render for that handshakeId): fix the draft per suggestion.validationFindings and handshake once more. AGENT TOOLS: key `agentCapabilities.tools` by the BARE MCP tool name (after any `mcp__<server>__` prefix), NOT the host's connection label; `toolInfo` with its `inputSchema` is REQUIRED; set `serverInfo.name` to the server handle from that prefix (`mcp__todo__todo_add` \u2192 'todo'); if a tool has NO prefix, OMIT `serverInfo` \u2014 never invent a name. An action's OPTIONAL `nextStep: '<toolName>'` MUST name a tool declared in `agentCapabilities.tools`. THEN call the paired ggui_render (`props` is REQUIRED): OMIT `override` to ACCEPT the proposed contract (the normal path); `override: {variance}` re-aims the variant and keeps the agreed contract; `override: {contract}` commits your OWN new contract (STRICT \u2014 it must already conform; the server will not repair an override, so render fails). Then ggui_consume \u2192 react \u2192 repeat. SCHEMA ON THE WIRE: the response also carries `propsSchema` \u2014 the EXACT JSON Schema the paired ggui_render will enforce (enum fields list their full vocabulary; present whenever the proposal's props shape differs from your draft), plus `propsSchemaHash`/`propsSchemaProfile`; when present, generate `props` that satisfy it, never guess from your draft. The server never substitutes an empty contract for yours. A `proposedContractSummary` starting with `PARTIAL` = your draft MINUS the refused entries (listed in validationFindings): render it, re-declaring the dropped entries via `override: {contract}` on that render, or do a corrected re-handshake. A REPAIRED draft (origin = synth) keeps every member you declared on each entry it keeps under the same key (an action's oneShot and nextStep, a stream's mode and replay, and so on) except the one a finding names, and puts back any tool of yours the repair dropped (REPAIR_ENTRY_RESTORED at agentCapabilities.tools.<name>); a member or a whole entry the repair could not keep is its own finding \u2014 REPAIR_MEMBER_DROPPED at <spec>.<name>.<member>, REPAIR_ENTRY_DROPPED at <spec>.<name> (the message carries the gate's reason; a salvaged or PARTIAL proposal names each cut with the gate's code at the cut path) \u2014 re-declare it via `override: {contract}` on the render or re-handshake; `oneShot` is never inferred, only declared. A different variance resolves a distinct cached component. CONTRACT SHAPE \u2014 DataContract = up to six top-level specs: propsSpec (initial render data), actionSpec (user gestures that drive the agent's next turn), contextSpec (observable client state), streamSpec (live update channels), agentCapabilities (MCP tools the AGENT may call \u2014 the catalog actionSpec[*].nextStep and streamSpec[*].source.tool must resolve into), clientCapabilities (browser gadget hooks the COMPONENT imports). EVERY entry under propsSpec.properties / actionSpec / streamSpec / contextSpec is a WRAPPER object whose JSON Schema sits in its `schema:` field \u2014 never a flat JSON Schema at the entry level. Wrappers reject unrecognized keys. Placement test: needs next-turn reasoning \u21d2 actionSpec; observed state only \u21d2 contextSpec. ActionEntry uses OPTIONAL `nextStep: '<toolName>'` to hint the agent's intended next tool call \u2014 when present, the tool MUST also be declared in `agentCapabilities.tools`; OMIT it entirely when the agent should decide freely. AGENT TOOLS, more: `version` is optional metadata (include it only if your host surfaces it from `initialize`); a version difference alone never blocks reuse. The prefix-derived `serverInfo.name` lets the server reuse a UI built against the same (server, tool) for a later turn or a different agent. COVERAGE: when origin = cache the proposal may not cover every field of your draft; suggestion.validationFindings flags any COVERAGE_GAP, one per uncovered surface. DEFAULT TO ACCEPT (reuse-and-refine is the priority) \u2014 override only if the user must directly see or act on a flagged surface, since the cached UI cannot show it; a COVERAGE_GAP on a prop notes whether that prop was required or optional in your draft to inform that call. Also when origin = cache the proposed UI may have been built for a DIFFERENT variance than you requested; suggestion.validationFindings flags a VARIANCE_GAP (built for X, you asked Y). DEFAULT TO ACCEPT here too (reuse-and-refine) \u2014 re-aim the variance only if the persona/aesthetic difference is user-observable and matters for this interaction. VARIANCE is design-shaping signals only, and a STRICT four-key object: persona / aesthetic / context / seedPrompt \u2014 no other keys exist (`mood` is not one; put tonal intent in `aesthetic`); per-user runtime data belongs in `props` / contextSpec, NOT in variance. STRICTNESS: variance, blueprintDraft, and every wrapper entry (propsSpec.properties / actionSpec / streamSpec / contextSpec / agentCapabilities.tools) reject unrecognized keys \u2014 misplaced fields fail the call or surface as validationFindings rather than being ignored. PLACEMENT RULE: actionSpec = events that drive the agent's next turn; contextSpec = observable state. Test: needs next-turn reasoning? actionSpec. No? contextSpec.",
183
183
  inputSchema,
184
184
  outputSchema,
185
185
  async handler(input, ctx) {
@@ -58,7 +58,7 @@ export { createGguiListSessionsHandler, type GguiListSessionsHandlerDeps, type G
58
58
  export { buildNoCredentialsGguiSession, NO_CREDENTIALS_SYSTEM_CARD_KIND, } from "./no-credentials-card.js";
59
59
  export { emitPayloadTraceEvent, newPayloadTraceId, type PayloadTraceDirection, type PayloadTraceEvent, type PayloadTraceSink, } from "./payload-trace-sink.js";
60
60
  export { createGguiRefreshWsTokenHandler, type GguiRefreshWsTokenHandlerDeps, type GguiRefreshWsTokenOutput, type RefreshAccepted, type RefreshRejected, type WsEnvelopeVerdict, } from "./refresh-ws-token.js";
61
- export { renderReadAllowed, type RenderReadRowView } from "./render-read-gate.js";
61
+ export { RENDER_READ_APP_TRUST_OVER_SUBJECT, renderReadAllowed, renderReadVerdict, type RenderReadRowView, type RenderReadRung, type RenderReadVerdict, } from "./render-read-gate.js";
62
62
  export { appGadgetsForContract, generationInputsForHandshake, generatorInputForStory, storyForHandshake, type HandshakeGenerationInput, type HandshakeGenerationResolved, type HandshakeGenerationStory, type HandshakeRenderOverride, } from "./handshake-generation-inputs.js";
63
63
  export { fetchGadgetTypes } from "./fetch-gadget-types.js";
64
64
  export { createGguiRenderHandler, type ChannelNotifier, type GenerationCredentials, type GenerationDeps, type GguiRenderHandlerDeps, type GguiSessionPostFailureArgs, type GguiSessionPostSuccessArgs, type RenderOutput, } from "./render.js";
@@ -67,14 +67,15 @@ export { createGguiEmitHandler, type GguiEmitHandlerDeps, type StreamObserverNot
67
67
  export { createGguiSubmitActionHandler } from "./submit-action.js";
68
68
  export { createGguiRuntimePullHandler, type GguiRuntimePullHandlerDeps, } from "./runtime-pull.js";
69
69
  export { createGguiRuntimeTelemetryHandler, type GguiRuntimeTelemetryHandlerDeps, type RuntimeTelemetryLogger, } from "./runtime-telemetry.js";
70
+ export { createGguiReportRenderFailureHandler, type CreateGguiReportRenderFailureHandlerDeps, type RenderFailureRecord, } from "./report-render-failure.js";
70
71
  export { createGguiSyncContextHandler, type CreateGguiSyncContextHandlerDeps, } from "./sync-context.js";
71
72
  export { createGguiUpdateHandler, type GguiUpdateHandlerDeps, type PropsUpdateNotifier, } from "./update.js";
72
73
  export { createGguiAmendHandler, type GguiAmendHandlerDeps, } from "./amend.js";
73
74
  export { mutationInputSchema, runPropsMutation, type PropsMutationResult, } from "./props-mutation-core.js";
74
- export { matchBlueprint, type BlueprintMatchHit, type BlueprintMatchMiss, type BlueprintMatchResult, type MatchBlueprintDeps, RerankPair, type MatchBlueprintOptions, } from "./blueprint-matcher.js";
75
- export { attachAuthoredSource, BlueprintRejectedError, composeEmbeddingInput, composeExactKey, deleteBlueprint, findBlueprintExact, findBlueprintsByEmbedding, listBlueprints, recordBlueprintHit, registerBlueprint, type Blueprint, type BlueprintCandidate, type BlueprintIndex, type BlueprintKind, type BlueprintRegistryDeps, type AttachAuthoredSourceOutcome, type AttachAuthoredSourceResult, type ContractValidator, type RegisterBlueprintInput, type BlueprintIntentSource, type RegisterBlueprintOptions, } from "./blueprint-registry.js";
75
+ export { matchBlueprint, semanticExclusionKey, type BlueprintMatchHit, type BlueprintMatchMiss, type BlueprintMatchResult, type MatchBlueprintDeps, RerankPair, type MatchBlueprintOptions, } from "./blueprint-matcher.js";
76
+ export { attachAuthoredSource, BlueprintRejectedError, composeEmbeddingInput, composeExactKey, deleteBlueprint, findBlueprintExact, findBlueprintsByEmbedding, listBlueprints, recordBlueprintHit, registerBlueprint, admitGeneratorBuild, type Blueprint, type BlueprintCandidate, type BlueprintIndex, type BlueprintKind, type BlueprintRegistryDeps, type AttachAuthoredSourceOutcome, type AttachAuthoredSourceResult, type ContractValidator, type RegisterBlueprintInput, type BlueprintIntentSource, type RegisterBlueprintOptions, } from "./blueprint-registry.js";
76
77
  export { consumeHandshakeRecord, createGguiHandshakeHandler, DEFAULT_GENERATOR_SLUG, HANDSHAKE_RECORD_TTL_SEC, HandshakeNotFoundError, handshakeRecordKey, peekHandshakeRecord, type GguiHandshakeHandlerDeps, type HandshakeNegotiator, type HandshakeNegotiatorResult, type HandshakeReasonKind, type HandshakeRecord, type HandshakeStoredInput, type HandshakeStoredTarget, } from "./handshake.js";
77
- export { buildCacheReuseResult, buildCreateFallback, decideHandshake, type BlueprintPool, type HandshakeDecideInput, type HandshakeDecisionAdapter, } from "./decide-handshake.js";
78
+ export { buildCacheReuseResult, buildCreateFallback, decideHandshake, type BlueprintPool, type HandshakeDecideInput, type HandshakeDecisionAdapter, type SemanticExclusion, } from "./decide-handshake.js";
78
79
  export { directionDigest, fits, jsonSchemaTypesCompatible, type AestheticPresetRef, type DirectionScope, type FitCandidate, type FitCheck, type FitDeclined, type FitKind, type FitRequest, type FitVerdict, type RequestFitFacts, } from "./fits.js";
79
80
  export { installToCache, installedBlueprintIntent, type InstallToCacheInput, } from "./install-to-cache.js";
80
81
  export { createInstalledBlueprintsProvider, type CreateInstalledBlueprintsProviderOptions, type InstalledBlueprintCacheIssue, type CompileResult as InstalledBlueprintCompileResult, type InstalledBlueprintEntry, type InstalledBlueprintsProvider, type InstalledBlueprintsWalk, } from "./installed-blueprints-provider.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/renders/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/renders/index.ts"],"names":[],"mappings":"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"}
@@ -64,7 +64,7 @@ export { createGguiListSessionsHandler, } from "./list-sessions.js";
64
64
  export { buildNoCredentialsGguiSession, NO_CREDENTIALS_SYSTEM_CARD_KIND, } from "./no-credentials-card.js";
65
65
  export { emitPayloadTraceEvent, newPayloadTraceId, } from "./payload-trace-sink.js";
66
66
  export { createGguiRefreshWsTokenHandler, } from "./refresh-ws-token.js";
67
- export { renderReadAllowed } from "./render-read-gate.js";
67
+ export { RENDER_READ_APP_TRUST_OVER_SUBJECT, renderReadAllowed, renderReadVerdict, } from "./render-read-gate.js";
68
68
  export { appGadgetsForContract, generationInputsForHandshake, generatorInputForStory, storyForHandshake, } from "./handshake-generation-inputs.js";
69
69
  export { fetchGadgetTypes } from "./fetch-gadget-types.js";
70
70
  export { createGguiRenderHandler, } from "./render.js";
@@ -73,6 +73,7 @@ export { createGguiEmitHandler, } from "./stream.js";
73
73
  export { createGguiSubmitActionHandler } from "./submit-action.js";
74
74
  export { createGguiRuntimePullHandler, } from "./runtime-pull.js";
75
75
  export { createGguiRuntimeTelemetryHandler, } from "./runtime-telemetry.js";
76
+ export { createGguiReportRenderFailureHandler, } from "./report-render-failure.js";
76
77
  export { createGguiSyncContextHandler, } from "./sync-context.js";
77
78
  export { createGguiUpdateHandler, } from "./update.js";
78
79
  export { createGguiAmendHandler, } from "./amend.js";
@@ -81,8 +82,8 @@ export { mutationInputSchema, runPropsMutation, } from "./props-mutation-core.js
81
82
  // `HandshakeNegotiator.decide` returning a `HandshakeSuggestion`.
82
83
  // The LLM-backed negotiator in `@ggui-ai/mcp-server` is the
83
84
  // reference implementation.
84
- export { matchBlueprint, } from "./blueprint-matcher.js";
85
- export { attachAuthoredSource, BlueprintRejectedError, composeEmbeddingInput, composeExactKey, deleteBlueprint, findBlueprintExact, findBlueprintsByEmbedding, listBlueprints, recordBlueprintHit, registerBlueprint, } from "./blueprint-registry.js";
85
+ export { matchBlueprint, semanticExclusionKey, } from "./blueprint-matcher.js";
86
+ export { attachAuthoredSource, BlueprintRejectedError, composeEmbeddingInput, composeExactKey, deleteBlueprint, findBlueprintExact, findBlueprintsByEmbedding, listBlueprints, recordBlueprintHit, registerBlueprint, admitGeneratorBuild, } from "./blueprint-registry.js";
86
87
  export { consumeHandshakeRecord, createGguiHandshakeHandler, DEFAULT_GENERATOR_SLUG, HANDSHAKE_RECORD_TTL_SEC, HandshakeNotFoundError, handshakeRecordKey, peekHandshakeRecord, } from "./handshake.js";
87
88
  export { buildCacheReuseResult, buildCreateFallback, decideHandshake, } from "./decide-handshake.js";
88
89
  // ggui#1427 — `fits()`: the three code checks before the judge, and the
@@ -1 +1 @@
1
- {"version":3,"file":"installed-blueprints-provider.d.ts","sourceRoot":"","sources":["../../src/renders/installed-blueprints-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"installed-blueprints-provider.d.ts","sourceRoot":"","sources":["../../src/renders/installed-blueprints-provider.ts"],"names":[],"mappings":"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"}
@@ -266,7 +266,9 @@ export function createInstalledBlueprintsProvider(options) {
266
266
  if (liveKeys.has(cKey))
267
267
  continue;
268
268
  try {
269
- await options.deps.index.deleteId(scope, binding.exactKey);
269
+ // Conditional on the id this instance bound: a key re-bound since
270
+ // to a different blueprint keeps it (#1603).
271
+ await options.deps.index.deleteId(scope, binding.exactKey, binding.id);
270
272
  }
271
273
  catch {
272
274
  // Best-effort — a surviving binding self-heals only once
@@ -22,15 +22,16 @@
22
22
  * - `tier: 'gated'` pairs count toward pass/fail metrics.
23
23
  * `tier: 'debated'` pairs are genuinely ambiguous — they are scored
24
24
  * for judge STABILITY (repeat agreement) only, never correctness.
25
- * Promoting a debated pair to gated requires a recorded ruling in
26
- * the experiment ledger, not an edit here.
25
+ * Promoting a debated pair to gated requires a recorded ruling —
26
+ * the evidence that settled the pair, stated in the change that
27
+ * promotes it — not a bare edit here.
27
28
  * - The judge philosophy these labels encode is the CURRENT prompt
28
29
  * (similarity-only, coverage-blind): MATCH = same intended user
29
30
  * task AND same broad UI shape; added/omitted fields, paraphrase,
30
31
  * and visual style never block; NO-MATCH = different task, different
31
32
  * UI shape, or a conflicting load-bearing fixed value. If that
32
- * prompt changes, these labels must be re-adjudicated — record the
33
- * sweep in the experiment ledger.
33
+ * prompt changes, these labels must be re-adjudicated, with the
34
+ * sweep recorded in the change that re-labels them.
34
35
  *
35
36
  * The match-precision instrument (ggui#556).
36
37
  */
@@ -1 +1 @@
1
- {"version":3,"file":"pairs.d.ts","sourceRoot":"","sources":["../../../src/renders/match-precision/pairs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEzE,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,QAAQ,CAAC,KAAK,EACV,kBAAkB,GAClB,gBAAgB,GAChB,qBAAqB,GACrB,oBAAoB,GACpB,SAAS,CAAC;IACd,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,oGAAoG;IACpG,QAAQ,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAC;IACpC,0BAA0B;IAC1B,QAAQ,CAAC,KAAK,EAAE;QACd,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC;QACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;KACvC,CAAC;IACF,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,OAAO,EAAE,KAAK,GAAG,MAAM,CAAC;QACjC,iFAAiF;QACjF,QAAQ,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,YAAY,CAAC;QAC5D,gEAAgE;QAChE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,kEAAkE;IAClE,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAkFD,QAAA,MAAM,SAAS,+BAA+B,CAAC;AAoD/C,OAAO,EAAE,SAAS,EAAE,CAAC;AAUrB,eAAO,MAAM,KAAK,EAAE,SAAS,SAAS,EAmuB5B,CAAC"}
1
+ {"version":3,"file":"pairs.d.ts","sourceRoot":"","sources":["../../../src/renders/match-precision/pairs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEzE,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,QAAQ,CAAC,KAAK,EACV,kBAAkB,GAClB,gBAAgB,GAChB,qBAAqB,GACrB,oBAAoB,GACpB,SAAS,CAAC;IACd,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,oGAAoG;IACpG,QAAQ,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAC;IACpC,0BAA0B;IAC1B,QAAQ,CAAC,KAAK,EAAE;QACd,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC;QACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;KACvC,CAAC;IACF,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,OAAO,EAAE,KAAK,GAAG,MAAM,CAAC;QACjC,iFAAiF;QACjF,QAAQ,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,YAAY,CAAC;QAC5D,gEAAgE;QAChE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,kEAAkE;IAClE,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAkFD,QAAA,MAAM,SAAS,+BAA+B,CAAC;AAoD/C,OAAO,EAAE,SAAS,EAAE,CAAC;AAUrB,eAAO,MAAM,KAAK,EAAE,SAAS,SAAS,EAmuB5B,CAAC"}
@@ -3,14 +3,19 @@
3
3
  * true seed in realistic mixed pools, where contract+intent ranks it
4
4
  * higher?
5
5
  *
6
- * Context: stored vectors embed `composeEmbeddingInput(contract,
7
- * intent)` and `findBlueprintsByEmbedding` COMPOSES the query the same
8
- * way when a contract is passed — but the matcher's RAG call site drops
9
- * the contract (`blueprint-matcher.ts` builds `{ intent }` only), so
10
- * production retrieval is intent-only even for contract-bearing
11
- * handshakes. Run 5 measured the asymmetry (+0.371 mean top-1 cosine
12
- * on should-hits under Titan); THIS probe measures whether it moves
13
- * RANKS: pool = every distinct seed across the 28 hand-labeled pairs
6
+ * Context, as it stood when this probe was written: stored vectors embed
7
+ * `composeEmbeddingInput(contract, intent)` and `findBlueprintsByEmbedding`
8
+ * composes the query the same way when a contract is passed, but the
9
+ * matcher's RAG call site then built `{ intent }` only, so retrieval was
10
+ * intent-only even for contract-bearing handshakes. **That is no longer
11
+ * the case:** since #606's call-site fix the matcher passes the contract
12
+ * when the request carries one (`blueprint-matcher.ts`, the `ragArg`
13
+ * beside `findBlueprintsByEmbedding`), and a contract-less request stays
14
+ * intent-only by design. The probe is kept as the record of the decision
15
+ * and still compares both compositions. Run 5 measured the asymmetry
16
+ * (+0.371 mean top-1 cosine on should-hits under Titan); this probe
17
+ * measures whether it moves RANKS: pool = every distinct seed across the
18
+ * 28 hand-labeled pairs
14
19
  * (a mixed-family library), one query per semantic should-hit case,
15
20
  * both compositions, rank of the true seed recorded.
16
21
  *
@@ -17,12 +17,19 @@
17
17
  * every dispatch means before the wire carries a card epoch.
18
18
  */
19
19
  import { type GguiSession } from '@ggui-ai/protocol';
20
- import type { GguiSessionStore } from '@ggui-ai/mcp-server-core';
20
+ import type { GguiSessionStore, SpentOneShotClaim } from '@ggui-ai/mcp-server-core';
21
21
  /**
22
22
  * What {@link recordCommittedOneShot} decided. Every arm but `recorded` wrote
23
23
  * nothing, and none of them is an error: a caller logs only a thrown store
24
- * failure (fail-open, the gesture has already been delivered).
24
+ * failure (fail-open). On `recorded`, `claim` carries the store's answer
25
+ * when the store claims (ggui#1424) — `recorded`, `already-spent {by,
26
+ * delivered}` or `superseded` — and is absent for a store that records
27
+ * without claiming (the earlier port).
25
28
  */
29
+ export interface CommittedOneShotResult {
30
+ readonly outcome: CommittedOneShotOutcome;
31
+ readonly claim?: SpentOneShotClaim;
32
+ }
26
33
  export type CommittedOneShotOutcome =
27
34
  /** The store applied the spend (a repeat of an already-spent action included). */
28
35
  'recorded'
@@ -45,10 +52,18 @@ export interface RecordCommittedOneShotInput {
45
52
  readonly data: unknown;
46
53
  /** The dispatching card's history epoch, when the dispatch carries one. */
47
54
  readonly cardEpoch?: number;
55
+ /** The gesture's `actionId` — the holder of the spend it claims (ggui#1424). */
56
+ readonly actionId?: string;
57
+ /** A take-over of an undelivered holder — see `SpentOneShotSpend.reclaimFrom`. */
58
+ readonly reclaimFrom?: string;
59
+ /** The holder's mark after its append landed — see `SpentOneShotSpend.delivered`. */
60
+ readonly delivered?: true;
61
+ /** The holder gives the action back after a conflicting append — see `SpentOneShotSpend.release`. */
62
+ readonly release?: true;
48
63
  }
49
64
  /**
50
65
  * Decide and, when the dispatch is a committed `oneShot` on the head card,
51
66
  * record it. A store failure propagates: the caller owns its named warn line.
52
67
  */
53
- export declare function recordCommittedOneShot(input: RecordCommittedOneShotInput): Promise<CommittedOneShotOutcome>;
68
+ export declare function recordCommittedOneShot(input: RecordCommittedOneShotInput): Promise<CommittedOneShotResult>;
54
69
  //# sourceMappingURL=record-committed-one-shot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"record-committed-one-shot.d.ts","sourceRoot":"","sources":["../../src/renders/record-committed-one-shot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAsB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE;;;;GAIG;AACH,MAAM,MAAM,uBAAuB;AACjC,kFAAkF;AAChF,UAAU;AACZ,oFAAoF;GAClF,cAAc;AAChB,0EAA0E;GACxE,eAAe;AACjB,4DAA4D;GAC1D,iBAAiB;AACnB,4FAA4F;GAC1F,aAAa,CAAC;AAElB,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,wCAAwC;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,2EAA2E;IAC3E,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,2BAA2B,GACjC,OAAO,CAAC,uBAAuB,CAAC,CAYlC"}
1
+ {"version":3,"file":"record-committed-one-shot.d.ts","sourceRoot":"","sources":["../../src/renders/record-committed-one-shot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAsB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAEpF;;;;;;;GAOG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAC;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;CACpC;AAED,MAAM,MAAM,uBAAuB;AACjC,kFAAkF;AAChF,UAAU;AACZ,oFAAoF;GAClF,cAAc;AAChB,0EAA0E;GACxE,eAAe;AACjB,4DAA4D;GAC1D,iBAAiB;AACnB,4FAA4F;GAC1F,aAAa,CAAC;AAElB,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,wCAAwC;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,2EAA2E;IAC3E,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,kFAAkF;IAClF,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,qFAAqF;IACrF,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;IAC1B,qGAAqG;IACrG,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,2BAA2B,GACjC,OAAO,CAAC,sBAAsB,CAAC,CAmBjC"}
@@ -24,18 +24,25 @@ import { validateActionData } from '@ggui-ai/protocol';
24
24
  export async function recordCommittedOneShot(input) {
25
25
  const { render, action } = input;
26
26
  if (render.type !== 'component')
27
- return 'not-one-shot';
27
+ return { outcome: 'not-one-shot' };
28
28
  const spec = render.actionSpec;
29
29
  if (spec?.[action]?.oneShot !== true)
30
- return 'not-one-shot';
30
+ return { outcome: 'not-one-shot' };
31
31
  if (!validateActionData({ action, data: input.data }, spec).valid)
32
- return 'not-committed';
32
+ return { outcome: 'not-committed' };
33
33
  const headEpoch = render.epoch ?? 0;
34
34
  const epoch = input.cardEpoch ?? headEpoch;
35
35
  if (epoch !== headEpoch)
36
- return 'superseded-card';
36
+ return { outcome: 'superseded-card' };
37
37
  if (input.store.recordSpentOneShot === undefined)
38
- return 'not-durable';
39
- await input.store.recordSpentOneShot(input.sessionId, { epoch, action });
40
- return 'recorded';
38
+ return { outcome: 'not-durable' };
39
+ const claim = await input.store.recordSpentOneShot(input.sessionId, {
40
+ epoch,
41
+ action,
42
+ ...(input.actionId !== undefined ? { actionId: input.actionId } : {}),
43
+ ...(input.reclaimFrom !== undefined ? { reclaimFrom: input.reclaimFrom } : {}),
44
+ ...(input.delivered === true ? { delivered: true } : {}),
45
+ ...(input.release === true ? { release: true } : {}),
46
+ });
47
+ return claim === undefined ? { outcome: 'recorded' } : { outcome: 'recorded', claim };
41
48
  }
@@ -30,10 +30,8 @@
30
30
  *
31
31
  * Every call is authorized by the caller's own connection, so no refresh
32
32
  * window bounds this path. A holder of an envelope who is not admitted to
33
- * its session gets nothing. The advertised output schema is unchanged from
34
- * the release before (its `code` enum still names `REFRESH_WINDOW_CLOSED`,
35
- * which this server never sends), so a client that cached the previous
36
- * schema accepts every answer (N−1, pinned in `@ggui-ai/mcp-server`).
33
+ * its session gets nothing. The advertised output schema is pinned byte for
34
+ * byte in `@ggui-ai/mcp-server` (ggui#1510).
37
35
  */
38
36
  import { z } from 'zod';
39
37
  import type { GguiSessionStore } from '@ggui-ai/mcp-server-core';
@@ -44,9 +42,7 @@ export interface RefreshAccepted {
44
42
  }
45
43
  export interface RefreshRejected {
46
44
  readonly ok: false;
47
- /** `REFRESH_WINDOW_CLOSED` stays declared for N−1 (a previous-release
48
- * server sends it); this server never does. */
49
- readonly code: 'BOOTSTRAP_INVALID' | 'REFRESH_WINDOW_CLOSED' | 'BOOTSTRAP_NOT_SUPPORTED';
45
+ readonly code: 'BOOTSTRAP_INVALID' | 'BOOTSTRAP_NOT_SUPPORTED';
50
46
  readonly message: string;
51
47
  }
52
48
  /**
@@ -55,12 +51,16 @@ export interface RefreshRejected {
55
51
  * e2e specs) type their reads against the handler's own contract.
56
52
  */
57
53
  export type GguiRefreshWsTokenOutput = RefreshAccepted | RefreshRejected;
58
- /** A ws envelope's signature-and-kind verdict, at ANY age: the claims the refresh needs. */
54
+ /**
55
+ * A ws envelope's signature-and-kind verdict, at ANY age: the claims the
56
+ * refresh needs. `rootIat` is the issued-at of the envelope's chain root: its
57
+ * `rootIat` claim when a `/state` renewal minted it, else its own `iat`.
58
+ */
59
59
  export type WsEnvelopeVerdict = {
60
60
  readonly ok: true;
61
61
  readonly sessionId: string;
62
62
  readonly appId: string;
63
- readonly iat: number;
63
+ readonly rootIat: number;
64
64
  } | {
65
65
  readonly ok: false;
66
66
  };
@@ -95,8 +95,6 @@ export declare function createGguiRefreshWsTokenHandler(deps?: GguiRefreshWsToke
95
95
  * On `ok:false`, the canonical rejection code:
96
96
  * - `'BOOTSTRAP_INVALID'` — signature mismatch, malformed envelope,
97
97
  * or the wrong kind (e.g. a session token submitted here).
98
- * - `'REFRESH_WINDOW_CLOSED'` — declared for N−1 only: a previous-
99
- * release server sends it; this server never does.
100
98
  * - `'BOOTSTRAP_NOT_SUPPORTED'` — the deployment wires no render
101
99
  * store, envelope verifier or minter.
102
100
  * A session the caller cannot see is NOT answered here: it throws the
@@ -104,7 +102,6 @@ export declare function createGguiRefreshWsTokenHandler(deps?: GguiRefreshWsToke
104
102
  */
105
103
  readonly code: z.ZodOptional<z.ZodEnum<{
106
104
  BOOTSTRAP_INVALID: "BOOTSTRAP_INVALID";
107
- REFRESH_WINDOW_CLOSED: "REFRESH_WINDOW_CLOSED";
108
105
  BOOTSTRAP_NOT_SUPPORTED: "BOOTSTRAP_NOT_SUPPORTED";
109
106
  }>>;
110
107
  /** Human-readable diagnostic on `ok:false`. */
@@ -1 +1 @@
1
- {"version":3,"file":"refresh-ws-token.d.ts","sourceRoot":"","sources":["../../src/renders/refresh-ws-token.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAgDjE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB;oDACgD;IAChD,QAAQ,CAAC,IAAI,EAAE,mBAAmB,GAAG,uBAAuB,GAAG,yBAAyB,CAAC;IACzF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG,eAAe,GAAG,eAAe,CAAC;AAEzE,4FAA4F;AAC5F,MAAM,MAAM,iBAAiB,GACzB;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC/F;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAA;CAAE,CAAC;AAE3B,MAAM,WAAW,6BAA6B;IAC5C,0DAA0D;IAC1D,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IACxC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,iBAAiB,CAAC;IAC1D;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9G;AAYD;;;GAGG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,GAAE,6BAAkC;;;IAzFtF,gEAAgE;;IAEhE;;;;;;;;;;OAUG;;;;;;IAQH,+CAA+C;;IAE/C,2DAA2D;;IAE3D;;;;;OAKG;;6BAyHJ"}
1
+ {"version":3,"file":"refresh-ws-token.d.ts","sourceRoot":"","sources":["../../src/renders/refresh-ws-token.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AA6CjE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,GAAG,yBAAyB,CAAC;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG,eAAe,GAAG,eAAe,CAAC;AAEzE;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GACzB;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnG;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAA;CAAE,CAAC;AAE3B,MAAM,WAAW,6BAA6B;IAC5C,0DAA0D;IAC1D,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IACxC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,iBAAiB,CAAC;IAC1D;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9G;AAiBD;;;GAGG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,GAAE,6BAAkC;;;IA7FtF,gEAAgE;;IAEhE;;;;;;;;OAQG;;;;;IAOH,+CAA+C;;IAE/C,2DAA2D;;IAE3D;;;;;OAKG;;6BAkIJ"}