web-debug-mcp
web-debug-mcp
web-debug-mcp — это локальный, ориентированный на агентов веб-отладочный сервер для Codex и других MCP-клиентов. Он предоставляет небольшой набор инструментов, который координирует сеанс браузера, отладчик JavaScript, ограниченные доказательства выполнения и воспроизводимую проверку потоков.
Текущая версия поддерживает независимые от фреймворка браузерные цели, Chromium/CDP, Safari WebDriver с доказательствами WebDriver BiDi, автоматически внедряемый мост разработки React, конечную точку модульного графа/HMR Vite, а также метаданные сервера разработки Next.js с ограниченными хвостами серверных журналов, компиляцией маршрутов, поиском Server Actions и наблюдаемыми доказательствами выполнения запросов. Ограничения, специфичные для браузера, остаются явными. Это сохраняет контекст, специфичный для фреймворка, за тем же фасадом MCP, а не добавляет отдельные каталоги инструментов.
Что включено
Определение возможностей проекта без запуска процесса.
Локальный режим подключения Chromium через явную конечную точку CDP.
Явное удалённое подключение CDP поддерживается только с
allowRemote: true; цели помечаются как неизолированные и никогда не обнаруживаются автоматически.Локальный режим запуска Chromium через явный путь к исполняемому файлу.
Режим Safari WebDriver через локальный
safaridriverили явную конечную точку WebDriver, с событиями консоли BiDi и сетевыми событиями, когда установленный Safari их предоставляет.Действия в браузере с тем же источником: переход, клик, заполнение, ожидание и перезагрузка.
Точки останова JavaScript, управление паузой, ограниченные кадры вызовов и оценка только для чтения по умолчанию.
Консоль, метаданные сети, сводка DOM, скриншот и доказательства отладчика в одном редактируемом пакете.
Дерево компонентов React, значения хуков, исходные расположения, количество рендеров, ограниченные сводки коммитов, длительности профилировщика, плоское представление пламени и предполагаемые причины рендера, когда сборка для разработки предоставляет коммиты React.
Модульный/импортный граф Vite, статус HMR, различия преобразованного кода и сводки исходных карт через плагин разработки
webDebugVitePlugin().Ограниченные, редактируемые хвосты журналов разработки Next.js, когда журнал остаётся в пределах обнаруженного корня проекта.
Явная компиляция маршрутов Next.js и поиск Server Actions через
web_next_inspect, а также нормализованные трассировки серверных запросов и связанные с запросами доказательства выполнения, когда браузер отправляет запросNext-Action.Ограниченная временная шкала воспроизведения в захватах и поиск кадров через
web_replay_seek;restore: trueвоспроизводит только безопасные сохранённые действия и отклоняет санитизированные вводы форм.Воспроизводимые сценарии действий с простыми проверками после исправления.
Детерминированный ванильный фикстур и проверка собственного проекта.
Живой фикстур React/Vite, автоматический мост React и проверка модульного графа/HMR.
Живой фикстур Next.js App Router и проверка выполнения
/_next/mcp.
Related MCP server: Kaboom Browser AI Devtools MCP
Требования
Node.js 20 или новее. Safari BiDi требует Node 20.10+ с
--experimental-websocketили Node 21+; более старые среды выполнения сохраняют действия Safari WebDriver и документированный сетевой запасной вариант, но сообщают об ограничениях консоли BiDi.Браузер на основе Chromium при запуске живого сеанса.
Либо явный
WEB_DEBUG_CHROME_EXECUTABLE_PATH, либо явныйcdpEndpoint, переданный вweb_session_start.
Команды разработки
npm install --no-audit --no-fund
npm test
npm run typecheck
npm run build
npm run harness:check
npm run smoke:live
npm run smoke:react-vite
npm run smoke:next
npm run smoke:safariЗапустите фикстур с помощью npm run serve:fixture. Сервер привязывается к 127.0.0.1 и по умолчанию использует порт 4173; установите WEB_DEBUG_FIXTURE_PORT, чтобы использовать другой порт.
Запустите npm run smoke:live после установки WEB_DEBUG_CHROME_EXECUTABLE_PATH, если путь к Chrome по умолчанию для macOS недоступен. Он запускает ванильный фикстур, устанавливает точку останова в app.js, нажимает кнопку, захватывает безопасный для паузы путь доказательств и очищает принадлежащие браузер и процессы фикстура.
Запустите npm run smoke:react-vite, чтобы запустить фикстур Vite, проверить доказательства компонентов/состояния React, приостановить выполнение в fixtures/react-vite/src/App.jsx и воспроизвести поток отправленного платежа.
Для приложения Vite добавьте плагин только для разработки в vite.config.ts:
import { webDebugVitePlugin } from "web-debug-mcp/vite";
export default {
plugins: [webDebugVitePlugin()],
};Плагин обслуживает локальную конечную точку модульного графа только для чтения, используемую во время сеанса отладки. Его не следует включать в производственном сервере.
Запустите npm run smoke:next, чтобы запустить фикстур Next.js App Router, запросить его встроенную конечную точку /_next/mcp, проверить метаданные маршрутов/проекта/компиляции и ограниченный хвост серверного журнала, а также выполнить поток обработчика клиентских маршрутов.
Запустите npm run smoke:safari, чтобы проверить ванильный фикстур через Safari WebDriver. Сначала включите Safari Настройки → Разработчик → Разрешить удалённую автоматизацию; Safari работает видимо, захватывает доказательства консоли BiDi и сообщает, поступили ли сетевые доказательства из BiDi или из ограниченного запасного варианта Performance Resource Timing. Отладчик JavaScript Safari остаётся недоступным через этот адаптер.
Safari 27 и Safari Technology Preview 247 включают официальный сервер MCP Safari от Apple. Используйте этот официальный сервер, когда его собственные инструменты DOM, сети, консоли и скриншотов являются желаемой поверхностью; этот репозиторий не добавляет дублирующий публичный каталог MCP Safari. Адаптер WebDriver остаётся полезным как путь совместимости с единым фасадом для старых версий Safari и для общей оркестрации сеансов/доказательств.
Запустите сервер MCP с помощью npm run dev во время разработки или node dist/index.js после npm run build. Сообщения протокола MCP используют stdout; диагностика должна оставаться на stderr.
Рабочий процесс MCP
Вызовите
web_project_detectс корнем проекта.Вызовите
web_session_startс URL-адресом loopback и явным подключением к браузеру или исполняемым файлом.Используйте
web_browser_actionиweb_breakpoint_set, чтобы воспроизвести проблему.Вызовите
web_issue_captureдля одного ограниченного пакета доказательств.Для Next.js вызовите
web_next_inspect, чтобы скомпилировать маршрут или разрешить идентификатор Server Action.Сохраните поток с помощью
web_repro_recordи запустите его позже с помощьюweb_fix_verify.Используйте
web_replay_seek, чтобы просмотреть один сохранённый кадр; передавайтеrestore: trueтолько когда кадр содержит безопасные, нечувствительные действия.Вызовите
web_session_close, когда сеанс больше не нужен.
Сервер не записывает в проект во время обычного сеанса. Скриншоты сохраняются во временном каталоге артефактов сеанса и возвращаются как пути.
Безопасность по умолчанию
URL-адреса браузера ограничены loopback, если только
allowRemoteне включён явно.Навигация браузера остаётся на источнике сеанса.
Внешнее подключение CDP помечается как неизолированное.
Консоль, сеть, локальные переменные отладчика и вычисленные значения редактируются и ограничиваются.
Необработанные тела ответов, файлы cookie, значения авторизации и хранилище браузера не собираются базовым адаптером.
Оценка отклоняет побочные эффекты, если только
allowSideEffectsне установлен явно.
Текущая граница
Этот репозиторий — локальный инструмент разработчика, а не размещённый сервис. У него нет производственного развёртывания, CI-процесса, неаутентифицированного/автообнаруживаемого удалённого управления браузером или полной паритетности с профилировщиком/пламенем React DevTools. Длительности React и детали причин рендера ограничены и выводятся из хука DevTools; происхождение Vite и исходные карты — это сводки, а не полный отладчик исходных карт; доказательства выполнения Next ограничены метаданными Server Actions, связанными с запросами, аналитикой запросов и ограниченными журналами; паритетность отладчика Safari недоступна, и Safari 26 может потребовать сетевой запасной вариант Performance Resource Timing; восстановление воспроизведения ограничено безопасными сохранёнными действиями и не является перемещением во времени состояния приложения. Явное удалённое подключение CDP, действия Safari WebDriver/DOM/скриншоты, явные предупреждения о возможностях и ограниченное восстановление воспроизведения доступны. Одобренный внешний удалённый хост и предоставленные вызывающим сертификационные доказательства испытательного стенда по-прежнему требуются для соответствующих утверждений.
Available Tools
13 toolsweb_breakpoint_setSet JavaScript breakpointA
Set a breakpoint by source URL and one-based line number through the local Chromium debugger.
| Name | Required | Description | Default |
|---|---|---|---|
| line | Yes | ||
| column | No | ||
| sessionId | Yes | ||
| sourceUrl | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the description need not repeat those. It adds the useful context of operating 'through the local Chromium debugger.' Yet it does not mention that setting a breakpoint affects subsequent execution or that a session must already be running.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One tight sentence of 14 words carries the core purpose, key parameters, and mechanism with zero filler. The most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a small mutation tool with only 4 parameters and a provided output schema, the description is nearly sufficient. It lacks an explicit requirement for an active debug session, but the sessionId parameter and sibling tool set make that inferable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description carries the burden of explaining parameters. It clarifies sourceUrl and that line is one-based (matching the schema min=1), but gives no guidance on sessionId or the optional column meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Set'), a concrete resource ('breakpoint by source URL and one-based line number'), and the mechanism ('local Chromium debugger'). This clearly distinguishes it from sibling tools like web_debug_evaluate or web_debug_control, which perform different debug actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied: an agent can infer this is for pausing exection at a specific line in a supported debug session. However, it does not explicitly state when to choose this tool over alternatives, nor any preconditions like requiring an active web session.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_browser_actionPerform bounded browser actionADestructive
Navigate, click, fill, press, select, check, hover, scroll, wait, or reload with exact locators, or execute one explicitly authorized direct WebMCP page tool. WebMCP calls are bounded, opaque, non-replayable, and never retried.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | ||
| sessionId | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructive/open-world behavior; the description adds critical non-obvious policy: WebMCP calls are bounded, opaque, non-replayable, and never retried. It also warns that WebMCP execution requires explicit authorization. No contradiction with annotations exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences deliver a full action inventory plus WebMCP safety constraints. The information is front-loaded and every clause adds value; no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the large schema, the presence of an output schema, and annotations, the description covers the most important non-obvious behaviors. It could additionally mention that sessionId must come from an active web_session_start flow, but the schema URI/format and sibling tool names largely fill that gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has rich oneOf/const structure but 0% textual description coverage. The description adds useful hints like 'exact locators' and 'explicitly authorized' WebMCP, but it does not explain sessionId, locator-kind selection, or wait/timeout semantics. It partially compensates for the schema gap without covering all parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete verb set ('Navigate, click, fill, press, select, check, hover, scroll, wait, or reload') and identifies the resource as a browser session/page. It also distinguishes this tool from sibling debug/session-management tools by scoping it to DOM actions and the special WebMCP page-tool case.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is clear: this is the tool for bounded browser interactions, and the description adds the important constraint that WebMCP/page-tool calls must be explicitly authorized. It does not explicitly name sibling alternatives or say when to prefer web_debug_* tools, so it stops short of full guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_debug_controlControl paused JavaScript debuggerBDestructive
Resume or step a paused local JavaScript target.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | ||
| sessionId | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotent=false, so the mutation risk is known. The description adds no extra behavioral context, such as what happens to the debugger session after resume, whether breakpoints persist, or side effects of stepping.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence where every word adds meaning, front-loading the operation and the required target state. There is no filler or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With only two parameters and an output schema present, the tool is relatively simple and the description is adequate. However, it omits parameter roles and any guardrails about the session having to be active or currently paused, so an agent gets the gist but not full operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, and the description does not explain sessionId or the action parameter beyond the enum values already present in the schema. The enum values are readable, but the description does not compensate for the missing schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific debugger verbs ('Resume', 'step') and identifies the resource ('paused local JavaScript target'), which makes its purpose clear and distinguishable from siblings like web_debug_evaluate or web_breakpoint_set. The title reinforces the same operation without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'paused local JavaScript target' implies the tool should be used only when a debugger session is paused, so the usage context is present. However, it does not explicitly state when not to use the tool or mention alternatives for related tasks such as expression evaluation during a pause.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_debug_evaluateEvaluate JavaScript expressionADestructive
Evaluate an expression in the local page runtime. Side effects are rejected unless explicitly enabled.
| Name | Required | Description | Default |
|---|---|---|---|
| sessionId | Yes | ||
| expression | Yes | ||
| allowSideEffects | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds important behavioral context beyond the annotations: side effects are rejected by default and only allowed when explicitly enabled. This is valuable for a tool with destructiveHint=true and readOnlyHint=false, as it clarifies the default safety posture. It does not detail all consequences of enabling side effects, but the annotations already flag destructiveness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded: the first sentence states the core action and target, and the second sentence provides a critical safety constraint. There is no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate for understanding the basic operation and the default side-effect policy, and an output schema exists to document return values. However, it omits details such as session prerequisites, how to handle rejected side effects, and any limitations of evaluated expressions. Given the complexity and potential destructiveness of JavaScript evaluation, more context would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, so the description must compensate. It adds meaning to the expression parameter by specifying that it runs in the local page runtime, and it explains the allowSideEffects behavior by stating side effects are rejected unless explicitly enabled. However, the sessionId parameter is not described at all, and the description does not clarify how an active session is used or required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool evaluates an expression in the local page runtime, and the title adds that it is a JavaScript expression. This is a specific verb and resource, though it does not explicitly distinguish itself from sibling tools beyond the unique action of evaluating an expression.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as web_debug_control, web_next_inspect, or web_browser_action. The only usage-related hint is that side effects are rejected unless explicitly enabled, but there is no mention of appropriate scenarios or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_fix_verifyVerify web fix against recorded flowADestructive
Verify a stored pre-fix reproduction with adaptive bounded attempts and return verified, failed, or inconclusive evidence.
| Name | Required | Description | Default |
|---|---|---|---|
| sessionId | Yes | ||
| scenarioId | Yes | ||
| buildReference | No | ||
| requestedLevel | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already carry the risk profile (readOnly=false, destructiveHint=true, idempotentHint=false), so the description is not required to restate safety. It adds useful behavioral detail—'adaptive bounded attempts' and the outcome classification—but does not disclose what may be destroyed or how attempts are bounded, which matters for a destructive-flagged tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, about 18 words, front-loads the action and outcome; no filler or redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With four parameters including a nested object and an enum, 0% parameter documentation in the schema, and a destructiveHint=true annotation, the description is too thin. The output schema likely covers return values, but parameter semantics, side effects, and when to choose this tool are all left to guesswork.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema parameter description coverage is 0%, and the description compensates almost none of that gap. It never maps 'stored pre-fix reproduction' to sessionId/scenarioId, nor explains buildReference or requestedLevel (quick/standard/strict), leaving agents to infer semantics from names and enums alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a clear verb ('Verify') with a specific resource ('stored pre-fix reproduction') and defines the outcome tri-state ('verified, failed, or inconclusive evidence'). This makes it distinct from sibling tools like web_repro_record or web_replay_seek, which are about capturing or replaying rather than confirming a fix.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage has to be inferred: it is for verifying a previously recorded pre-fix reproduction, presumably after a fix has been applied. No explicit when-to-use/when-not-to-use guidance or named alternatives is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_issue_captureCapture bounded web issue evidenceA
Capture redacted browser evidence with a compact summary by default, or explicitly request full, selected, or cursor-based changed surfaces. WebMCP metadata is discover-only and untrusted; screenshots are opt-in through full/include and remain suppressed for private input, auth-seeded sessions, or any session after a direct WebMCP attempt.
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | ||
| sessionId | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds meaningful behavior beyond the annotations: evidence is redacted, screenshots are opt-in and suppressed in specific security-sensitive cases, and WebMCP metadata is discover-only and untrusted. It does not mention all possible side effects, but the provided caveats are substantial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: two sentences, front-loaded with the primary action and default behavior, followed by important caveats. Every sentence provides valued information and there is no padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the rich input schema, output schema, and annotations, the description covers the key behavioral constraints an agent needs: default mode, mode options, redaction, screenshot opt-in, and security-sensitive suppression. The main missing element is explicit guidance on when to choose this tool over siblings, which is reflected in the usage dimension.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description needed to compensate. It explains the conceptual view modes (summary default, full, selected, cursor-based changed surfaces) and connects screenshots to full/include, but it does not explicitly mention sessionId or the exact delta/include profile values. Some parameter meaning is added, but not enough to fully replace schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Capture redacted browser evidence') and distinguishes the default compact summary from full, selected, and cursor-based modes. It is clear about the tool's core purpose, but does not explicitly differentiate it from sibling tools like web_repro_record or web_debug_control.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description explains internal profile options but does not state when web_issue_capture should be preferred over sibling tools or when another tool would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_next_inspectInspect Next.js runtimeBDestructive
Compile one Next.js route or resolve one Server Action through the selected local Next development server.
| Name | Required | Description | Default |
|---|---|---|---|
| sessionId | Yes | ||
| inspection | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already signal destructiveHint=true, readOnlyHint=false, and openWorldHint=true, so the description does not need to restate the safety profile. It adds that the tool compiles routes or resolves Server Actions through a local dev server, which implies execution/behavioral effects. However, it does not explain what destructive side effects may occur, such as running server code with external impact.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise sentence with no filler. It front-loads the two concrete operations and scopes them to the selected local Next.js dev server. Every word contributes useful meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema and annotations supply some context, but the description is thin for a tool with two distinct operation modes and a destructive/open-world profile. It does not mention the need for an active session or that resolving a Server Action can execute arbitrary server-side code, leaving the agent to infer important preconditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description only partially compensates. It explains the two inspection modes—compiling a route or resolving a Server Action—but never clarifies that sessionId identifies the selected dev server/session or how path/actionId map to the mode. The schema provides const values and required fields, but the description adds little beyond a high-level paraphrase.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Compile one Next.js route or resolve one Server Action through the selected local Next development server.' This clearly identifies what the tool does and distinguishes it from sibling browser/debug tools by focusing on Next.js runtime operations. It does not explicitly name sibling alternatives, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool instead of siblings like web_debug_evaluate or web_breakpoint_set. The phrase 'through the selected local Next development server' implies a session/context is required, but it does not state prerequisites, exclusions, or alternative conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_project_detectDetect web project eligibilityARead-onlyIdempotent
Inspect the exact root, distinguish confirmed application markers from weak dependency candidates, and report bounded workspace candidates without starting a process or selecting a child.
| Name | Required | Description | Default |
|---|---|---|---|
| projectRoot | No | /app |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false. The description adds useful behavioral detail by stating it inspects 'the exact root' and does not start a process or select a child, giving the agent confidence about non-side-effecting behavior. It does not contradict the annotations and adds meaningful behavioral nuance beyond them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler and begins with the key action, 'Inspect'. It packs multiple clauses – root inspection, marker distinction, candidate reporting, and non-actions – efficiently. It could be clearer if split, but it earns its space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema is present and annotations cover side-effecting safety, the description provides enough context for a low-complexity read-only tool: it reports candidates without side effects. It lacks explicit when-to-use guidance, but the title, siblings, and non-action phrasing fill most gaps. The description is close to complete for a tool of this simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for projectRoot, so the description must compensate. The phrase 'Inspect the exact root' connects loosely to projectRoot but does not explain path format, whether it is absolute or relative, or the significance of the default '/app'. For a single self-named parameter this is minimally adequate but lacks real semantic depth.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names specific actions – 'inspect', 'distinguish', 'report' – and a clear resource, the project root. It also distinguishes itself from sibling tools by stating it works 'without starting a process or selecting a child', which separates it from session-start and child-inspection tools. The language is somewhat technical ('bounded workspace candidates'), but the core purpose is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a pre-flight or eligibility-inspection step and explicitly says it does not start a process or select a child. However, it never directly states when to use this tool versus siblings such as web_session_start or web_next_inspect, so the agent must infer the intended usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_replay_seekSeek captured web replay frameADestructive
Return one retained, redacted replay frame; set restore=true to replay its safely restorable actions into the browser and mutate live state.
| Name | Required | Description | Default |
|---|---|---|---|
| restore | No | ||
| sessionId | Yes | ||
| frameIndex | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructive behavior (destructiveHint=true). The description adds the key conditional context: default is returning a frame, while restore=true mutates live state. It also discloses that frames are redacted and actions are 'safely restorable', giving useful behavioral nuance beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise sentence with the primary behavior front-loaded and the optional restore behavior attached to the relevant parameter. There is no filler or repetition of schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the return value does not need extensive explanation. The description covers the main risk (live mutation on restore) and the redacted nature of frames. It does not explain session/frame index validity explicitly, but the schema already encodes constraints, so the gap is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains the restore parameter clearly, but sessionId and frameIndex are left entirely to their names and schema constraints. This is only partial parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Return one retained, redacted replay frame' and explains the optional restore behavior that replays actions and mutates live state. This clearly distinguishes it from siblings like web_repro_record or web_browser_action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: to seek/return a replay frame, and set restore=true when replaying actions into the browser. However, it does not explicitly list alternative tools or state when not to use it, so some inference is required.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_repro_recordRecord reproducible web flowCDestructive
Execute and store a bounded pre-fix reproduction with exact locator checks, named ordered checkpoints, optional desktop/mobile viewport contracts and failure scope, and adaptive-risk signals.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| name | Yes | ||
| risks | No | ||
| actions | Yes | ||
| sessionId | Yes | ||
| viewports | No | ||
| checkpoints | No | ||
| buildReference | No | ||
| requestedLevel | No | ||
| acceptanceChecks | Yes | ||
| failureSignature | Yes | ||
| failureViewports | No | ||
| regressionChecks | No | ||
| serverStateReset | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=false, and destructiveHint=true, so the description's 'execute and store' is consistent with those. The description adds some context such as exact locator checks, named ordered checkpoints, viewport contracts, and adaptive-risk signals. However, it does not disclose specifics about side effects, what gets destroyed, or operational boundaries beyond what annotations state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense sentence with no filler words, which is concise in length. However, it crams many concepts together—'bounded pre-fix reproduction', 'exact locator checks', 'viewport contracts', 'failure scope', 'adaptive-risk signals'—making it hard to parse at a glance. It could be split into clearer, more digestible sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 14 parameters, 6 required, heavy nesting, and no parameter descriptions in the schema. The description only gives a high-level gloss and does not explain what constitutes a valid reproduction, how checkpoints relate to actions, what failureSignature means, or what the output will look like. Even with an output schema present, the input complexity demands more guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it barely does. It references checkpoints, viewports, failure scope, and risk signals, which map to some parameters, but it does not explain required parameters like sessionId, name, url, actions, acceptanceChecks, or failureSignature. Given the massive nested schema, this is a significant gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action: execute and store a reproduction of a web flow, with checkpoints, viewports, and failure scope. 'Pre-fix reproduction' and 'adaptive-risk signals' add distinguishing scope. However, it does not explicitly differentiate from sibling tools like web_replay_seek or web_fix_verify, and 'bounded pre-fix reproduction' is jargon-heavy.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus siblings such as web_browser_action, web_replay_seek, or web_fix_verify. It does not mention prerequisites like needing an active session, nor does it explain when recording is appropriate versus replaying or verifying. The only hint is the word 'record' in the title.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_session_closeClose web debug sessionADestructiveIdempotent
Close the selected session and release any browser resources owned by it.
| Name | Required | Description | Default |
|---|---|---|---|
| sessionId | Yes | ||
| artifactPolicy | No | retain |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds useful behavioral context by stating that browser resources owned by the session are released, which goes beyond what annotations alone convey. It does not contradict any annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. 'Close the selected session' carries the main purpose, and 'release any browser resources owned by it' adds meaningful consequence without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter destructive tool with output schema and strong annotations, the description is mostly adequate. The main gap is that artifactPolicy is not described, so an agent cannot confidently know what 'delete' will destroy. Otherwise, safety and idempotency are covered by annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not explain either parameter. sessionId is inferable from the tool name, but artifactPolicy's retain/delete values are ambiguous: it is not stated what is retained or deleted, when the default applies, or how it interacts with closing the session.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete action ('Close the selected session') and a resource ('session'), and adds a meaningful consequence: releasing browser resources. This distinguishes it from siblings like web_session_start and web_session_status, though 'selected' is slightly vague without referencing the sessionId parameter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the verb and title: call this when a session should be ended. However, the description provides no explicit when/when-not guidance, no mention of cleanup flow, and does not differentiate from related lifecycle tools such as web_debug_control or web_session_status.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_session_startStart web debug sessionADestructive
Start or attach to an explicitly selected local Chromium or Safari page using an explicit URL and CDP, WebDriver, or executable settings. Chromium can opt into one guarded HTTPS loopback origin and a project-contained disposable auth fixture; attached Chromium can supply targetId to pin the exact page. Safari remains strict and CSS-only.
| Name | Required | Description | Default |
|---|---|---|---|
| tls | No | strict | |
| url | Yes | ||
| browser | No | chromium | |
| headless | No | ||
| targetId | No | ||
| viewport | No | ||
| allowRemote | No | ||
| authFixture | No | ||
| cdpEndpoint | No | ||
| projectRoot | No | /app | |
| executablePath | No | ||
| webdriverEndpoint | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the operation as non-read-only, non-idempotent, and destructive, and the description adds useful behavioral nuance: optional guarded loopback TLS, a disposable auth fixture, targetId pinning for attached Chromium, and the stricter Safari/CSS-only path. These details shape agent expectations without contradicting the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two dense sentences with no filler and starts with the action. Every clause adds a distinct constraint or mode, so it remains tightly packed despite the technical jargon.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 12-parameter tool with no schema-level descriptions, the description covers the core choices, browser differences, and attach behavior, while the output schema covers return details. It leaves some parameters (e.g., allowRemote, viewport) mostly to inference, but the remaining information is largely recoverable from names, defaults, and enums. This is adequate but not exhaustively complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the prose carries the semantic load. It meaningfully explains key parameters: CDP/WebDriver/executable settings, targetId for precise attachment, tls via guarded loopback, and authFixture/projectRoot through the disposable fixture. A few parameters like headless, viewport, and allowRemote rely on name/type inference, but the most decision-critical ones are covered.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete action ('Start or attach'), a specific resource ('local Chromium or Safari page'), and the invocation route ('explicit URL and CDP, WebDriver, or executable settings'). This goes beyond the title and clearly distinguishes the tool from session-status, capture, and close siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The opening phrase makes the intended context clear: use this when a browser debugging session needs to be started or attached to a specific page. It does not explicitly name sibling tools or provide when-not-to-use guidance, but the transport-mode options and targetId attach behavior give enough contextual direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_session_statusRead web debug session statusARead-onlyIdempotent
List active sessions or read one summary with separate project eligibility and negotiated live runtime capabilities.
| Name | Required | Description | Default |
|---|---|---|---|
| sessionId | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| data | No | |
| error | No | |
| warnings | Yes | |
| artifacts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and non-destructive, so the safe-read behavior is covered. The description adds the two-mode behavior (list all vs read one) and the distinct content of the summary, which goes beyond the annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler and front-loads the core behavior. The specialized phrasing 'separate project eligibility and negotiated live runtime capabilities' is dense but not redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one optional parameter and an output schema, the description is complete: it states the two calling modes and what the summary contains. The output schema handles return-value details, and annotations handle safety.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates by tying the optional sessionId to the two modes: omission lists active sessions, providing one reads a single summary. It doesn't spell out 'optional' but the grammatical structure conveys this.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ('List active sessions or read one summary') and distinguishes two invocation modes, making it easy to tell apart from sibling tools like web_session_start, web_session_close, and web_debug_control. The phrase about project eligibility and negotiated runtime capabilities further specifies what kind of summary is returned.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that omitting sessionId lists active sessions and providing it reads one summary, but it never explicitly says when to prefer this tool over siblings or states exclusions. An agent can infer the read-only inspection use case from annotations, but the description itself gives no explicit when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
13 tool updates
v0.7.0- Changed
web_breakpoint_set7 fields changed- removed
Output schema / definitions / __schema1Removed value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "null" - }, - { - "items": { - "$ref": "#/definitions/__schema1" - }, - "type": "array" - }, - { - "additionalProperties": { - "$ref": "#/definitions/__schema1" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - } - ] -} - added
Output schema / properties / data / additionalPropertiesAdded value: +false - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / propertiesAdded value: +{ + "column": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "id": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "sourceUrl": { + "maxLength": 2560, + "type": "string" + } +} - added
Output schema / properties / data / requiredAdded value: +[ + "id", + "sourceUrl", + "line", + "column" +] - added
Output schema / properties / data / typeAdded value: +"object" - changed
Output schema / properties / error / properties / details / allOfPrevious value: -[ - { - "$ref": "#/definitions/__schema1" - } -]New value: +[ + { + "$ref": "#/definitions/__schema0" + } +]
- Changed
web_browser_action7 fields changed- added
Input schema / definitionsAdded value: +{ + "__schema0": { + "anyOf": [ + { + "type": "null" + }, + { + "type": "boolean" + }, + { + "type": "number" + }, + { + "type": "string" + }, + { + "items": { + "$ref": "#/definitions/__schema0" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema0" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] + } +} - removed
Input schema / properties / action / anyOfRemoved value: -[ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "navigate", - "type": "string" - }, - "url": { - "format": "uri", - "maxLength": 2048, - "type": "string" - } - }, - "required": [ - "kind", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "click", - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "css", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "role", - "type": "string" - }, - "name": { - "maxLength": 300, - "minLength": 1, - "type": "string" - }, - "role": { - "maxLength": 100, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "role" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "text", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "label", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "testId", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - } - ] - } - }, - "required": [ - "kind", - "locator" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "fill", - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "css", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "role", - "type": "string" - }, - "name": { - "maxLength": 300, - "minLength": 1, - "type": "string" - }, - "role": { - "maxLength": 100, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "role" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "text", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "label", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "testId", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - } - ] - }, - "value": { - "maxLength": 10000, - "type": "string" - } - }, - "required": [ - "kind", - "locator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "key": { - "enum": [ - "Enter", - "Escape", - "Tab", - "ArrowUp", - "ArrowDown", - "ArrowLeft", - "ArrowRight", - "Backspace", - "Delete", - "Space" - ], - "type": "string" - }, - "kind": { - "const": "press", - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "css", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "role", - "type": "string" - }, - "name": { - "maxLength": 300, - "minLength": 1, - "type": "string" - }, - "role": { - "maxLength": 100, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "role" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "text", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "label", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "testId", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - } - ] - } - }, - "required": [ - "kind", - "locator", - "key" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "select", - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "css", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "role", - "type": "string" - }, - "name": { - "maxLength": 300, - "minLength": 1, - "type": "string" - }, - "role": { - "maxLength": 100, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "role" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "text", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "label", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "testId", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - } - ] - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "locator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "checked": { - "type": "boolean" - }, - "kind": { - "const": "check", - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "css", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "role", - "type": "string" - }, - "name": { - "maxLength": 300, - "minLength": 1, - "type": "string" - }, - "role": { - "maxLength": 100, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "role" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "text", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "label", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "testId", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - } - ] - } - }, - "required": [ - "kind", - "locator", - "checked" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "hover", - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "css", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "role", - "type": "string" - }, - "name": { - "maxLength": 300, - "minLength": 1, - "type": "string" - }, - "role": { - "maxLength": 100, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "role" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "text", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "label", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "testId", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - } - ] - } - }, - "required": [ - "kind", - "locator" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "scroll", - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "css", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "role", - "type": "string" - }, - "name": { - "maxLength": 300, - "minLength": 1, - "type": "string" - }, - "role": { - "maxLength": 100, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "role" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "text", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "label", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "testId", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - } - ] - } - }, - "required": [ - "kind", - "locator" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "expected": { - "anyOf": [ - { - "maxLength": 500, - "type": "string" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "null" - } - ] - }, - "kind": { - "const": "wait", - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "css", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "role", - "type": "string" - }, - "name": { - "maxLength": 300, - "minLength": 1, - "type": "string" - }, - "role": { - "maxLength": 100, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "role" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "text", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "label", - "type": "string" - }, - "text": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "text" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "testId", - "type": "string" - }, - "value": { - "maxLength": 500, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "value" - ], - "type": "object" - } - ] - }, - "property": { - "enum": [ - "count", - "visible", - "enabled", - "checked", - "text" - ], - "type": "string" - }, - "timeoutMs": { - "maximum": 30000, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "kind", - "locator", - "property", - "expected" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "reload", - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - } -] - added
Input schema / properties / action / oneOfAdded value: +[ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "navigate", + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "kind", + "url" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "click", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "fill", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "key": { + "maxLength": 40, + "type": "string" + }, + "kind": { + "const": "press", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "key" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "select", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "checked": { + "type": "boolean" + }, + "kind": { + "const": "check", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "checked" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "hover", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "scroll", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "expected": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "kind": { + "const": "wait", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "property": { + "enum": [ + "count", + "visible", + "enabled", + "checked", + "text" + ], + "type": "string" + }, + "timeoutMs": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "locator", + "property", + "expected" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "reload", + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "allowSideEffects": { + "const": true, + "type": "boolean" + }, + "arguments": { + "additionalProperties": { + "$ref": "#/definitions/__schema0" + }, + "propertyNames": { + "maxLength": 100, + "type": "string" + }, + "type": "object" + }, + "kind": { + "const": "webmcp", + "type": "string" + }, + "name": { + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "origin": { + "format": "uri", + "maxLength": 2560, + "type": "string" + }, + "timeoutMs": { + "maximum": 30000, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "kind", + "origin", + "name", + "arguments", + "allowSideEffects" + ], + "type": "object" + } +] - removed
Output schema / definitions / __schema1Removed value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "null" - }, - { - "items": { - "$ref": "#/definitions/__schema1" - }, - "type": "array" - }, - { - "additionalProperties": { - "$ref": "#/definitions/__schema1" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - } - ] -} - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / oneOfAdded value: +[ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "navigate", + "click", + "fill", + "press", + "select", + "check", + "hover", + "scroll", + "wait", + "reload" + ], + "type": "string" + }, + "schemaVersion": { + "const": 1, + "type": "number" + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "schemaVersion", + "kind", + "url", + "title" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "webmcp", + "type": "string" + }, + "schemaVersion": { + "const": 1, + "type": "number" + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "toolResult": { + "anyOf": [ + { + "maxLength": 8192, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "schemaVersion", + "kind", + "url", + "title", + "toolResult" + ], + "type": "object" + } +] - changed
Output schema / properties / error / properties / details / allOfPrevious value: -[ - { - "$ref": "#/definitions/__schema1" - } -]New value: +[ + { + "$ref": "#/definitions/__schema0" + } +]
- Changed
web_debug_control5 fields changed- added
Output schema / properties / data / additionalPropertiesAdded value: +false - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / propertiesAdded value: +{ + "breakpoints": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "id": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "sourceUrl": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "id", + "sourceUrl", + "line", + "column" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "callFrames": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "functionName": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "locals": { + "additionalProperties": { + "$ref": "#/definitions/__schema0" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "scopeNames": { + "items": { + "maxLength": 100, + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "functionName", + "url", + "line", + "column", + "scopeNames", + "locals" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + }, + "paused": { + "type": "boolean" + }, + "reason": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "type": "null" + } + ] + } +} - added
Output schema / properties / data / requiredAdded value: +[ + "paused", + "reason", + "callFrames", + "breakpoints" +] - added
Output schema / properties / data / typeAdded value: +"object"
- Changed
web_debug_evaluate5 fields changed- added
Output schema / properties / data / additionalPropertiesAdded value: +false - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / propertiesAdded value: +{ + "description": { + "anyOf": [ + { + "maxLength": 2000, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "type": { + "anyOf": [ + { + "maxLength": 100, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "value": { + "$ref": "#/definitions/__schema0" + } +} - added
Output schema / properties / data / requiredAdded value: +[ + "value", + "type", + "description" +] - added
Output schema / properties / data / typeAdded value: +"object"
- Changed
web_fix_verify27 fields changed- added
Output schema / definitions / __schema10Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema10" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema10" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema11Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema11" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema11" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema12Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema12" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema12" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema13Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema13" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema13" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema14Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema14" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema14" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema15Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema15" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema15" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema16Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema16" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema16" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema17Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema17" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema17" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema18Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema18" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema18" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema19Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema19" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema19" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema2Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema2" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema2" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema20Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema20" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema20" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema21Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema21" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema21" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema22Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema22" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema22" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema3Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema3" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema3" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema4Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema4" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema4" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema5Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema5" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema5" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema6Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema6" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema6" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema7Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema7" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema7" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema8Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema8" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema8" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema9Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema9" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema9" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / properties / data / additionalPropertiesAdded value: +false - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / propertiesAdded value: +{ + "baseline": { + "$ref": "#/definitions/__schema12" + }, + "budget": { + "$ref": "#/definitions/__schema15" + }, + "buildReference": { + "$ref": "#/definitions/__schema19" + }, + "cleanup": { + "$ref": "#/definitions/__schema16" + }, + "contractHash": { + "maxLength": 64, + "minLength": 64, + "type": "string" + }, + "environmentFingerprint": { + "additionalProperties": false, + "properties": { + "adapterMode": { + "anyOf": [ + { + "enum": [ + "launch", + "attach", + "webdriver" + ], + "type": "string" + }, + { + "type": "null" + } + ] + }, + "architecture": { + "maxLength": 100, + "type": "string" + }, + "authFixture": { + "enum": [ + "seeded-disposable", + "none" + ], + "type": "string" + }, + "browser": { + "anyOf": [ + { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + { + "type": "null" + } + ] + }, + "browserVersion": { + "anyOf": [ + { + "maxLength": 200, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "descriptor": { + "maxLength": 500, + "type": "string" + }, + "isolated": { + "type": "boolean" + }, + "nodeVersion": { + "maxLength": 100, + "type": "string" + }, + "origin": { + "maxLength": 2560, + "type": "string" + }, + "path": { + "maxLength": 2560, + "type": "string" + }, + "platform": { + "maxLength": 100, + "type": "string" + }, + "projectAmbiguous": { + "type": "boolean" + }, + "projectConfidence": { + "enum": [ + "high", + "medium", + "low", + "none" + ], + "type": "string" + }, + "projectFrameworks": { + "items": { + "enum": [ + "vanilla", + "react", + "angular", + "vue", + "vite", + "next" + ], + "type": "string" + }, + "maxItems": 6, + "type": "array" + }, + "projectRoot": { + "maxLength": 4096, + "type": "string" + }, + "remote": { + "type": "boolean" + }, + "runtimeCapabilityStates": { + "additionalProperties": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "runtimeTransport": { + "anyOf": [ + { + "enum": [ + "chromium-launch", + "chromium-cdp-attach", + "safari-webdriver" + ], + "type": "string" + }, + { + "type": "null" + } + ] + }, + "schemaVersion": { + "const": 4, + "type": "number" + }, + "targetId": { + "anyOf": [ + { + "maxLength": 200, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "tls": { + "enum": [ + "strict", + "allow-insecure-loopback" + ], + "type": "string" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "schemaVersion", + "projectRoot", + "descriptor", + "projectFrameworks", + "projectConfidence", + "projectAmbiguous", + "origin", + "path", + "browser", + "browserVersion", + "adapterMode", + "targetId", + "remote", + "isolated", + "viewport", + "tls", + "authFixture", + "runtimeTransport", + "runtimeCapabilityStates", + "nodeVersion", + "platform", + "architecture" + ], + "type": "object" + }, + "escalations": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "evidence": { + "additionalProperties": false, + "properties": { + "baseline": { + "anyOf": [ + { + "$ref": "#/definitions/__schema17" + }, + { + "type": "null" + } + ] + }, + "postFix": { + "anyOf": [ + { + "$ref": "#/definitions/__schema18" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "baseline", + "postFix" + ], + "type": "object" + }, + "flaky": { + "type": "boolean" + }, + "isolation": { + "$ref": "#/definitions/__schema20" + }, + "level": { + "enum": [ + "quick", + "standard", + "strict" + ], + "type": "string" + }, + "observedRates": { + "$ref": "#/definitions/__schema14" + }, + "outcome": { + "enum": [ + "verified", + "failed", + "inconclusive" + ], + "type": "string" + }, + "persistence": { + "const": "in-memory", + "type": "string" + }, + "postFix": { + "$ref": "#/definitions/__schema13" + }, + "requestedLevel": { + "enum": [ + "quick", + "standard", + "strict" + ], + "type": "string" + }, + "scenario": { + "additionalProperties": false, + "properties": { + "acceptanceChecks": { + "items": { + "$ref": "#/definitions/__schema1" + }, + "maxItems": 64, + "type": "array" + }, + "actions": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "navigate", + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "kind", + "url" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "click", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "fill", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "key": { + "maxLength": 40, + "type": "string" + }, + "kind": { + "const": "press", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "key" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "select", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "checked": { + "type": "boolean" + }, + "kind": { + "const": "check", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "checked" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "hover", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "scroll", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "expected": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "kind": { + "const": "wait", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "property": { + "enum": [ + "count", + "visible", + "enabled", + "checked", + "text" + ], + "type": "string" + }, + "timeoutMs": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "locator", + "property", + "expected" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "reload", + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + } + ] + }, + "maxItems": 100, + "type": "array" + }, + "authFixture": { + "enum": [ + "seeded-disposable", + "none" + ], + "type": "string" + }, + "baseline": { + "additionalProperties": false, + "properties": { + "attempts": { + "items": { + "$ref": "#/definitions/__schema8" + }, + "maxItems": 5, + "type": "array" + }, + "budget": { + "$ref": "#/definitions/__schema7" + }, + "evidence": { + "anyOf": [ + { + "$ref": "#/definitions/__schema10" + }, + { + "type": "null" + } + ] + }, + "flaky": { + "type": "boolean" + }, + "level": { + "enum": [ + "quick", + "standard", + "strict" + ], + "type": "string" + }, + "observedRate": { + "$ref": "#/definitions/__schema9" + }, + "status": { + "enum": [ + "reproduced", + "not_reproduced", + "inconclusive" + ], + "type": "string" + }, + "termination": { + "maxLength": 500, + "type": "string" + }, + "truncation": { + "allOf": [ + { + "$ref": "#/definitions/__schema11" + } + ] + }, + "viewportConsensus": { + "additionalProperties": { + "type": "string" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 100, + "type": "array" + } + }, + "required": [ + "status", + "level", + "flaky", + "budget", + "attempts", + "observedRate", + "evidence", + "warnings", + "termination" + ], + "type": "object" + }, + "buildReference": { + "$ref": "#/definitions/__schema6" + }, + "checkpoints": { + "items": { + "$ref": "#/definitions/__schema3" + }, + "maxItems": 16, + "type": "array" + }, + "contractHash": { + "maxLength": 64, + "minLength": 64, + "type": "string" + }, + "createdAt": { + "maxLength": 100, + "type": "string" + }, + "environmentFingerprint": { + "additionalProperties": false, + "properties": { + "adapterMode": { + "anyOf": [ + { + "enum": [ + "launch", + "attach", + "webdriver" + ], + "type": "string" + }, + { + "type": "null" + } + ] + }, + "architecture": { + "maxLength": 100, + "type": "string" + }, + "authFixture": { + "enum": [ + "seeded-disposable", + "none" + ], + "type": "string" + }, + "browser": { + "anyOf": [ + { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + { + "type": "null" + } + ] + }, + "browserVersion": { + "anyOf": [ + { + "maxLength": 200, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "descriptor": { + "maxLength": 500, + "type": "string" + }, + "isolated": { + "type": "boolean" + }, + "nodeVersion": { + "maxLength": 100, + "type": "string" + }, + "origin": { + "maxLength": 2560, + "type": "string" + }, + "path": { + "maxLength": 2560, + "type": "string" + }, + "platform": { + "maxLength": 100, + "type": "string" + }, + "projectAmbiguous": { + "type": "boolean" + }, + "projectConfidence": { + "enum": [ + "high", + "medium", + "low", + "none" + ], + "type": "string" + }, + "projectFrameworks": { + "items": { + "enum": [ + "vanilla", + "react", + "angular", + "vue", + "vite", + "next" + ], + "type": "string" + }, + "maxItems": 6, + "type": "array" + }, + "projectRoot": { + "maxLength": 4096, + "type": "string" + }, + "remote": { + "type": "boolean" + }, + "runtimeCapabilityStates": { + "additionalProperties": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "runtimeTransport": { + "anyOf": [ + { + "enum": [ + "chromium-launch", + "chromium-cdp-attach", + "safari-webdriver" + ], + "type": "string" + }, + { + "type": "null" + } + ] + }, + "schemaVersion": { + "const": 4, + "type": "number" + }, + "targetId": { + "anyOf": [ + { + "maxLength": 200, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "tls": { + "enum": [ + "strict", + "allow-insecure-loopback" + ], + "type": "string" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "schemaVersion", + "projectRoot", + "descriptor", + "projectFrameworks", + "projectConfidence", + "projectAmbiguous", + "origin", + "path", + "browser", + "browserVersion", + "adapterMode", + "targetId", + "remote", + "isolated", + "viewport", + "tls", + "authFixture", + "runtimeTransport", + "runtimeCapabilityStates", + "nodeVersion", + "platform", + "architecture" + ], + "type": "object" + }, + "failureSignature": { + "items": { + "$ref": "#/definitions/__schema0" + }, + "maxItems": 64, + "type": "array" + }, + "failureViewports": { + "items": { + "maxLength": 40, + "type": "string" + }, + "maxItems": 4, + "type": "array" + }, + "id": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "name": { + "maxLength": 200, + "type": "string" + }, + "persistence": { + "const": "in-memory", + "type": "string" + }, + "regressionChecks": { + "items": { + "$ref": "#/definitions/__schema2" + }, + "maxItems": 64, + "type": "array" + }, + "requestedLevel": { + "enum": [ + "quick", + "standard", + "strict" + ], + "type": "string" + }, + "risks": { + "$ref": "#/definitions/__schema4" + }, + "schemaVersion": { + "const": 6, + "type": "number" + }, + "serverStateReset": { + "additionalProperties": false, + "properties": { + "action": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "navigate", + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "kind", + "url" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "click", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "fill", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "key": { + "maxLength": 40, + "type": "string" + }, + "kind": { + "const": "press", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "key" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "select", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "checked": { + "type": "boolean" + }, + "kind": { + "const": "check", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "checked" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "hover", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "scroll", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "expected": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "kind": { + "const": "wait", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "property": { + "enum": [ + "count", + "visible", + "enabled", + "checked", + "text" + ], + "type": "string" + }, + "timeoutMs": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "locator", + "property", + "expected" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "reload", + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + } + ] + }, + "readyCheck": { + "allOf": [ + { + "$ref": "#/definitions/__schema5" + } + ] + } + }, + "type": "object" + }, + "sessionId": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "tls": { + "enum": [ + "strict", + "allow-insecure-loopback" + ], + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "viewports": { + "items": { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "name": { + "maxLength": 40, + "type": "string" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height", + "name" + ], + "type": "object" + }, + "maxItems": 4, + "type": "array" + } + }, + "required": [ + "schemaVersion", + "id", + "sessionId", + "name", + "url", + "actions", + "failureSignature", + "acceptanceChecks", + "regressionChecks", + "checkpoints", + "viewports", + "authFixture", + "tls", + "risks", + "requestedLevel", + "buildReference", + "environmentFingerprint", + "contractHash", + "persistence", + "createdAt", + "baseline" + ], + "type": "object" + }, + "schemaVersion": { + "const": 6, + "type": "number" + }, + "termination": { + "maxLength": 500, + "type": "string" + }, + "truncation": { + "$ref": "#/definitions/__schema21" + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 100, + "type": "array" + } +} - added
Output schema / properties / data / requiredAdded value: +[ + "schemaVersion", + "outcome", + "level", + "requestedLevel", + "escalations", + "flaky", + "scenario", + "baseline", + "postFix", + "observedRates", + "budget", + "cleanup", + "evidence", + "environmentFingerprint", + "contractHash", + "buildReference", + "isolation", + "persistence", + "warnings", + "termination", + "truncation" +] - added
Output schema / properties / data / typeAdded value: +"object" - changed
Output schema / properties / error / properties / details / allOfPrevious value: -[ - { - "$ref": "#/definitions/__schema1" - } -]New value: +[ + { + "$ref": "#/definitions/__schema22" + } +]
- Changed
web_issue_capture18 fields changed- added
Input schema / additionalPropertiesAdded value: +false - removed
Input schema / properties / captureScreenshotRemoved value: -{ - "default": true, - "type": "boolean" -} - added
Input schema / properties / viewAdded value: +{ + "default": { + "profile": "summary" + }, + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "profile": { + "const": "summary", + "type": "string" + } + }, + "required": [ + "profile" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "profile": { + "const": "full", + "type": "string" + } + }, + "required": [ + "profile" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "profile": { + "const": "include", + "type": "string" + }, + "surfaces": { + "items": { + "enum": [ + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue", + "next", + "vite", + "accessibility", + "replay", + "screenshot", + "webmcp" + ], + "type": "string" + }, + "maxItems": 13, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "profile", + "surfaces" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "cursor": { + "maxLength": 200, + "minLength": 1, + "type": "string" + }, + "profile": { + "const": "delta", + "type": "string" + }, + "surfaces": { + "items": { + "enum": [ + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue", + "next", + "vite", + "accessibility", + "replay", + "screenshot", + "webmcp" + ], + "type": "string" + }, + "maxItems": 13, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "profile", + "cursor" + ], + "type": "object" + } + ] +} - added
Output schema / definitions / __schema10Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema10" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema10" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema11Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema11" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema11" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema12Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema12" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema12" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema13Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema13" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema13" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema2Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema2" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema2" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema3Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema3" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema3" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema4Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema4" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema4" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema5Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema5" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema5" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema6Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema6" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema6" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema7Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema7" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema7" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema8Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema8" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema8" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema9Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema9" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema9" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / oneOfAdded value: +[ + { + "additionalProperties": false, + "properties": { + "capturedAt": { + "maxLength": 100, + "type": "string" + }, + "cursor": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "profile": { + "const": "summary", + "type": "string" + }, + "project": { + "additionalProperties": false, + "properties": { + "ambiguous": { + "type": "boolean" + }, + "confidence": { + "enum": [ + "high", + "medium", + "low", + "none" + ], + "type": "string" + }, + "frameworks": { + "items": { + "enum": [ + "vanilla", + "react", + "angular", + "vue", + "vite", + "next" + ], + "type": "string" + }, + "maxItems": 6, + "type": "array" + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + } + }, + "required": [ + "frameworks", + "confidence", + "ambiguous", + "projectCapabilities" + ], + "type": "object" + }, + "redaction": { + "additionalProperties": false, + "properties": { + "applied": { + "const": true, + "type": "boolean" + }, + "policy": { + "const": "default-sensitive-fields", + "type": "string" + } + }, + "required": [ + "applied", + "policy" + ], + "type": "object" + }, + "schemaVersion": { + "const": 5, + "type": "number" + }, + "session": { + "additionalProperties": false, + "properties": { + "id": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + }, + "runtimeCapabilities": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "accessibility": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "actions": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "authSeeding": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "console": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "evaluation": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "javascriptDebugger": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "locators": { + "additionalProperties": false, + "properties": { + "css": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "semantic": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "css", + "semantic" + ], + "type": "object" + }, + "network": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "pageRuntimeEnrichment": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "schemaVersion": { + "const": 2, + "type": "number" + }, + "screenshots": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "tlsBypass": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "transport": { + "enum": [ + "chromium-launch", + "chromium-cdp-attach", + "safari-webdriver" + ], + "type": "string" + }, + "viewportMatrix": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "webmcp": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "schemaVersion", + "browser", + "transport", + "actions", + "locators", + "dom", + "console", + "network", + "screenshots", + "javascriptDebugger", + "evaluation", + "accessibility", + "pageRuntimeEnrichment", + "viewportMatrix", + "tlsBypass", + "authSeeding", + "webmcp" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "status": { + "enum": [ + "starting", + "ready", + "paused", + "failed", + "closed" + ], + "type": "string" + }, + "target": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "isolated": { + "type": "boolean" + }, + "mode": { + "enum": [ + "launch", + "attach", + "webdriver" + ], + "type": "string" + }, + "remote": { + "type": "boolean" + }, + "schemaVersion": { + "const": 1, + "type": "number" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "schemaVersion", + "browser", + "remote", + "viewport", + "isolated" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "id", + "url", + "status", + "target", + "projectCapabilities", + "runtimeCapabilities" + ], + "type": "object" + }, + "summary": { + "additionalProperties": false, + "properties": { + "bodyText": { + "maxLength": 1000, + "type": "string" + }, + "console": { + "additionalProperties": false, + "properties": { + "errors": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "latestErrors": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "level": { + "enum": [ + "log", + "info", + "debug", + "warning", + "error", + "pageerror" + ], + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "text": { + "maxLength": 2000, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "level", + "text" + ], + "type": "object" + }, + "maxItems": 3, + "type": "array" + }, + "total": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "warnings": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "total", + "errors", + "warnings", + "latestErrors" + ], + "type": "object" + }, + "debugger": { + "additionalProperties": false, + "properties": { + "breakpoints": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "callFrames": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "paused": { + "type": "boolean" + }, + "reason": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "paused", + "reason", + "callFrames", + "breakpoints" + ], + "type": "object" + }, + "domElements": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "network": { + "additionalProperties": false, + "properties": { + "failed": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "latestFailures": { + "items": { + "additionalProperties": false, + "properties": { + "failure": { + "maxLength": 500, + "type": "string" + }, + "method": { + "maxLength": 50, + "type": "string" + }, + "nextActionId": { + "maxLength": 200, + "type": "string" + }, + "ok": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "requestId": { + "maxLength": 500, + "type": "string" + }, + "resourceType": { + "maxLength": 100, + "type": "string" + }, + "status": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "requestId", + "method", + "url", + "resourceType", + "status", + "ok" + ], + "type": "object" + }, + "maxItems": 3, + "type": "array" + }, + "pending": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "total": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "total", + "failed", + "pending", + "latestFailures" + ], + "type": "object" + }, + "observations": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "console": { + "$ref": "#/definitions/__schema2" + }, + "dom": { + "$ref": "#/definitions/__schema1" + }, + "url": { + "$ref": "#/definitions/__schema0" + } + }, + "required": [ + "url", + "dom", + "console" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "replay": { + "additionalProperties": false, + "properties": { + "frames": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "newestIndex": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "oldestIndex": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "restorable": { + "type": "boolean" + }, + "restoreBlockedReason": { + "anyOf": [ + { + "maxLength": 100, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "frames", + "truncated", + "oldestIndex", + "newestIndex", + "restorable", + "restoreBlockedReason" + ], + "type": "object" + }, + "runtimes": { + "additionalProperties": false, + "properties": { + "accessibility": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "angular": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "next": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "react": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "vite": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "vue": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "react", + "angular", + "vue", + "next", + "vite", + "accessibility" + ], + "type": "object" + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "webmcp": { + "additionalProperties": false, + "properties": { + "callableTools": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "state", + "callableTools", + "truncated" + ], + "type": "object" + } + }, + "required": [ + "title", + "viewport", + "bodyText", + "domElements", + "console", + "network", + "debugger", + "runtimes", + "replay", + "webmcp", + "observations" + ], + "type": "object" + }, + "truncation": { + "additionalProperties": false, + "properties": { + "applied": { + "type": "boolean" + }, + "omittedSurfaces": { + "items": { + "enum": [ + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue", + "next", + "vite", + "accessibility", + "replay", + "screenshot", + "webmcp" + ], + "type": "string" + }, + "maxItems": 13, + "type": "array" + } + }, + "required": [ + "applied", + "omittedSurfaces" + ], + "type": "object" + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 10, + "type": "array" + } + }, + "required": [ + "schemaVersion", + "capturedAt", + "cursor", + "session", + "project", + "summary", + "redaction", + "warnings", + "truncation", + "profile" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "capturedAt": { + "maxLength": 100, + "type": "string" + }, + "cursor": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "details": { + "additionalProperties": false, + "properties": { + "accessibility": { + "anyOf": [ + { + "$ref": "#/definitions/__schema9" + }, + { + "type": "null" + } + ] + }, + "angular": { + "anyOf": [ + { + "$ref": "#/definitions/__schema5" + }, + { + "type": "null" + } + ] + }, + "console": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "level": { + "enum": [ + "log", + "info", + "debug", + "warning", + "error", + "pageerror" + ], + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "text": { + "maxLength": 2000, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "level", + "text" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "debugger": { + "additionalProperties": false, + "properties": { + "breakpoints": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "id": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "sourceUrl": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "id", + "sourceUrl", + "line", + "column" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "callFrames": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "functionName": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "locals": { + "additionalProperties": { + "$ref": "#/definitions/__schema3" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "scopeNames": { + "items": { + "maxLength": 100, + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "functionName", + "url", + "line", + "column", + "scopeNames", + "locals" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + }, + "paused": { + "type": "boolean" + }, + "reason": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "paused", + "reason", + "callFrames", + "breakpoints" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "bodyText": { + "maxLength": 4000, + "type": "string" + }, + "elements": { + "items": { + "additionalProperties": false, + "properties": { + "id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "role": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "tag": { + "type": "string" + }, + "text": { + "type": "string" + } + }, + "required": [ + "tag", + "id", + "role", + "text" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + } + }, + "required": [ + "bodyText", + "elements" + ], + "type": "object" + }, + "network": { + "items": { + "additionalProperties": false, + "properties": { + "failure": { + "maxLength": 500, + "type": "string" + }, + "method": { + "maxLength": 50, + "type": "string" + }, + "nextActionId": { + "maxLength": 200, + "type": "string" + }, + "ok": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "requestId": { + "maxLength": 500, + "type": "string" + }, + "resourceType": { + "maxLength": 100, + "type": "string" + }, + "status": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "requestId", + "method", + "url", + "resourceType", + "status", + "ok" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "next": { + "anyOf": [ + { + "$ref": "#/definitions/__schema7" + }, + { + "type": "null" + } + ] + }, + "react": { + "anyOf": [ + { + "$ref": "#/definitions/__schema4" + }, + { + "type": "null" + } + ] + }, + "replay": { + "additionalProperties": false, + "properties": { + "enabled": { + "const": true, + "type": "boolean" + }, + "frames": { + "items": { + "additionalProperties": false, + "properties": { + "action": { + "anyOf": [ + { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "navigate", + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "kind", + "url" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "click", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "fill", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "key": { + "maxLength": 40, + "type": "string" + }, + "kind": { + "const": "press", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "key" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "select", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "checked": { + "type": "boolean" + }, + "kind": { + "const": "check", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "checked" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "hover", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "scroll", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "expected": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "kind": { + "const": "wait", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "property": { + "enum": [ + "count", + "visible", + "enabled", + "checked", + "text" + ], + "type": "string" + }, + "timeoutMs": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "locator", + "property", + "expected" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "reload", + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + } + ] + }, + { + "type": "null" + } + ] + }, + "angular": { + "anyOf": [ + { + "$ref": "#/definitions/__schema11" + }, + { + "type": "null" + } + ] + }, + "attemptId": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "capturedAt": { + "maxLength": 100, + "type": "string" + }, + "console": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "level": { + "enum": [ + "log", + "info", + "debug", + "warning", + "error", + "pageerror" + ], + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "text": { + "maxLength": 2000, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "level", + "text" + ], + "type": "object" + }, + "maxItems": 20, + "type": "array" + }, + "debugger": { + "additionalProperties": false, + "properties": { + "breakpoints": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "id": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "sourceUrl": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "id", + "sourceUrl", + "line", + "column" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "callFrames": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "functionName": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "locals": { + "additionalProperties": { + "$ref": "#/definitions/__schema3" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "scopeNames": { + "items": { + "maxLength": 100, + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "functionName", + "url", + "line", + "column", + "scopeNames", + "locals" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + }, + "paused": { + "type": "boolean" + }, + "reason": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "paused", + "reason", + "callFrames", + "breakpoints" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "bodyText": { + "maxLength": 4000, + "type": "string" + }, + "elements": { + "items": { + "additionalProperties": false, + "properties": { + "id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "role": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "tag": { + "type": "string" + }, + "text": { + "type": "string" + } + }, + "required": [ + "tag", + "id", + "role", + "text" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + } + }, + "required": [ + "bodyText", + "elements" + ], + "type": "object" + }, + "index": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "network": { + "items": { + "additionalProperties": false, + "properties": { + "failure": { + "maxLength": 500, + "type": "string" + }, + "method": { + "maxLength": 50, + "type": "string" + }, + "nextActionId": { + "maxLength": 200, + "type": "string" + }, + "ok": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "requestId": { + "maxLength": 500, + "type": "string" + }, + "resourceType": { + "maxLength": 100, + "type": "string" + }, + "status": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "requestId", + "method", + "url", + "resourceType", + "status", + "ok" + ], + "type": "object" + }, + "maxItems": 20, + "type": "array" + }, + "react": { + "anyOf": [ + { + "$ref": "#/definitions/__schema10" + }, + { + "type": "null" + } + ] + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "trigger": { + "enum": [ + "action", + "capture" + ], + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "vue": { + "anyOf": [ + { + "$ref": "#/definitions/__schema12" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "index", + "attemptId", + "capturedAt", + "trigger", + "action", + "url", + "title", + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue" + ], + "type": "object" + }, + "maxItems": 8, + "type": "array" + }, + "maxFrames": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "restorable": { + "type": "boolean" + }, + "restoreBlockedReason": { + "anyOf": [ + { + "maxLength": 100, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "enabled", + "maxFrames", + "truncated", + "restorable", + "restoreBlockedReason", + "frames" + ], + "type": "object" + }, + "screenshot": { + "additionalProperties": false, + "properties": { + "status": { + "enum": [ + "captured", + "suppressed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" + }, + "vite": { + "anyOf": [ + { + "$ref": "#/definitions/__schema8" + }, + { + "type": "null" + } + ] + }, + "vue": { + "anyOf": [ + { + "$ref": "#/definitions/__schema6" + }, + { + "type": "null" + } + ] + }, + "webmcp": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "observedAt": { + "maxLength": 100, + "type": "string" + }, + "provenance": { + "const": "webmcp-page-api", + "type": "string" + }, + "tools": { + "items": { + "additionalProperties": false, + "properties": { + "annotations": { + "additionalProperties": false, + "properties": { + "readOnlyHint": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "untrustedContentHint": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "readOnlyHint", + "untrustedContentHint" + ], + "type": "object" + }, + "description": { + "maxLength": 500, + "type": "string" + }, + "inputSchemaJson": { + "anyOf": [ + { + "maxLength": 8192, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "name": { + "maxLength": 100, + "type": "string" + }, + "origin": { + "maxLength": 2048, + "type": "string" + }, + "title": { + "anyOf": [ + { + "maxLength": 200, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "untrusted": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "origin", + "name", + "title", + "description", + "inputSchemaJson", + "annotations", + "untrusted" + ], + "type": "object" + }, + "maxItems": 16, + "type": "array" + }, + "total": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "provenance", + "observedAt", + "total", + "truncated", + "tools" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "type": "object" + }, + "profile": { + "const": "full", + "type": "string" + }, + "project": { + "additionalProperties": false, + "properties": { + "ambiguous": { + "type": "boolean" + }, + "confidence": { + "enum": [ + "high", + "medium", + "low", + "none" + ], + "type": "string" + }, + "frameworks": { + "items": { + "enum": [ + "vanilla", + "react", + "angular", + "vue", + "vite", + "next" + ], + "type": "string" + }, + "maxItems": 6, + "type": "array" + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + } + }, + "required": [ + "frameworks", + "confidence", + "ambiguous", + "projectCapabilities" + ], + "type": "object" + }, + "redaction": { + "additionalProperties": false, + "properties": { + "applied": { + "const": true, + "type": "boolean" + }, + "policy": { + "const": "default-sensitive-fields", + "type": "string" + } + }, + "required": [ + "applied", + "policy" + ], + "type": "object" + }, + "schemaVersion": { + "const": 5, + "type": "number" + }, + "session": { + "additionalProperties": false, + "properties": { + "id": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + }, + "runtimeCapabilities": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "accessibility": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "actions": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "authSeeding": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "console": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "evaluation": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "javascriptDebugger": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "locators": { + "additionalProperties": false, + "properties": { + "css": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "semantic": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "css", + "semantic" + ], + "type": "object" + }, + "network": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "pageRuntimeEnrichment": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "schemaVersion": { + "const": 2, + "type": "number" + }, + "screenshots": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "tlsBypass": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "transport": { + "enum": [ + "chromium-launch", + "chromium-cdp-attach", + "safari-webdriver" + ], + "type": "string" + }, + "viewportMatrix": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "webmcp": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "schemaVersion", + "browser", + "transport", + "actions", + "locators", + "dom", + "console", + "network", + "screenshots", + "javascriptDebugger", + "evaluation", + "accessibility", + "pageRuntimeEnrichment", + "viewportMatrix", + "tlsBypass", + "authSeeding", + "webmcp" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "status": { + "enum": [ + "starting", + "ready", + "paused", + "failed", + "closed" + ], + "type": "string" + }, + "target": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "isolated": { + "type": "boolean" + }, + "mode": { + "enum": [ + "launch", + "attach", + "webdriver" + ], + "type": "string" + }, + "remote": { + "type": "boolean" + }, + "schemaVersion": { + "const": 1, + "type": "number" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "schemaVersion", + "browser", + "remote", + "viewport", + "isolated" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "id", + "url", + "status", + "target", + "projectCapabilities", + "runtimeCapabilities" + ], + "type": "object" + }, + "summary": { + "additionalProperties": false, + "properties": { + "bodyText": { + "maxLength": 1000, + "type": "string" + }, + "console": { + "additionalProperties": false, + "properties": { + "errors": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "latestErrors": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "level": { + "enum": [ + "log", + "info", + "debug", + "warning", + "error", + "pageerror" + ], + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "text": { + "maxLength": 2000, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "level", + "text" + ], + "type": "object" + }, + "maxItems": 3, + "type": "array" + }, + "total": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "warnings": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "total", + "errors", + "warnings", + "latestErrors" + ], + "type": "object" + }, + "debugger": { + "additionalProperties": false, + "properties": { + "breakpoints": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "callFrames": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "paused": { + "type": "boolean" + }, + "reason": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "paused", + "reason", + "callFrames", + "breakpoints" + ], + "type": "object" + }, + "domElements": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "network": { + "additionalProperties": false, + "properties": { + "failed": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "latestFailures": { + "items": { + "additionalProperties": false, + "properties": { + "failure": { + "maxLength": 500, + "type": "string" + }, + "method": { + "maxLength": 50, + "type": "string" + }, + "nextActionId": { + "maxLength": 200, + "type": "string" + }, + "ok": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "requestId": { + "maxLength": 500, + "type": "string" + }, + "resourceType": { + "maxLength": 100, + "type": "string" + }, + "status": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "requestId", + "method", + "url", + "resourceType", + "status", + "ok" + ], + "type": "object" + }, + "maxItems": 3, + "type": "array" + }, + "pending": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "total": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "total", + "failed", + "pending", + "latestFailures" + ], + "type": "object" + }, + "observations": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "console": { + "$ref": "#/definitions/__schema2" + }, + "dom": { + "$ref": "#/definitions/__schema1" + }, + "url": { + "$ref": "#/definitions/__schema0" + } + }, + "required": [ + "url", + "dom", + "console" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "replay": { + "additionalProperties": false, + "properties": { + "frames": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "newestIndex": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "oldestIndex": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "restorable": { + "type": "boolean" + }, + "restoreBlockedReason": { + "anyOf": [ + { + "maxLength": 100, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "frames", + "truncated", + "oldestIndex", + "newestIndex", + "restorable", + "restoreBlockedReason" + ], + "type": "object" + }, + "runtimes": { + "additionalProperties": false, + "properties": { + "accessibility": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "angular": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "next": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "react": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "vite": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "vue": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "react", + "angular", + "vue", + "next", + "vite", + "accessibility" + ], + "type": "object" + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "webmcp": { + "additionalProperties": false, + "properties": { + "callableTools": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "state", + "callableTools", + "truncated" + ], + "type": "object" + } + }, + "required": [ + "title", + "viewport", + "bodyText", + "domElements", + "console", + "network", + "debugger", + "runtimes", + "replay", + "webmcp", + "observations" + ], + "type": "object" + }, + "truncation": { + "additionalProperties": false, + "properties": { + "applied": { + "type": "boolean" + }, + "omittedSurfaces": { + "items": { + "enum": [ + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue", + "next", + "vite", + "accessibility", + "replay", + "screenshot", + "webmcp" + ], + "type": "string" + }, + "maxItems": 13, + "type": "array" + } + }, + "required": [ + "applied", + "omittedSurfaces" + ], + "type": "object" + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 10, + "type": "array" + } + }, + "required": [ + "schemaVersion", + "capturedAt", + "cursor", + "session", + "project", + "summary", + "redaction", + "warnings", + "truncation", + "profile", + "details" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "capturedAt": { + "maxLength": 100, + "type": "string" + }, + "cursor": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "details": { + "additionalProperties": false, + "properties": { + "accessibility": { + "anyOf": [ + { + "$ref": "#/definitions/__schema9" + }, + { + "type": "null" + } + ] + }, + "angular": { + "anyOf": [ + { + "$ref": "#/definitions/__schema5" + }, + { + "type": "null" + } + ] + }, + "console": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "level": { + "enum": [ + "log", + "info", + "debug", + "warning", + "error", + "pageerror" + ], + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "text": { + "maxLength": 2000, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "level", + "text" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "debugger": { + "additionalProperties": false, + "properties": { + "breakpoints": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "id": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "sourceUrl": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "id", + "sourceUrl", + "line", + "column" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "callFrames": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "functionName": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "locals": { + "additionalProperties": { + "$ref": "#/definitions/__schema3" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "scopeNames": { + "items": { + "maxLength": 100, + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "functionName", + "url", + "line", + "column", + "scopeNames", + "locals" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + }, + "paused": { + "type": "boolean" + }, + "reason": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "paused", + "reason", + "callFrames", + "breakpoints" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "bodyText": { + "maxLength": 4000, + "type": "string" + }, + "elements": { + "items": { + "additionalProperties": false, + "properties": { + "id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "role": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "tag": { + "type": "string" + }, + "text": { + "type": "string" + } + }, + "required": [ + "tag", + "id", + "role", + "text" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + } + }, + "required": [ + "bodyText", + "elements" + ], + "type": "object" + }, + "network": { + "items": { + "additionalProperties": false, + "properties": { + "failure": { + "maxLength": 500, + "type": "string" + }, + "method": { + "maxLength": 50, + "type": "string" + }, + "nextActionId": { + "maxLength": 200, + "type": "string" + }, + "ok": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "requestId": { + "maxLength": 500, + "type": "string" + }, + "resourceType": { + "maxLength": 100, + "type": "string" + }, + "status": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "requestId", + "method", + "url", + "resourceType", + "status", + "ok" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "next": { + "anyOf": [ + { + "$ref": "#/definitions/__schema7" + }, + { + "type": "null" + } + ] + }, + "react": { + "anyOf": [ + { + "$ref": "#/definitions/__schema4" + }, + { + "type": "null" + } + ] + }, + "replay": { + "additionalProperties": false, + "properties": { + "enabled": { + "const": true, + "type": "boolean" + }, + "frames": { + "items": { + "additionalProperties": false, + "properties": { + "action": { + "anyOf": [ + { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "navigate", + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "kind", + "url" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "click", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "fill", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "key": { + "maxLength": 40, + "type": "string" + }, + "kind": { + "const": "press", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "key" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "select", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "checked": { + "type": "boolean" + }, + "kind": { + "const": "check", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "checked" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "hover", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "scroll", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "expected": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "kind": { + "const": "wait", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "property": { + "enum": [ + "count", + "visible", + "enabled", + "checked", + "text" + ], + "type": "string" + }, + "timeoutMs": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "locator", + "property", + "expected" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "reload", + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + } + ] + }, + { + "type": "null" + } + ] + }, + "angular": { + "anyOf": [ + { + "$ref": "#/definitions/__schema11" + }, + { + "type": "null" + } + ] + }, + "attemptId": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "capturedAt": { + "maxLength": 100, + "type": "string" + }, + "console": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "level": { + "enum": [ + "log", + "info", + "debug", + "warning", + "error", + "pageerror" + ], + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "text": { + "maxLength": 2000, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "level", + "text" + ], + "type": "object" + }, + "maxItems": 20, + "type": "array" + }, + "debugger": { + "additionalProperties": false, + "properties": { + "breakpoints": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "id": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "sourceUrl": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "id", + "sourceUrl", + "line", + "column" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "callFrames": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "functionName": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "locals": { + "additionalProperties": { + "$ref": "#/definitions/__schema3" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "scopeNames": { + "items": { + "maxLength": 100, + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "functionName", + "url", + "line", + "column", + "scopeNames", + "locals" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + }, + "paused": { + "type": "boolean" + }, + "reason": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "paused", + "reason", + "callFrames", + "breakpoints" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "bodyText": { + "maxLength": 4000, + "type": "string" + }, + "elements": { + "items": { + "additionalProperties": false, + "properties": { + "id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "role": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "tag": { + "type": "string" + }, + "text": { + "type": "string" + } + }, + "required": [ + "tag", + "id", + "role", + "text" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + } + }, + "required": [ + "bodyText", + "elements" + ], + "type": "object" + }, + "index": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "network": { + "items": { + "additionalProperties": false, + "properties": { + "failure": { + "maxLength": 500, + "type": "string" + }, + "method": { + "maxLength": 50, + "type": "string" + }, + "nextActionId": { + "maxLength": 200, + "type": "string" + }, + "ok": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "requestId": { + "maxLength": 500, + "type": "string" + }, + "resourceType": { + "maxLength": 100, + "type": "string" + }, + "status": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "requestId", + "method", + "url", + "resourceType", + "status", + "ok" + ], + "type": "object" + }, + "maxItems": 20, + "type": "array" + }, + "react": { + "anyOf": [ + { + "$ref": "#/definitions/__schema10" + }, + { + "type": "null" + } + ] + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "trigger": { + "enum": [ + "action", + "capture" + ], + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "vue": { + "anyOf": [ + { + "$ref": "#/definitions/__schema12" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "index", + "attemptId", + "capturedAt", + "trigger", + "action", + "url", + "title", + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue" + ], + "type": "object" + }, + "maxItems": 8, + "type": "array" + }, + "maxFrames": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "restorable": { + "type": "boolean" + }, + "restoreBlockedReason": { + "anyOf": [ + { + "maxLength": 100, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "enabled", + "maxFrames", + "truncated", + "restorable", + "restoreBlockedReason", + "frames" + ], + "type": "object" + }, + "screenshot": { + "additionalProperties": false, + "properties": { + "status": { + "enum": [ + "captured", + "suppressed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" + }, + "vite": { + "anyOf": [ + { + "$ref": "#/definitions/__schema8" + }, + { + "type": "null" + } + ] + }, + "vue": { + "anyOf": [ + { + "$ref": "#/definitions/__schema6" + }, + { + "type": "null" + } + ] + }, + "webmcp": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "observedAt": { + "maxLength": 100, + "type": "string" + }, + "provenance": { + "const": "webmcp-page-api", + "type": "string" + }, + "tools": { + "items": { + "additionalProperties": false, + "properties": { + "annotations": { + "additionalProperties": false, + "properties": { + "readOnlyHint": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "untrustedContentHint": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "readOnlyHint", + "untrustedContentHint" + ], + "type": "object" + }, + "description": { + "maxLength": 500, + "type": "string" + }, + "inputSchemaJson": { + "anyOf": [ + { + "maxLength": 8192, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "name": { + "maxLength": 100, + "type": "string" + }, + "origin": { + "maxLength": 2048, + "type": "string" + }, + "title": { + "anyOf": [ + { + "maxLength": 200, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "untrusted": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "origin", + "name", + "title", + "description", + "inputSchemaJson", + "annotations", + "untrusted" + ], + "type": "object" + }, + "maxItems": 16, + "type": "array" + }, + "total": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "provenance", + "observedAt", + "total", + "truncated", + "tools" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "type": "object" + }, + "includedSurfaces": { + "items": { + "enum": [ + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue", + "next", + "vite", + "accessibility", + "replay", + "screenshot", + "webmcp" + ], + "type": "string" + }, + "maxItems": 13, + "minItems": 1, + "type": "array" + }, + "profile": { + "const": "include", + "type": "string" + }, + "project": { + "additionalProperties": false, + "properties": { + "ambiguous": { + "type": "boolean" + }, + "confidence": { + "enum": [ + "high", + "medium", + "low", + "none" + ], + "type": "string" + }, + "frameworks": { + "items": { + "enum": [ + "vanilla", + "react", + "angular", + "vue", + "vite", + "next" + ], + "type": "string" + }, + "maxItems": 6, + "type": "array" + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + } + }, + "required": [ + "frameworks", + "confidence", + "ambiguous", + "projectCapabilities" + ], + "type": "object" + }, + "redaction": { + "additionalProperties": false, + "properties": { + "applied": { + "const": true, + "type": "boolean" + }, + "policy": { + "const": "default-sensitive-fields", + "type": "string" + } + }, + "required": [ + "applied", + "policy" + ], + "type": "object" + }, + "schemaVersion": { + "const": 5, + "type": "number" + }, + "session": { + "additionalProperties": false, + "properties": { + "id": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + }, + "runtimeCapabilities": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "accessibility": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "actions": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "authSeeding": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "console": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "evaluation": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "javascriptDebugger": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "locators": { + "additionalProperties": false, + "properties": { + "css": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "semantic": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "css", + "semantic" + ], + "type": "object" + }, + "network": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "pageRuntimeEnrichment": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "schemaVersion": { + "const": 2, + "type": "number" + }, + "screenshots": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "tlsBypass": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "transport": { + "enum": [ + "chromium-launch", + "chromium-cdp-attach", + "safari-webdriver" + ], + "type": "string" + }, + "viewportMatrix": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "webmcp": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "schemaVersion", + "browser", + "transport", + "actions", + "locators", + "dom", + "console", + "network", + "screenshots", + "javascriptDebugger", + "evaluation", + "accessibility", + "pageRuntimeEnrichment", + "viewportMatrix", + "tlsBypass", + "authSeeding", + "webmcp" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "status": { + "enum": [ + "starting", + "ready", + "paused", + "failed", + "closed" + ], + "type": "string" + }, + "target": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "isolated": { + "type": "boolean" + }, + "mode": { + "enum": [ + "launch", + "attach", + "webdriver" + ], + "type": "string" + }, + "remote": { + "type": "boolean" + }, + "schemaVersion": { + "const": 1, + "type": "number" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "schemaVersion", + "browser", + "remote", + "viewport", + "isolated" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "id", + "url", + "status", + "target", + "projectCapabilities", + "runtimeCapabilities" + ], + "type": "object" + }, + "summary": { + "additionalProperties": false, + "properties": { + "bodyText": { + "maxLength": 1000, + "type": "string" + }, + "console": { + "additionalProperties": false, + "properties": { + "errors": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "latestErrors": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "level": { + "enum": [ + "log", + "info", + "debug", + "warning", + "error", + "pageerror" + ], + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "text": { + "maxLength": 2000, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "level", + "text" + ], + "type": "object" + }, + "maxItems": 3, + "type": "array" + }, + "total": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "warnings": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "total", + "errors", + "warnings", + "latestErrors" + ], + "type": "object" + }, + "debugger": { + "additionalProperties": false, + "properties": { + "breakpoints": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "callFrames": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "paused": { + "type": "boolean" + }, + "reason": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "paused", + "reason", + "callFrames", + "breakpoints" + ], + "type": "object" + }, + "domElements": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "network": { + "additionalProperties": false, + "properties": { + "failed": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "latestFailures": { + "items": { + "additionalProperties": false, + "properties": { + "failure": { + "maxLength": 500, + "type": "string" + }, + "method": { + "maxLength": 50, + "type": "string" + }, + "nextActionId": { + "maxLength": 200, + "type": "string" + }, + "ok": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "requestId": { + "maxLength": 500, + "type": "string" + }, + "resourceType": { + "maxLength": 100, + "type": "string" + }, + "status": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "requestId", + "method", + "url", + "resourceType", + "status", + "ok" + ], + "type": "object" + }, + "maxItems": 3, + "type": "array" + }, + "pending": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "total": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "total", + "failed", + "pending", + "latestFailures" + ], + "type": "object" + }, + "observations": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "console": { + "$ref": "#/definitions/__schema2" + }, + "dom": { + "$ref": "#/definitions/__schema1" + }, + "url": { + "$ref": "#/definitions/__schema0" + } + }, + "required": [ + "url", + "dom", + "console" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "replay": { + "additionalProperties": false, + "properties": { + "frames": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "newestIndex": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "oldestIndex": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "restorable": { + "type": "boolean" + }, + "restoreBlockedReason": { + "anyOf": [ + { + "maxLength": 100, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "frames", + "truncated", + "oldestIndex", + "newestIndex", + "restorable", + "restoreBlockedReason" + ], + "type": "object" + }, + "runtimes": { + "additionalProperties": false, + "properties": { + "accessibility": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "angular": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "next": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "react": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "vite": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "vue": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "react", + "angular", + "vue", + "next", + "vite", + "accessibility" + ], + "type": "object" + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "webmcp": { + "additionalProperties": false, + "properties": { + "callableTools": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "state", + "callableTools", + "truncated" + ], + "type": "object" + } + }, + "required": [ + "title", + "viewport", + "bodyText", + "domElements", + "console", + "network", + "debugger", + "runtimes", + "replay", + "webmcp", + "observations" + ], + "type": "object" + }, + "truncation": { + "additionalProperties": false, + "properties": { + "applied": { + "type": "boolean" + }, + "omittedSurfaces": { + "items": { + "enum": [ + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue", + "next", + "vite", + "accessibility", + "replay", + "screenshot", + "webmcp" + ], + "type": "string" + }, + "maxItems": 13, + "type": "array" + } + }, + "required": [ + "applied", + "omittedSurfaces" + ], + "type": "object" + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 10, + "type": "array" + } + }, + "required": [ + "schemaVersion", + "capturedAt", + "cursor", + "session", + "project", + "summary", + "redaction", + "warnings", + "truncation", + "profile", + "includedSurfaces", + "details" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "capturedAt": { + "maxLength": 100, + "type": "string" + }, + "changedSurfaces": { + "items": { + "enum": [ + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue", + "next", + "vite", + "accessibility", + "replay", + "screenshot", + "webmcp" + ], + "type": "string" + }, + "maxItems": 13, + "type": "array" + }, + "cursor": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "details": { + "additionalProperties": false, + "properties": { + "accessibility": { + "anyOf": [ + { + "$ref": "#/definitions/__schema9" + }, + { + "type": "null" + } + ] + }, + "angular": { + "anyOf": [ + { + "$ref": "#/definitions/__schema5" + }, + { + "type": "null" + } + ] + }, + "console": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "level": { + "enum": [ + "log", + "info", + "debug", + "warning", + "error", + "pageerror" + ], + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "text": { + "maxLength": 2000, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "level", + "text" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "debugger": { + "additionalProperties": false, + "properties": { + "breakpoints": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "id": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "sourceUrl": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "id", + "sourceUrl", + "line", + "column" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "callFrames": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "functionName": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "locals": { + "additionalProperties": { + "$ref": "#/definitions/__schema3" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "scopeNames": { + "items": { + "maxLength": 100, + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "functionName", + "url", + "line", + "column", + "scopeNames", + "locals" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + }, + "paused": { + "type": "boolean" + }, + "reason": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "paused", + "reason", + "callFrames", + "breakpoints" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "bodyText": { + "maxLength": 4000, + "type": "string" + }, + "elements": { + "items": { + "additionalProperties": false, + "properties": { + "id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "role": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "tag": { + "type": "string" + }, + "text": { + "type": "string" + } + }, + "required": [ + "tag", + "id", + "role", + "text" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + } + }, + "required": [ + "bodyText", + "elements" + ], + "type": "object" + }, + "network": { + "items": { + "additionalProperties": false, + "properties": { + "failure": { + "maxLength": 500, + "type": "string" + }, + "method": { + "maxLength": 50, + "type": "string" + }, + "nextActionId": { + "maxLength": 200, + "type": "string" + }, + "ok": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "requestId": { + "maxLength": 500, + "type": "string" + }, + "resourceType": { + "maxLength": 100, + "type": "string" + }, + "status": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "requestId", + "method", + "url", + "resourceType", + "status", + "ok" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "next": { + "anyOf": [ + { + "$ref": "#/definitions/__schema7" + }, + { + "type": "null" + } + ] + }, + "react": { + "anyOf": [ + { + "$ref": "#/definitions/__schema4" + }, + { + "type": "null" + } + ] + }, + "replay": { + "additionalProperties": false, + "properties": { + "enabled": { + "const": true, + "type": "boolean" + }, + "frames": { + "items": { + "additionalProperties": false, + "properties": { + "action": { + "anyOf": [ + { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "navigate", + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "kind", + "url" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "click", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "fill", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "key": { + "maxLength": 40, + "type": "string" + }, + "kind": { + "const": "press", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "key" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "select", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "checked": { + "type": "boolean" + }, + "kind": { + "const": "check", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "checked" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "hover", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "scroll", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "expected": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "kind": { + "const": "wait", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "property": { + "enum": [ + "count", + "visible", + "enabled", + "checked", + "text" + ], + "type": "string" + }, + "timeoutMs": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "locator", + "property", + "expected" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "reload", + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + } + ] + }, + { + "type": "null" + } + ] + }, + "angular": { + "anyOf": [ + { + "$ref": "#/definitions/__schema11" + }, + { + "type": "null" + } + ] + }, + "attemptId": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "capturedAt": { + "maxLength": 100, + "type": "string" + }, + "console": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "level": { + "enum": [ + "log", + "info", + "debug", + "warning", + "error", + "pageerror" + ], + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "text": { + "maxLength": 2000, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "level", + "text" + ], + "type": "object" + }, + "maxItems": 20, + "type": "array" + }, + "debugger": { + "additionalProperties": false, + "properties": { + "breakpoints": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "id": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "sourceUrl": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "id", + "sourceUrl", + "line", + "column" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "callFrames": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "functionName": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "locals": { + "additionalProperties": { + "$ref": "#/definitions/__schema3" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "scopeNames": { + "items": { + "maxLength": 100, + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "functionName", + "url", + "line", + "column", + "scopeNames", + "locals" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + }, + "paused": { + "type": "boolean" + }, + "reason": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "paused", + "reason", + "callFrames", + "breakpoints" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "bodyText": { + "maxLength": 4000, + "type": "string" + }, + "elements": { + "items": { + "additionalProperties": false, + "properties": { + "id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "role": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "tag": { + "type": "string" + }, + "text": { + "type": "string" + } + }, + "required": [ + "tag", + "id", + "role", + "text" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + } + }, + "required": [ + "bodyText", + "elements" + ], + "type": "object" + }, + "index": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "network": { + "items": { + "additionalProperties": false, + "properties": { + "failure": { + "maxLength": 500, + "type": "string" + }, + "method": { + "maxLength": 50, + "type": "string" + }, + "nextActionId": { + "maxLength": 200, + "type": "string" + }, + "ok": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "requestId": { + "maxLength": 500, + "type": "string" + }, + "resourceType": { + "maxLength": 100, + "type": "string" + }, + "status": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "requestId", + "method", + "url", + "resourceType", + "status", + "ok" + ], + "type": "object" + }, + "maxItems": 20, + "type": "array" + }, + "react": { + "anyOf": [ + { + "$ref": "#/definitions/__schema10" + }, + { + "type": "null" + } + ] + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "trigger": { + "enum": [ + "action", + "capture" + ], + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "vue": { + "anyOf": [ + { + "$ref": "#/definitions/__schema12" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "index", + "attemptId", + "capturedAt", + "trigger", + "action", + "url", + "title", + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue" + ], + "type": "object" + }, + "maxItems": 8, + "type": "array" + }, + "maxFrames": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "restorable": { + "type": "boolean" + }, + "restoreBlockedReason": { + "anyOf": [ + { + "maxLength": 100, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "enabled", + "maxFrames", + "truncated", + "restorable", + "restoreBlockedReason", + "frames" + ], + "type": "object" + }, + "screenshot": { + "additionalProperties": false, + "properties": { + "status": { + "enum": [ + "captured", + "suppressed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" + }, + "vite": { + "anyOf": [ + { + "$ref": "#/definitions/__schema8" + }, + { + "type": "null" + } + ] + }, + "vue": { + "anyOf": [ + { + "$ref": "#/definitions/__schema6" + }, + { + "type": "null" + } + ] + }, + "webmcp": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "observedAt": { + "maxLength": 100, + "type": "string" + }, + "provenance": { + "const": "webmcp-page-api", + "type": "string" + }, + "tools": { + "items": { + "additionalProperties": false, + "properties": { + "annotations": { + "additionalProperties": false, + "properties": { + "readOnlyHint": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "untrustedContentHint": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "readOnlyHint", + "untrustedContentHint" + ], + "type": "object" + }, + "description": { + "maxLength": 500, + "type": "string" + }, + "inputSchemaJson": { + "anyOf": [ + { + "maxLength": 8192, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "name": { + "maxLength": 100, + "type": "string" + }, + "origin": { + "maxLength": 2048, + "type": "string" + }, + "title": { + "anyOf": [ + { + "maxLength": 200, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "untrusted": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "origin", + "name", + "title", + "description", + "inputSchemaJson", + "annotations", + "untrusted" + ], + "type": "object" + }, + "maxItems": 16, + "type": "array" + }, + "total": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "provenance", + "observedAt", + "total", + "truncated", + "tools" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "type": "object" + }, + "fromCursor": { + "maxLength": 200, + "type": "string" + }, + "profile": { + "const": "delta", + "type": "string" + }, + "project": { + "additionalProperties": false, + "properties": { + "ambiguous": { + "type": "boolean" + }, + "confidence": { + "enum": [ + "high", + "medium", + "low", + "none" + ], + "type": "string" + }, + "frameworks": { + "items": { + "enum": [ + "vanilla", + "react", + "angular", + "vue", + "vite", + "next" + ], + "type": "string" + }, + "maxItems": 6, + "type": "array" + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + } + }, + "required": [ + "frameworks", + "confidence", + "ambiguous", + "projectCapabilities" + ], + "type": "object" + }, + "redaction": { + "additionalProperties": false, + "properties": { + "applied": { + "const": true, + "type": "boolean" + }, + "policy": { + "const": "default-sensitive-fields", + "type": "string" + } + }, + "required": [ + "applied", + "policy" + ], + "type": "object" + }, + "schemaVersion": { + "const": 5, + "type": "number" + }, + "session": { + "additionalProperties": false, + "properties": { + "id": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + }, + "runtimeCapabilities": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "accessibility": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "actions": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "authSeeding": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "console": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "evaluation": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "javascriptDebugger": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "locators": { + "additionalProperties": false, + "properties": { + "css": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "semantic": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "css", + "semantic" + ], + "type": "object" + }, + "network": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "pageRuntimeEnrichment": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "schemaVersion": { + "const": 2, + "type": "number" + }, + "screenshots": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "tlsBypass": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "transport": { + "enum": [ + "chromium-launch", + "chromium-cdp-attach", + "safari-webdriver" + ], + "type": "string" + }, + "viewportMatrix": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "webmcp": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "schemaVersion", + "browser", + "transport", + "actions", + "locators", + "dom", + "console", + "network", + "screenshots", + "javascriptDebugger", + "evaluation", + "accessibility", + "pageRuntimeEnrichment", + "viewportMatrix", + "tlsBypass", + "authSeeding", + "webmcp" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "status": { + "enum": [ + "starting", + "ready", + "paused", + "failed", + "closed" + ], + "type": "string" + }, + "target": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "isolated": { + "type": "boolean" + }, + "mode": { + "enum": [ + "launch", + "attach", + "webdriver" + ], + "type": "string" + }, + "remote": { + "type": "boolean" + }, + "schemaVersion": { + "const": 1, + "type": "number" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "schemaVersion", + "browser", + "remote", + "viewport", + "isolated" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "id", + "url", + "status", + "target", + "projectCapabilities", + "runtimeCapabilities" + ], + "type": "object" + }, + "summary": { + "additionalProperties": false, + "properties": { + "bodyText": { + "maxLength": 1000, + "type": "string" + }, + "console": { + "additionalProperties": false, + "properties": { + "errors": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "latestErrors": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "level": { + "enum": [ + "log", + "info", + "debug", + "warning", + "error", + "pageerror" + ], + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "text": { + "maxLength": 2000, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "level", + "text" + ], + "type": "object" + }, + "maxItems": 3, + "type": "array" + }, + "total": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "warnings": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "total", + "errors", + "warnings", + "latestErrors" + ], + "type": "object" + }, + "debugger": { + "additionalProperties": false, + "properties": { + "breakpoints": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "callFrames": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "paused": { + "type": "boolean" + }, + "reason": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "paused", + "reason", + "callFrames", + "breakpoints" + ], + "type": "object" + }, + "domElements": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "network": { + "additionalProperties": false, + "properties": { + "failed": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "latestFailures": { + "items": { + "additionalProperties": false, + "properties": { + "failure": { + "maxLength": 500, + "type": "string" + }, + "method": { + "maxLength": 50, + "type": "string" + }, + "nextActionId": { + "maxLength": 200, + "type": "string" + }, + "ok": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "requestId": { + "maxLength": 500, + "type": "string" + }, + "resourceType": { + "maxLength": 100, + "type": "string" + }, + "status": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "requestId", + "method", + "url", + "resourceType", + "status", + "ok" + ], + "type": "object" + }, + "maxItems": 3, + "type": "array" + }, + "pending": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "total": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "total", + "failed", + "pending", + "latestFailures" + ], + "type": "object" + }, + "observations": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "console": { + "$ref": "#/definitions/__schema2" + }, + "dom": { + "$ref": "#/definitions/__schema1" + }, + "url": { + "$ref": "#/definitions/__schema0" + } + }, + "required": [ + "url", + "dom", + "console" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "replay": { + "additionalProperties": false, + "properties": { + "frames": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "newestIndex": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "oldestIndex": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "restorable": { + "type": "boolean" + }, + "restoreBlockedReason": { + "anyOf": [ + { + "maxLength": 100, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "frames", + "truncated", + "oldestIndex", + "newestIndex", + "restorable", + "restoreBlockedReason" + ], + "type": "object" + }, + "runtimes": { + "additionalProperties": false, + "properties": { + "accessibility": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "angular": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "next": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "react": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "vite": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + }, + "vue": { + "enum": [ + "present", + "not-detected", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "react", + "angular", + "vue", + "next", + "vite", + "accessibility" + ], + "type": "object" + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "webmcp": { + "additionalProperties": false, + "properties": { + "callableTools": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + }, + "truncated": { + "type": "boolean" + } + }, + "required": [ + "state", + "callableTools", + "truncated" + ], + "type": "object" + } + }, + "required": [ + "title", + "viewport", + "bodyText", + "domElements", + "console", + "network", + "debugger", + "runtimes", + "replay", + "webmcp", + "observations" + ], + "type": "object" + }, + "truncation": { + "additionalProperties": false, + "properties": { + "applied": { + "type": "boolean" + }, + "omittedSurfaces": { + "items": { + "enum": [ + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue", + "next", + "vite", + "accessibility", + "replay", + "screenshot", + "webmcp" + ], + "type": "string" + }, + "maxItems": 13, + "type": "array" + } + }, + "required": [ + "applied", + "omittedSurfaces" + ], + "type": "object" + }, + "unchangedSurfaces": { + "items": { + "enum": [ + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue", + "next", + "vite", + "accessibility", + "replay", + "screenshot", + "webmcp" + ], + "type": "string" + }, + "maxItems": 13, + "type": "array" + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 10, + "type": "array" + } + }, + "required": [ + "schemaVersion", + "capturedAt", + "cursor", + "session", + "project", + "summary", + "redaction", + "warnings", + "truncation", + "profile", + "fromCursor", + "changedSurfaces", + "unchangedSurfaces", + "details" + ], + "type": "object" + } +] - changed
Output schema / properties / error / properties / details / allOfPrevious value: -[ - { - "$ref": "#/definitions/__schema1" - } -]New value: +[ + { + "$ref": "#/definitions/__schema13" + } +]
- Changed
web_next_inspect5 fields changed- added
Output schema / properties / data / additionalPropertiesAdded value: +false - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / propertiesAdded value: +{ + "detected": { + "const": true, + "type": "boolean" + }, + "endpoint": { + "maxLength": 2560, + "type": "string" + }, + "kind": { + "enum": [ + "compileRoute", + "resolveServerAction" + ], + "type": "string" + }, + "result": { + "anyOf": [ + { + "$ref": "#/definitions/__schema0" + }, + { + "type": "null" + } + ] + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 20, + "type": "array" + } +} - added
Output schema / properties / data / requiredAdded value: +[ + "detected", + "endpoint", + "kind", + "result", + "warnings" +] - added
Output schema / properties / data / typeAdded value: +"object"
- Changed
web_project_detect7 fields changed- removed
Output schema / definitions / __schema1Removed value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "null" - }, - { - "items": { - "$ref": "#/definitions/__schema1" - }, - "type": "array" - }, - { - "additionalProperties": { - "$ref": "#/definitions/__schema1" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - } - ] -} - added
Output schema / properties / data / additionalPropertiesAdded value: +false - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / propertiesAdded value: +{ + "ambiguous": { + "type": "boolean" + }, + "confidence": { + "enum": [ + "high", + "medium", + "low", + "none" + ], + "type": "string" + }, + "frameworkDetections": { + "items": { + "additionalProperties": false, + "properties": { + "confidence": { + "enum": [ + "high", + "medium", + "low" + ], + "type": "string" + }, + "framework": { + "enum": [ + "vanilla", + "react", + "angular", + "vue", + "vite", + "next" + ], + "type": "string" + }, + "provenance": { + "items": { + "additionalProperties": false, + "properties": { + "source": { + "enum": [ + "config", + "entry", + "script", + "dependency", + "devDependency", + "peerDependency" + ], + "type": "string" + }, + "value": { + "maxLength": 300, + "type": "string" + } + }, + "required": [ + "source", + "value" + ], + "type": "object" + }, + "maxItems": 8, + "type": "array" + }, + "selected": { + "type": "boolean" + } + }, + "required": [ + "framework", + "confidence", + "selected", + "provenance" + ], + "type": "object" + }, + "maxItems": 6, + "type": "array" + }, + "frameworks": { + "items": { + "enum": [ + "vanilla", + "react", + "angular", + "vue", + "vite", + "next" + ], + "type": "string" + }, + "maxItems": 6, + "type": "array" + }, + "kind": { + "enum": [ + "application", + "workspace", + "library", + "unknown" + ], + "type": "string" + }, + "markers": { + "items": { + "maxLength": 300, + "type": "string" + }, + "maxItems": 32, + "type": "array" + }, + "packageManager": { + "anyOf": [ + { + "enum": [ + "npm", + "pnpm", + "yarn", + "bun" + ], + "type": "string" + }, + { + "type": "null" + } + ] + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + }, + "projectRoot": { + "maxLength": 4096, + "type": "string" + }, + "schemaVersion": { + "const": 2, + "type": "number" + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 20, + "type": "array" + }, + "workspace": { + "additionalProperties": false, + "properties": { + "candidates": { + "items": { + "additionalProperties": false, + "properties": { + "ambiguous": { + "type": "boolean" + }, + "confidence": { + "enum": [ + "high", + "medium", + "low", + "none" + ], + "type": "string" + }, + "frameworks": { + "items": { + "enum": [ + "vanilla", + "react", + "angular", + "vue", + "vite", + "next" + ], + "type": "string" + }, + "maxItems": 6, + "type": "array" + }, + "markers": { + "items": { + "maxLength": 300, + "type": "string" + }, + "maxItems": 12, + "type": "array" + }, + "projectRoot": { + "maxLength": 4096, + "type": "string" + } + }, + "required": [ + "projectRoot", + "frameworks", + "confidence", + "ambiguous", + "markers" + ], + "type": "object" + }, + "maxItems": 32, + "type": "array" + }, + "declared": { + "type": "boolean" + }, + "truncated": { + "type": "boolean" + }, + "unsupportedPatterns": { + "items": { + "maxLength": 300, + "type": "string" + }, + "maxItems": 32, + "type": "array" + } + }, + "required": [ + "declared", + "candidates", + "truncated", + "unsupportedPatterns" + ], + "type": "object" + } +} - added
Output schema / properties / data / requiredAdded value: +[ + "schemaVersion", + "projectRoot", + "packageManager", + "kind", + "frameworks", + "markers", + "confidence", + "ambiguous", + "frameworkDetections", + "workspace", + "projectCapabilities", + "warnings" +] - added
Output schema / properties / data / typeAdded value: +"object" - changed
Output schema / properties / error / properties / details / allOfPrevious value: -[ - { - "$ref": "#/definitions/__schema1" - } -]New value: +[ + { + "$ref": "#/definitions/__schema0" + } +]
- Changed
web_replay_seek9 fields changed- added
Output schema / definitions / __schema2Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema2" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema2" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema3Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema3" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema3" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema4Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema4" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema4" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / properties / data / additionalPropertiesAdded value: +false - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / propertiesAdded value: +{ + "availableFrames": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "frame": { + "additionalProperties": false, + "properties": { + "action": { + "anyOf": [ + { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "navigate", + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "kind", + "url" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "click", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "fill", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "key": { + "maxLength": 40, + "type": "string" + }, + "kind": { + "const": "press", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "key" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "select", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "checked": { + "type": "boolean" + }, + "kind": { + "const": "check", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "checked" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "hover", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "scroll", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "expected": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "kind": { + "const": "wait", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "property": { + "enum": [ + "count", + "visible", + "enabled", + "checked", + "text" + ], + "type": "string" + }, + "timeoutMs": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "locator", + "property", + "expected" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "reload", + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + } + ] + }, + { + "type": "null" + } + ] + }, + "angular": { + "anyOf": [ + { + "$ref": "#/definitions/__schema2" + }, + { + "type": "null" + } + ] + }, + "attemptId": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "capturedAt": { + "maxLength": 100, + "type": "string" + }, + "console": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "level": { + "enum": [ + "log", + "info", + "debug", + "warning", + "error", + "pageerror" + ], + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "text": { + "maxLength": 2000, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "level", + "text" + ], + "type": "object" + }, + "maxItems": 20, + "type": "array" + }, + "debugger": { + "additionalProperties": false, + "properties": { + "breakpoints": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "id": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "sourceUrl": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "id", + "sourceUrl", + "line", + "column" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "callFrames": { + "items": { + "additionalProperties": false, + "properties": { + "column": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "functionName": { + "maxLength": 500, + "type": "string" + }, + "line": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "locals": { + "additionalProperties": { + "$ref": "#/definitions/__schema0" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "scopeNames": { + "items": { + "maxLength": 100, + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "functionName", + "url", + "line", + "column", + "scopeNames", + "locals" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + }, + "paused": { + "type": "boolean" + }, + "reason": { + "anyOf": [ + { + "maxLength": 500, + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "paused", + "reason", + "callFrames", + "breakpoints" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "bodyText": { + "maxLength": 4000, + "type": "string" + }, + "elements": { + "items": { + "additionalProperties": false, + "properties": { + "id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "role": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "tag": { + "type": "string" + }, + "text": { + "type": "string" + } + }, + "required": [ + "tag", + "id", + "role", + "text" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" + } + }, + "required": [ + "bodyText", + "elements" + ], + "type": "object" + }, + "index": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "network": { + "items": { + "additionalProperties": false, + "properties": { + "failure": { + "maxLength": 500, + "type": "string" + }, + "method": { + "maxLength": 50, + "type": "string" + }, + "nextActionId": { + "maxLength": 200, + "type": "string" + }, + "ok": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "requestId": { + "maxLength": 500, + "type": "string" + }, + "resourceType": { + "maxLength": 100, + "type": "string" + }, + "status": { + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "requestId", + "method", + "url", + "resourceType", + "status", + "ok" + ], + "type": "object" + }, + "maxItems": 20, + "type": "array" + }, + "react": { + "anyOf": [ + { + "$ref": "#/definitions/__schema1" + }, + { + "type": "null" + } + ] + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "trigger": { + "enum": [ + "action", + "capture" + ], + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "vue": { + "anyOf": [ + { + "$ref": "#/definitions/__schema3" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "index", + "attemptId", + "capturedAt", + "trigger", + "action", + "url", + "title", + "dom", + "console", + "network", + "debugger", + "react", + "angular", + "vue" + ], + "type": "object" + }, + "newestFrameIndex": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "oldestFrameIndex": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "restorable": { + "type": "boolean" + }, + "restoreBlockedReason": { + "anyOf": [ + { + "maxLength": 100, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "restored": { + "type": "boolean" + }, + "schemaVersion": { + "const": 1, + "type": "number" + }, + "sessionId": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + } +} - added
Output schema / properties / data / requiredAdded value: +[ + "schemaVersion", + "sessionId", + "frame", + "restored", + "restorable", + "restoreBlockedReason", + "availableFrames", + "oldestFrameIndex", + "newestFrameIndex" +] - added
Output schema / properties / data / typeAdded value: +"object" - changed
Output schema / properties / error / properties / details / allOfPrevious value: -[ - { - "$ref": "#/definitions/__schema1" - } -]New value: +[ + { + "$ref": "#/definitions/__schema4" + } +]
- Changed
web_repro_record17 fields changed- added
Output schema / definitions / __schema10Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema10" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema10" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema11Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema11" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema11" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema12Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema12" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema12" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema2Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema2" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema2" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema3Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema3" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema3" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema4Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema4" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema4" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema5Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema5" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema5" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema6Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema6" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema6" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema7Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema7" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema7" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema8Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema8" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema8" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / definitions / __schema9Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/definitions/__schema9" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/definitions/__schema9" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - added
Output schema / properties / data / additionalPropertiesAdded value: +false - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / propertiesAdded value: +{ + "acceptanceChecks": { + "items": { + "$ref": "#/definitions/__schema1" + }, + "maxItems": 64, + "type": "array" + }, + "actions": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "navigate", + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "kind", + "url" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "click", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "fill", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "key": { + "maxLength": 40, + "type": "string" + }, + "kind": { + "const": "press", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "key" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "select", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "checked": { + "type": "boolean" + }, + "kind": { + "const": "check", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "checked" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "hover", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "scroll", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "expected": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "kind": { + "const": "wait", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "property": { + "enum": [ + "count", + "visible", + "enabled", + "checked", + "text" + ], + "type": "string" + }, + "timeoutMs": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "locator", + "property", + "expected" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "reload", + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + } + ] + }, + "maxItems": 100, + "type": "array" + }, + "authFixture": { + "enum": [ + "seeded-disposable", + "none" + ], + "type": "string" + }, + "baseline": { + "additionalProperties": false, + "properties": { + "attempts": { + "items": { + "$ref": "#/definitions/__schema8" + }, + "maxItems": 5, + "type": "array" + }, + "budget": { + "$ref": "#/definitions/__schema7" + }, + "evidence": { + "anyOf": [ + { + "$ref": "#/definitions/__schema10" + }, + { + "type": "null" + } + ] + }, + "flaky": { + "type": "boolean" + }, + "level": { + "enum": [ + "quick", + "standard", + "strict" + ], + "type": "string" + }, + "observedRate": { + "$ref": "#/definitions/__schema9" + }, + "status": { + "enum": [ + "reproduced", + "not_reproduced", + "inconclusive" + ], + "type": "string" + }, + "termination": { + "maxLength": 500, + "type": "string" + }, + "truncation": { + "allOf": [ + { + "$ref": "#/definitions/__schema11" + } + ] + }, + "viewportConsensus": { + "additionalProperties": { + "type": "string" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 100, + "type": "array" + } + }, + "required": [ + "status", + "level", + "flaky", + "budget", + "attempts", + "observedRate", + "evidence", + "warnings", + "termination" + ], + "type": "object" + }, + "buildReference": { + "$ref": "#/definitions/__schema6" + }, + "checkpoints": { + "items": { + "$ref": "#/definitions/__schema3" + }, + "maxItems": 16, + "type": "array" + }, + "contractHash": { + "maxLength": 64, + "minLength": 64, + "type": "string" + }, + "createdAt": { + "maxLength": 100, + "type": "string" + }, + "environmentFingerprint": { + "additionalProperties": false, + "properties": { + "adapterMode": { + "anyOf": [ + { + "enum": [ + "launch", + "attach", + "webdriver" + ], + "type": "string" + }, + { + "type": "null" + } + ] + }, + "architecture": { + "maxLength": 100, + "type": "string" + }, + "authFixture": { + "enum": [ + "seeded-disposable", + "none" + ], + "type": "string" + }, + "browser": { + "anyOf": [ + { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + { + "type": "null" + } + ] + }, + "browserVersion": { + "anyOf": [ + { + "maxLength": 200, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "descriptor": { + "maxLength": 500, + "type": "string" + }, + "isolated": { + "type": "boolean" + }, + "nodeVersion": { + "maxLength": 100, + "type": "string" + }, + "origin": { + "maxLength": 2560, + "type": "string" + }, + "path": { + "maxLength": 2560, + "type": "string" + }, + "platform": { + "maxLength": 100, + "type": "string" + }, + "projectAmbiguous": { + "type": "boolean" + }, + "projectConfidence": { + "enum": [ + "high", + "medium", + "low", + "none" + ], + "type": "string" + }, + "projectFrameworks": { + "items": { + "enum": [ + "vanilla", + "react", + "angular", + "vue", + "vite", + "next" + ], + "type": "string" + }, + "maxItems": 6, + "type": "array" + }, + "projectRoot": { + "maxLength": 4096, + "type": "string" + }, + "remote": { + "type": "boolean" + }, + "runtimeCapabilityStates": { + "additionalProperties": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "runtimeTransport": { + "anyOf": [ + { + "enum": [ + "chromium-launch", + "chromium-cdp-attach", + "safari-webdriver" + ], + "type": "string" + }, + { + "type": "null" + } + ] + }, + "schemaVersion": { + "const": 4, + "type": "number" + }, + "targetId": { + "anyOf": [ + { + "maxLength": 200, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "tls": { + "enum": [ + "strict", + "allow-insecure-loopback" + ], + "type": "string" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "schemaVersion", + "projectRoot", + "descriptor", + "projectFrameworks", + "projectConfidence", + "projectAmbiguous", + "origin", + "path", + "browser", + "browserVersion", + "adapterMode", + "targetId", + "remote", + "isolated", + "viewport", + "tls", + "authFixture", + "runtimeTransport", + "runtimeCapabilityStates", + "nodeVersion", + "platform", + "architecture" + ], + "type": "object" + }, + "failureSignature": { + "items": { + "$ref": "#/definitions/__schema0" + }, + "maxItems": 64, + "type": "array" + }, + "failureViewports": { + "items": { + "maxLength": 40, + "type": "string" + }, + "maxItems": 4, + "type": "array" + }, + "id": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "name": { + "maxLength": 200, + "type": "string" + }, + "persistence": { + "const": "in-memory", + "type": "string" + }, + "regressionChecks": { + "items": { + "$ref": "#/definitions/__schema2" + }, + "maxItems": 64, + "type": "array" + }, + "requestedLevel": { + "enum": [ + "quick", + "standard", + "strict" + ], + "type": "string" + }, + "risks": { + "$ref": "#/definitions/__schema4" + }, + "schemaVersion": { + "const": 6, + "type": "number" + }, + "serverStateReset": { + "additionalProperties": false, + "properties": { + "action": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "navigate", + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + } + }, + "required": [ + "kind", + "url" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "click", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "fill", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "key": { + "maxLength": 40, + "type": "string" + }, + "kind": { + "const": "press", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "key" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "select", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "value": { + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "checked": { + "type": "boolean" + }, + "kind": { + "const": "check", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator", + "checked" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "hover", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "scroll", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + } + }, + "required": [ + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "expected": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "kind": { + "const": "wait", + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "css", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "role", + "type": "string" + }, + "name": { + "maxLength": 300, + "type": "string" + }, + "role": { + "maxLength": 100, + "type": "string" + } + }, + "required": [ + "kind", + "role" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "text", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "label", + "type": "string" + }, + "text": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "text" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "testId", + "type": "string" + }, + "value": { + "maxLength": 500, + "type": "string" + } + }, + "required": [ + "kind", + "value" + ], + "type": "object" + } + ] + }, + "property": { + "enum": [ + "count", + "visible", + "enabled", + "checked", + "text" + ], + "type": "string" + }, + "timeoutMs": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "locator", + "property", + "expected" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "reload", + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + } + ] + }, + "readyCheck": { + "allOf": [ + { + "$ref": "#/definitions/__schema5" + } + ] + } + }, + "type": "object" + }, + "sessionId": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "tls": { + "enum": [ + "strict", + "allow-insecure-loopback" + ], + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "viewports": { + "items": { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "name": { + "maxLength": 40, + "type": "string" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height", + "name" + ], + "type": "object" + }, + "maxItems": 4, + "type": "array" + } +} - added
Output schema / properties / data / requiredAdded value: +[ + "schemaVersion", + "id", + "sessionId", + "name", + "url", + "actions", + "failureSignature", + "acceptanceChecks", + "regressionChecks", + "checkpoints", + "viewports", + "authFixture", + "tls", + "risks", + "requestedLevel", + "buildReference", + "environmentFingerprint", + "contractHash", + "persistence", + "createdAt", + "baseline" +] - added
Output schema / properties / data / typeAdded value: +"object" - changed
Output schema / properties / error / properties / details / allOfPrevious value: -[ - { - "$ref": "#/definitions/__schema1" - } -]New value: +[ + { + "$ref": "#/definitions/__schema12" + } +]
- Changed
web_session_close7 fields changed- removed
Output schema / definitions / __schema1Removed value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "null" - }, - { - "items": { - "$ref": "#/definitions/__schema1" - }, - "type": "array" - }, - { - "additionalProperties": { - "$ref": "#/definitions/__schema1" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - } - ] -} - added
Output schema / properties / data / additionalPropertiesAdded value: +false - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / propertiesAdded value: +{ + "artifactDir": { + "maxLength": 4096, + "type": "string" + }, + "artifactState": { + "enum": [ + "retained", + "deleted" + ], + "type": "string" + }, + "authFixture": { + "enum": [ + "seeded-disposable", + "none" + ], + "type": "string" + }, + "createdAt": { + "maxLength": 100, + "type": "string" + }, + "id": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + }, + "projectRoot": { + "maxLength": 4096, + "type": "string" + }, + "runtimeCapabilities": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "accessibility": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "actions": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "authSeeding": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "console": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "evaluation": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "javascriptDebugger": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "locators": { + "additionalProperties": false, + "properties": { + "css": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "semantic": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "css", + "semantic" + ], + "type": "object" + }, + "network": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "pageRuntimeEnrichment": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "schemaVersion": { + "const": 2, + "type": "number" + }, + "screenshots": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "tlsBypass": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "transport": { + "enum": [ + "chromium-launch", + "chromium-cdp-attach", + "safari-webdriver" + ], + "type": "string" + }, + "viewportMatrix": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "webmcp": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "schemaVersion", + "browser", + "transport", + "actions", + "locators", + "dom", + "console", + "network", + "screenshots", + "javascriptDebugger", + "evaluation", + "accessibility", + "pageRuntimeEnrichment", + "viewportMatrix", + "tlsBypass", + "authSeeding", + "webmcp" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "schemaVersion": { + "const": 3, + "type": "number" + }, + "status": { + "enum": [ + "starting", + "ready", + "paused", + "failed", + "closed" + ], + "type": "string" + }, + "target": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "isolated": { + "type": "boolean" + }, + "isolation": { + "additionalProperties": false, + "properties": { + "browserProcess": { + "type": "boolean" + }, + "cache": { + "type": "boolean" + }, + "context": { + "type": "boolean" + }, + "navigation": { + "type": "boolean" + }, + "profile": { + "type": "boolean" + }, + "serverState": { + "type": "boolean" + }, + "serviceWorkers": { + "type": "boolean" + }, + "storage": { + "type": "boolean" + } + }, + "required": [ + "browserProcess", + "context", + "profile", + "storage", + "cache", + "serviceWorkers", + "navigation", + "serverState" + ], + "type": "object" + }, + "mode": { + "enum": [ + "launch", + "attach", + "webdriver" + ], + "type": "string" + }, + "remote": { + "type": "boolean" + }, + "schemaVersion": { + "const": 1, + "type": "number" + }, + "targetId": { + "maxLength": 200, + "type": "string" + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "schemaVersion", + "browser", + "remote", + "url", + "title", + "viewport", + "isolated" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "tls": { + "enum": [ + "strict", + "allow-insecure-loopback" + ], + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 100, + "type": "array" + } +} - added
Output schema / properties / data / requiredAdded value: +[ + "schemaVersion", + "id", + "projectRoot", + "url", + "status", + "createdAt", + "artifactDir", + "target", + "projectCapabilities", + "runtimeCapabilities", + "warnings" +] - added
Output schema / properties / data / typeAdded value: +"object" - changed
Output schema / properties / error / properties / details / allOfPrevious value: -[ - { - "$ref": "#/definitions/__schema1" - } -]New value: +[ + { + "$ref": "#/definitions/__schema0" + } +]
- Changed
web_session_start7 fields changed- removed
Output schema / definitions / __schema1Removed value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "null" - }, - { - "items": { - "$ref": "#/definitions/__schema1" - }, - "type": "array" - }, - { - "additionalProperties": { - "$ref": "#/definitions/__schema1" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - } - ] -} - added
Output schema / properties / data / additionalPropertiesAdded value: +false - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / propertiesAdded value: +{ + "artifactDir": { + "maxLength": 4096, + "type": "string" + }, + "artifactState": { + "enum": [ + "retained", + "deleted" + ], + "type": "string" + }, + "authFixture": { + "enum": [ + "seeded-disposable", + "none" + ], + "type": "string" + }, + "createdAt": { + "maxLength": 100, + "type": "string" + }, + "id": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + }, + "projectRoot": { + "maxLength": 4096, + "type": "string" + }, + "runtimeCapabilities": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "accessibility": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "actions": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "authSeeding": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "console": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "evaluation": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "javascriptDebugger": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "locators": { + "additionalProperties": false, + "properties": { + "css": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "semantic": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "css", + "semantic" + ], + "type": "object" + }, + "network": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "pageRuntimeEnrichment": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "schemaVersion": { + "const": 2, + "type": "number" + }, + "screenshots": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "tlsBypass": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "transport": { + "enum": [ + "chromium-launch", + "chromium-cdp-attach", + "safari-webdriver" + ], + "type": "string" + }, + "viewportMatrix": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "webmcp": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "schemaVersion", + "browser", + "transport", + "actions", + "locators", + "dom", + "console", + "network", + "screenshots", + "javascriptDebugger", + "evaluation", + "accessibility", + "pageRuntimeEnrichment", + "viewportMatrix", + "tlsBypass", + "authSeeding", + "webmcp" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "schemaVersion": { + "const": 3, + "type": "number" + }, + "status": { + "enum": [ + "starting", + "ready", + "paused", + "failed", + "closed" + ], + "type": "string" + }, + "target": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "isolated": { + "type": "boolean" + }, + "isolation": { + "additionalProperties": false, + "properties": { + "browserProcess": { + "type": "boolean" + }, + "cache": { + "type": "boolean" + }, + "context": { + "type": "boolean" + }, + "navigation": { + "type": "boolean" + }, + "profile": { + "type": "boolean" + }, + "serverState": { + "type": "boolean" + }, + "serviceWorkers": { + "type": "boolean" + }, + "storage": { + "type": "boolean" + } + }, + "required": [ + "browserProcess", + "context", + "profile", + "storage", + "cache", + "serviceWorkers", + "navigation", + "serverState" + ], + "type": "object" + }, + "mode": { + "enum": [ + "launch", + "attach", + "webdriver" + ], + "type": "string" + }, + "remote": { + "type": "boolean" + }, + "schemaVersion": { + "const": 1, + "type": "number" + }, + "targetId": { + "maxLength": 200, + "type": "string" + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "schemaVersion", + "browser", + "remote", + "url", + "title", + "viewport", + "isolated" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "tls": { + "enum": [ + "strict", + "allow-insecure-loopback" + ], + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 100, + "type": "array" + } +} - added
Output schema / properties / data / requiredAdded value: +[ + "schemaVersion", + "id", + "projectRoot", + "url", + "status", + "createdAt", + "artifactDir", + "target", + "projectCapabilities", + "runtimeCapabilities", + "warnings" +] - added
Output schema / properties / data / typeAdded value: +"object" - changed
Output schema / properties / error / properties / details / allOfPrevious value: -[ - { - "$ref": "#/definitions/__schema1" - } -]New value: +[ + { + "$ref": "#/definitions/__schema0" + } +]
- Changed
web_session_status4 fields changed- removed
Output schema / definitions / __schema1Removed value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "null" - }, - { - "items": { - "$ref": "#/definitions/__schema1" - }, - "type": "array" - }, - { - "additionalProperties": { - "$ref": "#/definitions/__schema1" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - } - ] -} - removed
Output schema / properties / data / allOfRemoved value: -[ - { - "$ref": "#/definitions/__schema0" - } -] - added
Output schema / properties / data / anyOfAdded value: +[ + { + "additionalProperties": false, + "properties": { + "artifactDir": { + "maxLength": 4096, + "type": "string" + }, + "artifactState": { + "enum": [ + "retained", + "deleted" + ], + "type": "string" + }, + "authFixture": { + "enum": [ + "seeded-disposable", + "none" + ], + "type": "string" + }, + "createdAt": { + "maxLength": 100, + "type": "string" + }, + "id": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + }, + "projectRoot": { + "maxLength": 4096, + "type": "string" + }, + "runtimeCapabilities": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "accessibility": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "actions": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "authSeeding": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "console": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "evaluation": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "javascriptDebugger": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "locators": { + "additionalProperties": false, + "properties": { + "css": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "semantic": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "css", + "semantic" + ], + "type": "object" + }, + "network": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "pageRuntimeEnrichment": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "schemaVersion": { + "const": 2, + "type": "number" + }, + "screenshots": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "tlsBypass": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "transport": { + "enum": [ + "chromium-launch", + "chromium-cdp-attach", + "safari-webdriver" + ], + "type": "string" + }, + "viewportMatrix": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "webmcp": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "schemaVersion", + "browser", + "transport", + "actions", + "locators", + "dom", + "console", + "network", + "screenshots", + "javascriptDebugger", + "evaluation", + "accessibility", + "pageRuntimeEnrichment", + "viewportMatrix", + "tlsBypass", + "authSeeding", + "webmcp" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "schemaVersion": { + "const": 3, + "type": "number" + }, + "status": { + "enum": [ + "starting", + "ready", + "paused", + "failed", + "closed" + ], + "type": "string" + }, + "target": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "isolated": { + "type": "boolean" + }, + "isolation": { + "additionalProperties": false, + "properties": { + "browserProcess": { + "type": "boolean" + }, + "cache": { + "type": "boolean" + }, + "context": { + "type": "boolean" + }, + "navigation": { + "type": "boolean" + }, + "profile": { + "type": "boolean" + }, + "serverState": { + "type": "boolean" + }, + "serviceWorkers": { + "type": "boolean" + }, + "storage": { + "type": "boolean" + } + }, + "required": [ + "browserProcess", + "context", + "profile", + "storage", + "cache", + "serviceWorkers", + "navigation", + "serverState" + ], + "type": "object" + }, + "mode": { + "enum": [ + "launch", + "attach", + "webdriver" + ], + "type": "string" + }, + "remote": { + "type": "boolean" + }, + "schemaVersion": { + "const": 1, + "type": "number" + }, + "targetId": { + "maxLength": 200, + "type": "string" + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "schemaVersion", + "browser", + "remote", + "url", + "title", + "viewport", + "isolated" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "tls": { + "enum": [ + "strict", + "allow-insecure-loopback" + ], + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 100, + "type": "array" + } + }, + "required": [ + "schemaVersion", + "id", + "projectRoot", + "url", + "status", + "createdAt", + "artifactDir", + "target", + "projectCapabilities", + "runtimeCapabilities", + "warnings" + ], + "type": "object" + }, + { + "items": { + "additionalProperties": false, + "properties": { + "artifactDir": { + "maxLength": 4096, + "type": "string" + }, + "artifactState": { + "enum": [ + "retained", + "deleted" + ], + "type": "string" + }, + "authFixture": { + "enum": [ + "seeded-disposable", + "none" + ], + "type": "string" + }, + "createdAt": { + "maxLength": 100, + "type": "string" + }, + "id": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "projectCapabilities": { + "additionalProperties": false, + "properties": { + "angular": { + "type": "boolean" + }, + "browserTarget": { + "type": "boolean" + }, + "next": { + "type": "boolean" + }, + "react": { + "type": "boolean" + }, + "serverRuntime": { + "type": "boolean" + }, + "vite": { + "type": "boolean" + }, + "vue": { + "type": "boolean" + } + }, + "required": [ + "browserTarget", + "react", + "angular", + "vue", + "vite", + "next", + "serverRuntime" + ], + "type": "object" + }, + "projectRoot": { + "maxLength": 4096, + "type": "string" + }, + "runtimeCapabilities": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "accessibility": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "actions": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "authSeeding": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "console": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "dom": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "evaluation": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "javascriptDebugger": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "locators": { + "additionalProperties": false, + "properties": { + "css": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "semantic": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "css", + "semantic" + ], + "type": "object" + }, + "network": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "pageRuntimeEnrichment": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "schemaVersion": { + "const": 2, + "type": "number" + }, + "screenshots": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "tlsBypass": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "transport": { + "enum": [ + "chromium-launch", + "chromium-cdp-attach", + "safari-webdriver" + ], + "type": "string" + }, + "viewportMatrix": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + }, + "webmcp": { + "additionalProperties": false, + "properties": { + "provenance": { + "items": { + "enum": [ + "playwright", + "chromium-cdp", + "safari-webdriver", + "safari-bidi", + "performance-resource-timing", + "session-policy", + "webmcp-page-api" + ], + "type": "string" + }, + "maxItems": 2, + "type": "array" + }, + "reason": { + "maxLength": 500, + "type": "string" + }, + "state": { + "enum": [ + "supported", + "degraded", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "state", + "provenance" + ], + "type": "object" + } + }, + "required": [ + "schemaVersion", + "browser", + "transport", + "actions", + "locators", + "dom", + "console", + "network", + "screenshots", + "javascriptDebugger", + "evaluation", + "accessibility", + "pageRuntimeEnrichment", + "viewportMatrix", + "tlsBypass", + "authSeeding", + "webmcp" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "schemaVersion": { + "const": 3, + "type": "number" + }, + "status": { + "enum": [ + "starting", + "ready", + "paused", + "failed", + "closed" + ], + "type": "string" + }, + "target": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "browser": { + "enum": [ + "chromium", + "safari" + ], + "type": "string" + }, + "isolated": { + "type": "boolean" + }, + "isolation": { + "additionalProperties": false, + "properties": { + "browserProcess": { + "type": "boolean" + }, + "cache": { + "type": "boolean" + }, + "context": { + "type": "boolean" + }, + "navigation": { + "type": "boolean" + }, + "profile": { + "type": "boolean" + }, + "serverState": { + "type": "boolean" + }, + "serviceWorkers": { + "type": "boolean" + }, + "storage": { + "type": "boolean" + } + }, + "required": [ + "browserProcess", + "context", + "profile", + "storage", + "cache", + "serviceWorkers", + "navigation", + "serverState" + ], + "type": "object" + }, + "mode": { + "enum": [ + "launch", + "attach", + "webdriver" + ], + "type": "string" + }, + "remote": { + "type": "boolean" + }, + "schemaVersion": { + "const": 1, + "type": "number" + }, + "targetId": { + "maxLength": 200, + "type": "string" + }, + "title": { + "maxLength": 300, + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "viewport": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "height": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "width": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "width", + "height" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "schemaVersion", + "browser", + "remote", + "url", + "title", + "viewport", + "isolated" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "tls": { + "enum": [ + "strict", + "allow-insecure-loopback" + ], + "type": "string" + }, + "url": { + "maxLength": 2560, + "type": "string" + }, + "warnings": { + "items": { + "maxLength": 500, + "type": "string" + }, + "maxItems": 100, + "type": "array" + } + }, + "required": [ + "schemaVersion", + "id", + "projectRoot", + "url", + "status", + "createdAt", + "artifactDir", + "target", + "projectCapabilities", + "runtimeCapabilities", + "warnings" + ], + "type": "object" + }, + "maxItems": 8, + "type": "array" + } +] - changed
Output schema / properties / error / properties / details / allOfPrevious value: -[ - { - "$ref": "#/definitions/__schema1" - } -]New value: +[ + { + "$ref": "#/definitions/__schema0" + } +]
13 tool updates
v0.5.0-next.0- First observed
web_breakpoint_set - First observed
web_browser_action - First observed
web_debug_control - First observed
web_debug_evaluate - First observed
web_fix_verify - First observed
web_issue_capture - First observed
web_next_inspect - First observed
web_project_detect - First observed
web_replay_seek - First observed
web_repro_record - First observed
web_session_close - First observed
web_session_start - First observed
web_session_status
TDQS
Tools are largely distinct: session lifecycle, browser actions, reproduction recording/verification, and debugger control each occupy clear roles. The closest pairs are web_repro_record/web_fix_verify and web_browser_action/web_replay_seek, but their descriptions frame them as complementary rather than interchangeable.
All tools share the web_ prefix and snake_case, giving the set a recognizable identity. The pattern is mostly <area>_<action> (session_start, breakpoint_set, fix_verify), with a couple of noun-like entries such as web_browser_action and web_session_status that are still predictable in context.
13 tools is within the ideal range for a debugging server with multiple workflows (session management, reproduction, browser interaction, source inspection, live debugging). Every tool appears to add a distinct capability rather than duplicating another.
The surface covers the core debugging loop: start a session, act in the browser, record/verify reproductions, capture evidence, inspect Next.js, and control a paused debugger. Minor gaps exist, such as no explicit breakpoint removal or network/console inspection, but agents can work around them.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server to assist with JxBrowser development.
Live browser debugging for AI assistants — DOM, console, network via MCP.
MCP server for understanding Javascript internals from ECMAScript specification.
Hosted real Google Chrome MCP with per-user persistent state. Navigate, click, type, screenshot.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Chrome DevTools Protocol-based MCP server that enables AI coding assistants to control browsers for JavaScript debugging, reverse engineering, web scraping, and API debugging.1,2911Apache 2.0
- AlicenseNot gradedqualityCmaintenanceMCP server for browser debugging, inspection, and verification that streams console logs, network errors, and user actions into AI coding assistants.65AGPL 3.0
- FlicenseBqualityDmaintenanceA local MCP server that enables Codex to inspect and interact with Chrome tabs through the Chrome DevTools Protocol, primarily for collecting authorized Brightspace course materials into local folders.16-
- AlicenseNot gradedqualityBmaintenanceAn instrumented local browser daemon MCP server that lets coding agents verify UIs in one call, with console, network, layout, accessibility, and coverage checks, plus debugging tools. It provides named isolated sessions and a CLI+MCP duality for the same verbs.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/MarlonJD/web-debug-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server