outcomeA Spec's row on the tests lens counts its exercised keyed rules
spec:consumers.spec-studio.lenses.tests.coverage-rowPacks: pack:self-hosting-v1, pack:spec-studio-v1
Design: no design entries · no pinned declarations · no decisions
Findings: no errors, no warnings
specs/consumers/spec-studio.lenses.tests.coverage-row.sdp.md
No open questions and no blocking questions; implementation binding none, verifier binding present, and expected-outcome oracle none.
Given
a Spec with {keyed: 2} keyed rules and {unkeyed: 1} unkeyed rules
an example bound to a test anchor that exercises {exercised: 1} of those keyed rulesWhen
the build renders the tests lens
Then
the Spec's row reads {coverage: "1 of 2 keyed rules exercised"}
the Spec's row reads its verifier binding as {binding: "present"}Composing needs the script.
Intent
- Execute a tests-lens row: the keyed rules an enabled example exercises against those it does not, and the unkeyed rules apart.
assumptions- The world writes a root with one behavior Spec whose Behavior section holds two keyed rules and one unkeyed rule, and one example child that verifies it, exercising the first key, bound by a
specTestanchor in a test file; it builds the page set and reads the Spec's row on the tests page.
- The world writes a root with one behavior Spec whose Behavior section holds two keyed rules and one unkeyed rule, and one example child that verifies it, exercising the first key, bound by a
Behavior
Examples
Given a Spec with {keyed: 2} keyed rules and {unkeyed: 1} unkeyed rules
Given an example bound to a test anchor that exercises {exercised: 1} of those keyed rules
When the build renders the tests lens
Then the Spec's row reads {coverage: "1 of 2 keyed rules exercised"}
Then the Spec's row reads its verifier binding as {binding: "present"}Verification
Verifier bindings
- test:protocol.studio-tests-coverage-row · anchored · test anchor binding present ·
test/studio-s1.test.ts:769External run evidence from
test/studio-s1.test.tsTest anchors:
test:protocol.studio-architecture-planned-apart,test:protocol.studio-coverage-literal,test:protocol.studio-coverage-number,test:protocol.studio-diagram-folds-context,test:protocol.studio-diagram-folds-layer,test:protocol.studio-diagram-within-bound,test:protocol.studio-lenses,test:protocol.studio-tests-coverage-row. Specs verified by those bindings: spec:consumers.agent-surface.example-space-coverage, spec:consumers.agent-surface.example-space-coverage.number-not-enumerable, spec:consumers.agent-surface.example-space-coverage.uncovered-literal, spec:consumers.spec-studio.data.recipe-answers, spec:consumers.spec-studio.diagrams, spec:consumers.spec-studio.diagrams.folds-by-context, spec:consumers.spec-studio.diagrams.folds-by-layer, spec:consumers.spec-studio.diagrams.within-bound, spec:consumers.spec-studio.lenses, spec:consumers.spec-studio.lenses.architecture, spec:consumers.spec-studio.lenses.architecture.planned-apart, spec:consumers.spec-studio.lenses.evidence, spec:consumers.spec-studio.lenses.packs, spec:consumers.spec-studio.lenses.tests, spec:consumers.spec-studio.lenses.tests.coverage-row.Run 1: external run evidence from vitest 4.1.10
Build: CI 391 · Branch: cursor/media-plan-and-articles-09b1 · Commit: 076cd4f1f85640d8236e5cca1bffffa68ab79a33 · Start: 2026-10-31T15:32:20.471Z · Stop: 2026-10-31T15:34:02.073Z
Name Suite Result Duration bounds and folds 12 components Studio diagrams passed 30.61 ms bounds and folds 45 components Studio diagrams passed 7.71 ms bounds and folds 50 components Studio diagrams passed 18.03 ms keeps every edge in an open text fallback Studio diagrams passed 2.56 ms orders grid contexts and layers and wraps cells within the fixed width budget Studio diagrams passed 4.7 ms draws planned-use edges dashed independently of planned box outlines Studio diagrams passed 0.78 ms checks the edge bound even when boxes fit Studio diagrams passed 0.69 ms places folded contexts and layers in their own bands below the grid Studio diagrams passed 4.25 ms places outgoing relation bands above the subject and folds ties in relation order Studio diagrams passed 10.09 ms folds trace relation groups and leaves member overflow as text Studio diagrams passed 3.04 ms keeps recipe and diagram edges in code-unit order under forced Czech collation Studio lenses passed 129.74 ms publishes all five ordered lenses and honest evidence without script Studio lenses passed 41.5 ms reads verifier binding from the delivery fact and gives absent coverage its own filter value Studio lenses passed 17.84 ms labels a primitive-only space with no examples not measurable and hides it under covered Studio lenses passed 27.26 ms classifies 'number' with points [ '1' ] and mixed=false as 'not-measurable' Studio lenses passed 17.82 ms classifies 'string' with points [ '"a"' ] and mixed=false as 'not-measurable' Studio lenses passed 11.69 ms classifies 'boolean' with points [ 'true' ] and mixed=false as 'not-measurable' Studio lenses passed 13.27 ms classifies '"a"|"b"' with points [] and mixed=false as 'uncovered' Studio lenses passed 6.82 ms classifies '"a"|"b"' with points [ '"a"' ] and mixed=false as 'uncovered' Studio lenses passed 7.04 ms classifies '"a"|"b"' with points [ '"a"', '"b"' ] and mixed=false as 'covered' Studio lenses passed 20.44 ms classifies '"a"|"b"' with points [ '"a"' ] and mixed=true as 'uncovered' Studio lenses passed 19.79 ms classifies '"a"|"b"' with points [ '"a"', '"b"' ] and mixed=true as 'covered' Studio lenses passed 23.06 ms renders member subjects, code spans, used-by counts, differences and empty components Studio lenses passed 16.1 ms describes evidence sources as not tracked Studio lenses passed 2.69 ms executes the bound example against a fresh world An architecture within the bound draws in one diagram, the same bytes twice (spec:consumers.spec-studio.diagrams.within-bound) passed 18.43 ms executes the bound example against a fresh world An architecture over the bound folds by context (spec:consumers.spec-studio.diagrams.folds-by-context) passed 11.36 ms executes the bound example against a fresh world One context over the bound folds by layer (spec:consumers.spec-studio.diagrams.folds-by-layer) passed 11.28 ms executes the bound example against a fresh world A component design no anchor realizes draws planned beside the built one (spec:consumers.spec-studio.lenses.architecture.planned-apart) passed 21.54 ms executes the bound example against a fresh world A Spec's row on the tests lens counts its exercised keyed rules (spec:consumers.spec-studio.lenses.tests.coverage-row) passed 20.54 ms executes the bound example against a fresh world A literal no example binds is reported uncovered, and an unbound child is named (spec:consumers.agent-surface.example-space-coverage.uncovered-literal) passed 5.25 ms executes the bound example against a fresh world A number slot is not enumerable and reports no uncovered value (spec:consumers.agent-surface.example-space-coverage.number-not-enumerable) passed 3.13 ms reuses the build's reader and validation findings during Studio recipe evaluation not recorded passed 3.65 ms documents the component and member fields recipe 17 adds not recorded passed 1.47 ms evaluates each shipped recipe once for its assigned parameters and shares Pack totals, with base false not recorded passed 18.31 ms evaluates each shipped recipe once for its assigned parameters and shares Pack totals, with base true not recorded passed 15.91 ms keeps label lines bounded and orders member depths numerically with outside units last not recorded passed 1.76 ms labels planned uses, reports unreadable designs and keeps unknown structure visible not recorded passed 9.16 ms gives unstated context and layer folds addressable text descriptions not recorded passed 1.11 ms names a single edge relation once in the legend and preserves its text equivalent not recorded passed 1.76 ms names solid and planned uses once without repeating edge labels not recorded passed 0.58 ms
Design view
Requirement drawing
- Satisfying or referencing units: no recorded binding.
The diagram as text
- spec:consumers.spec-studio.lenses.tests.coverage-row: A Spec's row on the tests lens counts its exercised keyed rules · declared Spec
- spec:consumers.spec-studio.lenses.tests: The tests lens shows how far each Spec's verification reaches · declared Spec
- test:protocol.studio-tests-coverage-row: test:protocol.studio-tests-coverage-row · anchored test binding · binding present ·
test/studio-s1.test.ts:769 - spec:consumers.spec-studio.lenses.tests.coverage-row refines spec:consumers.spec-studio.lenses.tests · declared
- spec:consumers.spec-studio.lenses.tests.coverage-row verifies spec:consumers.spec-studio.lenses.tests · declared
- test:protocol.studio-tests-coverage-row verifies spec:consumers.spec-studio.lenses.tests.coverage-row · anchored
Mermaid source
Copyable source; the Studio draws static SVG.
Preferred and chosen syntax: requirementDiagram; exact refines, satisfies and verifies, with claim words in nodes and per-edge comments.
Decisions
No decision record named.
Runtime
No implementation neighborhood recorded.
Runtime observation: not tracked.
Evidence
Runtime observation: not tracked.
Build attestations: not tracked.
Deployments: not tracked.
Bills of materials: not tracked.
Impact
- E2: verifies · declared
The diagram as text
- spec:consumers.spec-studio.lenses.tests: The tests lens shows how far each Spec's verification reaches
- spec:consumers.spec-studio.lenses.tests.coverage-row: A Spec's row on the tests lens counts its exercised keyed rules
- spec:consumers.spec-studio.lenses.tests.coverage-row refines spec:consumers.spec-studio.lenses.tests · declared
- spec:consumers.spec-studio.lenses.tests.coverage-row verifies spec:consumers.spec-studio.lenses.tests · declared
Mermaid source
Copyable source; the Studio draws static SVG.
Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.
Rests on
- refines · spec:consumers.spec-studio.lenses.tests · stated ready, floor ready
Rested on by
No Spec rests on this Spec.
Relations
| Relation and direction | Other end | Claim | Reason | Exercised keys |
|---|---|---|---|---|
| refines · outgoing | The tests lens shows how far each Spec's verification reachesspec:consumers.spec-studio.lenses.tests · resolves | declared | None | None |
| verifies · outgoing | The tests lens shows how far each Spec's verification reachesspec:consumers.spec-studio.lenses.tests · resolves | declared | None | coverageRows |
Bindings
Implementation binding: none
Design reference: none
Verifier binding: present
- test:protocol.studio-tests-coverage-row · anchored ·
test/studio-s1.test.ts:769· test anchor
Expected-outcome oracle: none
Runtime observation: not tracked.
Run results: not recorded in the graph.
Findings
None.
Composing (0)
Composing needs the script.