@pixerate/editor 0.261.0 → 0.262.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/agent/index.cjs +19 -3
- package/dist/agent/index.js +21 -5
- package/dist/bridge/cli.cjs +4 -3
- package/dist/bridge/cli.js +3 -2
- package/dist/bridge/index.cjs +4 -3
- package/dist/bridge/index.js +3 -2
- package/dist/{chunk-KBNCEZZB.cjs → chunk-5NRD76T7.cjs} +9 -7
- package/dist/{chunk-SPPDMY7T.js → chunk-6LWEL5DO.js} +4 -2
- package/dist/{chunk-RTPBM46F.cjs → chunk-7TD63DZP.cjs} +1 -294
- package/dist/{chunk-ABHOYBZD.js → chunk-K4BGRCSH.js} +1 -294
- package/dist/chunk-SYEOA5MS.js +301 -0
- package/dist/{chunk-5DLCOQOQ.cjs → chunk-YBC3RKT2.cjs} +177 -16
- package/dist/chunk-ZEKI6EPI.cjs +301 -0
- package/dist/{chunk-UCYW4M66.js → chunk-ZQI3WUPP.js} +163 -2
- package/dist/paint-editor/contract.d.cts +11 -0
- package/dist/paint-editor/contract.d.ts +11 -0
- package/dist/paint-editor/index.cjs +23 -1
- package/dist/paint-editor/index.d.cts +1 -1
- package/dist/paint-editor/index.d.ts +1 -1
- package/dist/paint-editor/index.js +23 -1
- package/dist/tools/conformance.d.cts +138 -0
- package/dist/tools/conformance.d.ts +138 -0
- package/dist/tools/index.cjs +19 -3
- package/dist/tools/index.d.cts +1 -0
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.js +21 -5
- package/package.json +1 -1
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Conformance scenarios: a recorded sequence of tool calls with what each one returned, so
|
|
3
|
+
* another implementation of an editor (the Swift port, #533) can replay the same calls and check
|
|
4
|
+
* it gets the same results, documents and pixels. `@pixerate/conformance` holds the scenarios
|
|
5
|
+
* (`domains/<domain>/fixtures/*.json`); `scripts/record-conformance.mjs` records them from this
|
|
6
|
+
* core and a core test replays them.
|
|
7
|
+
*
|
|
8
|
+
* Results are compared after {@link normalizeConformanceValue}: ids an implementation generates
|
|
9
|
+
* (from a clock, say) become `@1`, `@2`, … in the order they are first seen, and binary payloads
|
|
10
|
+
* become `"<binary>"`, so neither the id format nor the PNG encoder is part of the contract. Ids
|
|
11
|
+
* that come from counters or names (`s1`, `pad1`, `ink-pen`) stay as they are. Every implementation applies the same rules (written
|
|
12
|
+
* out in the package README).
|
|
13
|
+
*/
|
|
14
|
+
import type { McpToolResult } from './registry.js';
|
|
15
|
+
/** One tool call of a scenario and, once recorded, what it returned. */
|
|
16
|
+
export interface ConformanceStep {
|
|
17
|
+
/** Tool name, unprefixed (`paint_stroke`). */
|
|
18
|
+
tool: string;
|
|
19
|
+
/** Arguments. A string `@n` is replaced by the id that `@n` stands for. */
|
|
20
|
+
arguments?: Record<string, unknown>;
|
|
21
|
+
/** Also compare the saved document after this call. */
|
|
22
|
+
document?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Also compare the rendered pixels after this call (`paper: false` leaves the paper out;
|
|
25
|
+
* `tolerance` loosens what another implementation is held to for this snapshot).
|
|
26
|
+
*/
|
|
27
|
+
pixels?: boolean | {
|
|
28
|
+
paper?: boolean;
|
|
29
|
+
tolerance?: {
|
|
30
|
+
maxDelta?: number;
|
|
31
|
+
meanDelta?: number;
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Parts of the result left out of the comparison because they describe this implementation
|
|
36
|
+
* rather than the contract (the wet engine's backend): JSON pointers like `/backend`, where a
|
|
37
|
+
* `*` segment stands for every array element or object member.
|
|
38
|
+
*/
|
|
39
|
+
ignore?: string[];
|
|
40
|
+
/** Recorded results, written by the recorder. */
|
|
41
|
+
expect?: ConformanceExpectation;
|
|
42
|
+
}
|
|
43
|
+
export interface ConformanceExpectation {
|
|
44
|
+
/** The normalized `structuredContent`, or `{ error: { code, message, details? } }` for a failed call. */
|
|
45
|
+
result: unknown;
|
|
46
|
+
isError?: true;
|
|
47
|
+
document?: unknown;
|
|
48
|
+
pixels?: ConformancePixels;
|
|
49
|
+
}
|
|
50
|
+
/** A pixel snapshot: the PNG next to the scenario plus how close another implementation must be. */
|
|
51
|
+
export interface ConformancePixels {
|
|
52
|
+
/** PNG file, relative to the scenario file. */
|
|
53
|
+
file: string;
|
|
54
|
+
width: number;
|
|
55
|
+
height: number;
|
|
56
|
+
/** SHA-256 of the RGBA bytes, hex. This core matches it exactly. */
|
|
57
|
+
sha256: string;
|
|
58
|
+
/** Largest difference allowed in any channel of any pixel (0–255). */
|
|
59
|
+
maxDelta: number;
|
|
60
|
+
/** Largest mean difference allowed over all channels. */
|
|
61
|
+
meanDelta: number;
|
|
62
|
+
}
|
|
63
|
+
export interface ConformanceScenario {
|
|
64
|
+
$schema?: string;
|
|
65
|
+
/** Unique kebab-case id within the domain; also the file name. */
|
|
66
|
+
id: string;
|
|
67
|
+
description: string;
|
|
68
|
+
/** Host options, such as the canvas size. */
|
|
69
|
+
setup?: Record<string, unknown>;
|
|
70
|
+
steps: ConformanceStep[];
|
|
71
|
+
/** Reasons an implementation skips the whole scenario, by implementation (`swift`). */
|
|
72
|
+
skip?: Record<string, string>;
|
|
73
|
+
}
|
|
74
|
+
/** What a scenario runs against: a tool registry plus ways to read the document and pixels. */
|
|
75
|
+
export interface ConformanceHost {
|
|
76
|
+
callTool(name: string, args: Record<string, unknown>): Promise<McpToolResult>;
|
|
77
|
+
document(): unknown;
|
|
78
|
+
pixels(options: {
|
|
79
|
+
paper?: boolean;
|
|
80
|
+
}): {
|
|
81
|
+
width: number;
|
|
82
|
+
height: number;
|
|
83
|
+
data: Uint8Array | Uint8ClampedArray;
|
|
84
|
+
};
|
|
85
|
+
/** Whether a string is an id this implementation generated in its own format (default: none). */
|
|
86
|
+
isGeneratedId?(value: string): boolean;
|
|
87
|
+
dispose?(): void;
|
|
88
|
+
}
|
|
89
|
+
/** What one step produced, normalized (pixels are raw RGBA for the caller to hash or encode). */
|
|
90
|
+
export interface ConformanceStepOutput {
|
|
91
|
+
result: unknown;
|
|
92
|
+
isError: boolean;
|
|
93
|
+
document?: unknown;
|
|
94
|
+
pixels?: {
|
|
95
|
+
width: number;
|
|
96
|
+
height: number;
|
|
97
|
+
data: Uint8Array;
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
/** Maps real ids to `@n` placeholders and back, across a whole scenario. */
|
|
101
|
+
export declare class ConformanceIds {
|
|
102
|
+
private readonly toPlaceholder;
|
|
103
|
+
private readonly fromPlaceholder;
|
|
104
|
+
/** The placeholder for `id`, assigning the next one when it is new. */
|
|
105
|
+
add(id: string): string;
|
|
106
|
+
placeholder(id: string): string | undefined;
|
|
107
|
+
/** `text` with every known id in it replaced by its placeholder (longest ids first). */
|
|
108
|
+
replaceWithin(text: string): string;
|
|
109
|
+
/** The real id a placeholder stands for. */
|
|
110
|
+
resolve(placeholder: string): string | undefined;
|
|
111
|
+
}
|
|
112
|
+
/** Strings at least this long made only of base64 characters are binary payloads. */
|
|
113
|
+
export declare const CONFORMANCE_BINARY_MIN_LENGTH = 200;
|
|
114
|
+
type IdTest = (value: string) => boolean;
|
|
115
|
+
/**
|
|
116
|
+
* A value as scenarios store it:
|
|
117
|
+
* 1. Every string value or object key the implementation generated as an id (`isGeneratedId`) is
|
|
118
|
+
* numbered `@1`, `@2`, … in the order first seen, walking depth first with object keys sorted
|
|
119
|
+
* (each key before its value); the numbering carries across the scenario's steps.
|
|
120
|
+
* 2. Every known id in a string or object key, whole or inside a longer string (an error message),
|
|
121
|
+
* becomes its placeholder; longer ids are replaced first.
|
|
122
|
+
* 3. A string starting with `data:`, or at least 200 characters of base64, becomes `"<binary>"`.
|
|
123
|
+
* 4. An ISO 8601 date-time string (`2026-11-04T01:06:52.993Z`) becomes `"<time>"`: clocks differ.
|
|
124
|
+
* 5. Object keys are sorted; `undefined` values are dropped (as JSON would).
|
|
125
|
+
*/
|
|
126
|
+
export declare function normalizeConformanceValue(value: unknown, ids: ConformanceIds, isGeneratedId?: IdTest): unknown;
|
|
127
|
+
/** `value` without the members at `paths` (`/a/b`, `*` for every element or member). */
|
|
128
|
+
export declare function omitConformancePaths(value: unknown, paths: readonly string[]): unknown;
|
|
129
|
+
/** Arguments with each `@n` placeholder string replaced by the id it stands for. */
|
|
130
|
+
export declare function resolveConformanceArguments(value: unknown, ids: ConformanceIds): unknown;
|
|
131
|
+
/** The comparable part of a tool result: `structuredContent`, or the error's code, message and details. */
|
|
132
|
+
export declare function conformanceResult(result: McpToolResult): {
|
|
133
|
+
value: unknown;
|
|
134
|
+
isError: boolean;
|
|
135
|
+
};
|
|
136
|
+
/** Runs a scenario's calls in order against a fresh host and returns what each step produced. */
|
|
137
|
+
export declare function runConformanceScenario(scenario: ConformanceScenario, host: ConformanceHost): Promise<ConformanceStepOutput[]>;
|
|
138
|
+
export {};
|
package/dist/tools/index.cjs
CHANGED
|
@@ -14,7 +14,6 @@
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
var _chunk5DLCOQOQcjs = require('../chunk-5DLCOQOQ.cjs');
|
|
18
17
|
|
|
19
18
|
|
|
20
19
|
|
|
@@ -22,6 +21,7 @@ var _chunk5DLCOQOQcjs = require('../chunk-5DLCOQOQ.cjs');
|
|
|
22
21
|
|
|
23
22
|
|
|
24
23
|
|
|
24
|
+
var _chunkYBC3RKT2cjs = require('../chunk-YBC3RKT2.cjs');
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
|
|
@@ -30,6 +30,7 @@ var _chunk5DLCOQOQcjs = require('../chunk-5DLCOQOQ.cjs');
|
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
|
|
33
|
+
var _chunkZEKI6EPIcjs = require('../chunk-ZEKI6EPI.cjs');
|
|
33
34
|
|
|
34
35
|
|
|
35
36
|
|
|
@@ -40,7 +41,15 @@ var _chunk5DLCOQOQcjs = require('../chunk-5DLCOQOQ.cjs');
|
|
|
40
41
|
|
|
41
42
|
|
|
42
43
|
|
|
43
|
-
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
var _chunk7TD63DZPcjs = require('../chunk-7TD63DZP.cjs');
|
|
44
53
|
|
|
45
54
|
|
|
46
55
|
|
|
@@ -201,4 +210,11 @@ var _chunk2BSBFBOAcjs = require('../chunk-2BSBFBOA.cjs');
|
|
|
201
210
|
|
|
202
211
|
|
|
203
212
|
|
|
204
|
-
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
exports.AgentPlayback = _chunk3SLBXKAWcjs.AgentPlayback; exports.CAPTURE_EXCLUDE_SELECTOR = _chunkSVFEVKLFcjs.CAPTURE_EXCLUDE_SELECTOR; exports.CAPTURE_OVERLAY_SELECTORS = _chunkSVFEVKLFcjs.CAPTURE_OVERLAY_SELECTORS; exports.CONFORMANCE_BINARY_MIN_LENGTH = _chunkYBC3RKT2cjs.CONFORMANCE_BINARY_MIN_LENGTH; exports.ConformanceIds = _chunkYBC3RKT2cjs.ConformanceIds; exports.EDITOR_CANVAS_TOOLS = _chunkSVFEVKLFcjs.EDITOR_CANVAS_TOOLS; exports.EDITOR_MCP_TOOLS = _chunkSVFEVKLFcjs.EDITOR_MCP_TOOLS; exports.EDITOR_PROMPT_TOOLS = _chunkSVFEVKLFcjs.EDITOR_PROMPT_TOOLS; exports.EDIT_OPERATION_REQUIRED_ARGUMENTS = _chunkSVFEVKLFcjs.EDIT_OPERATION_REQUIRED_ARGUMENTS; exports.EXPORT_EXCLUDED_SELECTORS = _chunkSVFEVKLFcjs.EXPORT_EXCLUDED_SELECTORS; exports.JSON_RPC_ERRORS = _chunkZEKI6EPIcjs.JSON_RPC_ERRORS; exports.MCP_PROTOCOL_VERSIONS = _chunkZEKI6EPIcjs.MCP_PROTOCOL_VERSIONS; exports.MCP_TOOL_CANVAS_ADD_NODE = _chunkSVFEVKLFcjs.MCP_TOOL_CANVAS_ADD_NODE; exports.MCP_TOOL_CANVAS_CONNECT = _chunkSVFEVKLFcjs.MCP_TOOL_CANVAS_CONNECT; exports.MCP_TOOL_CANVAS_HIGHLIGHT = _chunkSVFEVKLFcjs.MCP_TOOL_CANVAS_HIGHLIGHT; exports.MCP_TOOL_CANVAS_LAYOUT = _chunkSVFEVKLFcjs.MCP_TOOL_CANVAS_LAYOUT; exports.MCP_TOOL_CANVAS_REMOVE_NODES = _chunkSVFEVKLFcjs.MCP_TOOL_CANVAS_REMOVE_NODES; exports.MCP_TOOL_CANVAS_SELECT = _chunkSVFEVKLFcjs.MCP_TOOL_CANVAS_SELECT; exports.MCP_TOOL_CANVAS_UPDATE_NODE = _chunkSVFEVKLFcjs.MCP_TOOL_CANVAS_UPDATE_NODE; exports.MCP_TOOL_EDIT_CANVAS = _chunkSVFEVKLFcjs.MCP_TOOL_EDIT_CANVAS; exports.MCP_TOOL_EDIT_PROMPT = _chunkSVFEVKLFcjs.MCP_TOOL_EDIT_PROMPT; exports.MCP_TOOL_GET_EDITOR_STATE = _chunkSVFEVKLFcjs.MCP_TOOL_GET_EDITOR_STATE; exports.MCP_TOOL_PROMPT_INSERT_TEXT = _chunkSVFEVKLFcjs.MCP_TOOL_PROMPT_INSERT_TEXT; exports.MCP_TOOL_PROMPT_REPLACE_RANGE = _chunkSVFEVKLFcjs.MCP_TOOL_PROMPT_REPLACE_RANGE; exports.MCP_TOOL_PROMPT_SELECT = _chunkSVFEVKLFcjs.MCP_TOOL_PROMPT_SELECT; exports.MCP_TOOL_PROMPT_SET_VARIABLE = _chunkSVFEVKLFcjs.MCP_TOOL_PROMPT_SET_VARIABLE; exports.MCP_TOOL_VIEW_EDITOR = _chunkSVFEVKLFcjs.MCP_TOOL_VIEW_EDITOR; exports.PRESENCE_COLORS = _chunkK7ENM55Pcjs.PRESENCE_COLORS; exports.PerformanceQueue = _chunkK7ENM55Pcjs.PerformanceQueue; exports.PresenceStore = _chunkK7ENM55Pcjs.PresenceStore; exports.TOOL_BRIDGE_DEFAULT_PORT = _chunkZEKI6EPIcjs.TOOL_BRIDGE_DEFAULT_PORT; exports.TOOL_BRIDGE_PROTOCOL = _chunkZEKI6EPIcjs.TOOL_BRIDGE_PROTOCOL; exports.TOOL_DISCOVERY_TOOLS = _chunk7TD63DZPcjs.TOOL_DISCOVERY_TOOLS; exports.TOOL_NAMESPACE_SEPARATOR = _chunk7TD63DZPcjs.TOOL_NAMESPACE_SEPARATOR; exports.ToolRegistry = _chunk7TD63DZPcjs.ToolRegistry; exports.ToolRegistryError = _chunk7TD63DZPcjs.ToolRegistryError; exports.ToolRegistryView = _chunk7TD63DZPcjs.ToolRegistryView; exports.UNSAFE_JSON_KEYS = _chunk2BSBFBOAcjs.UNSAFE_JSON_KEYS; exports.baseToolName = _chunk7TD63DZPcjs.baseToolName; exports.callEvalTool = _chunkYBC3RKT2cjs.callEvalTool; exports.captureInputSchema = _chunkN2FGYZ4Qcjs.captureInputSchema; exports.captureOutputSize = _chunkN2FGYZ4Qcjs.captureOutputSize; exports.cloneElementWithStyles = _chunkSVFEVKLFcjs.cloneElementWithStyles; exports.conformanceResult = _chunkYBC3RKT2cjs.conformanceResult; exports.connectToolBridge = _chunkZEKI6EPIcjs.connectToolBridge; exports.createAgentPlayback = _chunk3SLBXKAWcjs.createAgentPlayback; exports.createCaptureTool = _chunkN2FGYZ4Qcjs.createCaptureTool; exports.createCaptureToolProvider = _chunkN2FGYZ4Qcjs.createCaptureToolProvider; exports.createElementCaptureSurface = _chunkSVFEVKLFcjs.createElementCaptureSurface; exports.createInstantPresenceClock = _chunkK7ENM55Pcjs.createInstantPresenceClock; exports.createMcpServer = _chunkZEKI6EPIcjs.createMcpServer; exports.createOriginMiddleware = _chunkYBC3RKT2cjs.createOriginMiddleware; exports.createPlaybackToolProvider = _chunk3SLBXKAWcjs.createPlaybackToolProvider; exports.createStyleResolver = _chunkYBC3RKT2cjs.createStyleResolver; exports.createStyleToolProvider = _chunkYBC3RKT2cjs.createStyleToolProvider; exports.createToolRegistry = _chunk7TD63DZPcjs.createToolRegistry; exports.derivePlaybackSteps = _chunk3SLBXKAWcjs.derivePlaybackSteps; exports.elementToSvg = _chunkSVFEVKLFcjs.elementToSvg; exports.errorResult = _chunk7TD63DZPcjs.errorResult; exports.failedEvalChecks = _chunkYBC3RKT2cjs.failedEvalChecks; exports.imageEvalFixturePixels = _chunkYBC3RKT2cjs.imageEvalFixturePixels; exports.isUnsafeJsonKey = _chunk2BSBFBOAcjs.isUnsafeJsonKey; exports.listSkillEvals = _chunkYBC3RKT2cjs.listSkillEvals; exports.listSkills = _chunk7TD63DZPcjs.listSkills; exports.locatePlaybackChrome = _chunk3SLBXKAWcjs.locatePlaybackChrome; exports.matchesEvalExpectation = _chunkYBC3RKT2cjs.matchesEvalExpectation; exports.memoryStyleStore = _chunkYBC3RKT2cjs.memoryStyleStore; exports.normalizeConformanceValue = _chunkYBC3RKT2cjs.normalizeConformanceValue; exports.omitConformancePaths = _chunkYBC3RKT2cjs.omitConformancePaths; exports.parseSkillFrontmatter = _chunk7TD63DZPcjs.parseSkillFrontmatter; exports.parseStyleDomains = _chunkYBC3RKT2cjs.parseStyleDomains; exports.playbackRectFromClient = _chunk3SLBXKAWcjs.playbackRectFromClient; exports.playbackRefsFromArgs = _chunk3SLBXKAWcjs.playbackRefsFromArgs; exports.playbackRefsFromResult = _chunk3SLBXKAWcjs.playbackRefsFromResult; exports.rasterizeElement = _chunkSVFEVKLFcjs.rasterizeElement; exports.readSkillFile = _chunk7TD63DZPcjs.readSkillFile; exports.readingTime = _chunk3SLBXKAWcjs.readingTime; exports.realPresenceClock = _chunkK7ENM55Pcjs.realPresenceClock; exports.renderStyle = _chunkYBC3RKT2cjs.renderStyle; exports.resolveCaptureRequest = _chunkN2FGYZ4Qcjs.resolveCaptureRequest; exports.resolveConformanceArguments = _chunkYBC3RKT2cjs.resolveConformanceArguments; exports.runConformanceScenario = _chunkYBC3RKT2cjs.runConformanceScenario; exports.runStyleChecks = _chunkYBC3RKT2cjs.runStyleChecks; exports.runToolScript = _chunkYBC3RKT2cjs.runToolScript; exports.searchTokens = _chunk7TD63DZPcjs.searchTokens; exports.searchTools = _chunk7TD63DZPcjs.searchTools; exports.stripPrototypeKeys = _chunk2BSBFBOAcjs.stripPrototypeKeys; exports.summarize = _chunk7TD63DZPcjs.summarize; exports.toCapturedImageData = _chunkN2FGYZ4Qcjs.toCapturedImageData; exports.toToolResult = _chunk7TD63DZPcjs.toToolResult; exports.toolResultError = _chunkYBC3RKT2cjs.toolResultError; exports.toolResultValue = _chunkYBC3RKT2cjs.toolResultValue; exports.toolsetInstructions = _chunkZEKI6EPIcjs.toolsetInstructions; exports.toolsetName = _chunk7TD63DZPcjs.toolsetName; exports.trackPresenceDrag = _chunkK7ENM55Pcjs.trackPresenceDrag; exports.tweenPresenceCursor = _chunkK7ENM55Pcjs.tweenPresenceCursor; exports.unionCaptureRects = _chunkN2FGYZ4Qcjs.unionCaptureRects; exports.unionRects = _chunk3SLBXKAWcjs.unionRects; exports.unknownToolMessage = _chunk7TD63DZPcjs.unknownToolMessage; exports.validateJsonSchema = _chunkWOFXZ3XUcjs.validateJsonSchema;
|
package/dist/tools/index.d.cts
CHANGED
package/dist/tools/index.d.ts
CHANGED
package/dist/tools/index.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
|
+
CONFORMANCE_BINARY_MIN_LENGTH,
|
|
3
|
+
ConformanceIds,
|
|
2
4
|
callEvalTool,
|
|
5
|
+
conformanceResult,
|
|
3
6
|
createOriginMiddleware,
|
|
4
7
|
createStyleResolver,
|
|
5
8
|
createStyleToolProvider,
|
|
@@ -8,26 +11,33 @@ import {
|
|
|
8
11
|
listSkillEvals,
|
|
9
12
|
matchesEvalExpectation,
|
|
10
13
|
memoryStyleStore,
|
|
14
|
+
normalizeConformanceValue,
|
|
15
|
+
omitConformancePaths,
|
|
11
16
|
parseStyleDomains,
|
|
12
17
|
renderStyle,
|
|
18
|
+
resolveConformanceArguments,
|
|
19
|
+
runConformanceScenario,
|
|
13
20
|
runStyleChecks,
|
|
14
21
|
runToolScript,
|
|
15
22
|
toolResultError,
|
|
16
23
|
toolResultValue
|
|
17
|
-
} from "../chunk-
|
|
24
|
+
} from "../chunk-ZQI3WUPP.js";
|
|
18
25
|
import {
|
|
19
26
|
JSON_RPC_ERRORS,
|
|
20
27
|
MCP_PROTOCOL_VERSIONS,
|
|
21
28
|
TOOL_BRIDGE_DEFAULT_PORT,
|
|
22
29
|
TOOL_BRIDGE_PROTOCOL,
|
|
30
|
+
connectToolBridge,
|
|
31
|
+
createMcpServer,
|
|
32
|
+
toolsetInstructions
|
|
33
|
+
} from "../chunk-SYEOA5MS.js";
|
|
34
|
+
import {
|
|
23
35
|
TOOL_DISCOVERY_TOOLS,
|
|
24
36
|
TOOL_NAMESPACE_SEPARATOR,
|
|
25
37
|
ToolRegistry,
|
|
26
38
|
ToolRegistryError,
|
|
27
39
|
ToolRegistryView,
|
|
28
40
|
baseToolName,
|
|
29
|
-
connectToolBridge,
|
|
30
|
-
createMcpServer,
|
|
31
41
|
createToolRegistry,
|
|
32
42
|
errorResult,
|
|
33
43
|
listSkills,
|
|
@@ -37,10 +47,9 @@ import {
|
|
|
37
47
|
searchTools,
|
|
38
48
|
summarize,
|
|
39
49
|
toToolResult,
|
|
40
|
-
toolsetInstructions,
|
|
41
50
|
toolsetName,
|
|
42
51
|
unknownToolMessage
|
|
43
|
-
} from "../chunk-
|
|
52
|
+
} from "../chunk-K4BGRCSH.js";
|
|
44
53
|
import {
|
|
45
54
|
AgentPlayback,
|
|
46
55
|
createAgentPlayback,
|
|
@@ -111,6 +120,8 @@ export {
|
|
|
111
120
|
AgentPlayback,
|
|
112
121
|
CAPTURE_EXCLUDE_SELECTOR,
|
|
113
122
|
CAPTURE_OVERLAY_SELECTORS,
|
|
123
|
+
CONFORMANCE_BINARY_MIN_LENGTH,
|
|
124
|
+
ConformanceIds,
|
|
114
125
|
EDITOR_CANVAS_TOOLS,
|
|
115
126
|
EDITOR_MCP_TOOLS,
|
|
116
127
|
EDITOR_PROMPT_TOOLS,
|
|
@@ -149,6 +160,7 @@ export {
|
|
|
149
160
|
captureInputSchema,
|
|
150
161
|
captureOutputSize,
|
|
151
162
|
cloneElementWithStyles,
|
|
163
|
+
conformanceResult,
|
|
152
164
|
connectToolBridge,
|
|
153
165
|
createAgentPlayback,
|
|
154
166
|
createCaptureTool,
|
|
@@ -172,6 +184,8 @@ export {
|
|
|
172
184
|
locatePlaybackChrome,
|
|
173
185
|
matchesEvalExpectation,
|
|
174
186
|
memoryStyleStore,
|
|
187
|
+
normalizeConformanceValue,
|
|
188
|
+
omitConformancePaths,
|
|
175
189
|
parseSkillFrontmatter,
|
|
176
190
|
parseStyleDomains,
|
|
177
191
|
playbackRectFromClient,
|
|
@@ -183,6 +197,8 @@ export {
|
|
|
183
197
|
realPresenceClock,
|
|
184
198
|
renderStyle,
|
|
185
199
|
resolveCaptureRequest,
|
|
200
|
+
resolveConformanceArguments,
|
|
201
|
+
runConformanceScenario,
|
|
186
202
|
runStyleChecks,
|
|
187
203
|
runToolScript,
|
|
188
204
|
searchTokens,
|