CertScore.ai MCP Light
Server Details
Free website privacy scanner for pre-consent cookies, trackers, consent, policy, and HTTPS/TLS.
- Status
- Healthy
- Uptime
- 99.8% over 53 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- ergoveritas1-alt/certscore.ai
- GitHub Stars
- 0
TDQS
Scored across 4 tools
The tools generally map to distinct stages: launch/reuse a scan, poll status, read a summary bundle, and retrieve deeper report evidence. However, certscore_get_scan_bundle and certscore_get_report_evidence_page both surface findings, evidence, and downloads, so their boundary depends on carefully reading the dense descriptions.
All tools use the certscore_ prefix and snake_case, with get_* verbs for retrieval tools and scan_site as the clear action verb for scan initiation. The naming is predictable and consistent across the set.
Four tools are well-scoped for a lightweight privacy scan/report server: initiate/reuse, check status, get the main bundle, and retrieve exhaustive evidence. Each tool earns its place without an excessive surface.
The surface covers the core lifecycle from scan launch through status polling to summary and detailed evidence retrieval. Explicit list, cancel, or delete scan operations are absent, but these are minor gaps for the stated lightweight purpose.
Available Tools
4 toolscertscore_get_report_evidence_pageGet report evidence pageARead-onlyInspect
For a focused question, use section=consent, gpc, policy, tracking, transport or forms. This returns selected retained report sections plus shared scan, score, findings and coverage context. Preserve section on cursor continuation; unselected or not-returned fields are not evidence of absence. Use workpaper=tracking separately for the starting-page tracking inventory, privacy choices/notices and GPC evidence, with JSON and CSV downloads. Never combine section and workpaper. The workpaper selector also applies to every continuation request. Otherwise retrieve scan report display content as paginated JSON, without internal diagnostic JSON downloads. The response also offers a single-file full JSON download; private JSON download links expire after five minutes and need no OAuth header; use pagination if your host blocks file downloads. Repeated display records use reportContentRef JSON Pointers. Includes evidence tables, full-site page and resource inventories, all retained additional-page form fields, form snapshot download references, and retained limitations. Snapshot images are downloaded separately from the returned URLs, with OAuth bearer authentication for workspace scans. Available on OAuth and Light. Start with scanId; follow pagination.nextCursor until complete. Pages share a snapshot; restart if it changes. Each entry has a JSON Pointer path and value; oversized strings use numbered parts. Export completion is not complete observation coverage. Use the concise scan bundle for summaries; use this tool for exhaustive report evidence. No new scan is created.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | ||
| scanId | Yes | ||
| section | No | ||
| workpaper | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | Yes | |
| scanId | Yes | |
| entries | Yes | |
| section | No | |
| version | Yes | |
| coverage | Yes | |
| download | No | |
| snapshot | Yes | |
| reportUrl | Yes | |
| selection | No | |
| workpaper | No | |
| pagination | Yes | |
| reconstruction | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only carry the safety profile (readOnly, non-destructive), and the description adds substantial operational context beyond them: single-file JSON download, five-minute expiry on private download links, no OAuth header needed for those links, OAuth bearer auth required for snapshot images on workspace scans, snapshot stability across pages, cursor continuation rules, and the caveat 'Export completion is not complete observation coverage.' This is exactly the kind of behavioral disclosure structured fields cannot provide.
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 content is dense and front-loaded with the section/workpaper routing, but the actual purpose statement appears mid-block and the piece runs as a long undifferentiated wall of clauses with no bullets or grouping. Every sentence is arguably useful, yet the absence of structure makes it hard to scan for the one fact an agent needs at a given moment.
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?
An output schema exists, so return-value formatting needn't be explained, and the description instead covers the non-obvious operational facts specific to this complex tool: pagination termination, snapshot restart conditions, JSON Pointer references for repeated records, download link lifetime, and authentication mode per scan type. Nothing an agent needs to invoke it correctly is missing.
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 carry the burden, and it does: it enumerates the section enum values, explains workpaper=tracking and that it must not be combined with section, notes section must be preserved on cursor continuation, and says to 'Start with scanId' and 'follow pagination.nextCursor until complete.' The one gap is cursor mechanics (maxLength/format) left to the schema, but the semantic coverage is strong.
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 conveys the resource (retained report evidence sections plus shared scan/score/findings/coverage context) delivered as paginated JSON, and distinguishes itself from siblings by naming the 'concise scan bundle' for summaries and stating 'No new scan is created' (vs certscore_scan_site). The core purpose statement is buried mid-paragraph rather than front-loaded, but an agent can still separate this tool from its 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?
It gives explicit conditional routing: 'For a focused question, use section=consent, gpc, policy...', 'Use workpaper=tracking separately for the starting-page tracking inventory', a hard exclusion ('Never combine section and workpaper'), and a clear alternative ('Use the concise scan bundle for summaries; use this tool for exhaustive report evidence'). When-to-use, when-not, and the sibling alternative are all spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
certscore_get_scan_bundleGet scan bundleARead-onlyInspect
Main answer for a completed or completed-limited scan: canonical findings, next steps, supporting evidence, score, date/region, coverage and report URL. An existing scanId is enough; no new scan is created. The evidence index describes response delivery, never evidence absence. Optional next actions lead to deeper report tables, tracking workpapers and JSON/CSV exports. Use detail=evidence for request examples and policy candidates, including scans with no findings; detail=full adds bounded retained context. Preserve returned/total counts and omission metadata. Accept/Reject execution succeeded means a completed click and bounded observation; succeeded_with_confirmation additionally verifies the consent decision. Retained after-click facts remain distinct from registered decisions. Absent or failed capture remains explicitly limited. Use canonical findings for scoring effects. A later missing finding does not prove a fix. Results are automated public-web observations, not legal advice, certification, or a compliance determination.
| Name | Required | Description | Default |
|---|---|---|---|
| detail | No | Response detail. Defaults to summary; evidence and full opt into heavier retained context. | |
| scanId | Yes | Stable CertScore scan ID. | |
| maxBytes | No | Requested serialized structured response budget in bytes. The full profile defaults to 50000. MCP Light defaults to and applies a transport-safe 25000-byte ceiling; larger Light requests are clamped and reported in response metadata. | |
| maxFindings | No | Maximum compact findings to return. Defaults to 5 for summary and 20 otherwise. | |
| maxPreConsentRows | No | Maximum compact pre-consent inventory rows to return. Defaults to 20. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | |
| noGo | No | |
| type | Yes | |
| error | Yes | |
| links | No | |
| score | Yes | |
| detail | Yes | |
| domain | Yes | |
| scanId | Yes | |
| status | Yes | |
| timing | No | |
| summary | No | |
| coverage | No | |
| findings | Yes | |
| scanFrom | Yes | |
| createdAt | Yes | |
| reportUrl | Yes | |
| riskLevel | Yes | |
| startedAt | Yes | |
| disclaimer | Yes | |
| fullReport | No | |
| provenance | Yes | |
| scoreLabel | Yes | |
| completedAt | Yes | |
| gpcResponse | No | |
| mcpMetadata | Yes | |
| scoreStatus | Yes | |
| formsSummary | No | |
| scoreVersion | Yes | |
| scoreUpdatedAt | Yes | |
| evidenceSummary | No | |
| scanTimeSeconds | Yes | |
| findingsMetadata | Yes | |
| reviewNavigation | No | |
| scoreExplanation | No | |
| resultDisposition | No | |
| transportSecurity | Yes | |
| evidenceUrlTemplate | No | |
| privacyAuditSummary | No | |
| recommendedNextTool | Yes | |
| privacyAuditEvidence | No | |
| postAcceptObservation | No | |
| recommendedNextAction | Yes | |
| interpretationGuidance | Yes | |
| postRefusalObservation | No | |
| observationOnlyDisclaimer | Yes | |
| preConsentCookiesTrackers | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety profile (readOnlyHint true, destructive false, openWorld false), so the bar is lower, yet the description still adds real semantics: accept/reject execution states, the distinction between retained after-click facts and registered decisions, what explicit limitation means, and the disclaimer that results are automated observations rather than legal advice. 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?
The content is largely on-topic, but it reads as a run-on of fragmentary caveats ('Absent or failed capture remains explicitly limited.', 'A later missing finding does not prove a fix.') rather than a front-loaded structure. Several sentences would be better grouped under explicit headings, and the trailing legal disclaimer is boilerplate that dilutes the actionable 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?
An output schema exists, so return values need not be described, and the description instead covers invocation semantics, detail levels, execution-state interpretation, and limitation caveats — enough for an agent to call a complex bundle-retrieval tool correctly. Only the absence of explicit sibling routing keeps it from being fully 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 coverage is 100%, so 3 is the baseline, but the description adds meaning beyond the schema by explaining what detail=evidence actually yields (request examples, policy candidates, scans with no findings) and by instructing the caller to preserve returned/total counts and omission metadata. It does not restate the maxBytes clamping or maxFindings defaults that the schema already documents.
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?
States a concrete verb+resource: it returns the canonical bundle (findings, next steps, evidence, score, coverage, report URL) for an existing completed scan. It also distinguishes itself from certscore_scan_site by asserting 'An existing scanId is enough; no new scan is created.' The purpose is clear, though the dense enumeration of caveats pushes the core statement off the front.
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?
Gives conditional guidance for the detail modes ('Use detail=evidence for request examples and policy candidates, including scans with no findings; detail=full adds bounded retained context') and implicitly routes away from certscore_scan_site by noting no new scan is created. It never names a sibling tool explicitly or states when this tool should be skipped, so it stops short of full 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.
certscore_get_scan_statusGet scan statusARead-onlyIdempotentInspect
Returns lifecycle status for a stable CertScore scanId. Active responses include phase, heartbeat, estimated progress, retryAfterSeconds, and sometimes a bounded preliminary preConsentPreview. Terminal responses include completion status, CertScore score and risk metadata when available, coverage, persisted execution region and timestamps, report URL, and a next-action field. Preliminary observations are distinct from completed findings.
| Name | Required | Description | Default |
|---|---|---|---|
| scanId | Yes | Stable CertScore scan ID returned by certscore_scan_site. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | No | |
| noGo | No | |
| type | No | |
| error | Yes | |
| jobId | No | |
| links | No | |
| phase | No | |
| score | No | |
| domain | No | |
| scanId | No | |
| status | No | |
| scan_id | No | |
| stalled | No | |
| coverage | No | |
| scanFrom | No | |
| createdAt | No | |
| reportUrl | No | |
| riskLevel | No | |
| startedAt | No | |
| provenance | Yes | |
| scoreLabel | Yes | |
| completedAt | No | |
| gpcResponse | No | |
| scoreStatus | No | |
| formsSummary | No | |
| scoreVersion | No | |
| lastUpdatedAt | No | |
| phaseStartedAt | No | |
| scoreUpdatedAt | No | |
| lastHeartbeatAt | No | |
| progressPercent | No | |
| scanTimeSeconds | No | |
| scoreExplanation | No | |
| preConsentPreview | No | |
| resultDisposition | No | |
| retryAfterSeconds | No | |
| progressIsEstimate | No | |
| recommendedNextTool | Yes | |
| postAcceptObservation | No | |
| recommendedNextAction | Yes | |
| interpretationGuidance | Yes | |
| postRefusalObservation | No | |
| estimatedRemainingSeconds | No | |
| observationOnlyDisclaimer | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description adds real behavioral context beyond that: heartbeat and retryAfterSeconds signals, the bounded 'preliminary preConsentPreview', and the explicit warning that preliminary observations are distinct from completed findings.
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 core purpose is front-loaded in the first clause, but the bulk of the text is a long enumeration of response fields, which is partly redundant given an output schema exists. The clauses are dense and stacked, and the final sentence about preliminary vs completed findings is the only one that fully earns its place.
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 single-parameter polling tool with an output schema and full annotation coverage, the description supplies the key semantic distinction an agent needs (transient active state vs. terminal result, and that preliminary observations are not final findings). Minor gaps remain around polling cadence and error/expiry handling for an invalid or stale scanId.
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 100% and the single scanId parameter is fully documented in the schema as the value returned by certscore_scan_site. The description adds only the adjective 'stable', which hints at reuse across polling calls but adds little syntax or format meaning, so the baseline 3 applies.
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 ('Returns lifecycle status for a stable CertScore scanId') and enumerates what the status payload contains. It is clearly distinct from scan_site, get_scan_bundle, and get_report_evidence_page in kind, though it never explicitly names or routes away from those 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?
Usage is only implied: the split between 'active responses' and 'terminal responses' plus the presence of retryAfterSeconds and heartbeat fragments suggests a polling workflow, but the description never states when to call this versus the sibling report/bundle tools or when to stop polling. No explicit exclusions or prerequisites are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
certscore_scan_siteScan siteAInspect
Use for a user-requested website launch review, vendor assessment, cookie/tracker inventory, consent/GPC investigation or privacy-policy review. A public URL or domain is enough. Creates a privacy scan or reuses an eligible recent completed scan; default freshness=latest saves new-scan quota. Use refresh only for an explicitly requested fresh scan or post-fix recheck. Retain scanId, poll certscore_get_scan_status only while active at retryAfterSeconds, then read certscore_get_scan_bundle. A preliminary preConsentPreview is not final findings or totals. Coverage includes pre-consent storage, trackers, consent and CMP signals, privacy-policy disclosures, transport security and GDPR/ePrivacy or CCPA/CPRA review signals. Results are automated observations, not legal advice, certification, or a compliance determination. https://certscore.ai/developers/mcp.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public URL or domain to scan. | |
| scanFrom | No | Optional execution region for a newly queued scan: eu_de, eu_ie, california, or the service default when omitted. | |
| freshness | No | Scan freshness policy. latest allows eligible recent completed-result reuse when available; refresh requests a new scan. Defaults to latest. | |
| taskContext | No | Optional caller-declared purpose and integration ID/version for usage research. Only include questionSummary when the user knowingly agrees to share a brief non-sensitive question for product improvement; label user_wording or agent_paraphrase. Never include chat history, personal/account details, secrets or URLs. Omission does not affect scanning. |
Output Schema
| Name | Required | Description |
|---|---|---|
| noGo | No | |
| type | Yes | |
| error | Yes | |
| jobId | No | |
| links | No | |
| score | No | |
| domain | No | |
| scanId | No | |
| status | Yes | |
| coverage | No | |
| scanFrom | No | |
| createdAt | No | |
| reportUrl | No | |
| riskLevel | No | |
| startedAt | No | |
| provenance | Yes | |
| scoreLabel | Yes | |
| completedAt | No | |
| gpcResponse | No | |
| scoreStatus | No | |
| formsSummary | No | |
| scoreVersion | No | |
| scoreUpdatedAt | No | |
| scanTimeSeconds | No | |
| demoSubstitution | No | |
| scoreExplanation | No | |
| preConsentPreview | No | |
| resultDisposition | No | |
| recommendedNextTool | Yes | |
| postAcceptObservation | No | |
| recommendedNextAction | Yes | |
| interpretationGuidance | Yes | |
| postRefusalObservation | No | |
| observationOnlyDisclaimer | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations mark this as non-read-only, non-idempotent and open-world, and the description adds substantive context beyond them: scan creation versus reuse, quota consumption for fresh scans, an explicit warning that preConsentPreview is preliminary rather than final findings/totals, and a scope disclaimer that results are automated observations, not legal advice or a compliance determination.
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?
Front-loaded with the use case and the create-or-reuse behavior, then the workflow chain, then the scope/disclaimer. Dense and largely waste-free, but it runs long enough that the polling instructions and the legal disclaimer sit close to the tail rather than being sharply separated.
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 scan-initiation tool with an output schema, it covers the full lifecycle the caller must know: what it creates or reuses, how to poll, which sibling to read next, what the preliminary preview does and does not mean, and the limits of the findings. Nothing material is missing, and return-value details are correctly left to the output schema.
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 100%, so the baseline is 3 and the schema already carries parameter documentation. The description still adds decision-level meaning for 'freshness' (latest saves quota, refresh only for explicitly requested fresh scans or rechecks), which is more than a restatement, though scanFrom and taskContext get no treatment.
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 opens with a specific purpose set ('website launch review, vendor assessment, cookie/tracker inventory, consent/GPC investigation, privacy-policy review') and a concrete action: creates a privacy scan or reuses a recent completed one. It is clearly distinguished from siblings certscore_get_scan_status and certscore_get_scan_bundle, which it explicitly routes to rather than duplicates.
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?
It states exactly when to call it (user-requested review; a public URL/domain suffices) and when to choose the 'refresh' path versus the default 'latest' (only for an explicitly requested fresh scan or post-fix recheck). It also names the follow-up tools and the polling cadence (retryAfterSeconds), so the agent knows both entry and exit conditions.
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.
3 tool updates
- Changed
certscore_get_scan_bundle1 field changed- changed
Output schema / properties / formsSummary / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "afterAcceptCapture": { - "enum": [ - "retained", - "limited", - "unavailable" - ], - "type": "string" - }, - "afterAcceptObserved": { - "anyOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "type": "null" - } - ] - }, - "contractVersion": { - "const": "certscore.forms-summary.v1", - "type": "string" - }, - "preConsentCapture": { - "enum": [ - "complete", - "limited", - "unavailable" - ], - "type": "string" - }, - "preConsentObserved": { - "anyOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "type": "null" - } - ] - }, - "scope": { - "const": "starting_page_reportable_observations", - "type": "string" - }, - "totalObserved": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "contractVersion", - "scope", - "totalObserved", - "preConsentObserved", - "afterAcceptObserved", - "preConsentCapture", - "afterAcceptCapture" - ], - "type": "object" - }, - { - "type": "null" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "afterAcceptCapture": { + "enum": [ + "retained", + "limited", + "unavailable" + ], + "type": "string" + }, + "afterAcceptObserved": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "contractVersion": { + "const": "certscore.forms-summary.v1", + "type": "string" + }, + "countStatus": { + "enum": [ + "captured", + "limited", + "not_captured" + ], + "type": "string" + }, + "preConsentCapture": { + "enum": [ + "complete", + "limited", + "unavailable" + ], + "type": "string" + }, + "preConsentObserved": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "scope": { + "const": "starting_page_reportable_observations", + "type": "string" + }, + "totalObserved": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "contractVersion", + "scope", + "totalObserved", + "preConsentObserved", + "afterAcceptObserved", + "preConsentCapture", + "afterAcceptCapture" + ], + "type": "object" + }, + { + "type": "null" + } +]
- Changed
certscore_get_scan_status1 field changed- changed
Output schema / properties / formsSummary / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "afterAcceptCapture": { - "enum": [ - "retained", - "limited", - "unavailable" - ], - "type": "string" - }, - "afterAcceptObserved": { - "anyOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "type": "null" - } - ] - }, - "contractVersion": { - "const": "certscore.forms-summary.v1", - "type": "string" - }, - "preConsentCapture": { - "enum": [ - "complete", - "limited", - "unavailable" - ], - "type": "string" - }, - "preConsentObserved": { - "anyOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "type": "null" - } - ] - }, - "scope": { - "const": "starting_page_reportable_observations", - "type": "string" - }, - "totalObserved": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "contractVersion", - "scope", - "totalObserved", - "preConsentObserved", - "afterAcceptObserved", - "preConsentCapture", - "afterAcceptCapture" - ], - "type": "object" - }, - { - "type": "null" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "afterAcceptCapture": { + "enum": [ + "retained", + "limited", + "unavailable" + ], + "type": "string" + }, + "afterAcceptObserved": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "contractVersion": { + "const": "certscore.forms-summary.v1", + "type": "string" + }, + "countStatus": { + "enum": [ + "captured", + "limited", + "not_captured" + ], + "type": "string" + }, + "preConsentCapture": { + "enum": [ + "complete", + "limited", + "unavailable" + ], + "type": "string" + }, + "preConsentObserved": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "scope": { + "const": "starting_page_reportable_observations", + "type": "string" + }, + "totalObserved": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "contractVersion", + "scope", + "totalObserved", + "preConsentObserved", + "afterAcceptObserved", + "preConsentCapture", + "afterAcceptCapture" + ], + "type": "object" + }, + { + "type": "null" + } +]
- Changed
certscore_scan_site1 field changed- changed
Output schema / properties / formsSummary / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "afterAcceptCapture": { - "enum": [ - "retained", - "limited", - "unavailable" - ], - "type": "string" - }, - "afterAcceptObserved": { - "anyOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "type": "null" - } - ] - }, - "contractVersion": { - "const": "certscore.forms-summary.v1", - "type": "string" - }, - "preConsentCapture": { - "enum": [ - "complete", - "limited", - "unavailable" - ], - "type": "string" - }, - "preConsentObserved": { - "anyOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "type": "null" - } - ] - }, - "scope": { - "const": "starting_page_reportable_observations", - "type": "string" - }, - "totalObserved": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "contractVersion", - "scope", - "totalObserved", - "preConsentObserved", - "afterAcceptObserved", - "preConsentCapture", - "afterAcceptCapture" - ], - "type": "object" - }, - { - "type": "null" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "afterAcceptCapture": { + "enum": [ + "retained", + "limited", + "unavailable" + ], + "type": "string" + }, + "afterAcceptObserved": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "contractVersion": { + "const": "certscore.forms-summary.v1", + "type": "string" + }, + "countStatus": { + "enum": [ + "captured", + "limited", + "not_captured" + ], + "type": "string" + }, + "preConsentCapture": { + "enum": [ + "complete", + "limited", + "unavailable" + ], + "type": "string" + }, + "preConsentObserved": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "scope": { + "const": "starting_page_reportable_observations", + "type": "string" + }, + "totalObserved": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "contractVersion", + "scope", + "totalObserved", + "preConsentObserved", + "afterAcceptObserved", + "preConsentCapture", + "afterAcceptCapture" + ], + "type": "object" + }, + { + "type": "null" + } +]
3 tool updates
- Changed
certscore_get_scan_bundle7 fields changed- changed
Output schema / properties / findings / items / anyOfPrevious value: -[ - { - "additionalProperties": true, - "properties": { - "confidence": { - "enum": [ - "strong", - "good", - "moderate", - "weak", - "unknown" - ], - "type": "string" - }, - "criticality": { - "enum": [ - "critical", - "high", - "medium", - "low", - "info", - "unknown" - ], - "type": "string" - }, - "detail": { - "additionalProperties": true, - "properties": { - "caveats": { - "items": { - "type": "string" - }, - "type": "array" - }, - "recommendedReviewerQuestions": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "disclaimer": { - "type": "string" - }, - "evidence": { - "additionalProperties": false, - "properties": { - "authRequiredForExamples": { - "type": "boolean" - }, - "basis": { - "enum": [ - "runtime_observation", - "policy_surface_detection", - "accessibility_check", - "public_report_projection" - ], - "type": "string" - }, - "exampleCount": { - "minimum": 0, - "type": "integer" - }, - "examples": { - "items": { - "additionalProperties": false, - "properties": { - "documentUrl": { - "anyOf": [ - { - "maxLength": 2048, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "finalUrl": { - "anyOf": [ - { - "maxLength": 2048, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "frameUrl": { - "anyOf": [ - { - "maxLength": 2048, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "initiatorHost": { - "anyOf": [ - { - "maxLength": 253, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "initiatorType": { - "anyOf": [ - { - "maxLength": 80, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "initiatorUrl": { - "anyOf": [ - { - "maxLength": 2048, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "observedAtMs": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ] - }, - "pageContextId": { - "anyOf": [ - { - "maxLength": 120, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "phase": { - "type": [ - "string", - "null" - ] - }, - "projectionWarnings": { - "items": { - "maxLength": 120, - "type": "string" - }, - "maxItems": 12, - "type": "array" - }, - "rawObservedVendor": { - "anyOf": [ - { - "maxLength": 160, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "rawObservedVendorCategory": { - "anyOf": [ - { - "maxLength": 120, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "redirectChain": { - "items": { - "maxLength": 2048, - "type": "string" - }, - "maxItems": 10, - "type": "array" - }, - "registrableDomain": { - "type": [ - "string", - "null" - ] - }, - "relatedOrInitiatingVendor": { - "anyOf": [ - { - "maxLength": 160, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "requestUrl": { - "anyOf": [ - { - "maxLength": 2048, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "resolvedEndpointVendor": { - "anyOf": [ - { - "maxLength": 160, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "resolvedEndpointVendorCategory": { - "anyOf": [ - { - "maxLength": 120, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "resourceType": { - "anyOf": [ - { - "maxLength": 80, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "scannedPageUrl": { - "anyOf": [ - { - "maxLength": 2048, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "type": { - "enum": [ - "request", - "page", - "accessibility_check", - "policy_surface" - ], - "type": "string" - }, - "urlHost": { - "type": [ - "string", - "null" - ] - }, - "vendor": { - "type": [ - "string", - "null" - ] - }, - "vendorAttributionBasis": { - "anyOf": [ - { - "maxLength": 120, - "type": "string" - }, - { - "type": "null" - } - ] - } - }, - "required": [ - "type" - ], - "type": "object" - }, - "maxItems": 5, - "type": "array" - }, - "examplesAvailable": { - "minimum": 0, - "type": "integer" - }, - "examplesShown": { - "minimum": 0, - "type": "integer" - }, - "excerpt": { - "additionalProperties": false, - "properties": { - "evidenceUrl": { - "maxLength": 2048, - "type": "string" - }, - "excerpt": { - "type": "string" - }, - "isTruncated": { - "type": "boolean" - }, - "sourceUrl": { - "anyOf": [ - { - "maxLength": 2048, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "truncationMarker": { - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "excerpt", - "isTruncated", - "truncationMarker", - "sourceUrl", - "evidenceUrl" - ], - "type": "object" - }, - "hasConsentContext": { - "type": "boolean" - }, - "hasPolicyAnchor": { - "type": "boolean" - }, - "hasTimingAnchor": { - "type": "boolean" - }, - "hasVendorAnchor": { - "type": "boolean" - }, - "phase": { - "type": [ - "string", - "null" - ] - }, - "projectionWarnings": { - "items": { - "maxLength": 120, - "type": "string" - }, - "maxItems": 20, - "type": "array" - }, - "summary": { - "type": "string" - } - }, - "required": [ - "basis", - "summary", - "exampleCount", - "examplesShown" - ], - "type": "object" - }, - "id": { - "type": "string" - }, - "label": { - "type": "string" - }, - "links": { - "additionalProperties": true, - "properties": { - "docs": { - "type": "string" - }, - "findings": { - "type": "string" - }, - "latestDomainScan": { - "type": "string" - }, - "pulse": { - "type": "string" - }, - "report": { - "type": "string" - }, - "self": { - "type": "string" - }, - "status": { - "type": "string" - } - }, - "type": "object" - }, - "nextStep": { - "type": [ - "string", - "null" - ] - }, - "noGo": { - "$ref": "#/properties/noGo/anyOf/0" - }, - "plainEnglish": { - "type": "string" - }, - "resultDisposition": { - "$ref": "#/properties/resultDisposition/anyOf/0" - }, - "reviewLenses": { - "default": [], - "items": { - "type": "string" - }, - "type": "array" - }, - "scanId": { - "type": "string" - }, - "type": { - "const": "certscore_finding", - "type": "string" - } - }, - "required": [ - "type", - "id", - "scanId", - "label", - "criticality", - "confidence", - "plainEnglish", - "evidence" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "confidence": { - "$ref": "#/properties/findings/items/anyOf/0/properties/confidence" - }, - "criticality": { - "$ref": "#/properties/findings/items/anyOf/0/properties/criticality" - }, - "evidenceUrl": { - "anyOf": [ - { - "maxLength": 2048, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "id": { - "type": "string" - }, - "label": { - "type": "string" - }, - "nextStep": { - "type": "string" - }, - "plainEnglish": { - "type": "string" - }, - "type": { - "const": "certscore_finding", - "type": "string" - } - }, - "required": [ - "type", - "id", - "label", - "criticality", - "confidence", - "plainEnglish" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": true, + "properties": { + "confidence": { + "enum": [ + "strong", + "good", + "moderate", + "weak", + "unknown" + ], + "type": "string" + }, + "criticality": { + "enum": [ + "critical", + "high", + "medium", + "low", + "info", + "unknown" + ], + "type": "string" + }, + "detail": { + "additionalProperties": true, + "properties": { + "caveats": { + "items": { + "type": "string" + }, + "type": "array" + }, + "recommendedReviewerQuestions": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "disclaimer": { + "type": "string" + }, + "evidence": { + "additionalProperties": false, + "properties": { + "authRequiredForExamples": { + "type": "boolean" + }, + "basis": { + "enum": [ + "runtime_observation", + "policy_surface_detection", + "accessibility_check", + "public_report_projection" + ], + "type": "string" + }, + "exampleCount": { + "minimum": 0, + "type": "integer" + }, + "examples": { + "items": { + "additionalProperties": false, + "properties": { + "documentUrl": { + "anyOf": [ + { + "maxLength": 2048, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "finalUrl": { + "anyOf": [ + { + "maxLength": 2048, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "frameUrl": { + "anyOf": [ + { + "maxLength": 2048, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "initiatorHost": { + "anyOf": [ + { + "maxLength": 253, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "initiatorType": { + "anyOf": [ + { + "maxLength": 80, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "initiatorUrl": { + "anyOf": [ + { + "maxLength": 2048, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "observedAtMs": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "pageContextId": { + "anyOf": [ + { + "maxLength": 120, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "phase": { + "type": [ + "string", + "null" + ] + }, + "projectionWarnings": { + "items": { + "maxLength": 120, + "type": "string" + }, + "maxItems": 12, + "type": "array" + }, + "rawObservedVendor": { + "anyOf": [ + { + "maxLength": 160, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "rawObservedVendorCategory": { + "anyOf": [ + { + "maxLength": 120, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "redirectChain": { + "items": { + "maxLength": 2048, + "type": "string" + }, + "maxItems": 10, + "type": "array" + }, + "registrableDomain": { + "type": [ + "string", + "null" + ] + }, + "relatedOrInitiatingVendor": { + "anyOf": [ + { + "maxLength": 160, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "requestUrl": { + "anyOf": [ + { + "maxLength": 2048, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "resolvedEndpointVendor": { + "anyOf": [ + { + "maxLength": 160, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "resolvedEndpointVendorCategory": { + "anyOf": [ + { + "maxLength": 120, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "resourceType": { + "anyOf": [ + { + "maxLength": 80, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "scannedPageUrl": { + "anyOf": [ + { + "maxLength": 2048, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "type": { + "enum": [ + "request", + "page", + "accessibility_check", + "policy_surface" + ], + "type": "string" + }, + "urlHost": { + "type": [ + "string", + "null" + ] + }, + "vendor": { + "type": [ + "string", + "null" + ] + }, + "vendorAttributionBasis": { + "anyOf": [ + { + "maxLength": 120, + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "type" + ], + "type": "object" + }, + "maxItems": 5, + "type": "array" + }, + "examplesAvailable": { + "minimum": 0, + "type": "integer" + }, + "examplesShown": { + "minimum": 0, + "type": "integer" + }, + "excerpt": { + "additionalProperties": false, + "properties": { + "evidenceUrl": { + "maxLength": 2048, + "type": "string" + }, + "excerpt": { + "type": "string" + }, + "isTruncated": { + "type": "boolean" + }, + "sourceUrl": { + "anyOf": [ + { + "maxLength": 2048, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "truncationMarker": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "excerpt", + "isTruncated", + "truncationMarker", + "sourceUrl", + "evidenceUrl" + ], + "type": "object" + }, + "hasConsentContext": { + "type": "boolean" + }, + "hasPolicyAnchor": { + "type": "boolean" + }, + "hasTimingAnchor": { + "type": "boolean" + }, + "hasVendorAnchor": { + "type": "boolean" + }, + "phase": { + "type": [ + "string", + "null" + ] + }, + "projectionWarnings": { + "items": { + "maxLength": 120, + "type": "string" + }, + "maxItems": 20, + "type": "array" + }, + "summary": { + "type": "string" + } + }, + "required": [ + "basis", + "summary", + "exampleCount", + "examplesShown" + ], + "type": "object" + }, + "id": { + "type": "string" + }, + "label": { + "type": "string" + }, + "links": { + "additionalProperties": true, + "properties": { + "docs": { + "type": "string" + }, + "findings": { + "type": "string" + }, + "formsEvidence": { + "type": "string" + }, + "latestDomainScan": { + "type": "string" + }, + "pulse": { + "type": "string" + }, + "report": { + "type": "string" + }, + "self": { + "type": "string" + }, + "status": { + "type": "string" + } + }, + "type": "object" + }, + "nextStep": { + "type": [ + "string", + "null" + ] + }, + "noGo": { + "$ref": "#/properties/noGo/anyOf/0" + }, + "plainEnglish": { + "type": "string" + }, + "resultDisposition": { + "$ref": "#/properties/resultDisposition/anyOf/0" + }, + "reviewLenses": { + "default": [], + "items": { + "type": "string" + }, + "type": "array" + }, + "scanId": { + "type": "string" + }, + "type": { + "const": "certscore_finding", + "type": "string" + } + }, + "required": [ + "type", + "id", + "scanId", + "label", + "criticality", + "confidence", + "plainEnglish", + "evidence" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "confidence": { + "$ref": "#/properties/findings/items/anyOf/0/properties/confidence" + }, + "criticality": { + "$ref": "#/properties/findings/items/anyOf/0/properties/criticality" + }, + "evidenceUrl": { + "anyOf": [ + { + "maxLength": 2048, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "id": { + "type": "string" + }, + "label": { + "type": "string" + }, + "nextStep": { + "type": "string" + }, + "plainEnglish": { + "type": "string" + }, + "type": { + "const": "certscore_finding", + "type": "string" + } + }, + "required": [ + "type", + "id", + "label", + "criticality", + "confidence", + "plainEnglish" + ], + "type": "object" + } +] - added
Output schema / properties / formsSummaryAdded value: +{ + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "afterAcceptCapture": { + "enum": [ + "retained", + "limited", + "unavailable" + ], + "type": "string" + }, + "afterAcceptObserved": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "contractVersion": { + "const": "certscore.forms-summary.v1", + "type": "string" + }, + "preConsentCapture": { + "enum": [ + "complete", + "limited", + "unavailable" + ], + "type": "string" + }, + "preConsentObserved": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "scope": { + "const": "starting_page_reportable_observations", + "type": "string" + }, + "totalObserved": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "contractVersion", + "scope", + "totalObserved", + "preConsentObserved", + "afterAcceptObserved", + "preConsentCapture", + "afterAcceptCapture" + ], + "type": "object" + }, + { + "type": "null" + } + ] +} - added
Output schema / properties / fullReport / properties / formsSummaryAdded value: +{ + "anyOf": [ + { + "$ref": "#/properties/formsSummary/anyOf/0" + }, + { + "type": "null" + } + ] +} - added
Output schema / properties / fullReport / properties / scoreExplanationAdded value: +{ + "anyOf": [ + { + "$ref": "#/properties/scoreExplanation/anyOf/0" + }, + { + "type": "null" + } + ] +} - changed
Output schema / properties / reviewNavigation / properties / evidenceIndex / items / properties / key / enumPrevious value: -[ - "findings", - "tracking", - "privacy", - "gpc", - "accept", - "reject", - "transport", - "report" -]New value: +[ + "findings", + "tracking", + "privacy", + "gpc", + "accept", + "reject", + "forms", + "transport", + "report" +] - changed
Output schema / properties / reviewNavigation / properties / evidenceIndex / maxItemsPrevious value: -8New value: +9 - added
Output schema / properties / scoreExplanationAdded value: +{ + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "baseScore": { + "const": 100, + "type": "number" + }, + "contractVersion": { + "const": "certscore.score-explanation.v1", + "type": "string" + }, + "deductions": { + "items": { + "additionalProperties": false, + "properties": { + "deductionPoints": { + "exclusiveMinimum": 0, + "type": "integer" + }, + "family": { + "maxLength": 80, + "type": "string" + }, + "label": { + "maxLength": 160, + "type": "string" + }, + "rules": { + "items": { + "additionalProperties": false, + "properties": { + "decisionVerification": { + "enum": [ + "confirmed", + "unconfirmed", + "not_applicable", + "unknown" + ], + "type": "string" + }, + "findingIds": { + "items": { + "maxLength": 180, + "type": "string" + }, + "maxItems": 4, + "type": "array" + }, + "label": { + "maxLength": 160, + "type": "string" + }, + "policyDeductionPoints": { + "exclusiveMinimum": 0, + "type": "integer" + }, + "ruleId": { + "maxLength": 160, + "type": "string" + } + }, + "required": [ + "ruleId", + "label", + "policyDeductionPoints", + "findingIds", + "decisionVerification" + ], + "type": "object" + }, + "maxItems": 40, + "type": "array" + } + }, + "required": [ + "family", + "label", + "deductionPoints", + "rules" + ], + "type": "object" + }, + "maxItems": 16, + "type": "array" + }, + "policyVersion": { + "maxLength": 120, + "type": "string" + }, + "scope": { + "const": "starting_page_canonical_score", + "type": "string" + }, + "score": { + "maximum": 100, + "minimum": 0, + "type": "integer" + }, + "scoreFloor": { + "const": 0, + "type": "number" + }, + "scoreVersion": { + "maxLength": 120, + "type": "string" + }, + "totalPolicyDeductionPoints": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "contractVersion", + "scope", + "scoreVersion", + "policyVersion", + "baseScore", + "scoreFloor", + "score", + "totalPolicyDeductionPoints", + "deductions" + ], + "type": "object" + }, + { + "type": "null" + } + ] +}
- Changed
certscore_get_scan_status3 fields changed- added
Output schema / properties / formsSummaryAdded value: +{ + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "afterAcceptCapture": { + "enum": [ + "retained", + "limited", + "unavailable" + ], + "type": "string" + }, + "afterAcceptObserved": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "contractVersion": { + "const": "certscore.forms-summary.v1", + "type": "string" + }, + "preConsentCapture": { + "enum": [ + "complete", + "limited", + "unavailable" + ], + "type": "string" + }, + "preConsentObserved": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "scope": { + "const": "starting_page_reportable_observations", + "type": "string" + }, + "totalObserved": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "contractVersion", + "scope", + "totalObserved", + "preConsentObserved", + "afterAcceptObserved", + "preConsentCapture", + "afterAcceptCapture" + ], + "type": "object" + }, + { + "type": "null" + } + ] +} - added
Output schema / properties / links / properties / formsEvidenceAdded value: +{ + "type": "string" +} - added
Output schema / properties / scoreExplanationAdded value: +{ + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "baseScore": { + "const": 100, + "type": "number" + }, + "contractVersion": { + "const": "certscore.score-explanation.v1", + "type": "string" + }, + "deductions": { + "items": { + "additionalProperties": false, + "properties": { + "deductionPoints": { + "exclusiveMinimum": 0, + "type": "integer" + }, + "family": { + "maxLength": 80, + "type": "string" + }, + "label": { + "maxLength": 160, + "type": "string" + }, + "rules": { + "items": { + "additionalProperties": false, + "properties": { + "decisionVerification": { + "enum": [ + "confirmed", + "unconfirmed", + "not_applicable", + "unknown" + ], + "type": "string" + }, + "findingIds": { + "items": { + "maxLength": 180, + "type": "string" + }, + "maxItems": 4, + "type": "array" + }, + "label": { + "maxLength": 160, + "type": "string" + }, + "policyDeductionPoints": { + "exclusiveMinimum": 0, + "type": "integer" + }, + "ruleId": { + "maxLength": 160, + "type": "string" + } + }, + "required": [ + "ruleId", + "label", + "policyDeductionPoints", + "findingIds", + "decisionVerification" + ], + "type": "object" + }, + "maxItems": 40, + "type": "array" + } + }, + "required": [ + "family", + "label", + "deductionPoints", + "rules" + ], + "type": "object" + }, + "maxItems": 16, + "type": "array" + }, + "policyVersion": { + "maxLength": 120, + "type": "string" + }, + "scope": { + "const": "starting_page_canonical_score", + "type": "string" + }, + "score": { + "maximum": 100, + "minimum": 0, + "type": "integer" + }, + "scoreFloor": { + "const": 0, + "type": "number" + }, + "scoreVersion": { + "maxLength": 120, + "type": "string" + }, + "totalPolicyDeductionPoints": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "contractVersion", + "scope", + "scoreVersion", + "policyVersion", + "baseScore", + "scoreFloor", + "score", + "totalPolicyDeductionPoints", + "deductions" + ], + "type": "object" + }, + { + "type": "null" + } + ] +}
- Changed
certscore_scan_site3 fields changed- added
Output schema / properties / formsSummaryAdded value: +{ + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "afterAcceptCapture": { + "enum": [ + "retained", + "limited", + "unavailable" + ], + "type": "string" + }, + "afterAcceptObserved": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "contractVersion": { + "const": "certscore.forms-summary.v1", + "type": "string" + }, + "preConsentCapture": { + "enum": [ + "complete", + "limited", + "unavailable" + ], + "type": "string" + }, + "preConsentObserved": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "scope": { + "const": "starting_page_reportable_observations", + "type": "string" + }, + "totalObserved": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "contractVersion", + "scope", + "totalObserved", + "preConsentObserved", + "afterAcceptObserved", + "preConsentCapture", + "afterAcceptCapture" + ], + "type": "object" + }, + { + "type": "null" + } + ] +} - added
Output schema / properties / links / properties / formsEvidenceAdded value: +{ + "type": "string" +} - added
Output schema / properties / scoreExplanationAdded value: +{ + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "baseScore": { + "const": 100, + "type": "number" + }, + "contractVersion": { + "const": "certscore.score-explanation.v1", + "type": "string" + }, + "deductions": { + "items": { + "additionalProperties": false, + "properties": { + "deductionPoints": { + "exclusiveMinimum": 0, + "type": "integer" + }, + "family": { + "maxLength": 80, + "type": "string" + }, + "label": { + "maxLength": 160, + "type": "string" + }, + "rules": { + "items": { + "additionalProperties": false, + "properties": { + "decisionVerification": { + "enum": [ + "confirmed", + "unconfirmed", + "not_applicable", + "unknown" + ], + "type": "string" + }, + "findingIds": { + "items": { + "maxLength": 180, + "type": "string" + }, + "maxItems": 4, + "type": "array" + }, + "label": { + "maxLength": 160, + "type": "string" + }, + "policyDeductionPoints": { + "exclusiveMinimum": 0, + "type": "integer" + }, + "ruleId": { + "maxLength": 160, + "type": "string" + } + }, + "required": [ + "ruleId", + "label", + "policyDeductionPoints", + "findingIds", + "decisionVerification" + ], + "type": "object" + }, + "maxItems": 40, + "type": "array" + } + }, + "required": [ + "family", + "label", + "deductionPoints", + "rules" + ], + "type": "object" + }, + "maxItems": 16, + "type": "array" + }, + "policyVersion": { + "maxLength": 120, + "type": "string" + }, + "scope": { + "const": "starting_page_canonical_score", + "type": "string" + }, + "score": { + "maximum": 100, + "minimum": 0, + "type": "integer" + }, + "scoreFloor": { + "const": 0, + "type": "number" + }, + "scoreVersion": { + "maxLength": 120, + "type": "string" + }, + "totalPolicyDeductionPoints": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "contractVersion", + "scope", + "scoreVersion", + "policyVersion", + "baseScore", + "scoreFloor", + "score", + "totalPolicyDeductionPoints", + "deductions" + ], + "type": "object" + }, + { + "type": "null" + } + ] +}
3 tool updates
- Changed
certscore_get_report_evidence_page3 fields changed- added
Input schema / properties / sectionAdded value: +{ + "enum": [ + "consent", + "gpc", + "policy", + "tracking", + "transport", + "forms" + ], + "type": "string" +} - added
Output schema / properties / sectionAdded value: +{ + "enum": [ + "consent", + "gpc", + "policy", + "tracking", + "transport", + "forms" + ], + "type": "string" +} - added
Output schema / properties / selectionAdded value: +{ + "additionalProperties": false, + "properties": { + "fields": { + "items": { + "type": "string" + }, + "maxItems": 30, + "type": "array" + }, + "interpretation": { + "type": "string" + }, + "notReturnedFields": { + "items": { + "type": "string" + }, + "maxItems": 30, + "type": "array" + }, + "version": { + "const": "certscore.report-evidence-selection.v1", + "type": "string" + } + }, + "required": [ + "version", + "fields", + "notReturnedFields", + "interpretation" + ], + "type": "object" +}
- Changed
certscore_get_scan_bundle2 fields changed- added
Output schema / properties / reviewNavigationAdded value: +{ + "additionalProperties": false, + "properties": { + "baseline": { + "additionalProperties": false, + "properties": { + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "reportUrl": { + "type": [ + "string", + "null" + ] + }, + "scanFrom": { + "anyOf": [ + { + "enum": [ + "eu_de", + "eu_ie", + "california" + ], + "type": "string" + }, + { + "type": "null" + } + ] + }, + "scanId": { + "type": "string" + }, + "url": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "scanId", + "url", + "completedAt", + "scanFrom", + "reportUrl" + ], + "type": "object" + }, + "evidenceIndex": { + "items": { + "additionalProperties": false, + "properties": { + "delivery": { + "enum": [ + "included", + "omitted", + "not_returned" + ], + "type": "string" + }, + "key": { + "enum": [ + "findings", + "tracking", + "privacy", + "gpc", + "accept", + "reject", + "transport", + "report" + ], + "type": "string" + }, + "label": { + "type": "string" + }, + "retrieval": { + "additionalProperties": false, + "properties": { + "arguments": { + "additionalProperties": false, + "properties": { + "scanId": { + "type": "string" + }, + "section": { + "enum": [ + "consent", + "gpc", + "policy", + "tracking", + "transport", + "forms" + ], + "type": "string" + } + }, + "required": [ + "scanId", + "section" + ], + "type": "object" + }, + "createsScan": { + "const": false, + "type": "boolean" + }, + "tool": { + "const": "certscore_get_report_evidence_page", + "type": "string" + } + }, + "required": [ + "tool", + "arguments", + "createsScan" + ], + "type": "object" + }, + "returned": { + "minimum": 0, + "type": "integer" + }, + "total": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "key", + "label", + "delivery" + ], + "type": "object" + }, + "maxItems": 8, + "type": "array" + }, + "interpretation": { + "type": "string" + }, + "nextActions": { + "items": { + "additionalProperties": false, + "properties": { + "arguments": { + "additionalProperties": false, + "properties": { + "scanId": { + "type": "string" + }, + "workpaper": { + "const": "tracking", + "type": "string" + } + }, + "required": [ + "scanId" + ], + "type": "object" + }, + "createsScan": { + "const": false, + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "tool": { + "const": "certscore_get_report_evidence_page", + "type": "string" + } + }, + "required": [ + "tool", + "arguments", + "createsScan", + "reason" + ], + "type": "object" + }, + "maxItems": 2, + "type": "array" + }, + "optionalReview": { + "type": "string" + }, + "scope": { + "const": "returned_canonical_projection", + "type": "string" + }, + "version": { + "const": "certscore.mcp-review-navigation.v1", + "type": "string" + } + }, + "required": [ + "version", + "scope", + "baseline", + "evidenceIndex", + "nextActions", + "optionalReview", + "interpretation" + ], + "type": "object" +} - changed
Output schema / properties / scanFrom / anyOfPrevious value: -[ - { - "enum": [ - "eu_de", - "eu_ie", - "california" - ], - "type": "string" - }, - { - "type": "null" - } -]New value: +[ + { + "$ref": "#/properties/reviewNavigation/properties/baseline/properties/scanFrom/anyOf/0" + }, + { + "type": "null" + } +]
- Changed
certscore_scan_site2 fields changed- removed
Input schema / properties / maxWaitSecondsRemoved value: -{ - "description": "Deprecated compatibility field; accepted but ignored. The bounded preliminary-preview wait is controlled by CertScore and never waits for scan completion.", - "maximum": 45, - "minimum": 1, - "type": "integer" -} - removed
Input schema / properties / waitForCompletionRemoved value: -{ - "description": "Deprecated compatibility field; accepted but ignored. certscore_scan_site never waits for a new scan to finish, though MCP Light may briefly wait within a bounded preview window for preliminary pre-consent observations.", - "type": "boolean" -}
1 tool update
- Changed
certscore_get_scan_bundle5 fields changed- changed
Output schema / properties / privacyAuditEvidence / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "capturedAt": { - "$ref": "#/properties/privacyAuditSummary/properties/capturedAt" - }, - "collectionPointNoticeAssessment": { - "$ref": "#/properties/privacyAuditSummary/properties/collectionPointNoticeAssessment" - }, - "contractVersion": { - "$ref": "#/properties/privacyAuditSummary/properties/contractVersion" - }, - "controls": { - "items": { - "$ref": "#/properties/privacyAuditSummary/properties/controls/items" - }, - "maxItems": 12, - "type": "array" - }, - "documentUrl": { - "$ref": "#/properties/privacyAuditSummary/properties/controls/items/properties/sourceUrl" - }, - "negativeControlCoverage": { - "$ref": "#/properties/privacyAuditSummary/properties/negativeControlCoverage" - }, - "notices": { - "items": { - "additionalProperties": false, - "properties": { - "coverage": { - "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/coverage" - }, - "directlyLinkedFromScannedPage": { - "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/directlyLinkedFromScannedPage" - }, - "evidenceRef": { - "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/evidenceRef" - }, - "kind": { - "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/kind" - }, - "passages": { - "items": { - "additionalProperties": false, - "properties": { - "excerpt": { - "maxLength": 480, - "minLength": 1, - "type": "string" - }, - "topic": { - "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/topics/items" - } - }, - "required": [ - "topic", - "excerpt" - ], - "type": "object" - }, - "maxItems": 5, - "type": "array" - }, - "url": { - "$ref": "#/properties/privacyAuditSummary/properties/controls/items/properties/sourceUrl" - } - }, - "required": [ - "kind", - "url", - "evidenceRef", - "directlyLinkedFromScannedPage", - "coverage", - "passages" - ], - "type": "object" - }, - "maxItems": 4, - "type": "array" - }, - "passagePolicy": { - "const": "california_notice_passages.v1", - "type": "string" - }, - "scanId": { - "$ref": "#/properties/privacyAuditSummary/properties/scanId" - }, - "scoreEffect": { - "$ref": "#/properties/privacyAuditSummary/properties/scoreEffect" - }, - "sourceHash": { - "$ref": "#/properties/privacyAuditSummary/properties/sourceHash" - }, - "truncated": { - "type": "boolean" - }, - "verificationStatus": { - "$ref": "#/properties/privacyAuditSummary/properties/verificationStatus" - } - }, - "required": [ - "contractVersion", - "scanId", - "documentUrl", - "capturedAt", - "sourceHash", - "verificationStatus", - "scoreEffect", - "passagePolicy", - "controls", - "notices", - "negativeControlCoverage", - "collectionPointNoticeAssessment", - "truncated" - ], - "type": "object" - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "capturedAt": { + "$ref": "#/properties/privacyAuditSummary/properties/capturedAt" + }, + "collectionPointNoticeAssessment": { + "$ref": "#/properties/privacyAuditSummary/properties/collectionPointNoticeAssessment" + }, + "contractVersion": { + "const": "certscore.privacy-audit-evidence.v1", + "type": "string" + }, + "controls": { + "items": { + "$ref": "#/properties/privacyAuditSummary/properties/controls/items" + }, + "maxItems": 12, + "type": "array" + }, + "documentUrl": { + "$ref": "#/properties/privacyAuditSummary/properties/controls/items/properties/sourceUrl" + }, + "negativeControlCoverage": { + "$ref": "#/properties/privacyAuditSummary/properties/negativeControlCoverage" + }, + "notices": { + "items": { + "additionalProperties": false, + "properties": { + "coverage": { + "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/coverage" + }, + "directlyLinkedFromScannedPage": { + "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/directlyLinkedFromScannedPage" + }, + "evidenceRef": { + "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/evidenceRef" + }, + "kind": { + "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/kind" + }, + "passages": { + "items": { + "additionalProperties": false, + "properties": { + "excerpt": { + "maxLength": 480, + "minLength": 1, + "type": "string" + }, + "topic": { + "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/topics/items" + } + }, + "required": [ + "topic", + "excerpt" + ], + "type": "object" + }, + "maxItems": 5, + "type": "array" + }, + "url": { + "$ref": "#/properties/privacyAuditSummary/properties/controls/items/properties/sourceUrl" + } + }, + "required": [ + "kind", + "url", + "evidenceRef", + "directlyLinkedFromScannedPage", + "coverage", + "passages" + ], + "type": "object" + }, + "maxItems": 4, + "type": "array" + }, + "passagePolicy": { + "const": "california_notice_passages.v1", + "type": "string" + }, + "scanId": { + "$ref": "#/properties/privacyAuditSummary/properties/scanId" + }, + "scoreEffect": { + "$ref": "#/properties/privacyAuditSummary/properties/scoreEffect" + }, + "sourceHash": { + "$ref": "#/properties/privacyAuditSummary/properties/sourceHash" + }, + "truncated": { + "type": "boolean" + }, + "verificationStatus": { + "$ref": "#/properties/privacyAuditSummary/properties/verificationStatus" + } + }, + "required": [ + "scanId", + "documentUrl", + "capturedAt", + "sourceHash", + "verificationStatus", + "scoreEffect", + "passagePolicy", + "controls", + "notices", + "negativeControlCoverage", + "collectionPointNoticeAssessment", + "truncated", + "contractVersion" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "capturedAt": { + "$ref": "#/properties/privacyAuditSummary/properties/capturedAt" + }, + "collectionPointNoticeAssessment": { + "$ref": "#/properties/privacyAuditSummary/properties/collectionPointNoticeAssessment" + }, + "contractVersion": { + "const": "certscore.privacy-audit-evidence.v2", + "type": "string" + }, + "controlCandidates": { + "items": { + "$ref": "#/properties/privacyAuditSummary/properties/controlCandidates/items" + }, + "maxItems": 12, + "type": "array" + }, + "controls": { + "$ref": "#/properties/privacyAuditEvidence/anyOf/0/anyOf/0/properties/controls" + }, + "documentUrl": { + "$ref": "#/properties/privacyAuditSummary/properties/controls/items/properties/sourceUrl" + }, + "negativeControlCoverage": { + "$ref": "#/properties/privacyAuditSummary/properties/negativeControlCoverage" + }, + "notices": { + "$ref": "#/properties/privacyAuditEvidence/anyOf/0/anyOf/0/properties/notices" + }, + "passagePolicy": { + "$ref": "#/properties/privacyAuditEvidence/anyOf/0/anyOf/0/properties/passagePolicy" + }, + "scanId": { + "$ref": "#/properties/privacyAuditSummary/properties/scanId" + }, + "scoreEffect": { + "$ref": "#/properties/privacyAuditSummary/properties/scoreEffect" + }, + "sourceHash": { + "$ref": "#/properties/privacyAuditSummary/properties/sourceHash" + }, + "truncated": { + "$ref": "#/properties/privacyAuditEvidence/anyOf/0/anyOf/0/properties/truncated" + }, + "verificationStatus": { + "$ref": "#/properties/privacyAuditSummary/properties/verificationStatus" + } + }, + "required": [ + "scanId", + "documentUrl", + "capturedAt", + "sourceHash", + "verificationStatus", + "scoreEffect", + "passagePolicy", + "controls", + "notices", + "negativeControlCoverage", + "collectionPointNoticeAssessment", + "truncated", + "contractVersion", + "controlCandidates" + ], + "type": "object" + } + ] + }, + { + "type": "null" + } +] - removed
Output schema / properties / privacyAuditSummary / properties / contractVersion / constRemoved value: -"certscore.privacy-audit-evidence.v1" - added
Output schema / properties / privacyAuditSummary / properties / contractVersion / enumAdded value: +[ + "certscore.privacy-audit-evidence.v1", + "certscore.privacy-audit-evidence.v2" +] - added
Output schema / properties / privacyAuditSummary / properties / controlCandidatesAdded value: +{ + "items": { + "additionalProperties": false, + "properties": { + "destinationUrl": { + "$ref": "#/properties/privacyAuditSummary/properties/controls/items/properties/sourceUrl" + }, + "evidenceRef": { + "maxLength": 240, + "minLength": 1, + "type": "string" + }, + "kind": { + "$ref": "#/properties/privacyAuditSummary/properties/controls/items/properties/kind" + }, + "label": { + "maxLength": 200, + "minLength": 1, + "type": "string" + }, + "placement": { + "maxLength": 80, + "type": "string" + }, + "sourceUrl": { + "$ref": "#/properties/privacyAuditSummary/properties/controls/items/properties/sourceUrl" + }, + "verification": { + "enum": [ + "visibility_unverified", + "accessible_name_unverified" + ], + "type": "string" + } + }, + "required": [ + "kind", + "label", + "sourceUrl", + "destinationUrl", + "placement", + "evidenceRef", + "verification" + ], + "type": "object" + }, + "maxItems": 3, + "type": "array" +} - changed
Output schema / properties / privacyAuditSummary / requiredPrevious value: -[ - "contractVersion", - "scanId", - "capturedAt", - "sourceHash", - "verificationStatus", - "scoreEffect", - "negativeControlCoverage", - "collectionPointNoticeAssessment", - "retainedControlCount", - "retainedNoticeCount", - "controls", - "notices", - "truncated" -]New value: +[ + "scanId", + "capturedAt", + "sourceHash", + "verificationStatus", + "scoreEffect", + "negativeControlCoverage", + "collectionPointNoticeAssessment", + "contractVersion", + "retainedControlCount", + "retainedNoticeCount", + "controls", + "notices", + "truncated" +]
1 tool update
- Changed
certscore_get_scan_bundle2 fields changed- added
Output schema / properties / privacyAuditSummary / properties / controls / items / properties / accessibleNameSourceAdded value: +{ + "enum": [ + "aria_label", + "aria_labelledby", + "text", + "image_alt", + "svg_title", + "title" + ], + "type": "string" +} - added
Output schema / properties / privacyAuditSummary / properties / controls / items / properties / classificationProvenanceAdded value: +{ + "const": "privacy_surface_classifier.v1", + "type": "string" +}
2 tool updates
- Changed
certscore_get_report_evidence_page3 fields changed- added
Input schema / properties / workpaperAdded value: +{ + "const": "tracking", + "type": "string" +} - added
Output schema / properties / download / properties / csvUrlAdded value: +{ + "format": "uri", + "type": "string" +} - added
Output schema / properties / workpaperAdded value: +{ + "const": "tracking", + "type": "string" +}
- Changed
certscore_get_scan_bundle2 fields changed- added
Output schema / properties / privacyAuditEvidenceAdded value: +{ + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "capturedAt": { + "$ref": "#/properties/privacyAuditSummary/properties/capturedAt" + }, + "collectionPointNoticeAssessment": { + "$ref": "#/properties/privacyAuditSummary/properties/collectionPointNoticeAssessment" + }, + "contractVersion": { + "$ref": "#/properties/privacyAuditSummary/properties/contractVersion" + }, + "controls": { + "items": { + "$ref": "#/properties/privacyAuditSummary/properties/controls/items" + }, + "maxItems": 12, + "type": "array" + }, + "documentUrl": { + "$ref": "#/properties/privacyAuditSummary/properties/controls/items/properties/sourceUrl" + }, + "negativeControlCoverage": { + "$ref": "#/properties/privacyAuditSummary/properties/negativeControlCoverage" + }, + "notices": { + "items": { + "additionalProperties": false, + "properties": { + "coverage": { + "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/coverage" + }, + "directlyLinkedFromScannedPage": { + "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/directlyLinkedFromScannedPage" + }, + "evidenceRef": { + "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/evidenceRef" + }, + "kind": { + "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/kind" + }, + "passages": { + "items": { + "additionalProperties": false, + "properties": { + "excerpt": { + "maxLength": 480, + "minLength": 1, + "type": "string" + }, + "topic": { + "$ref": "#/properties/privacyAuditSummary/properties/notices/items/properties/topics/items" + } + }, + "required": [ + "topic", + "excerpt" + ], + "type": "object" + }, + "maxItems": 5, + "type": "array" + }, + "url": { + "$ref": "#/properties/privacyAuditSummary/properties/controls/items/properties/sourceUrl" + } + }, + "required": [ + "kind", + "url", + "evidenceRef", + "directlyLinkedFromScannedPage", + "coverage", + "passages" + ], + "type": "object" + }, + "maxItems": 4, + "type": "array" + }, + "passagePolicy": { + "const": "california_notice_passages.v1", + "type": "string" + }, + "scanId": { + "$ref": "#/properties/privacyAuditSummary/properties/scanId" + }, + "scoreEffect": { + "$ref": "#/properties/privacyAuditSummary/properties/scoreEffect" + }, + "sourceHash": { + "$ref": "#/properties/privacyAuditSummary/properties/sourceHash" + }, + "truncated": { + "type": "boolean" + }, + "verificationStatus": { + "$ref": "#/properties/privacyAuditSummary/properties/verificationStatus" + } + }, + "required": [ + "contractVersion", + "scanId", + "documentUrl", + "capturedAt", + "sourceHash", + "verificationStatus", + "scoreEffect", + "passagePolicy", + "controls", + "notices", + "negativeControlCoverage", + "collectionPointNoticeAssessment", + "truncated" + ], + "type": "object" + }, + { + "type": "null" + } + ] +} - added
Output schema / properties / privacyAuditSummaryAdded value: +{ + "additionalProperties": false, + "properties": { + "capturedAt": { + "format": "date-time", + "type": "string" + }, + "collectionPointNoticeAssessment": { + "const": "not_assessed", + "type": "string" + }, + "contractVersion": { + "const": "certscore.privacy-audit-evidence.v1", + "type": "string" + }, + "controls": { + "items": { + "additionalProperties": false, + "properties": { + "destinationUrl": { + "anyOf": [ + { + "$ref": "#/properties/privacyAuditSummary/properties/controls/items/properties/sourceUrl" + }, + { + "type": "null" + } + ] + }, + "evidenceRef": { + "maxLength": 240, + "minLength": 1, + "type": "string" + }, + "interaction": { + "const": "not_tested", + "type": "string" + }, + "kind": { + "enum": [ + "do_not_sell_or_share", + "your_privacy_choices", + "cookie_settings" + ], + "type": "string" + }, + "label": { + "maxLength": 200, + "type": "string" + }, + "placement": { + "maxLength": 80, + "type": "string" + }, + "retrieval": { + "enum": [ + "not_attempted", + "fetched", + "failed", + "skipped_budget" + ], + "type": "string" + }, + "sourceUrl": { + "format": "uri", + "maxLength": 800, + "type": "string" + } + }, + "required": [ + "kind", + "label", + "sourceUrl", + "destinationUrl", + "placement", + "evidenceRef", + "retrieval", + "interaction" + ], + "type": "object" + }, + "maxItems": 3, + "type": "array" + }, + "negativeControlCoverage": { + "const": "not_verified", + "type": "string" + }, + "notices": { + "items": { + "additionalProperties": false, + "properties": { + "coverage": { + "enum": [ + "complete", + "partial" + ], + "type": "string" + }, + "directlyLinkedFromScannedPage": { + "type": "boolean" + }, + "evidenceRef": { + "maxLength": 240, + "minLength": 1, + "type": "string" + }, + "kind": { + "enum": [ + "privacy_policy", + "california_notice", + "notice_at_collection" + ], + "type": "string" + }, + "topics": { + "items": { + "enum": [ + "sale_sharing", + "collection_purposes", + "retention", + "privacy_rights", + "opt_out_methods" + ], + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "url": { + "$ref": "#/properties/privacyAuditSummary/properties/controls/items/properties/sourceUrl" + } + }, + "required": [ + "kind", + "url", + "evidenceRef", + "directlyLinkedFromScannedPage", + "coverage", + "topics" + ], + "type": "object" + }, + "maxItems": 2, + "type": "array" + }, + "retainedControlCount": { + "minimum": 0, + "type": "integer" + }, + "retainedNoticeCount": { + "minimum": 0, + "type": "integer" + }, + "scanId": { + "minLength": 1, + "type": "string" + }, + "scoreEffect": { + "const": "none", + "type": "string" + }, + "sourceHash": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "truncated": { + "type": "boolean" + }, + "verificationStatus": { + "const": "verified", + "type": "string" + } + }, + "required": [ + "contractVersion", + "scanId", + "capturedAt", + "sourceHash", + "verificationStatus", + "scoreEffect", + "negativeControlCoverage", + "collectionPointNoticeAssessment", + "retainedControlCount", + "retainedNoticeCount", + "controls", + "notices", + "truncated" + ], + "type": "object" +}
3 tool updates
- Changed
certscore_get_scan_bundle1 field changed- changed
Output schema / properties / gpcResponse / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "californiaPolicy": { - "additionalProperties": false, - "properties": { - "applied": { - "type": "boolean" - }, - "deductionPoints": { - "enum": [ - 0, - 15 - ], - "type": "number" - } - }, - "required": [ - "applied", - "deductionPoints" - ], - "type": "object" - }, - "comparison": { - "additionalProperties": false, - "properties": { - "baselineArtifact": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "lane": { - "const": "runtime_evidence", - "type": "string" - }, - "sha256": { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - "sizeBytes": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "lane", - "sha256", - "sizeBytes" - ], - "type": "object" - }, - { - "type": "null" - } - ] - }, - "comparable": { - "type": "boolean" - }, - "coverage": { - "additionalProperties": false, - "properties": { - "comparedThroughMs": { - "anyOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "type": "null" - } - ] - }, - "status": { - "enum": [ - "complete", - "limited", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "status", - "comparedThroughMs" - ], - "type": "object" - }, - "delivery": { - "additionalProperties": false, - "properties": { - "status": { - "enum": [ - "verified", - "limited", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "status" - ], - "type": "object" - }, - "deltas": { - "additionalProperties": false, - "properties": { - "advertisingOrMarketingActivity": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - }, - "advertisingOrMeasurementActivity": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - }, - "consentOrCmpBehavior": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - }, - "cookies": { - "additionalProperties": false, - "properties": { - "baselineCount": { - "minimum": 0, - "type": "integer" - }, - "baselineOnly": { - "items": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "baselineOnlyCount": { - "minimum": 0, - "type": "integer" - }, - "countDelta": { - "type": "integer" - }, - "gpcCount": { - "minimum": 0, - "type": "integer" - }, - "gpcOnly": { - "items": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "gpcOnlyCount": { - "minimum": 0, - "type": "integer" - }, - "samplesTruncated": { - "type": "boolean" - }, - "shared": { - "items": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "sharedCount": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "baselineCount", - "gpcCount", - "countDelta", - "baselineOnly", - "gpcOnly", - "shared" - ], - "type": "object" - }, - "trackers": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - }, - "webStorage": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - } - }, - "required": [ - "cookies", - "trackers", - "advertisingOrMeasurementActivity", - "consentOrCmpBehavior" - ], - "type": "object" - }, - "enabledProof": { - "additionalProperties": false, - "properties": { - "navigatorGlobalPrivacyControl": { - "type": [ - "boolean", - "null" - ] - }, - "requestEventIds": { - "items": { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "requestsWithSecGpc": { - "minimum": 0, - "type": "integer" - }, - "secGpcHeaderValue": { - "anyOf": [ - { - "const": "1", - "type": "string" - }, - { - "type": "null" - } - ] - } - }, - "required": [ - "secGpcHeaderValue", - "requestsWithSecGpc", - "requestEventIds", - "navigatorGlobalPrivacyControl" - ], - "type": "object" - }, - "gpcArtifact": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "lane": { - "const": "gpc_observation", - "type": "string" - }, - "sha256": { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - "sizeBytes": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "lane", - "sha256", - "sizeBytes" - ], - "type": "object" - }, - { - "type": "null" - } - ] - }, - "limitationKeys": { - "items": { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "protocol": { - "const": "passive_baseline_with_sec_gpc", - "type": "string" - }, - "responseBasis": { - "enum": [ - "qualified_activity_reduction", - "no_qualified_reduction", - "insufficient_evidence" - ], - "type": "string" - } - }, - "required": [ - "comparable", - "protocol", - "baselineArtifact", - "gpcArtifact", - "enabledProof", - "deltas", - "limitationKeys" - ], - "type": "object" - }, - "contractVersion": { - "enum": [ - "certscore.gpc-response-assessment.v1", - "certscore.gpc-response-assessment.v2", - "certscore.gpc-response-assessment.v3" - ], - "type": "string" - }, - "evidenceUrl": { - "format": "uri", - "type": "string" - }, - "findingTitle": { - "enum": [ - "GPC response", - "No observable GPC response" - ], - "type": "string" - }, - "legalInterpretation": { - "const": "not_assessed", - "type": "string" - }, - "observation": { - "additionalProperties": false, - "properties": { - "acknowledgment": { - "additionalProperties": false, - "properties": { - "captureComplete": { - "type": "boolean" - }, - "observed": { - "type": "boolean" - } - }, - "required": [ - "observed", - "captureComplete" - ], - "type": "object" - }, - "contractVersion": { - "const": "certscore.gpc-bounded-observation.v1", - "type": "string" - }, - "delivery": { - "additionalProperties": false, - "properties": { - "fullContextVerified": { - "type": "boolean" - }, - "httpHeaderRetained": { - "type": "boolean" - }, - "mainNavigatorReadbackRetained": { - "type": "boolean" - } - }, - "required": [ - "httpHeaderRetained", - "mainNavigatorReadbackRetained", - "fullContextVerified" - ], - "type": "object" - }, - "documentUrlSha256": { - "anyOf": [ - { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - { - "type": "null" - } - ] - }, - "legalInterpretation": { - "const": "not_assessed", - "type": "string" - }, - "limitationKeys": { - "items": { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - "maxItems": 32, - "type": "array" - }, - "registration": { - "additionalProperties": false, - "properties": { - "basis": { - "const": "current_recorded_state", - "type": "string" - }, - "causedByGpc": { - "const": "not_established", - "type": "string" - }, - "cmpGpcSignal": { - "enum": [ - "received", - "not_received", - "unknown" - ], - "type": "string" - }, - "sale": { - "enum": [ - "opted_out", - "not_opted_out", - "unknown" - ], - "type": "string" - }, - "sharing": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/registration/properties/sale" - } - }, - "required": [ - "basis", - "sale", - "sharing", - "cmpGpcSignal", - "causedByGpc" - ], - "type": "object" - }, - "requests": { - "additionalProperties": false, - "properties": { - "blockedBeforeTransmissionCount": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - "classifiedCount": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - "collectionCount": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - "complete": { - "type": "boolean" - }, - "count": { - "minimum": 0, - "type": "integer" - }, - "documentCommittedAtMs": { - "anyOf": [ - { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - { - "type": "null" - } - ] - }, - "evidenceIds": { - "items": { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "fromMs": { - "anyOf": [ - { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - { - "type": "null" - } - ] - }, - "samplesTruncated": { - "type": "boolean" - }, - "throughMs": { - "anyOf": [ - { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - { - "type": "null" - } - ] - } - }, - "required": [ - "count", - "blockedBeforeTransmissionCount", - "complete", - "fromMs", - "documentCommittedAtMs", - "throughMs", - "classifiedCount", - "collectionCount", - "evidenceIds", - "samplesTruncated" - ], - "type": "object" - }, - "scope": { - "const": "main_document_and_retained_http_requests", - "type": "string" - }, - "scoreEffect": { - "const": "none", - "type": "string" - }, - "semanticProbe": { - "enum": [ - "observed", - "unsupported", - "unavailable", - "not_ready", - "invalid", - "incomplete" - ], - "type": "string" - }, - "sessionSha256": { - "anyOf": [ - { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - { - "type": "null" - } - ] - }, - "sourceSha256": { - "anyOf": [ - { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - { - "type": "null" - } - ] - }, - "status": { - "enum": [ - "complete", - "limited", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "contractVersion", - "scope", - "status", - "sourceSha256", - "sessionSha256", - "documentUrlSha256", - "delivery", - "semanticProbe", - "registration", - "acknowledgment", - "requests", - "limitationKeys", - "scoreEffect", - "legalInterpretation" - ], - "type": "object" - }, - "scoreEffect": { - "const": "none", - "type": "string" - }, - "status": { - "enum": [ - "responsive", - "no_observable_response", - "indeterminate" - ], - "type": "string" - }, - "summary": { - "maxLength": 2000, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "status", - "findingTitle", - "summary", - "scoreEffect", - "legalInterpretation", - "comparison", - "californiaPolicy", - "evidenceUrl" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "activityComparison": { + "additionalProperties": false, + "properties": { + "activity": { + "additionalProperties": false, + "properties": { + "advertisingMarketing": { + "additionalProperties": false, + "properties": { + "baselineRequests": { + "maximum": 5000, + "minimum": 0, + "type": "integer" + }, + "baselineServices": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/activityComparison/properties/activity/properties/advertisingMarketing/properties/baselineRequests" + }, + "gpcRequests": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/activityComparison/properties/activity/properties/advertisingMarketing/properties/baselineRequests" + }, + "gpcServices": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/activityComparison/properties/activity/properties/advertisingMarketing/properties/baselineRequests" + } + }, + "required": [ + "baselineRequests", + "gpcRequests", + "baselineServices", + "gpcServices" + ], + "type": "object" + }, + "analyticsReplay": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/activityComparison/properties/activity/properties/advertisingMarketing" + } + }, + "required": [ + "advertisingMarketing", + "analyticsReplay" + ], + "type": "object" + }, + "causedByGpc": { + "const": "not_established", + "type": "string" + }, + "contractVersion": { + "const": "certscore.gpc-activity-comparison.v1", + "type": "string" + }, + "durationMs": { + "enum": [ + 250, + 500, + 1000 + ], + "type": "number" + }, + "scanId": { + "maxLength": 200, + "minLength": 1, + "type": "string" + }, + "scope": { + "const": "matched_post_commit_request_window", + "type": "string" + }, + "scoreEffect": { + "const": "none", + "type": "string" + }, + "sourceHashes": { + "additionalProperties": false, + "properties": { + "baseline": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "gpc": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + } + }, + "required": [ + "baseline", + "gpc" + ], + "type": "object" + }, + "status": { + "const": "measured", + "type": "string" + } + }, + "required": [ + "contractVersion", + "scanId", + "status", + "scope", + "durationMs", + "sourceHashes", + "activity", + "scoreEffect", + "causedByGpc" + ], + "type": "object" + }, + "californiaPolicy": { + "additionalProperties": false, + "properties": { + "applied": { + "type": "boolean" + }, + "deductionPoints": { + "enum": [ + 0, + 15 + ], + "type": "number" + } + }, + "required": [ + "applied", + "deductionPoints" + ], + "type": "object" + }, + "comparison": { + "additionalProperties": false, + "properties": { + "baselineArtifact": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "lane": { + "const": "runtime_evidence", + "type": "string" + }, + "sha256": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "sizeBytes": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "lane", + "sha256", + "sizeBytes" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "comparable": { + "type": "boolean" + }, + "coverage": { + "additionalProperties": false, + "properties": { + "comparedThroughMs": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "status": { + "enum": [ + "complete", + "limited", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "status", + "comparedThroughMs" + ], + "type": "object" + }, + "delivery": { + "additionalProperties": false, + "properties": { + "status": { + "enum": [ + "verified", + "limited", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" + }, + "deltas": { + "additionalProperties": false, + "properties": { + "advertisingOrMarketingActivity": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + }, + "advertisingOrMeasurementActivity": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + }, + "consentOrCmpBehavior": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + }, + "cookies": { + "additionalProperties": false, + "properties": { + "baselineCount": { + "minimum": 0, + "type": "integer" + }, + "baselineOnly": { + "items": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "baselineOnlyCount": { + "minimum": 0, + "type": "integer" + }, + "countDelta": { + "type": "integer" + }, + "gpcCount": { + "minimum": 0, + "type": "integer" + }, + "gpcOnly": { + "items": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "gpcOnlyCount": { + "minimum": 0, + "type": "integer" + }, + "samplesTruncated": { + "type": "boolean" + }, + "shared": { + "items": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "sharedCount": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "baselineCount", + "gpcCount", + "countDelta", + "baselineOnly", + "gpcOnly", + "shared" + ], + "type": "object" + }, + "trackers": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + }, + "webStorage": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + } + }, + "required": [ + "cookies", + "trackers", + "advertisingOrMeasurementActivity", + "consentOrCmpBehavior" + ], + "type": "object" + }, + "enabledProof": { + "additionalProperties": false, + "properties": { + "navigatorGlobalPrivacyControl": { + "type": [ + "boolean", + "null" + ] + }, + "requestEventIds": { + "items": { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "requestsWithSecGpc": { + "minimum": 0, + "type": "integer" + }, + "secGpcHeaderValue": { + "anyOf": [ + { + "const": "1", + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "secGpcHeaderValue", + "requestsWithSecGpc", + "requestEventIds", + "navigatorGlobalPrivacyControl" + ], + "type": "object" + }, + "gpcArtifact": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "lane": { + "const": "gpc_observation", + "type": "string" + }, + "sha256": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "sizeBytes": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "lane", + "sha256", + "sizeBytes" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "limitationKeys": { + "items": { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "protocol": { + "const": "passive_baseline_with_sec_gpc", + "type": "string" + }, + "responseBasis": { + "enum": [ + "qualified_activity_reduction", + "no_qualified_reduction", + "insufficient_evidence" + ], + "type": "string" + } + }, + "required": [ + "comparable", + "protocol", + "baselineArtifact", + "gpcArtifact", + "enabledProof", + "deltas", + "limitationKeys" + ], + "type": "object" + }, + "contractVersion": { + "enum": [ + "certscore.gpc-response-assessment.v1", + "certscore.gpc-response-assessment.v2", + "certscore.gpc-response-assessment.v3" + ], + "type": "string" + }, + "evidenceUrl": { + "format": "uri", + "type": "string" + }, + "findingTitle": { + "enum": [ + "GPC response", + "No observable GPC response" + ], + "type": "string" + }, + "legalInterpretation": { + "const": "not_assessed", + "type": "string" + }, + "observation": { + "additionalProperties": false, + "properties": { + "acknowledgment": { + "additionalProperties": false, + "properties": { + "captureComplete": { + "type": "boolean" + }, + "observed": { + "type": "boolean" + } + }, + "required": [ + "observed", + "captureComplete" + ], + "type": "object" + }, + "contractVersion": { + "const": "certscore.gpc-bounded-observation.v1", + "type": "string" + }, + "delivery": { + "additionalProperties": false, + "properties": { + "fullContextVerified": { + "type": "boolean" + }, + "httpHeaderRetained": { + "type": "boolean" + }, + "mainNavigatorReadbackRetained": { + "type": "boolean" + } + }, + "required": [ + "httpHeaderRetained", + "mainNavigatorReadbackRetained", + "fullContextVerified" + ], + "type": "object" + }, + "documentUrlSha256": { + "anyOf": [ + { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "legalInterpretation": { + "const": "not_assessed", + "type": "string" + }, + "limitationKeys": { + "items": { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + "maxItems": 32, + "type": "array" + }, + "registration": { + "additionalProperties": false, + "properties": { + "basis": { + "const": "current_recorded_state", + "type": "string" + }, + "causedByGpc": { + "const": "not_established", + "type": "string" + }, + "cmpGpcSignal": { + "enum": [ + "received", + "not_received", + "unknown" + ], + "type": "string" + }, + "sale": { + "enum": [ + "opted_out", + "not_opted_out", + "unknown" + ], + "type": "string" + }, + "sharing": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/registration/properties/sale" + } + }, + "required": [ + "basis", + "sale", + "sharing", + "cmpGpcSignal", + "causedByGpc" + ], + "type": "object" + }, + "requests": { + "additionalProperties": false, + "properties": { + "blockedBeforeTransmissionCount": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + "classifiedCount": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + "collectionCount": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + "complete": { + "type": "boolean" + }, + "count": { + "minimum": 0, + "type": "integer" + }, + "documentCommittedAtMs": { + "anyOf": [ + { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + { + "type": "null" + } + ] + }, + "evidenceIds": { + "items": { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "fromMs": { + "anyOf": [ + { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + { + "type": "null" + } + ] + }, + "samplesTruncated": { + "type": "boolean" + }, + "throughMs": { + "anyOf": [ + { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "count", + "blockedBeforeTransmissionCount", + "complete", + "fromMs", + "documentCommittedAtMs", + "throughMs", + "classifiedCount", + "collectionCount", + "evidenceIds", + "samplesTruncated" + ], + "type": "object" + }, + "scope": { + "const": "main_document_and_retained_http_requests", + "type": "string" + }, + "scoreEffect": { + "const": "none", + "type": "string" + }, + "semanticProbe": { + "enum": [ + "observed", + "unsupported", + "unavailable", + "not_ready", + "invalid", + "incomplete" + ], + "type": "string" + }, + "sessionSha256": { + "anyOf": [ + { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "sourceSha256": { + "anyOf": [ + { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "status": { + "enum": [ + "complete", + "limited", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "contractVersion", + "scope", + "status", + "sourceSha256", + "sessionSha256", + "documentUrlSha256", + "delivery", + "semanticProbe", + "registration", + "acknowledgment", + "requests", + "limitationKeys", + "scoreEffect", + "legalInterpretation" + ], + "type": "object" + }, + "scoreEffect": { + "const": "none", + "type": "string" + }, + "status": { + "enum": [ + "responsive", + "no_observable_response", + "indeterminate" + ], + "type": "string" + }, + "summary": { + "maxLength": 2000, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "status", + "findingTitle", + "summary", + "scoreEffect", + "legalInterpretation", + "comparison", + "californiaPolicy", + "evidenceUrl" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +]
- Changed
certscore_get_scan_status1 field changed- changed
Output schema / properties / gpcResponse / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "californiaPolicy": { - "additionalProperties": false, - "properties": { - "applied": { - "type": "boolean" - }, - "deductionPoints": { - "enum": [ - 0, - 15 - ], - "type": "number" - } - }, - "required": [ - "applied", - "deductionPoints" - ], - "type": "object" - }, - "comparison": { - "additionalProperties": false, - "properties": { - "baselineArtifact": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "lane": { - "const": "runtime_evidence", - "type": "string" - }, - "sha256": { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - "sizeBytes": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "lane", - "sha256", - "sizeBytes" - ], - "type": "object" - }, - { - "type": "null" - } - ] - }, - "comparable": { - "type": "boolean" - }, - "coverage": { - "additionalProperties": false, - "properties": { - "comparedThroughMs": { - "anyOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "type": "null" - } - ] - }, - "status": { - "enum": [ - "complete", - "limited", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "status", - "comparedThroughMs" - ], - "type": "object" - }, - "delivery": { - "additionalProperties": false, - "properties": { - "status": { - "enum": [ - "verified", - "limited", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "status" - ], - "type": "object" - }, - "deltas": { - "additionalProperties": false, - "properties": { - "advertisingOrMarketingActivity": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - }, - "advertisingOrMeasurementActivity": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - }, - "consentOrCmpBehavior": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - }, - "cookies": { - "additionalProperties": false, - "properties": { - "baselineCount": { - "minimum": 0, - "type": "integer" - }, - "baselineOnly": { - "items": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "baselineOnlyCount": { - "minimum": 0, - "type": "integer" - }, - "countDelta": { - "type": "integer" - }, - "gpcCount": { - "minimum": 0, - "type": "integer" - }, - "gpcOnly": { - "items": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "gpcOnlyCount": { - "minimum": 0, - "type": "integer" - }, - "samplesTruncated": { - "type": "boolean" - }, - "shared": { - "items": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "sharedCount": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "baselineCount", - "gpcCount", - "countDelta", - "baselineOnly", - "gpcOnly", - "shared" - ], - "type": "object" - }, - "trackers": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - }, - "webStorage": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - } - }, - "required": [ - "cookies", - "trackers", - "advertisingOrMeasurementActivity", - "consentOrCmpBehavior" - ], - "type": "object" - }, - "enabledProof": { - "additionalProperties": false, - "properties": { - "navigatorGlobalPrivacyControl": { - "type": [ - "boolean", - "null" - ] - }, - "requestEventIds": { - "items": { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "requestsWithSecGpc": { - "minimum": 0, - "type": "integer" - }, - "secGpcHeaderValue": { - "anyOf": [ - { - "const": "1", - "type": "string" - }, - { - "type": "null" - } - ] - } - }, - "required": [ - "secGpcHeaderValue", - "requestsWithSecGpc", - "requestEventIds", - "navigatorGlobalPrivacyControl" - ], - "type": "object" - }, - "gpcArtifact": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "lane": { - "const": "gpc_observation", - "type": "string" - }, - "sha256": { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - "sizeBytes": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "lane", - "sha256", - "sizeBytes" - ], - "type": "object" - }, - { - "type": "null" - } - ] - }, - "limitationKeys": { - "items": { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "protocol": { - "const": "passive_baseline_with_sec_gpc", - "type": "string" - }, - "responseBasis": { - "enum": [ - "qualified_activity_reduction", - "no_qualified_reduction", - "insufficient_evidence" - ], - "type": "string" - } - }, - "required": [ - "comparable", - "protocol", - "baselineArtifact", - "gpcArtifact", - "enabledProof", - "deltas", - "limitationKeys" - ], - "type": "object" - }, - "contractVersion": { - "enum": [ - "certscore.gpc-response-assessment.v1", - "certscore.gpc-response-assessment.v2", - "certscore.gpc-response-assessment.v3" - ], - "type": "string" - }, - "evidenceUrl": { - "format": "uri", - "type": "string" - }, - "findingTitle": { - "enum": [ - "GPC response", - "No observable GPC response" - ], - "type": "string" - }, - "legalInterpretation": { - "const": "not_assessed", - "type": "string" - }, - "observation": { - "additionalProperties": false, - "properties": { - "acknowledgment": { - "additionalProperties": false, - "properties": { - "captureComplete": { - "type": "boolean" - }, - "observed": { - "type": "boolean" - } - }, - "required": [ - "observed", - "captureComplete" - ], - "type": "object" - }, - "contractVersion": { - "const": "certscore.gpc-bounded-observation.v1", - "type": "string" - }, - "delivery": { - "additionalProperties": false, - "properties": { - "fullContextVerified": { - "type": "boolean" - }, - "httpHeaderRetained": { - "type": "boolean" - }, - "mainNavigatorReadbackRetained": { - "type": "boolean" - } - }, - "required": [ - "httpHeaderRetained", - "mainNavigatorReadbackRetained", - "fullContextVerified" - ], - "type": "object" - }, - "documentUrlSha256": { - "anyOf": [ - { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - { - "type": "null" - } - ] - }, - "legalInterpretation": { - "const": "not_assessed", - "type": "string" - }, - "limitationKeys": { - "items": { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - "maxItems": 32, - "type": "array" - }, - "registration": { - "additionalProperties": false, - "properties": { - "basis": { - "const": "current_recorded_state", - "type": "string" - }, - "causedByGpc": { - "const": "not_established", - "type": "string" - }, - "cmpGpcSignal": { - "enum": [ - "received", - "not_received", - "unknown" - ], - "type": "string" - }, - "sale": { - "enum": [ - "opted_out", - "not_opted_out", - "unknown" - ], - "type": "string" - }, - "sharing": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/registration/properties/sale" - } - }, - "required": [ - "basis", - "sale", - "sharing", - "cmpGpcSignal", - "causedByGpc" - ], - "type": "object" - }, - "requests": { - "additionalProperties": false, - "properties": { - "blockedBeforeTransmissionCount": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - "classifiedCount": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - "collectionCount": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - "complete": { - "type": "boolean" - }, - "count": { - "minimum": 0, - "type": "integer" - }, - "documentCommittedAtMs": { - "anyOf": [ - { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - { - "type": "null" - } - ] - }, - "evidenceIds": { - "items": { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "fromMs": { - "anyOf": [ - { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - { - "type": "null" - } - ] - }, - "samplesTruncated": { - "type": "boolean" - }, - "throughMs": { - "anyOf": [ - { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - { - "type": "null" - } - ] - } - }, - "required": [ - "count", - "blockedBeforeTransmissionCount", - "complete", - "fromMs", - "documentCommittedAtMs", - "throughMs", - "classifiedCount", - "collectionCount", - "evidenceIds", - "samplesTruncated" - ], - "type": "object" - }, - "scope": { - "const": "main_document_and_retained_http_requests", - "type": "string" - }, - "scoreEffect": { - "const": "none", - "type": "string" - }, - "semanticProbe": { - "enum": [ - "observed", - "unsupported", - "unavailable", - "not_ready", - "invalid", - "incomplete" - ], - "type": "string" - }, - "sessionSha256": { - "anyOf": [ - { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - { - "type": "null" - } - ] - }, - "sourceSha256": { - "anyOf": [ - { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - { - "type": "null" - } - ] - }, - "status": { - "enum": [ - "complete", - "limited", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "contractVersion", - "scope", - "status", - "sourceSha256", - "sessionSha256", - "documentUrlSha256", - "delivery", - "semanticProbe", - "registration", - "acknowledgment", - "requests", - "limitationKeys", - "scoreEffect", - "legalInterpretation" - ], - "type": "object" - }, - "scoreEffect": { - "const": "none", - "type": "string" - }, - "status": { - "enum": [ - "responsive", - "no_observable_response", - "indeterminate" - ], - "type": "string" - }, - "summary": { - "maxLength": 2000, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "status", - "findingTitle", - "summary", - "scoreEffect", - "legalInterpretation", - "comparison", - "californiaPolicy", - "evidenceUrl" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "activityComparison": { + "additionalProperties": false, + "properties": { + "activity": { + "additionalProperties": false, + "properties": { + "advertisingMarketing": { + "additionalProperties": false, + "properties": { + "baselineRequests": { + "maximum": 5000, + "minimum": 0, + "type": "integer" + }, + "baselineServices": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/activityComparison/properties/activity/properties/advertisingMarketing/properties/baselineRequests" + }, + "gpcRequests": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/activityComparison/properties/activity/properties/advertisingMarketing/properties/baselineRequests" + }, + "gpcServices": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/activityComparison/properties/activity/properties/advertisingMarketing/properties/baselineRequests" + } + }, + "required": [ + "baselineRequests", + "gpcRequests", + "baselineServices", + "gpcServices" + ], + "type": "object" + }, + "analyticsReplay": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/activityComparison/properties/activity/properties/advertisingMarketing" + } + }, + "required": [ + "advertisingMarketing", + "analyticsReplay" + ], + "type": "object" + }, + "causedByGpc": { + "const": "not_established", + "type": "string" + }, + "contractVersion": { + "const": "certscore.gpc-activity-comparison.v1", + "type": "string" + }, + "durationMs": { + "enum": [ + 250, + 500, + 1000 + ], + "type": "number" + }, + "scanId": { + "maxLength": 200, + "minLength": 1, + "type": "string" + }, + "scope": { + "const": "matched_post_commit_request_window", + "type": "string" + }, + "scoreEffect": { + "const": "none", + "type": "string" + }, + "sourceHashes": { + "additionalProperties": false, + "properties": { + "baseline": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "gpc": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + } + }, + "required": [ + "baseline", + "gpc" + ], + "type": "object" + }, + "status": { + "const": "measured", + "type": "string" + } + }, + "required": [ + "contractVersion", + "scanId", + "status", + "scope", + "durationMs", + "sourceHashes", + "activity", + "scoreEffect", + "causedByGpc" + ], + "type": "object" + }, + "californiaPolicy": { + "additionalProperties": false, + "properties": { + "applied": { + "type": "boolean" + }, + "deductionPoints": { + "enum": [ + 0, + 15 + ], + "type": "number" + } + }, + "required": [ + "applied", + "deductionPoints" + ], + "type": "object" + }, + "comparison": { + "additionalProperties": false, + "properties": { + "baselineArtifact": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "lane": { + "const": "runtime_evidence", + "type": "string" + }, + "sha256": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "sizeBytes": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "lane", + "sha256", + "sizeBytes" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "comparable": { + "type": "boolean" + }, + "coverage": { + "additionalProperties": false, + "properties": { + "comparedThroughMs": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "status": { + "enum": [ + "complete", + "limited", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "status", + "comparedThroughMs" + ], + "type": "object" + }, + "delivery": { + "additionalProperties": false, + "properties": { + "status": { + "enum": [ + "verified", + "limited", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" + }, + "deltas": { + "additionalProperties": false, + "properties": { + "advertisingOrMarketingActivity": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + }, + "advertisingOrMeasurementActivity": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + }, + "consentOrCmpBehavior": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + }, + "cookies": { + "additionalProperties": false, + "properties": { + "baselineCount": { + "minimum": 0, + "type": "integer" + }, + "baselineOnly": { + "items": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "baselineOnlyCount": { + "minimum": 0, + "type": "integer" + }, + "countDelta": { + "type": "integer" + }, + "gpcCount": { + "minimum": 0, + "type": "integer" + }, + "gpcOnly": { + "items": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "gpcOnlyCount": { + "minimum": 0, + "type": "integer" + }, + "samplesTruncated": { + "type": "boolean" + }, + "shared": { + "items": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "sharedCount": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "baselineCount", + "gpcCount", + "countDelta", + "baselineOnly", + "gpcOnly", + "shared" + ], + "type": "object" + }, + "trackers": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + }, + "webStorage": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + } + }, + "required": [ + "cookies", + "trackers", + "advertisingOrMeasurementActivity", + "consentOrCmpBehavior" + ], + "type": "object" + }, + "enabledProof": { + "additionalProperties": false, + "properties": { + "navigatorGlobalPrivacyControl": { + "type": [ + "boolean", + "null" + ] + }, + "requestEventIds": { + "items": { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "requestsWithSecGpc": { + "minimum": 0, + "type": "integer" + }, + "secGpcHeaderValue": { + "anyOf": [ + { + "const": "1", + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "secGpcHeaderValue", + "requestsWithSecGpc", + "requestEventIds", + "navigatorGlobalPrivacyControl" + ], + "type": "object" + }, + "gpcArtifact": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "lane": { + "const": "gpc_observation", + "type": "string" + }, + "sha256": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "sizeBytes": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "lane", + "sha256", + "sizeBytes" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "limitationKeys": { + "items": { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "protocol": { + "const": "passive_baseline_with_sec_gpc", + "type": "string" + }, + "responseBasis": { + "enum": [ + "qualified_activity_reduction", + "no_qualified_reduction", + "insufficient_evidence" + ], + "type": "string" + } + }, + "required": [ + "comparable", + "protocol", + "baselineArtifact", + "gpcArtifact", + "enabledProof", + "deltas", + "limitationKeys" + ], + "type": "object" + }, + "contractVersion": { + "enum": [ + "certscore.gpc-response-assessment.v1", + "certscore.gpc-response-assessment.v2", + "certscore.gpc-response-assessment.v3" + ], + "type": "string" + }, + "evidenceUrl": { + "format": "uri", + "type": "string" + }, + "findingTitle": { + "enum": [ + "GPC response", + "No observable GPC response" + ], + "type": "string" + }, + "legalInterpretation": { + "const": "not_assessed", + "type": "string" + }, + "observation": { + "additionalProperties": false, + "properties": { + "acknowledgment": { + "additionalProperties": false, + "properties": { + "captureComplete": { + "type": "boolean" + }, + "observed": { + "type": "boolean" + } + }, + "required": [ + "observed", + "captureComplete" + ], + "type": "object" + }, + "contractVersion": { + "const": "certscore.gpc-bounded-observation.v1", + "type": "string" + }, + "delivery": { + "additionalProperties": false, + "properties": { + "fullContextVerified": { + "type": "boolean" + }, + "httpHeaderRetained": { + "type": "boolean" + }, + "mainNavigatorReadbackRetained": { + "type": "boolean" + } + }, + "required": [ + "httpHeaderRetained", + "mainNavigatorReadbackRetained", + "fullContextVerified" + ], + "type": "object" + }, + "documentUrlSha256": { + "anyOf": [ + { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "legalInterpretation": { + "const": "not_assessed", + "type": "string" + }, + "limitationKeys": { + "items": { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + "maxItems": 32, + "type": "array" + }, + "registration": { + "additionalProperties": false, + "properties": { + "basis": { + "const": "current_recorded_state", + "type": "string" + }, + "causedByGpc": { + "const": "not_established", + "type": "string" + }, + "cmpGpcSignal": { + "enum": [ + "received", + "not_received", + "unknown" + ], + "type": "string" + }, + "sale": { + "enum": [ + "opted_out", + "not_opted_out", + "unknown" + ], + "type": "string" + }, + "sharing": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/registration/properties/sale" + } + }, + "required": [ + "basis", + "sale", + "sharing", + "cmpGpcSignal", + "causedByGpc" + ], + "type": "object" + }, + "requests": { + "additionalProperties": false, + "properties": { + "blockedBeforeTransmissionCount": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + "classifiedCount": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + "collectionCount": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + "complete": { + "type": "boolean" + }, + "count": { + "minimum": 0, + "type": "integer" + }, + "documentCommittedAtMs": { + "anyOf": [ + { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + { + "type": "null" + } + ] + }, + "evidenceIds": { + "items": { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "fromMs": { + "anyOf": [ + { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + { + "type": "null" + } + ] + }, + "samplesTruncated": { + "type": "boolean" + }, + "throughMs": { + "anyOf": [ + { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "count", + "blockedBeforeTransmissionCount", + "complete", + "fromMs", + "documentCommittedAtMs", + "throughMs", + "classifiedCount", + "collectionCount", + "evidenceIds", + "samplesTruncated" + ], + "type": "object" + }, + "scope": { + "const": "main_document_and_retained_http_requests", + "type": "string" + }, + "scoreEffect": { + "const": "none", + "type": "string" + }, + "semanticProbe": { + "enum": [ + "observed", + "unsupported", + "unavailable", + "not_ready", + "invalid", + "incomplete" + ], + "type": "string" + }, + "sessionSha256": { + "anyOf": [ + { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "sourceSha256": { + "anyOf": [ + { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "status": { + "enum": [ + "complete", + "limited", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "contractVersion", + "scope", + "status", + "sourceSha256", + "sessionSha256", + "documentUrlSha256", + "delivery", + "semanticProbe", + "registration", + "acknowledgment", + "requests", + "limitationKeys", + "scoreEffect", + "legalInterpretation" + ], + "type": "object" + }, + "scoreEffect": { + "const": "none", + "type": "string" + }, + "status": { + "enum": [ + "responsive", + "no_observable_response", + "indeterminate" + ], + "type": "string" + }, + "summary": { + "maxLength": 2000, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "status", + "findingTitle", + "summary", + "scoreEffect", + "legalInterpretation", + "comparison", + "californiaPolicy", + "evidenceUrl" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +]
- Changed
certscore_scan_site1 field changed- changed
Output schema / properties / gpcResponse / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "californiaPolicy": { - "additionalProperties": false, - "properties": { - "applied": { - "type": "boolean" - }, - "deductionPoints": { - "enum": [ - 0, - 15 - ], - "type": "number" - } - }, - "required": [ - "applied", - "deductionPoints" - ], - "type": "object" - }, - "comparison": { - "additionalProperties": false, - "properties": { - "baselineArtifact": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "lane": { - "const": "runtime_evidence", - "type": "string" - }, - "sha256": { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - "sizeBytes": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "lane", - "sha256", - "sizeBytes" - ], - "type": "object" - }, - { - "type": "null" - } - ] - }, - "comparable": { - "type": "boolean" - }, - "coverage": { - "additionalProperties": false, - "properties": { - "comparedThroughMs": { - "anyOf": [ - { - "minimum": 0, - "type": "integer" - }, - { - "type": "null" - } - ] - }, - "status": { - "enum": [ - "complete", - "limited", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "status", - "comparedThroughMs" - ], - "type": "object" - }, - "delivery": { - "additionalProperties": false, - "properties": { - "status": { - "enum": [ - "verified", - "limited", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "status" - ], - "type": "object" - }, - "deltas": { - "additionalProperties": false, - "properties": { - "advertisingOrMarketingActivity": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - }, - "advertisingOrMeasurementActivity": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - }, - "consentOrCmpBehavior": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - }, - "cookies": { - "additionalProperties": false, - "properties": { - "baselineCount": { - "minimum": 0, - "type": "integer" - }, - "baselineOnly": { - "items": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "baselineOnlyCount": { - "minimum": 0, - "type": "integer" - }, - "countDelta": { - "type": "integer" - }, - "gpcCount": { - "minimum": 0, - "type": "integer" - }, - "gpcOnly": { - "items": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "gpcOnlyCount": { - "minimum": 0, - "type": "integer" - }, - "samplesTruncated": { - "type": "boolean" - }, - "shared": { - "items": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "sharedCount": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "baselineCount", - "gpcCount", - "countDelta", - "baselineOnly", - "gpcOnly", - "shared" - ], - "type": "object" - }, - "trackers": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - }, - "webStorage": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" - } - }, - "required": [ - "cookies", - "trackers", - "advertisingOrMeasurementActivity", - "consentOrCmpBehavior" - ], - "type": "object" - }, - "enabledProof": { - "additionalProperties": false, - "properties": { - "navigatorGlobalPrivacyControl": { - "type": [ - "boolean", - "null" - ] - }, - "requestEventIds": { - "items": { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "requestsWithSecGpc": { - "minimum": 0, - "type": "integer" - }, - "secGpcHeaderValue": { - "anyOf": [ - { - "const": "1", - "type": "string" - }, - { - "type": "null" - } - ] - } - }, - "required": [ - "secGpcHeaderValue", - "requestsWithSecGpc", - "requestEventIds", - "navigatorGlobalPrivacyControl" - ], - "type": "object" - }, - "gpcArtifact": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "lane": { - "const": "gpc_observation", - "type": "string" - }, - "sha256": { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - "sizeBytes": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "lane", - "sha256", - "sizeBytes" - ], - "type": "object" - }, - { - "type": "null" - } - ] - }, - "limitationKeys": { - "items": { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "protocol": { - "const": "passive_baseline_with_sec_gpc", - "type": "string" - }, - "responseBasis": { - "enum": [ - "qualified_activity_reduction", - "no_qualified_reduction", - "insufficient_evidence" - ], - "type": "string" - } - }, - "required": [ - "comparable", - "protocol", - "baselineArtifact", - "gpcArtifact", - "enabledProof", - "deltas", - "limitationKeys" - ], - "type": "object" - }, - "contractVersion": { - "enum": [ - "certscore.gpc-response-assessment.v1", - "certscore.gpc-response-assessment.v2", - "certscore.gpc-response-assessment.v3" - ], - "type": "string" - }, - "evidenceUrl": { - "format": "uri", - "type": "string" - }, - "findingTitle": { - "enum": [ - "GPC response", - "No observable GPC response" - ], - "type": "string" - }, - "legalInterpretation": { - "const": "not_assessed", - "type": "string" - }, - "observation": { - "additionalProperties": false, - "properties": { - "acknowledgment": { - "additionalProperties": false, - "properties": { - "captureComplete": { - "type": "boolean" - }, - "observed": { - "type": "boolean" - } - }, - "required": [ - "observed", - "captureComplete" - ], - "type": "object" - }, - "contractVersion": { - "const": "certscore.gpc-bounded-observation.v1", - "type": "string" - }, - "delivery": { - "additionalProperties": false, - "properties": { - "fullContextVerified": { - "type": "boolean" - }, - "httpHeaderRetained": { - "type": "boolean" - }, - "mainNavigatorReadbackRetained": { - "type": "boolean" - } - }, - "required": [ - "httpHeaderRetained", - "mainNavigatorReadbackRetained", - "fullContextVerified" - ], - "type": "object" - }, - "documentUrlSha256": { - "anyOf": [ - { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - { - "type": "null" - } - ] - }, - "legalInterpretation": { - "const": "not_assessed", - "type": "string" - }, - "limitationKeys": { - "items": { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - "maxItems": 32, - "type": "array" - }, - "registration": { - "additionalProperties": false, - "properties": { - "basis": { - "const": "current_recorded_state", - "type": "string" - }, - "causedByGpc": { - "const": "not_established", - "type": "string" - }, - "cmpGpcSignal": { - "enum": [ - "received", - "not_received", - "unknown" - ], - "type": "string" - }, - "sale": { - "enum": [ - "opted_out", - "not_opted_out", - "unknown" - ], - "type": "string" - }, - "sharing": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/registration/properties/sale" - } - }, - "required": [ - "basis", - "sale", - "sharing", - "cmpGpcSignal", - "causedByGpc" - ], - "type": "object" - }, - "requests": { - "additionalProperties": false, - "properties": { - "blockedBeforeTransmissionCount": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - "classifiedCount": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - "collectionCount": { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - "complete": { - "type": "boolean" - }, - "count": { - "minimum": 0, - "type": "integer" - }, - "documentCommittedAtMs": { - "anyOf": [ - { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - { - "type": "null" - } - ] - }, - "evidenceIds": { - "items": { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - "maxItems": 100, - "type": "array" - }, - "fromMs": { - "anyOf": [ - { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - { - "type": "null" - } - ] - }, - "samplesTruncated": { - "type": "boolean" - }, - "throughMs": { - "anyOf": [ - { - "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" - }, - { - "type": "null" - } - ] - } - }, - "required": [ - "count", - "blockedBeforeTransmissionCount", - "complete", - "fromMs", - "documentCommittedAtMs", - "throughMs", - "classifiedCount", - "collectionCount", - "evidenceIds", - "samplesTruncated" - ], - "type": "object" - }, - "scope": { - "const": "main_document_and_retained_http_requests", - "type": "string" - }, - "scoreEffect": { - "const": "none", - "type": "string" - }, - "semanticProbe": { - "enum": [ - "observed", - "unsupported", - "unavailable", - "not_ready", - "invalid", - "incomplete" - ], - "type": "string" - }, - "sessionSha256": { - "anyOf": [ - { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - { - "type": "null" - } - ] - }, - "sourceSha256": { - "anyOf": [ - { - "pattern": "^[a-f0-9]{64}$", - "type": "string" - }, - { - "type": "null" - } - ] - }, - "status": { - "enum": [ - "complete", - "limited", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "contractVersion", - "scope", - "status", - "sourceSha256", - "sessionSha256", - "documentUrlSha256", - "delivery", - "semanticProbe", - "registration", - "acknowledgment", - "requests", - "limitationKeys", - "scoreEffect", - "legalInterpretation" - ], - "type": "object" - }, - "scoreEffect": { - "const": "none", - "type": "string" - }, - "status": { - "enum": [ - "responsive", - "no_observable_response", - "indeterminate" - ], - "type": "string" - }, - "summary": { - "maxLength": 2000, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "status", - "findingTitle", - "summary", - "scoreEffect", - "legalInterpretation", - "comparison", - "californiaPolicy", - "evidenceUrl" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "activityComparison": { + "additionalProperties": false, + "properties": { + "activity": { + "additionalProperties": false, + "properties": { + "advertisingMarketing": { + "additionalProperties": false, + "properties": { + "baselineRequests": { + "maximum": 5000, + "minimum": 0, + "type": "integer" + }, + "baselineServices": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/activityComparison/properties/activity/properties/advertisingMarketing/properties/baselineRequests" + }, + "gpcRequests": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/activityComparison/properties/activity/properties/advertisingMarketing/properties/baselineRequests" + }, + "gpcServices": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/activityComparison/properties/activity/properties/advertisingMarketing/properties/baselineRequests" + } + }, + "required": [ + "baselineRequests", + "gpcRequests", + "baselineServices", + "gpcServices" + ], + "type": "object" + }, + "analyticsReplay": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/activityComparison/properties/activity/properties/advertisingMarketing" + } + }, + "required": [ + "advertisingMarketing", + "analyticsReplay" + ], + "type": "object" + }, + "causedByGpc": { + "const": "not_established", + "type": "string" + }, + "contractVersion": { + "const": "certscore.gpc-activity-comparison.v1", + "type": "string" + }, + "durationMs": { + "enum": [ + 250, + 500, + 1000 + ], + "type": "number" + }, + "scanId": { + "maxLength": 200, + "minLength": 1, + "type": "string" + }, + "scope": { + "const": "matched_post_commit_request_window", + "type": "string" + }, + "scoreEffect": { + "const": "none", + "type": "string" + }, + "sourceHashes": { + "additionalProperties": false, + "properties": { + "baseline": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "gpc": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + } + }, + "required": [ + "baseline", + "gpc" + ], + "type": "object" + }, + "status": { + "const": "measured", + "type": "string" + } + }, + "required": [ + "contractVersion", + "scanId", + "status", + "scope", + "durationMs", + "sourceHashes", + "activity", + "scoreEffect", + "causedByGpc" + ], + "type": "object" + }, + "californiaPolicy": { + "additionalProperties": false, + "properties": { + "applied": { + "type": "boolean" + }, + "deductionPoints": { + "enum": [ + 0, + 15 + ], + "type": "number" + } + }, + "required": [ + "applied", + "deductionPoints" + ], + "type": "object" + }, + "comparison": { + "additionalProperties": false, + "properties": { + "baselineArtifact": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "lane": { + "const": "runtime_evidence", + "type": "string" + }, + "sha256": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "sizeBytes": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "lane", + "sha256", + "sizeBytes" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "comparable": { + "type": "boolean" + }, + "coverage": { + "additionalProperties": false, + "properties": { + "comparedThroughMs": { + "anyOf": [ + { + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] + }, + "status": { + "enum": [ + "complete", + "limited", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "status", + "comparedThroughMs" + ], + "type": "object" + }, + "delivery": { + "additionalProperties": false, + "properties": { + "status": { + "enum": [ + "verified", + "limited", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" + }, + "deltas": { + "additionalProperties": false, + "properties": { + "advertisingOrMarketingActivity": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + }, + "advertisingOrMeasurementActivity": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + }, + "consentOrCmpBehavior": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + }, + "cookies": { + "additionalProperties": false, + "properties": { + "baselineCount": { + "minimum": 0, + "type": "integer" + }, + "baselineOnly": { + "items": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "baselineOnlyCount": { + "minimum": 0, + "type": "integer" + }, + "countDelta": { + "type": "integer" + }, + "gpcCount": { + "minimum": 0, + "type": "integer" + }, + "gpcOnly": { + "items": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "gpcOnlyCount": { + "minimum": 0, + "type": "integer" + }, + "samplesTruncated": { + "type": "boolean" + }, + "shared": { + "items": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "sharedCount": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "baselineCount", + "gpcCount", + "countDelta", + "baselineOnly", + "gpcOnly", + "shared" + ], + "type": "object" + }, + "trackers": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + }, + "webStorage": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/comparison/properties/deltas/properties/cookies" + } + }, + "required": [ + "cookies", + "trackers", + "advertisingOrMeasurementActivity", + "consentOrCmpBehavior" + ], + "type": "object" + }, + "enabledProof": { + "additionalProperties": false, + "properties": { + "navigatorGlobalPrivacyControl": { + "type": [ + "boolean", + "null" + ] + }, + "requestEventIds": { + "items": { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "requestsWithSecGpc": { + "minimum": 0, + "type": "integer" + }, + "secGpcHeaderValue": { + "anyOf": [ + { + "const": "1", + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "secGpcHeaderValue", + "requestsWithSecGpc", + "requestEventIds", + "navigatorGlobalPrivacyControl" + ], + "type": "object" + }, + "gpcArtifact": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "lane": { + "const": "gpc_observation", + "type": "string" + }, + "sha256": { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + "sizeBytes": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "lane", + "sha256", + "sizeBytes" + ], + "type": "object" + }, + { + "type": "null" + } + ] + }, + "limitationKeys": { + "items": { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "protocol": { + "const": "passive_baseline_with_sec_gpc", + "type": "string" + }, + "responseBasis": { + "enum": [ + "qualified_activity_reduction", + "no_qualified_reduction", + "insufficient_evidence" + ], + "type": "string" + } + }, + "required": [ + "comparable", + "protocol", + "baselineArtifact", + "gpcArtifact", + "enabledProof", + "deltas", + "limitationKeys" + ], + "type": "object" + }, + "contractVersion": { + "enum": [ + "certscore.gpc-response-assessment.v1", + "certscore.gpc-response-assessment.v2", + "certscore.gpc-response-assessment.v3" + ], + "type": "string" + }, + "evidenceUrl": { + "format": "uri", + "type": "string" + }, + "findingTitle": { + "enum": [ + "GPC response", + "No observable GPC response" + ], + "type": "string" + }, + "legalInterpretation": { + "const": "not_assessed", + "type": "string" + }, + "observation": { + "additionalProperties": false, + "properties": { + "acknowledgment": { + "additionalProperties": false, + "properties": { + "captureComplete": { + "type": "boolean" + }, + "observed": { + "type": "boolean" + } + }, + "required": [ + "observed", + "captureComplete" + ], + "type": "object" + }, + "contractVersion": { + "const": "certscore.gpc-bounded-observation.v1", + "type": "string" + }, + "delivery": { + "additionalProperties": false, + "properties": { + "fullContextVerified": { + "type": "boolean" + }, + "httpHeaderRetained": { + "type": "boolean" + }, + "mainNavigatorReadbackRetained": { + "type": "boolean" + } + }, + "required": [ + "httpHeaderRetained", + "mainNavigatorReadbackRetained", + "fullContextVerified" + ], + "type": "object" + }, + "documentUrlSha256": { + "anyOf": [ + { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "legalInterpretation": { + "const": "not_assessed", + "type": "string" + }, + "limitationKeys": { + "items": { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + "maxItems": 32, + "type": "array" + }, + "registration": { + "additionalProperties": false, + "properties": { + "basis": { + "const": "current_recorded_state", + "type": "string" + }, + "causedByGpc": { + "const": "not_established", + "type": "string" + }, + "cmpGpcSignal": { + "enum": [ + "received", + "not_received", + "unknown" + ], + "type": "string" + }, + "sale": { + "enum": [ + "opted_out", + "not_opted_out", + "unknown" + ], + "type": "string" + }, + "sharing": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/registration/properties/sale" + } + }, + "required": [ + "basis", + "sale", + "sharing", + "cmpGpcSignal", + "causedByGpc" + ], + "type": "object" + }, + "requests": { + "additionalProperties": false, + "properties": { + "blockedBeforeTransmissionCount": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + "classifiedCount": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + "collectionCount": { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + "complete": { + "type": "boolean" + }, + "count": { + "minimum": 0, + "type": "integer" + }, + "documentCommittedAtMs": { + "anyOf": [ + { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + { + "type": "null" + } + ] + }, + "evidenceIds": { + "items": { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + "maxItems": 100, + "type": "array" + }, + "fromMs": { + "anyOf": [ + { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + { + "type": "null" + } + ] + }, + "samplesTruncated": { + "type": "boolean" + }, + "throughMs": { + "anyOf": [ + { + "$ref": "#/properties/gpcResponse/anyOf/0/anyOf/1/anyOf/0/properties/observation/properties/requests/properties/count" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "count", + "blockedBeforeTransmissionCount", + "complete", + "fromMs", + "documentCommittedAtMs", + "throughMs", + "classifiedCount", + "collectionCount", + "evidenceIds", + "samplesTruncated" + ], + "type": "object" + }, + "scope": { + "const": "main_document_and_retained_http_requests", + "type": "string" + }, + "scoreEffect": { + "const": "none", + "type": "string" + }, + "semanticProbe": { + "enum": [ + "observed", + "unsupported", + "unavailable", + "not_ready", + "invalid", + "incomplete" + ], + "type": "string" + }, + "sessionSha256": { + "anyOf": [ + { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "sourceSha256": { + "anyOf": [ + { + "pattern": "^[a-f0-9]{64}$", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "status": { + "enum": [ + "complete", + "limited", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "contractVersion", + "scope", + "status", + "sourceSha256", + "sessionSha256", + "documentUrlSha256", + "delivery", + "semanticProbe", + "registration", + "acknowledgment", + "requests", + "limitationKeys", + "scoreEffect", + "legalInterpretation" + ], + "type": "object" + }, + "scoreEffect": { + "const": "none", + "type": "string" + }, + "status": { + "enum": [ + "responsive", + "no_observable_response", + "indeterminate" + ], + "type": "string" + }, + "summary": { + "maxLength": 2000, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "status", + "findingTitle", + "summary", + "scoreEffect", + "legalInterpretation", + "comparison", + "californiaPolicy", + "evidenceUrl" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +]
1 tool update
- Changed
certscore_get_scan_bundle1 field changed- added
Output schema / properties / fullReport / properties / coverage / properties / scopeSummaryAdded value: +{ + "type": "string" +}
3 tool updates
- Changed
certscore_get_scan_bundle2 fields changed- changed
Output schema / properties / postAcceptObservation / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "acceptanceExercised": { - "type": "boolean" - }, - "afterAction": { - "additionalProperties": false, - "properties": { - "action": { - "enum": [ - "accept", - "reject" - ], - "type": "string" - }, - "activationStatus": { - "enum": [ - "completed", - "uncertain" - ], - "type": "string" - }, - "policyVersion": { - "enum": [ - "bounded_after_action_capture.v1", - "bounded_after_action_capture.v2" - ], - "type": "string" - }, - "requestCount": { - "minimum": 0, - "type": "integer" - }, - "requestsDropped": { - "minimum": 0, - "type": "integer" - }, - "stopReason": { - "enum": [ - "window_elapsed", - "aborted", - "target_changed", - "click_uncertain" - ], - "type": "string" - }, - "storageSnapshotRetained": { - "type": "boolean" - }, - "storageWriteCount": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "policyVersion", - "action", - "activationStatus", - "stopReason", - "requestsDropped", - "requestCount", - "storageWriteCount", - "storageSnapshotRetained" - ], - "type": "object" - }, - "completedAt": { - "type": [ - "string", - "null" - ] - }, - "coverageLimitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "evidenceDisposition": { - "enum": [ - "confirmed", - "indeterminate" - ], - "type": "string" - }, - "indeterminateReason": { - "anyOf": [ - { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "interpretation": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "limitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "observationCount": { - "minimum": 0, - "type": "integer" - }, - "observationStrategy": { - "enum": [ - "stop_on_first_eligible_activity", - "not_applicable" - ], - "type": "string" - }, - "productionProjectable": { - "type": "boolean" - }, - "status": { - "enum": [ - "confirmed_observation", - "confirmed_clean", - "unconfirmed", - "not_attempted", - "unsupported", - "aborted" - ], - "type": "string" - }, - "termination": { - "additionalProperties": false, - "properties": { - "intentional": { - "type": "boolean" - }, - "kind": { - "enum": [ - "evidence_satisfied", - "window_elapsed", - "unavailable" - ], - "type": "string" - }, - "trigger": { - "enum": [ - "non_essential_request_observed", - "non_essential_storage_write_observed", - "acceptance_signal_contradiction_observed", - "window_elapsed", - "accept_control_not_observed", - "accept_path_timeout", - "accept_observation_window_truncated", - "worker_failed", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "kind", - "intentional", - "trigger" - ], - "type": "object" - }, - "verdict": { - "enum": [ - "eligible_nonessential_activity_observed_after_confirmed_acceptance", - "retained_consent_signal_contradiction_observed_after_confirmed_acceptance", - "no_eligible_nonessential_activity_observed_during_completed_window", - "no_confirmed_post_accept_verdict" - ], - "type": "string" - } - }, - "required": [ - "status", - "acceptanceExercised", - "observationCount", - "productionProjectable", - "evidenceDisposition", - "indeterminateReason", - "verdict", - "interpretation", - "observationStrategy", - "termination", - "completedAt", - "coverageLimitations", - "limitations" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "acceptanceExercised": { + "type": "boolean" + }, + "afterAction": { + "additionalProperties": false, + "properties": { + "action": { + "enum": [ + "accept", + "reject" + ], + "type": "string" + }, + "activationStatus": { + "enum": [ + "completed", + "uncertain" + ], + "type": "string" + }, + "policyVersion": { + "enum": [ + "bounded_after_action_capture.v1", + "bounded_after_action_capture.v2" + ], + "type": "string" + }, + "requestCount": { + "minimum": 0, + "type": "integer" + }, + "requestsDropped": { + "minimum": 0, + "type": "integer" + }, + "stopReason": { + "enum": [ + "window_elapsed", + "aborted", + "target_changed", + "click_uncertain" + ], + "type": "string" + }, + "storageSnapshotRetained": { + "type": "boolean" + }, + "storageWriteCount": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "policyVersion", + "action", + "activationStatus", + "stopReason", + "requestsDropped", + "requestCount", + "storageWriteCount", + "storageSnapshotRetained" + ], + "type": "object" + }, + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "coverageLimitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "evidenceDisposition": { + "enum": [ + "confirmed", + "indeterminate" + ], + "type": "string" + }, + "execution": { + "additionalProperties": false, + "properties": { + "clickCompleted": { + "type": "boolean" + }, + "consentConfirmed": { + "type": "boolean" + }, + "observationCompleted": { + "type": "boolean" + }, + "policyVersion": { + "const": "choice_path_execution.v1", + "type": "string" + }, + "status": { + "enum": [ + "succeeded", + "succeeded_with_confirmation", + "limited", + "not_attempted", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "policyVersion", + "status", + "clickCompleted", + "observationCompleted", + "consentConfirmed" + ], + "type": "object" + }, + "indeterminateReason": { + "anyOf": [ + { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "interpretation": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "observationCount": { + "minimum": 0, + "type": "integer" + }, + "observationStrategy": { + "enum": [ + "stop_on_first_eligible_activity", + "not_applicable" + ], + "type": "string" + }, + "productionProjectable": { + "type": "boolean" + }, + "status": { + "enum": [ + "confirmed_observation", + "confirmed_clean", + "unconfirmed", + "not_attempted", + "unsupported", + "aborted" + ], + "type": "string" + }, + "termination": { + "additionalProperties": false, + "properties": { + "intentional": { + "type": "boolean" + }, + "kind": { + "enum": [ + "evidence_satisfied", + "window_elapsed", + "unavailable" + ], + "type": "string" + }, + "trigger": { + "enum": [ + "non_essential_request_observed", + "non_essential_storage_write_observed", + "acceptance_signal_contradiction_observed", + "window_elapsed", + "accept_control_not_observed", + "accept_path_timeout", + "accept_observation_window_truncated", + "worker_failed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "kind", + "intentional", + "trigger" + ], + "type": "object" + }, + "verdict": { + "enum": [ + "eligible_nonessential_activity_observed_after_confirmed_acceptance", + "retained_consent_signal_contradiction_observed_after_confirmed_acceptance", + "no_eligible_nonessential_activity_observed_during_completed_window", + "no_confirmed_post_accept_verdict" + ], + "type": "string" + } + }, + "required": [ + "status", + "acceptanceExercised", + "observationCount", + "productionProjectable", + "evidenceDisposition", + "indeterminateReason", + "verdict", + "interpretation", + "observationStrategy", + "termination", + "completedAt", + "coverageLimitations", + "limitations" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +] - changed
Output schema / properties / postRefusalObservation / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "afterAction": { - "$ref": "#/properties/postAcceptObservation/anyOf/0/anyOf/1/anyOf/0/properties/afterAction" - }, - "completedAt": { - "type": [ - "string", - "null" - ] - }, - "coverageLimitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "evidenceDisposition": { - "enum": [ - "confirmed", - "indeterminate" - ], - "type": "string" - }, - "indeterminateReason": { - "anyOf": [ - { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "interpretation": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "limitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "observationCount": { - "minimum": 0, - "type": "integer" - }, - "observationStrategy": { - "enum": [ - "stop_on_first_eligible_activity", - "not_applicable" - ], - "type": "string" - }, - "productionProjectable": { - "type": "boolean" - }, - "refusalExercised": { - "type": "boolean" - }, - "status": { - "enum": [ - "confirmed_observation", - "confirmed_clean", - "unconfirmed", - "not_attempted", - "unsupported", - "aborted" - ], - "type": "string" - }, - "termination": { - "additionalProperties": false, - "properties": { - "intentional": { - "type": "boolean" - }, - "kind": { - "enum": [ - "evidence_satisfied", - "window_elapsed", - "unavailable" - ], - "type": "string" - }, - "trigger": { - "enum": [ - "non_essential_request_observed", - "non_essential_storage_write_observed", - "refusal_signal_contradiction_observed", - "window_elapsed", - "reject_path_timeout", - "worker_failed", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "kind", - "intentional", - "trigger" - ], - "type": "object" - }, - "verdict": { - "enum": [ - "eligible_nonessential_activity_observed_after_confirmed_refusal", - "retained_consent_signal_contradiction_observed_after_confirmed_refusal", - "no_eligible_nonessential_activity_observed_during_completed_window", - "no_confirmed_post_refusal_verdict" - ], - "type": "string" - } - }, - "required": [ - "status", - "refusalExercised", - "observationCount", - "productionProjectable", - "evidenceDisposition", - "indeterminateReason", - "verdict", - "interpretation", - "observationStrategy", - "termination", - "completedAt", - "coverageLimitations", - "limitations" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "afterAction": { + "$ref": "#/properties/postAcceptObservation/anyOf/0/anyOf/1/anyOf/0/properties/afterAction" + }, + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "coverageLimitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "evidenceDisposition": { + "enum": [ + "confirmed", + "indeterminate" + ], + "type": "string" + }, + "execution": { + "$ref": "#/properties/postAcceptObservation/anyOf/0/anyOf/1/anyOf/0/properties/execution" + }, + "indeterminateReason": { + "anyOf": [ + { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "interpretation": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "observationCount": { + "minimum": 0, + "type": "integer" + }, + "observationStrategy": { + "enum": [ + "stop_on_first_eligible_activity", + "not_applicable" + ], + "type": "string" + }, + "productionProjectable": { + "type": "boolean" + }, + "refusalExercised": { + "type": "boolean" + }, + "status": { + "enum": [ + "confirmed_observation", + "confirmed_clean", + "unconfirmed", + "not_attempted", + "unsupported", + "aborted" + ], + "type": "string" + }, + "termination": { + "additionalProperties": false, + "properties": { + "intentional": { + "type": "boolean" + }, + "kind": { + "enum": [ + "evidence_satisfied", + "window_elapsed", + "unavailable" + ], + "type": "string" + }, + "trigger": { + "enum": [ + "non_essential_request_observed", + "non_essential_storage_write_observed", + "refusal_signal_contradiction_observed", + "window_elapsed", + "reject_path_timeout", + "worker_failed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "kind", + "intentional", + "trigger" + ], + "type": "object" + }, + "verdict": { + "enum": [ + "eligible_nonessential_activity_observed_after_confirmed_refusal", + "retained_consent_signal_contradiction_observed_after_confirmed_refusal", + "no_eligible_nonessential_activity_observed_during_completed_window", + "no_confirmed_post_refusal_verdict" + ], + "type": "string" + } + }, + "required": [ + "status", + "refusalExercised", + "observationCount", + "productionProjectable", + "evidenceDisposition", + "indeterminateReason", + "verdict", + "interpretation", + "observationStrategy", + "termination", + "completedAt", + "coverageLimitations", + "limitations" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +]
- Changed
certscore_get_scan_status2 fields changed- changed
Output schema / properties / postAcceptObservation / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "acceptanceExercised": { - "type": "boolean" - }, - "afterAction": { - "additionalProperties": false, - "properties": { - "action": { - "enum": [ - "accept", - "reject" - ], - "type": "string" - }, - "activationStatus": { - "enum": [ - "completed", - "uncertain" - ], - "type": "string" - }, - "policyVersion": { - "enum": [ - "bounded_after_action_capture.v1", - "bounded_after_action_capture.v2" - ], - "type": "string" - }, - "requestCount": { - "minimum": 0, - "type": "integer" - }, - "requestsDropped": { - "minimum": 0, - "type": "integer" - }, - "stopReason": { - "enum": [ - "window_elapsed", - "aborted", - "target_changed", - "click_uncertain" - ], - "type": "string" - }, - "storageSnapshotRetained": { - "type": "boolean" - }, - "storageWriteCount": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "policyVersion", - "action", - "activationStatus", - "stopReason", - "requestsDropped", - "requestCount", - "storageWriteCount", - "storageSnapshotRetained" - ], - "type": "object" - }, - "completedAt": { - "type": [ - "string", - "null" - ] - }, - "coverageLimitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "evidenceDisposition": { - "enum": [ - "confirmed", - "indeterminate" - ], - "type": "string" - }, - "indeterminateReason": { - "anyOf": [ - { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "interpretation": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "limitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "observationCount": { - "minimum": 0, - "type": "integer" - }, - "observationStrategy": { - "enum": [ - "stop_on_first_eligible_activity", - "not_applicable" - ], - "type": "string" - }, - "productionProjectable": { - "type": "boolean" - }, - "status": { - "enum": [ - "confirmed_observation", - "confirmed_clean", - "unconfirmed", - "not_attempted", - "unsupported", - "aborted" - ], - "type": "string" - }, - "termination": { - "additionalProperties": false, - "properties": { - "intentional": { - "type": "boolean" - }, - "kind": { - "enum": [ - "evidence_satisfied", - "window_elapsed", - "unavailable" - ], - "type": "string" - }, - "trigger": { - "enum": [ - "non_essential_request_observed", - "non_essential_storage_write_observed", - "acceptance_signal_contradiction_observed", - "window_elapsed", - "accept_control_not_observed", - "accept_path_timeout", - "accept_observation_window_truncated", - "worker_failed", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "kind", - "intentional", - "trigger" - ], - "type": "object" - }, - "verdict": { - "enum": [ - "eligible_nonessential_activity_observed_after_confirmed_acceptance", - "retained_consent_signal_contradiction_observed_after_confirmed_acceptance", - "no_eligible_nonessential_activity_observed_during_completed_window", - "no_confirmed_post_accept_verdict" - ], - "type": "string" - } - }, - "required": [ - "status", - "acceptanceExercised", - "observationCount", - "productionProjectable", - "evidenceDisposition", - "indeterminateReason", - "verdict", - "interpretation", - "observationStrategy", - "termination", - "completedAt", - "coverageLimitations", - "limitations" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "acceptanceExercised": { + "type": "boolean" + }, + "afterAction": { + "additionalProperties": false, + "properties": { + "action": { + "enum": [ + "accept", + "reject" + ], + "type": "string" + }, + "activationStatus": { + "enum": [ + "completed", + "uncertain" + ], + "type": "string" + }, + "policyVersion": { + "enum": [ + "bounded_after_action_capture.v1", + "bounded_after_action_capture.v2" + ], + "type": "string" + }, + "requestCount": { + "minimum": 0, + "type": "integer" + }, + "requestsDropped": { + "minimum": 0, + "type": "integer" + }, + "stopReason": { + "enum": [ + "window_elapsed", + "aborted", + "target_changed", + "click_uncertain" + ], + "type": "string" + }, + "storageSnapshotRetained": { + "type": "boolean" + }, + "storageWriteCount": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "policyVersion", + "action", + "activationStatus", + "stopReason", + "requestsDropped", + "requestCount", + "storageWriteCount", + "storageSnapshotRetained" + ], + "type": "object" + }, + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "coverageLimitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "evidenceDisposition": { + "enum": [ + "confirmed", + "indeterminate" + ], + "type": "string" + }, + "execution": { + "additionalProperties": false, + "properties": { + "clickCompleted": { + "type": "boolean" + }, + "consentConfirmed": { + "type": "boolean" + }, + "observationCompleted": { + "type": "boolean" + }, + "policyVersion": { + "const": "choice_path_execution.v1", + "type": "string" + }, + "status": { + "enum": [ + "succeeded", + "succeeded_with_confirmation", + "limited", + "not_attempted", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "policyVersion", + "status", + "clickCompleted", + "observationCompleted", + "consentConfirmed" + ], + "type": "object" + }, + "indeterminateReason": { + "anyOf": [ + { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "interpretation": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "observationCount": { + "minimum": 0, + "type": "integer" + }, + "observationStrategy": { + "enum": [ + "stop_on_first_eligible_activity", + "not_applicable" + ], + "type": "string" + }, + "productionProjectable": { + "type": "boolean" + }, + "status": { + "enum": [ + "confirmed_observation", + "confirmed_clean", + "unconfirmed", + "not_attempted", + "unsupported", + "aborted" + ], + "type": "string" + }, + "termination": { + "additionalProperties": false, + "properties": { + "intentional": { + "type": "boolean" + }, + "kind": { + "enum": [ + "evidence_satisfied", + "window_elapsed", + "unavailable" + ], + "type": "string" + }, + "trigger": { + "enum": [ + "non_essential_request_observed", + "non_essential_storage_write_observed", + "acceptance_signal_contradiction_observed", + "window_elapsed", + "accept_control_not_observed", + "accept_path_timeout", + "accept_observation_window_truncated", + "worker_failed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "kind", + "intentional", + "trigger" + ], + "type": "object" + }, + "verdict": { + "enum": [ + "eligible_nonessential_activity_observed_after_confirmed_acceptance", + "retained_consent_signal_contradiction_observed_after_confirmed_acceptance", + "no_eligible_nonessential_activity_observed_during_completed_window", + "no_confirmed_post_accept_verdict" + ], + "type": "string" + } + }, + "required": [ + "status", + "acceptanceExercised", + "observationCount", + "productionProjectable", + "evidenceDisposition", + "indeterminateReason", + "verdict", + "interpretation", + "observationStrategy", + "termination", + "completedAt", + "coverageLimitations", + "limitations" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +] - changed
Output schema / properties / postRefusalObservation / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "afterAction": { - "$ref": "#/properties/postAcceptObservation/anyOf/0/anyOf/1/anyOf/0/properties/afterAction" - }, - "completedAt": { - "type": [ - "string", - "null" - ] - }, - "coverageLimitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "evidenceDisposition": { - "enum": [ - "confirmed", - "indeterminate" - ], - "type": "string" - }, - "indeterminateReason": { - "anyOf": [ - { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "interpretation": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "limitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "observationCount": { - "minimum": 0, - "type": "integer" - }, - "observationStrategy": { - "enum": [ - "stop_on_first_eligible_activity", - "not_applicable" - ], - "type": "string" - }, - "productionProjectable": { - "type": "boolean" - }, - "refusalExercised": { - "type": "boolean" - }, - "status": { - "enum": [ - "confirmed_observation", - "confirmed_clean", - "unconfirmed", - "not_attempted", - "unsupported", - "aborted" - ], - "type": "string" - }, - "termination": { - "additionalProperties": false, - "properties": { - "intentional": { - "type": "boolean" - }, - "kind": { - "enum": [ - "evidence_satisfied", - "window_elapsed", - "unavailable" - ], - "type": "string" - }, - "trigger": { - "enum": [ - "non_essential_request_observed", - "non_essential_storage_write_observed", - "refusal_signal_contradiction_observed", - "window_elapsed", - "reject_path_timeout", - "worker_failed", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "kind", - "intentional", - "trigger" - ], - "type": "object" - }, - "verdict": { - "enum": [ - "eligible_nonessential_activity_observed_after_confirmed_refusal", - "retained_consent_signal_contradiction_observed_after_confirmed_refusal", - "no_eligible_nonessential_activity_observed_during_completed_window", - "no_confirmed_post_refusal_verdict" - ], - "type": "string" - } - }, - "required": [ - "status", - "refusalExercised", - "observationCount", - "productionProjectable", - "evidenceDisposition", - "indeterminateReason", - "verdict", - "interpretation", - "observationStrategy", - "termination", - "completedAt", - "coverageLimitations", - "limitations" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "afterAction": { + "$ref": "#/properties/postAcceptObservation/anyOf/0/anyOf/1/anyOf/0/properties/afterAction" + }, + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "coverageLimitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "evidenceDisposition": { + "enum": [ + "confirmed", + "indeterminate" + ], + "type": "string" + }, + "execution": { + "$ref": "#/properties/postAcceptObservation/anyOf/0/anyOf/1/anyOf/0/properties/execution" + }, + "indeterminateReason": { + "anyOf": [ + { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "interpretation": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "observationCount": { + "minimum": 0, + "type": "integer" + }, + "observationStrategy": { + "enum": [ + "stop_on_first_eligible_activity", + "not_applicable" + ], + "type": "string" + }, + "productionProjectable": { + "type": "boolean" + }, + "refusalExercised": { + "type": "boolean" + }, + "status": { + "enum": [ + "confirmed_observation", + "confirmed_clean", + "unconfirmed", + "not_attempted", + "unsupported", + "aborted" + ], + "type": "string" + }, + "termination": { + "additionalProperties": false, + "properties": { + "intentional": { + "type": "boolean" + }, + "kind": { + "enum": [ + "evidence_satisfied", + "window_elapsed", + "unavailable" + ], + "type": "string" + }, + "trigger": { + "enum": [ + "non_essential_request_observed", + "non_essential_storage_write_observed", + "refusal_signal_contradiction_observed", + "window_elapsed", + "reject_path_timeout", + "worker_failed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "kind", + "intentional", + "trigger" + ], + "type": "object" + }, + "verdict": { + "enum": [ + "eligible_nonessential_activity_observed_after_confirmed_refusal", + "retained_consent_signal_contradiction_observed_after_confirmed_refusal", + "no_eligible_nonessential_activity_observed_during_completed_window", + "no_confirmed_post_refusal_verdict" + ], + "type": "string" + } + }, + "required": [ + "status", + "refusalExercised", + "observationCount", + "productionProjectable", + "evidenceDisposition", + "indeterminateReason", + "verdict", + "interpretation", + "observationStrategy", + "termination", + "completedAt", + "coverageLimitations", + "limitations" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +]
- Changed
certscore_scan_site2 fields changed- changed
Output schema / properties / postAcceptObservation / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "acceptanceExercised": { - "type": "boolean" - }, - "afterAction": { - "additionalProperties": false, - "properties": { - "action": { - "enum": [ - "accept", - "reject" - ], - "type": "string" - }, - "activationStatus": { - "enum": [ - "completed", - "uncertain" - ], - "type": "string" - }, - "policyVersion": { - "enum": [ - "bounded_after_action_capture.v1", - "bounded_after_action_capture.v2" - ], - "type": "string" - }, - "requestCount": { - "minimum": 0, - "type": "integer" - }, - "requestsDropped": { - "minimum": 0, - "type": "integer" - }, - "stopReason": { - "enum": [ - "window_elapsed", - "aborted", - "target_changed", - "click_uncertain" - ], - "type": "string" - }, - "storageSnapshotRetained": { - "type": "boolean" - }, - "storageWriteCount": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "policyVersion", - "action", - "activationStatus", - "stopReason", - "requestsDropped", - "requestCount", - "storageWriteCount", - "storageSnapshotRetained" - ], - "type": "object" - }, - "completedAt": { - "type": [ - "string", - "null" - ] - }, - "coverageLimitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "evidenceDisposition": { - "enum": [ - "confirmed", - "indeterminate" - ], - "type": "string" - }, - "indeterminateReason": { - "anyOf": [ - { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "interpretation": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "limitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "observationCount": { - "minimum": 0, - "type": "integer" - }, - "observationStrategy": { - "enum": [ - "stop_on_first_eligible_activity", - "not_applicable" - ], - "type": "string" - }, - "productionProjectable": { - "type": "boolean" - }, - "status": { - "enum": [ - "confirmed_observation", - "confirmed_clean", - "unconfirmed", - "not_attempted", - "unsupported", - "aborted" - ], - "type": "string" - }, - "termination": { - "additionalProperties": false, - "properties": { - "intentional": { - "type": "boolean" - }, - "kind": { - "enum": [ - "evidence_satisfied", - "window_elapsed", - "unavailable" - ], - "type": "string" - }, - "trigger": { - "enum": [ - "non_essential_request_observed", - "non_essential_storage_write_observed", - "acceptance_signal_contradiction_observed", - "window_elapsed", - "accept_control_not_observed", - "accept_path_timeout", - "accept_observation_window_truncated", - "worker_failed", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "kind", - "intentional", - "trigger" - ], - "type": "object" - }, - "verdict": { - "enum": [ - "eligible_nonessential_activity_observed_after_confirmed_acceptance", - "retained_consent_signal_contradiction_observed_after_confirmed_acceptance", - "no_eligible_nonessential_activity_observed_during_completed_window", - "no_confirmed_post_accept_verdict" - ], - "type": "string" - } - }, - "required": [ - "status", - "acceptanceExercised", - "observationCount", - "productionProjectable", - "evidenceDisposition", - "indeterminateReason", - "verdict", - "interpretation", - "observationStrategy", - "termination", - "completedAt", - "coverageLimitations", - "limitations" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "acceptanceExercised": { + "type": "boolean" + }, + "afterAction": { + "additionalProperties": false, + "properties": { + "action": { + "enum": [ + "accept", + "reject" + ], + "type": "string" + }, + "activationStatus": { + "enum": [ + "completed", + "uncertain" + ], + "type": "string" + }, + "policyVersion": { + "enum": [ + "bounded_after_action_capture.v1", + "bounded_after_action_capture.v2" + ], + "type": "string" + }, + "requestCount": { + "minimum": 0, + "type": "integer" + }, + "requestsDropped": { + "minimum": 0, + "type": "integer" + }, + "stopReason": { + "enum": [ + "window_elapsed", + "aborted", + "target_changed", + "click_uncertain" + ], + "type": "string" + }, + "storageSnapshotRetained": { + "type": "boolean" + }, + "storageWriteCount": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "policyVersion", + "action", + "activationStatus", + "stopReason", + "requestsDropped", + "requestCount", + "storageWriteCount", + "storageSnapshotRetained" + ], + "type": "object" + }, + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "coverageLimitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "evidenceDisposition": { + "enum": [ + "confirmed", + "indeterminate" + ], + "type": "string" + }, + "execution": { + "additionalProperties": false, + "properties": { + "clickCompleted": { + "type": "boolean" + }, + "consentConfirmed": { + "type": "boolean" + }, + "observationCompleted": { + "type": "boolean" + }, + "policyVersion": { + "const": "choice_path_execution.v1", + "type": "string" + }, + "status": { + "enum": [ + "succeeded", + "succeeded_with_confirmation", + "limited", + "not_attempted", + "unsupported" + ], + "type": "string" + } + }, + "required": [ + "policyVersion", + "status", + "clickCompleted", + "observationCompleted", + "consentConfirmed" + ], + "type": "object" + }, + "indeterminateReason": { + "anyOf": [ + { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "interpretation": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "observationCount": { + "minimum": 0, + "type": "integer" + }, + "observationStrategy": { + "enum": [ + "stop_on_first_eligible_activity", + "not_applicable" + ], + "type": "string" + }, + "productionProjectable": { + "type": "boolean" + }, + "status": { + "enum": [ + "confirmed_observation", + "confirmed_clean", + "unconfirmed", + "not_attempted", + "unsupported", + "aborted" + ], + "type": "string" + }, + "termination": { + "additionalProperties": false, + "properties": { + "intentional": { + "type": "boolean" + }, + "kind": { + "enum": [ + "evidence_satisfied", + "window_elapsed", + "unavailable" + ], + "type": "string" + }, + "trigger": { + "enum": [ + "non_essential_request_observed", + "non_essential_storage_write_observed", + "acceptance_signal_contradiction_observed", + "window_elapsed", + "accept_control_not_observed", + "accept_path_timeout", + "accept_observation_window_truncated", + "worker_failed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "kind", + "intentional", + "trigger" + ], + "type": "object" + }, + "verdict": { + "enum": [ + "eligible_nonessential_activity_observed_after_confirmed_acceptance", + "retained_consent_signal_contradiction_observed_after_confirmed_acceptance", + "no_eligible_nonessential_activity_observed_during_completed_window", + "no_confirmed_post_accept_verdict" + ], + "type": "string" + } + }, + "required": [ + "status", + "acceptanceExercised", + "observationCount", + "productionProjectable", + "evidenceDisposition", + "indeterminateReason", + "verdict", + "interpretation", + "observationStrategy", + "termination", + "completedAt", + "coverageLimitations", + "limitations" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +] - changed
Output schema / properties / postRefusalObservation / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "afterAction": { - "$ref": "#/properties/postAcceptObservation/anyOf/0/anyOf/1/anyOf/0/properties/afterAction" - }, - "completedAt": { - "type": [ - "string", - "null" - ] - }, - "coverageLimitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "evidenceDisposition": { - "enum": [ - "confirmed", - "indeterminate" - ], - "type": "string" - }, - "indeterminateReason": { - "anyOf": [ - { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "interpretation": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "limitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "observationCount": { - "minimum": 0, - "type": "integer" - }, - "observationStrategy": { - "enum": [ - "stop_on_first_eligible_activity", - "not_applicable" - ], - "type": "string" - }, - "productionProjectable": { - "type": "boolean" - }, - "refusalExercised": { - "type": "boolean" - }, - "status": { - "enum": [ - "confirmed_observation", - "confirmed_clean", - "unconfirmed", - "not_attempted", - "unsupported", - "aborted" - ], - "type": "string" - }, - "termination": { - "additionalProperties": false, - "properties": { - "intentional": { - "type": "boolean" - }, - "kind": { - "enum": [ - "evidence_satisfied", - "window_elapsed", - "unavailable" - ], - "type": "string" - }, - "trigger": { - "enum": [ - "non_essential_request_observed", - "non_essential_storage_write_observed", - "refusal_signal_contradiction_observed", - "window_elapsed", - "reject_path_timeout", - "worker_failed", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "kind", - "intentional", - "trigger" - ], - "type": "object" - }, - "verdict": { - "enum": [ - "eligible_nonessential_activity_observed_after_confirmed_refusal", - "retained_consent_signal_contradiction_observed_after_confirmed_refusal", - "no_eligible_nonessential_activity_observed_during_completed_window", - "no_confirmed_post_refusal_verdict" - ], - "type": "string" - } - }, - "required": [ - "status", - "refusalExercised", - "observationCount", - "productionProjectable", - "evidenceDisposition", - "indeterminateReason", - "verdict", - "interpretation", - "observationStrategy", - "termination", - "completedAt", - "coverageLimitations", - "limitations" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "afterAction": { + "$ref": "#/properties/postAcceptObservation/anyOf/0/anyOf/1/anyOf/0/properties/afterAction" + }, + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "coverageLimitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "evidenceDisposition": { + "enum": [ + "confirmed", + "indeterminate" + ], + "type": "string" + }, + "execution": { + "$ref": "#/properties/postAcceptObservation/anyOf/0/anyOf/1/anyOf/0/properties/execution" + }, + "indeterminateReason": { + "anyOf": [ + { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "interpretation": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "observationCount": { + "minimum": 0, + "type": "integer" + }, + "observationStrategy": { + "enum": [ + "stop_on_first_eligible_activity", + "not_applicable" + ], + "type": "string" + }, + "productionProjectable": { + "type": "boolean" + }, + "refusalExercised": { + "type": "boolean" + }, + "status": { + "enum": [ + "confirmed_observation", + "confirmed_clean", + "unconfirmed", + "not_attempted", + "unsupported", + "aborted" + ], + "type": "string" + }, + "termination": { + "additionalProperties": false, + "properties": { + "intentional": { + "type": "boolean" + }, + "kind": { + "enum": [ + "evidence_satisfied", + "window_elapsed", + "unavailable" + ], + "type": "string" + }, + "trigger": { + "enum": [ + "non_essential_request_observed", + "non_essential_storage_write_observed", + "refusal_signal_contradiction_observed", + "window_elapsed", + "reject_path_timeout", + "worker_failed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "kind", + "intentional", + "trigger" + ], + "type": "object" + }, + "verdict": { + "enum": [ + "eligible_nonessential_activity_observed_after_confirmed_refusal", + "retained_consent_signal_contradiction_observed_after_confirmed_refusal", + "no_eligible_nonessential_activity_observed_during_completed_window", + "no_confirmed_post_refusal_verdict" + ], + "type": "string" + } + }, + "required": [ + "status", + "refusalExercised", + "observationCount", + "productionProjectable", + "evidenceDisposition", + "indeterminateReason", + "verdict", + "interpretation", + "observationStrategy", + "termination", + "completedAt", + "coverageLimitations", + "limitations" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +]
1 tool update
- Changed
certscore_scan_site1 field changed- changed
Input schema / properties / taskContext / properties / questionSummary / maxLengthPrevious value: -300New value: +8192
1 tool update
- Changed
certscore_get_report_evidence_page3 fields changed- removed
Output schema / properties / download / properties / authentication / constRemoved value: -"same_access_rules_as_mcp" - added
Output schema / properties / download / properties / authentication / enumAdded value: +[ + "same_access_rules_as_mcp", + "short_lived_report_link", + "public" +] - added
Output schema / properties / download / properties / expiresAtAdded value: +{ + "format": "date-time", + "type": "string" +}
1 tool update
- Changed
certscore_get_report_evidence_page1 field changed- added
Output schema / properties / downloadAdded value: +{ + "additionalProperties": false, + "properties": { + "authentication": { + "const": "same_access_rules_as_mcp", + "type": "string" + }, + "bytes": { + "minimum": 0, + "type": "integer" + }, + "instructions": { + "type": "string" + }, + "mediaType": { + "const": "application/json", + "type": "string" + }, + "url": { + "format": "uri", + "type": "string" + } + }, + "required": [ + "url", + "mediaType", + "bytes", + "authentication", + "instructions" + ], + "type": "object" +}
1 tool update
- Added
certscore_get_report_evidence_page
1 tool update
- Changed
certscore_get_scan_bundle1 field changed- added
Output schema / properties / preConsentCookiesTrackers / properties / summary / properties / storageCountAdded value: +{ + "minimum": 0, + "type": "integer" +}
3 tool updates
- Changed
certscore_get_scan_bundle2 fields changed- changed
Output schema / properties / postAcceptObservation / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "acceptanceExercised": { - "type": "boolean" - }, - "completedAt": { - "type": [ - "string", - "null" - ] - }, - "coverageLimitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "evidenceDisposition": { - "enum": [ - "confirmed", - "indeterminate" - ], - "type": "string" - }, - "indeterminateReason": { - "anyOf": [ - { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "interpretation": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "limitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "observationCount": { - "minimum": 0, - "type": "integer" - }, - "observationStrategy": { - "enum": [ - "stop_on_first_eligible_activity", - "not_applicable" - ], - "type": "string" - }, - "productionProjectable": { - "type": "boolean" - }, - "status": { - "enum": [ - "confirmed_observation", - "confirmed_clean", - "unconfirmed", - "not_attempted", - "unsupported", - "aborted" - ], - "type": "string" - }, - "termination": { - "additionalProperties": false, - "properties": { - "intentional": { - "type": "boolean" - }, - "kind": { - "enum": [ - "evidence_satisfied", - "window_elapsed", - "unavailable" - ], - "type": "string" - }, - "trigger": { - "enum": [ - "non_essential_request_observed", - "non_essential_storage_write_observed", - "acceptance_signal_contradiction_observed", - "window_elapsed", - "accept_control_not_observed", - "accept_path_timeout", - "accept_observation_window_truncated", - "worker_failed", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "kind", - "intentional", - "trigger" - ], - "type": "object" - }, - "verdict": { - "enum": [ - "eligible_nonessential_activity_observed_after_confirmed_acceptance", - "retained_consent_signal_contradiction_observed_after_confirmed_acceptance", - "no_eligible_nonessential_activity_observed_during_completed_window", - "no_confirmed_post_accept_verdict" - ], - "type": "string" - } - }, - "required": [ - "status", - "acceptanceExercised", - "observationCount", - "productionProjectable", - "evidenceDisposition", - "indeterminateReason", - "verdict", - "interpretation", - "observationStrategy", - "termination", - "completedAt", - "coverageLimitations", - "limitations" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "acceptanceExercised": { + "type": "boolean" + }, + "afterAction": { + "additionalProperties": false, + "properties": { + "action": { + "enum": [ + "accept", + "reject" + ], + "type": "string" + }, + "activationStatus": { + "enum": [ + "completed", + "uncertain" + ], + "type": "string" + }, + "policyVersion": { + "enum": [ + "bounded_after_action_capture.v1", + "bounded_after_action_capture.v2" + ], + "type": "string" + }, + "requestCount": { + "minimum": 0, + "type": "integer" + }, + "requestsDropped": { + "minimum": 0, + "type": "integer" + }, + "stopReason": { + "enum": [ + "window_elapsed", + "aborted", + "target_changed", + "click_uncertain" + ], + "type": "string" + }, + "storageSnapshotRetained": { + "type": "boolean" + }, + "storageWriteCount": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "policyVersion", + "action", + "activationStatus", + "stopReason", + "requestsDropped", + "requestCount", + "storageWriteCount", + "storageSnapshotRetained" + ], + "type": "object" + }, + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "coverageLimitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "evidenceDisposition": { + "enum": [ + "confirmed", + "indeterminate" + ], + "type": "string" + }, + "indeterminateReason": { + "anyOf": [ + { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "interpretation": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "observationCount": { + "minimum": 0, + "type": "integer" + }, + "observationStrategy": { + "enum": [ + "stop_on_first_eligible_activity", + "not_applicable" + ], + "type": "string" + }, + "productionProjectable": { + "type": "boolean" + }, + "status": { + "enum": [ + "confirmed_observation", + "confirmed_clean", + "unconfirmed", + "not_attempted", + "unsupported", + "aborted" + ], + "type": "string" + }, + "termination": { + "additionalProperties": false, + "properties": { + "intentional": { + "type": "boolean" + }, + "kind": { + "enum": [ + "evidence_satisfied", + "window_elapsed", + "unavailable" + ], + "type": "string" + }, + "trigger": { + "enum": [ + "non_essential_request_observed", + "non_essential_storage_write_observed", + "acceptance_signal_contradiction_observed", + "window_elapsed", + "accept_control_not_observed", + "accept_path_timeout", + "accept_observation_window_truncated", + "worker_failed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "kind", + "intentional", + "trigger" + ], + "type": "object" + }, + "verdict": { + "enum": [ + "eligible_nonessential_activity_observed_after_confirmed_acceptance", + "retained_consent_signal_contradiction_observed_after_confirmed_acceptance", + "no_eligible_nonessential_activity_observed_during_completed_window", + "no_confirmed_post_accept_verdict" + ], + "type": "string" + } + }, + "required": [ + "status", + "acceptanceExercised", + "observationCount", + "productionProjectable", + "evidenceDisposition", + "indeterminateReason", + "verdict", + "interpretation", + "observationStrategy", + "termination", + "completedAt", + "coverageLimitations", + "limitations" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +] - changed
Output schema / properties / postRefusalObservation / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "completedAt": { - "type": [ - "string", - "null" - ] - }, - "coverageLimitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "evidenceDisposition": { - "enum": [ - "confirmed", - "indeterminate" - ], - "type": "string" - }, - "indeterminateReason": { - "anyOf": [ - { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "interpretation": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "limitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "observationCount": { - "minimum": 0, - "type": "integer" - }, - "observationStrategy": { - "enum": [ - "stop_on_first_eligible_activity", - "not_applicable" - ], - "type": "string" - }, - "productionProjectable": { - "type": "boolean" - }, - "refusalExercised": { - "type": "boolean" - }, - "status": { - "enum": [ - "confirmed_observation", - "confirmed_clean", - "unconfirmed", - "not_attempted", - "unsupported", - "aborted" - ], - "type": "string" - }, - "termination": { - "additionalProperties": false, - "properties": { - "intentional": { - "type": "boolean" - }, - "kind": { - "enum": [ - "evidence_satisfied", - "window_elapsed", - "unavailable" - ], - "type": "string" - }, - "trigger": { - "enum": [ - "non_essential_request_observed", - "non_essential_storage_write_observed", - "refusal_signal_contradiction_observed", - "window_elapsed", - "reject_path_timeout", - "worker_failed", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "kind", - "intentional", - "trigger" - ], - "type": "object" - }, - "verdict": { - "enum": [ - "eligible_nonessential_activity_observed_after_confirmed_refusal", - "retained_consent_signal_contradiction_observed_after_confirmed_refusal", - "no_eligible_nonessential_activity_observed_during_completed_window", - "no_confirmed_post_refusal_verdict" - ], - "type": "string" - } - }, - "required": [ - "status", - "refusalExercised", - "observationCount", - "productionProjectable", - "evidenceDisposition", - "indeterminateReason", - "verdict", - "interpretation", - "observationStrategy", - "termination", - "completedAt", - "coverageLimitations", - "limitations" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "afterAction": { + "$ref": "#/properties/postAcceptObservation/anyOf/0/anyOf/1/anyOf/0/properties/afterAction" + }, + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "coverageLimitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "evidenceDisposition": { + "enum": [ + "confirmed", + "indeterminate" + ], + "type": "string" + }, + "indeterminateReason": { + "anyOf": [ + { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "interpretation": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "observationCount": { + "minimum": 0, + "type": "integer" + }, + "observationStrategy": { + "enum": [ + "stop_on_first_eligible_activity", + "not_applicable" + ], + "type": "string" + }, + "productionProjectable": { + "type": "boolean" + }, + "refusalExercised": { + "type": "boolean" + }, + "status": { + "enum": [ + "confirmed_observation", + "confirmed_clean", + "unconfirmed", + "not_attempted", + "unsupported", + "aborted" + ], + "type": "string" + }, + "termination": { + "additionalProperties": false, + "properties": { + "intentional": { + "type": "boolean" + }, + "kind": { + "enum": [ + "evidence_satisfied", + "window_elapsed", + "unavailable" + ], + "type": "string" + }, + "trigger": { + "enum": [ + "non_essential_request_observed", + "non_essential_storage_write_observed", + "refusal_signal_contradiction_observed", + "window_elapsed", + "reject_path_timeout", + "worker_failed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "kind", + "intentional", + "trigger" + ], + "type": "object" + }, + "verdict": { + "enum": [ + "eligible_nonessential_activity_observed_after_confirmed_refusal", + "retained_consent_signal_contradiction_observed_after_confirmed_refusal", + "no_eligible_nonessential_activity_observed_during_completed_window", + "no_confirmed_post_refusal_verdict" + ], + "type": "string" + } + }, + "required": [ + "status", + "refusalExercised", + "observationCount", + "productionProjectable", + "evidenceDisposition", + "indeterminateReason", + "verdict", + "interpretation", + "observationStrategy", + "termination", + "completedAt", + "coverageLimitations", + "limitations" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +]
- Changed
certscore_get_scan_status2 fields changed- changed
Output schema / properties / postAcceptObservation / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "acceptanceExercised": { - "type": "boolean" - }, - "completedAt": { - "type": [ - "string", - "null" - ] - }, - "coverageLimitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "evidenceDisposition": { - "enum": [ - "confirmed", - "indeterminate" - ], - "type": "string" - }, - "indeterminateReason": { - "anyOf": [ - { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "interpretation": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "limitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "observationCount": { - "minimum": 0, - "type": "integer" - }, - "observationStrategy": { - "enum": [ - "stop_on_first_eligible_activity", - "not_applicable" - ], - "type": "string" - }, - "productionProjectable": { - "type": "boolean" - }, - "status": { - "enum": [ - "confirmed_observation", - "confirmed_clean", - "unconfirmed", - "not_attempted", - "unsupported", - "aborted" - ], - "type": "string" - }, - "termination": { - "additionalProperties": false, - "properties": { - "intentional": { - "type": "boolean" - }, - "kind": { - "enum": [ - "evidence_satisfied", - "window_elapsed", - "unavailable" - ], - "type": "string" - }, - "trigger": { - "enum": [ - "non_essential_request_observed", - "non_essential_storage_write_observed", - "acceptance_signal_contradiction_observed", - "window_elapsed", - "accept_control_not_observed", - "accept_path_timeout", - "accept_observation_window_truncated", - "worker_failed", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "kind", - "intentional", - "trigger" - ], - "type": "object" - }, - "verdict": { - "enum": [ - "eligible_nonessential_activity_observed_after_confirmed_acceptance", - "retained_consent_signal_contradiction_observed_after_confirmed_acceptance", - "no_eligible_nonessential_activity_observed_during_completed_window", - "no_confirmed_post_accept_verdict" - ], - "type": "string" - } - }, - "required": [ - "status", - "acceptanceExercised", - "observationCount", - "productionProjectable", - "evidenceDisposition", - "indeterminateReason", - "verdict", - "interpretation", - "observationStrategy", - "termination", - "completedAt", - "coverageLimitations", - "limitations" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "acceptanceExercised": { + "type": "boolean" + }, + "afterAction": { + "additionalProperties": false, + "properties": { + "action": { + "enum": [ + "accept", + "reject" + ], + "type": "string" + }, + "activationStatus": { + "enum": [ + "completed", + "uncertain" + ], + "type": "string" + }, + "policyVersion": { + "enum": [ + "bounded_after_action_capture.v1", + "bounded_after_action_capture.v2" + ], + "type": "string" + }, + "requestCount": { + "minimum": 0, + "type": "integer" + }, + "requestsDropped": { + "minimum": 0, + "type": "integer" + }, + "stopReason": { + "enum": [ + "window_elapsed", + "aborted", + "target_changed", + "click_uncertain" + ], + "type": "string" + }, + "storageSnapshotRetained": { + "type": "boolean" + }, + "storageWriteCount": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "policyVersion", + "action", + "activationStatus", + "stopReason", + "requestsDropped", + "requestCount", + "storageWriteCount", + "storageSnapshotRetained" + ], + "type": "object" + }, + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "coverageLimitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "evidenceDisposition": { + "enum": [ + "confirmed", + "indeterminate" + ], + "type": "string" + }, + "indeterminateReason": { + "anyOf": [ + { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "interpretation": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "observationCount": { + "minimum": 0, + "type": "integer" + }, + "observationStrategy": { + "enum": [ + "stop_on_first_eligible_activity", + "not_applicable" + ], + "type": "string" + }, + "productionProjectable": { + "type": "boolean" + }, + "status": { + "enum": [ + "confirmed_observation", + "confirmed_clean", + "unconfirmed", + "not_attempted", + "unsupported", + "aborted" + ], + "type": "string" + }, + "termination": { + "additionalProperties": false, + "properties": { + "intentional": { + "type": "boolean" + }, + "kind": { + "enum": [ + "evidence_satisfied", + "window_elapsed", + "unavailable" + ], + "type": "string" + }, + "trigger": { + "enum": [ + "non_essential_request_observed", + "non_essential_storage_write_observed", + "acceptance_signal_contradiction_observed", + "window_elapsed", + "accept_control_not_observed", + "accept_path_timeout", + "accept_observation_window_truncated", + "worker_failed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "kind", + "intentional", + "trigger" + ], + "type": "object" + }, + "verdict": { + "enum": [ + "eligible_nonessential_activity_observed_after_confirmed_acceptance", + "retained_consent_signal_contradiction_observed_after_confirmed_acceptance", + "no_eligible_nonessential_activity_observed_during_completed_window", + "no_confirmed_post_accept_verdict" + ], + "type": "string" + } + }, + "required": [ + "status", + "acceptanceExercised", + "observationCount", + "productionProjectable", + "evidenceDisposition", + "indeterminateReason", + "verdict", + "interpretation", + "observationStrategy", + "termination", + "completedAt", + "coverageLimitations", + "limitations" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +] - changed
Output schema / properties / postRefusalObservation / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "completedAt": { - "type": [ - "string", - "null" - ] - }, - "coverageLimitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "evidenceDisposition": { - "enum": [ - "confirmed", - "indeterminate" - ], - "type": "string" - }, - "indeterminateReason": { - "anyOf": [ - { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "interpretation": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "limitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "observationCount": { - "minimum": 0, - "type": "integer" - }, - "observationStrategy": { - "enum": [ - "stop_on_first_eligible_activity", - "not_applicable" - ], - "type": "string" - }, - "productionProjectable": { - "type": "boolean" - }, - "refusalExercised": { - "type": "boolean" - }, - "status": { - "enum": [ - "confirmed_observation", - "confirmed_clean", - "unconfirmed", - "not_attempted", - "unsupported", - "aborted" - ], - "type": "string" - }, - "termination": { - "additionalProperties": false, - "properties": { - "intentional": { - "type": "boolean" - }, - "kind": { - "enum": [ - "evidence_satisfied", - "window_elapsed", - "unavailable" - ], - "type": "string" - }, - "trigger": { - "enum": [ - "non_essential_request_observed", - "non_essential_storage_write_observed", - "refusal_signal_contradiction_observed", - "window_elapsed", - "reject_path_timeout", - "worker_failed", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "kind", - "intentional", - "trigger" - ], - "type": "object" - }, - "verdict": { - "enum": [ - "eligible_nonessential_activity_observed_after_confirmed_refusal", - "retained_consent_signal_contradiction_observed_after_confirmed_refusal", - "no_eligible_nonessential_activity_observed_during_completed_window", - "no_confirmed_post_refusal_verdict" - ], - "type": "string" - } - }, - "required": [ - "status", - "refusalExercised", - "observationCount", - "productionProjectable", - "evidenceDisposition", - "indeterminateReason", - "verdict", - "interpretation", - "observationStrategy", - "termination", - "completedAt", - "coverageLimitations", - "limitations" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "afterAction": { + "$ref": "#/properties/postAcceptObservation/anyOf/0/anyOf/1/anyOf/0/properties/afterAction" + }, + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "coverageLimitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "evidenceDisposition": { + "enum": [ + "confirmed", + "indeterminate" + ], + "type": "string" + }, + "indeterminateReason": { + "anyOf": [ + { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "interpretation": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "observationCount": { + "minimum": 0, + "type": "integer" + }, + "observationStrategy": { + "enum": [ + "stop_on_first_eligible_activity", + "not_applicable" + ], + "type": "string" + }, + "productionProjectable": { + "type": "boolean" + }, + "refusalExercised": { + "type": "boolean" + }, + "status": { + "enum": [ + "confirmed_observation", + "confirmed_clean", + "unconfirmed", + "not_attempted", + "unsupported", + "aborted" + ], + "type": "string" + }, + "termination": { + "additionalProperties": false, + "properties": { + "intentional": { + "type": "boolean" + }, + "kind": { + "enum": [ + "evidence_satisfied", + "window_elapsed", + "unavailable" + ], + "type": "string" + }, + "trigger": { + "enum": [ + "non_essential_request_observed", + "non_essential_storage_write_observed", + "refusal_signal_contradiction_observed", + "window_elapsed", + "reject_path_timeout", + "worker_failed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "kind", + "intentional", + "trigger" + ], + "type": "object" + }, + "verdict": { + "enum": [ + "eligible_nonessential_activity_observed_after_confirmed_refusal", + "retained_consent_signal_contradiction_observed_after_confirmed_refusal", + "no_eligible_nonessential_activity_observed_during_completed_window", + "no_confirmed_post_refusal_verdict" + ], + "type": "string" + } + }, + "required": [ + "status", + "refusalExercised", + "observationCount", + "productionProjectable", + "evidenceDisposition", + "indeterminateReason", + "verdict", + "interpretation", + "observationStrategy", + "termination", + "completedAt", + "coverageLimitations", + "limitations" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +]
- Changed
certscore_scan_site2 fields changed- changed
Output schema / properties / postAcceptObservation / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "acceptanceExercised": { - "type": "boolean" - }, - "completedAt": { - "type": [ - "string", - "null" - ] - }, - "coverageLimitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "evidenceDisposition": { - "enum": [ - "confirmed", - "indeterminate" - ], - "type": "string" - }, - "indeterminateReason": { - "anyOf": [ - { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "interpretation": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "limitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "observationCount": { - "minimum": 0, - "type": "integer" - }, - "observationStrategy": { - "enum": [ - "stop_on_first_eligible_activity", - "not_applicable" - ], - "type": "string" - }, - "productionProjectable": { - "type": "boolean" - }, - "status": { - "enum": [ - "confirmed_observation", - "confirmed_clean", - "unconfirmed", - "not_attempted", - "unsupported", - "aborted" - ], - "type": "string" - }, - "termination": { - "additionalProperties": false, - "properties": { - "intentional": { - "type": "boolean" - }, - "kind": { - "enum": [ - "evidence_satisfied", - "window_elapsed", - "unavailable" - ], - "type": "string" - }, - "trigger": { - "enum": [ - "non_essential_request_observed", - "non_essential_storage_write_observed", - "acceptance_signal_contradiction_observed", - "window_elapsed", - "accept_control_not_observed", - "accept_path_timeout", - "accept_observation_window_truncated", - "worker_failed", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "kind", - "intentional", - "trigger" - ], - "type": "object" - }, - "verdict": { - "enum": [ - "eligible_nonessential_activity_observed_after_confirmed_acceptance", - "retained_consent_signal_contradiction_observed_after_confirmed_acceptance", - "no_eligible_nonessential_activity_observed_during_completed_window", - "no_confirmed_post_accept_verdict" - ], - "type": "string" - } - }, - "required": [ - "status", - "acceptanceExercised", - "observationCount", - "productionProjectable", - "evidenceDisposition", - "indeterminateReason", - "verdict", - "interpretation", - "observationStrategy", - "termination", - "completedAt", - "coverageLimitations", - "limitations" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "acceptanceExercised": { + "type": "boolean" + }, + "afterAction": { + "additionalProperties": false, + "properties": { + "action": { + "enum": [ + "accept", + "reject" + ], + "type": "string" + }, + "activationStatus": { + "enum": [ + "completed", + "uncertain" + ], + "type": "string" + }, + "policyVersion": { + "enum": [ + "bounded_after_action_capture.v1", + "bounded_after_action_capture.v2" + ], + "type": "string" + }, + "requestCount": { + "minimum": 0, + "type": "integer" + }, + "requestsDropped": { + "minimum": 0, + "type": "integer" + }, + "stopReason": { + "enum": [ + "window_elapsed", + "aborted", + "target_changed", + "click_uncertain" + ], + "type": "string" + }, + "storageSnapshotRetained": { + "type": "boolean" + }, + "storageWriteCount": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "policyVersion", + "action", + "activationStatus", + "stopReason", + "requestsDropped", + "requestCount", + "storageWriteCount", + "storageSnapshotRetained" + ], + "type": "object" + }, + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "coverageLimitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "evidenceDisposition": { + "enum": [ + "confirmed", + "indeterminate" + ], + "type": "string" + }, + "indeterminateReason": { + "anyOf": [ + { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "interpretation": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "observationCount": { + "minimum": 0, + "type": "integer" + }, + "observationStrategy": { + "enum": [ + "stop_on_first_eligible_activity", + "not_applicable" + ], + "type": "string" + }, + "productionProjectable": { + "type": "boolean" + }, + "status": { + "enum": [ + "confirmed_observation", + "confirmed_clean", + "unconfirmed", + "not_attempted", + "unsupported", + "aborted" + ], + "type": "string" + }, + "termination": { + "additionalProperties": false, + "properties": { + "intentional": { + "type": "boolean" + }, + "kind": { + "enum": [ + "evidence_satisfied", + "window_elapsed", + "unavailable" + ], + "type": "string" + }, + "trigger": { + "enum": [ + "non_essential_request_observed", + "non_essential_storage_write_observed", + "acceptance_signal_contradiction_observed", + "window_elapsed", + "accept_control_not_observed", + "accept_path_timeout", + "accept_observation_window_truncated", + "worker_failed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "kind", + "intentional", + "trigger" + ], + "type": "object" + }, + "verdict": { + "enum": [ + "eligible_nonessential_activity_observed_after_confirmed_acceptance", + "retained_consent_signal_contradiction_observed_after_confirmed_acceptance", + "no_eligible_nonessential_activity_observed_during_completed_window", + "no_confirmed_post_accept_verdict" + ], + "type": "string" + } + }, + "required": [ + "status", + "acceptanceExercised", + "observationCount", + "productionProjectable", + "evidenceDisposition", + "indeterminateReason", + "verdict", + "interpretation", + "observationStrategy", + "termination", + "completedAt", + "coverageLimitations", + "limitations" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +] - changed
Output schema / properties / postRefusalObservation / anyOfPrevious value: -[ - { - "anyOf": [ - { - "not": {} - }, - { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "completedAt": { - "type": [ - "string", - "null" - ] - }, - "coverageLimitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "evidenceDisposition": { - "enum": [ - "confirmed", - "indeterminate" - ], - "type": "string" - }, - "indeterminateReason": { - "anyOf": [ - { - "maxLength": 160, - "minLength": 1, - "type": "string" - }, - { - "type": "null" - } - ] - }, - "interpretation": { - "maxLength": 500, - "minLength": 1, - "type": "string" - }, - "limitations": { - "items": { - "type": "string" - }, - "maxItems": 24, - "type": "array" - }, - "observationCount": { - "minimum": 0, - "type": "integer" - }, - "observationStrategy": { - "enum": [ - "stop_on_first_eligible_activity", - "not_applicable" - ], - "type": "string" - }, - "productionProjectable": { - "type": "boolean" - }, - "refusalExercised": { - "type": "boolean" - }, - "status": { - "enum": [ - "confirmed_observation", - "confirmed_clean", - "unconfirmed", - "not_attempted", - "unsupported", - "aborted" - ], - "type": "string" - }, - "termination": { - "additionalProperties": false, - "properties": { - "intentional": { - "type": "boolean" - }, - "kind": { - "enum": [ - "evidence_satisfied", - "window_elapsed", - "unavailable" - ], - "type": "string" - }, - "trigger": { - "enum": [ - "non_essential_request_observed", - "non_essential_storage_write_observed", - "refusal_signal_contradiction_observed", - "window_elapsed", - "reject_path_timeout", - "worker_failed", - "unavailable" - ], - "type": "string" - } - }, - "required": [ - "kind", - "intentional", - "trigger" - ], - "type": "object" - }, - "verdict": { - "enum": [ - "eligible_nonessential_activity_observed_after_confirmed_refusal", - "retained_consent_signal_contradiction_observed_after_confirmed_refusal", - "no_eligible_nonessential_activity_observed_during_completed_window", - "no_confirmed_post_refusal_verdict" - ], - "type": "string" - } - }, - "required": [ - "status", - "refusalExercised", - "observationCount", - "productionProjectable", - "evidenceDisposition", - "indeterminateReason", - "verdict", - "interpretation", - "observationStrategy", - "termination", - "completedAt", - "coverageLimitations", - "limitations" - ], - "type": "object" - }, - { - "type": "null" - } - ] - } - ] - }, - { - "type": "null" - } -]New value: +[ + { + "anyOf": [ + { + "not": {} + }, + { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "afterAction": { + "$ref": "#/properties/postAcceptObservation/anyOf/0/anyOf/1/anyOf/0/properties/afterAction" + }, + "completedAt": { + "type": [ + "string", + "null" + ] + }, + "coverageLimitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "evidenceDisposition": { + "enum": [ + "confirmed", + "indeterminate" + ], + "type": "string" + }, + "indeterminateReason": { + "anyOf": [ + { + "maxLength": 160, + "minLength": 1, + "type": "string" + }, + { + "type": "null" + } + ] + }, + "interpretation": { + "maxLength": 500, + "minLength": 1, + "type": "string" + }, + "limitations": { + "items": { + "type": "string" + }, + "maxItems": 24, + "type": "array" + }, + "observationCount": { + "minimum": 0, + "type": "integer" + }, + "observationStrategy": { + "enum": [ + "stop_on_first_eligible_activity", + "not_applicable" + ], + "type": "string" + }, + "productionProjectable": { + "type": "boolean" + }, + "refusalExercised": { + "type": "boolean" + }, + "status": { + "enum": [ + "confirmed_observation", + "confirmed_clean", + "unconfirmed", + "not_attempted", + "unsupported", + "aborted" + ], + "type": "string" + }, + "termination": { + "additionalProperties": false, + "properties": { + "intentional": { + "type": "boolean" + }, + "kind": { + "enum": [ + "evidence_satisfied", + "window_elapsed", + "unavailable" + ], + "type": "string" + }, + "trigger": { + "enum": [ + "non_essential_request_observed", + "non_essential_storage_write_observed", + "refusal_signal_contradiction_observed", + "window_elapsed", + "reject_path_timeout", + "worker_failed", + "unavailable" + ], + "type": "string" + } + }, + "required": [ + "kind", + "intentional", + "trigger" + ], + "type": "object" + }, + "verdict": { + "enum": [ + "eligible_nonessential_activity_observed_after_confirmed_refusal", + "retained_consent_signal_contradiction_observed_after_confirmed_refusal", + "no_eligible_nonessential_activity_observed_during_completed_window", + "no_confirmed_post_refusal_verdict" + ], + "type": "string" + } + }, + "required": [ + "status", + "refusalExercised", + "observationCount", + "productionProjectable", + "evidenceDisposition", + "indeterminateReason", + "verdict", + "interpretation", + "observationStrategy", + "termination", + "completedAt", + "coverageLimitations", + "limitations" + ], + "type": "object" + }, + { + "type": "null" + } + ] + } + ] + }, + { + "type": "null" + } +]
Related MCP Connectors
Cookie consent scanner: GDPR, CCPA, GCMv2. PASS/FAIL compliance checklists with fix recommendations.
GDPR/CCPA cookie consent: scan sites for cookies, track consent rates, generate privacy policies.
Cookie consent for GDPR/CCPA: scan sites for trackers, configure consent banners, get install code.
Free front-end security check for any website: a grade plus the secrets and keys it exposes.
Related MCP Servers
- AlicenseAqualityDmaintenanceAudit any website for privacy, security, accessibility, and performance issues — with scores, grades, and actionable fix instructions. No account required.314 npmMIT

pageguard-mcpofficial
AlicenseAqualityFmaintenanceScan any project or website for privacy compliance issues directly in your AI coding tool. Detects tracking tech, cookies, and third-party data collection. Works in Claude Code, Cursor, and Windsurf.337 npm1MIT- AlicenseNot gradedqualityCmaintenanceScans public URLs for compliance and security issues such as leaked API keys, exposed files, missing privacy pages, and security headers, helping developers identify gaps before launch.MIT
- AlicenseNot gradedqualityCmaintenanceHelps individuals analyze privacy policies and verify if a website's technical behavior matches its stated privacy practices.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.