CSS arithmetic
css.arithmetic
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
Integer arithmetic and syntax acceptance with explicit invalid controls retain exact computed results and residuals.
Find it in the repository
- Collector source
core/signals/css/svg-arithmetic.ts- Export
measurementModule· Signal object- Field definitions
core/definitions/css/arithmetic.ts- Capture membership
- Product capture ·
common/capture/product.ts - Page registration
app/signals/registry.ts- Field projection
core/results/measurement.ts
Execution contract
- Signal
css.arithmetic- Collector
css.arithmetic- API / surface
- core/signals/css/svg-arithmetic.ts
- Timeout
- 500 ms
- Companion signals
svg.transforms- Fixture inputs
- Declared requests (listed below)
Exact request inputs
[
{
"key": "css.arithmetic.plain-control",
"inputs": {
"plain-control": {
"width": "10px",
"expected": 10,
"tolerance": 0
}
},
"controls": {
"plain-control": [
{
"relationshipId": "css.plain-control",
"class": "required",
"preconditions": [
"declaration accepted",
"default zoom and reset CSS"
]
}
]
}
},
{
"key": "css.arithmetic.literal",
"inputs": {
"literal": {
"width": "37px",
"customProperties": {
"--a": "17px",
"--b": "20px"
},
"expected": 37,
"tolerance": 0,
"invalidControl": false
}
},
"controls": {
"literal": [
{
"relationshipId": "css.integer-width",
"class": "required",
"preconditions": [
"plain control satisfied",
"declaration accepted",
"fixed px inputs"
]
}
]
}
},
{
"key": "css.arithmetic.custom-calc",
"inputs": {
"custom-calc": {
"width": "calc(var(--a) + var(--b))",
"customProperties": {
"--a": "17px",
"--b": "20px"
},
"expected": 37,
"tolerance": 0,
"invalidControl": false
}
},
"controls": {
"custom-calc": [
{
"relationshipId": "css.integer-width",
"class": "required",
"preconditions": [
"plain control satisfied",
"declaration accepted",
"fixed px inputs"
]
}
]
}
},
{
"key": "css.arithmetic.min",
"inputs": {
"min": {
"width": "min(41px, 37px)",
"customProperties": {
"--a": "17px",
"--b": "20px"
},
"expected": 37,
"tolerance": 0,
"invalidControl": false
}
},
"controls": {
"min": [
{
"relationshipId": "css.integer-width",
"class": "required",
"preconditions": [
"plain control satisfied",
"declaration accepted",
"fixed px inputs"
]
}
]
}
},
{
"key": "css.arithmetic.max",
"inputs": {
"max": {
"width": "max(12px, 37px)",
"customProperties": {
"--a": "17px",
"--b": "20px"
},
"expected": 37,
"tolerance": 0,
"invalidControl": false
}
},
"controls": {
"max": [
{
"relationshipId": "css.integer-width",
"class": "required",
"preconditions": [
"plain control satisfied",
"declaration accepted",
"fixed px inputs"
]
}
]
}
},
{
"key": "css.arithmetic.clamp",
"inputs": {
"clamp": {
"width": "clamp(20px, 37px, 40px)",
"customProperties": {
"--a": "17px",
"--b": "20px"
},
"expected": 37,
"tolerance": 0,
"invalidControl": false
}
},
"controls": {
"clamp": [
{
"relationshipId": "css.integer-width",
"class": "required",
"preconditions": [
"plain control satisfied",
"declaration accepted",
"fixed px inputs"
]
}
]
}
},
{
"key": "css.arithmetic.invalid",
"inputs": {
"invalid": {
"width": "invalid-arithmetic-control",
"customProperties": {
"--a": "17px",
"--b": "20px"
},
"expected": 37,
"tolerance": 0,
"invalidControl": true
}
},
"controls": {
"invalid": [
{
"relationshipId": "css.integer-width",
"class": "required",
"preconditions": [
"plain control satisfied",
"declaration accepted",
"fixed px inputs"
]
}
]
}
}
]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/css.arithmetic. 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/css/svg-arithmetic"
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 |
|---|