Browser property surface
browser.property-surface
Ready · No signal has been run.
Results
Research focus
Selected evidence from this run. Cross-run stability and comparison verdicts require a session comparison.
Full evidence
| Property | Value |
|---|---|
| No results yet. No signal has been run. | |
JSON
Selected signal results for external comparison. Field statuses, controls and exact values are retained.
No run export is available.
Source
Source is not connected yet.
// Test source pending.Reference
Reference is not connected yet.
Definition
Reads named API and CSS property exposure and descriptors.
Find it in the repository
- Collector source
core/signals/browser/property-surface.ts- Export
measurementModule· Signal object- Field definitions
core/definitions/browser/property-surface.ts- Capture membership
- Product capture ·
common/capture/product.ts - Page registration
app/signals/registry.ts- Field projection
core/results/measurement.ts
Execution contract
- Signal
browser.property-surface- Collector
browser.property-surface- API / surface
- core/signals/browser/property-surface.ts
- Timeout
- 1000 ms
- Companion signals
- None
- Fixture inputs
- Inline owned corpora (listed below)
core/fixtures/browser/property-surface.json·sha256:1842f51c817eaacf9b14124f4dbb9234311c5c093f6d3ff6c68bec2d107dfe86
Exact request inputs
[
{
"key": "browser.property-surface.responses",
"inputs": {
"window-ReportingObserver": {
"target": "window",
"name": "ReportingObserver",
"camel": null
},
"window-CompressionStream": {
"target": "window",
"name": "CompressionStream",
"camel": null
},
"window-DecompressionStream": {
"target": "window",
"name": "DecompressionStream",
"camel": null
},
"window-scheduler": {
"target": "window",
"name": "scheduler",
"camel": null
},
"window-Scheduler": {
"target": "window",
"name": "Scheduler",
"camel": null
},
"window-BackgroundFetchManager": {
"target": "window",
"name": "BackgroundFetchManager",
"camel": null
},
"window-SyncManager": {
"target": "window",
"name": "SyncManager",
"camel": null
},
"window-CookieChangeEvent": {
"target": "window",
"name": "CookieChangeEvent",
"camel": null
},
"window-DigitalCredential": {
"target": "window",
"name": "DigitalCredential",
"camel": null
},
"window-NDEFReader": {
"target": "window",
"name": "NDEFReader",
"camel": null
},
"window-IdleDetector": {
"target": "window",
"name": "IdleDetector",
"camel": null
},
"window-CloseWatcher": {
"target": "window",
"name": "CloseWatcher",
"camel": null
},
"window-Navigation": {
"target": "window",
"name": "Navigation",
"camel": null
},
"window-NavigationActivation": {
"target": "window",
"name": "NavigationActivation",
"camel": null
},
"window-ViewTransitionTypeSet": {
"target": "window",
"name": "ViewTransitionTypeSet",
"camel": null
},
"window-CSSNestedDeclarations": {
"target": "window",
"name": "CSSNestedDeclarations",
"camel": null
},
"window-EditContext": {
"target": "window",
"name": "EditContext",
"camel": null
},
"window-CustomStateSet": {
"target": "window",
"name": "CustomStateSet",
"camel": null
},
"window-LaunchQueue": {
"target": "window",
"name": "LaunchQueue",
"camel": null
},
"window-PressureObserver": {
"target": "window",
"name": "PressureObserver",
"camel": null
},
"window-EyeDropper": {
"target": "window",
"name": "EyeDropper",
"camel": null
},
"window-DocumentPictureInPicture": {
"target": "window",
"name": "DocumentPictureInPicture",
"camel": null
},
"window-BarcodeDetector": {
"target": "window",
"name": "BarcodeDetector",
"camel": null
},
"window-TaskController": {
"target": "window",
"name": "TaskController",
"camel": null
},
"window-TaskSignal": {
"target": "window",
"name": "TaskSignal",
"camel": null
},
"style-accent-color": {
"target": "style",
"name": "accent-color",
"camel": "accentColor"
},
"style-scrollbar-gutter": {
"target": "style",
"name": "scrollbar-gutter",
"camel": "scrollbarGutter"
},
"style-app-region": {
"target": "style",
"name": "app-region",
"camel": "appRegion"
},
"style-font-synthesis-weight": {
"target": "style",
"name": "font-synthesis-weight",
"camel": "fontSynthesisWeight"
},
"style-text-emphasis-style": {
"target": "style",
"name": "text-emphasis-style",
"camel": "textEmphasisStyle"
},
"style-font-palette": {
"target": "style",
"name": "font-palette",
"camel": "fontPalette"
},
"style-rotate": {
"target": "style",
"name": "rotate",
"camel": "rotate"
},
"style-container-type": {
"target": "style",
"name": "container-type",
"camel": "containerType"
},
"style-hyphenate-character": {
"target": "style",
"name": "hyphenate-character",
"camel": "hyphenateCharacter"
},
"style-math-depth": {
"target": "style",
"name": "math-depth",
"camel": "mathDepth"
},
"style-initial-letter": {
"target": "style",
"name": "initial-letter",
"camel": "initialLetter"
},
"style-view-transition-name": {
"target": "style",
"name": "view-transition-name",
"camel": "viewTransitionName"
},
"style-animation-composition": {
"target": "style",
"name": "animation-composition",
"camel": "animationComposition"
},
"style-text-wrap": {
"target": "style",
"name": "text-wrap",
"camel": "textWrap"
},
"style-animation-timeline": {
"target": "style",
"name": "animation-timeline",
"camel": "animationTimeline"
},
"style-timeline-scope": {
"target": "style",
"name": "timeline-scope",
"camel": "timelineScope"
},
"prototype-webkitSpeechRecognition.phrases": {
"target": "prototype",
"name": "webkitSpeechRecognition.phrases",
"camel": null
},
"prototype-MessagePort.onclose": {
"target": "prototype",
"name": "MessagePort.onclose",
"camel": null
}
},
"controls": {}
}
]One collector runs per invocation. Results and JSON select this signal’s fields; any companions execute in the same collector.
Generated source manifest lists runtime files, fixture URLs and content digests for this build. The Source tab provides a copyable console sample.
Run and edit locally
From the repository root, start the Astro app, then open /signals/browser.property-surface. Edit the collector source and reload the page to load its new build.
pnpm run dev:webIn a browser module served by this repository’s Vite graph:
import { createCollector } from "/core/collect"
import { measurementModule } from "/core/signals/browser/property-surface"
const signal = measurementModule
const collector = createCollector()
const suite = { signals: [signal] }
const result = await collector.collect(suite)Reuse the collector owner for repeated calls so collection can enforce cleanup. This returns the collector’s raw result; app/signals/projection.ts selects the retained fields shown on this page.
rg -n 'measurementModule' core app tests
pnpm run check
pnpm run test tests/unit/app/focused-projection.test.ts| Property | Value |
|---|