Spec Studio

An unbound example below ready is data, not a warning

spec:validation.unbound-example-postureBusiness Rule · storyready floor ready

Packs: pack:self-hosting-v1

Design: no design entries · no pinned declarations · no decisions

Findings: no errors, no warnings

specs/validation/unbound-example-posture.sdp.md

No open questions and no blocking questions; implementation binding present, verifier binding present, and expected-outcome oracle present.

Intent
problem
A corpus designed before its code exists gets one verifies-linkage warning per example for a state that is honest at the rung the example states, so a real warning hides among them.
outcome
Keep the unbound state of an example visible as data, and reserve the warning for an example that states ready.
Rule
rule line 16 · specs/validation/unbound-example-posture.sdp.md:16
An example that declares verifies and has no resolving test anchor is named by the verifies-linkage warning only when the example states ready.
rule line 17 · specs/validation/unbound-example-posture.sdp.md:17
Below ready the same state is data. The reader reports the example's verifier binding as declared and not enabled, the declared-versus-enabled recipe lists it, and it confers no has-verifier.
rule line 18 · specs/validation/unbound-example-posture.sdp.md:18
A Spec of any other kind that declares verifies warns at every rung.
rule line 19 · specs/validation/unbound-example-posture.sdp.md:19
A ready parent other than a decision keeps its gap while no resolving verifier verifies it. Once another enabled example or a direct test anchor verifies it, an unbound example below ready is data alone, and an unbound ready example keeps its own warning.
rule line 20 · specs/validation/unbound-example-posture.sdp.md:20
The worked example shows its unbound example through its Design Review verifier bindings and the declared-versus-enabled recipe.

5 unkeyed rules.

Verifying examples

Below-ready examples keep declared verifier data · spec:validation.unbound-example-posture.lower-rungs · ready floor ready

Executable Spec

Given the verification posture matrix {matrix: "lower-rungs"}
When the reader derives the verification signals
Then the matrix reports {warnings: 0} linkage warnings and {gaps: 0} parent gaps and {oracleErrors: 0} oracle errors

Open example

Parent gaps follow enabled bindings and preserve the decision exemption · spec:validation.unbound-example-posture.parent-traces · ready floor ready

Executable Spec

Given the verification posture matrix {matrix: "parent-traces"}
When the reader derives the verification signals
Then the matrix reports {warnings: 1} linkage warnings and {gaps: 1} parent gaps and {oracleErrors: 1} oracle errors

Open example

Ready examples and non-example verifiers keep warnings · spec:validation.unbound-example-posture.warning-cases · ready floor ready

Executable Spec

Given the verification posture matrix {matrix: "warning-cases"}
When the reader derives the verification signals
Then the matrix reports {warnings: 29} linkage warnings and {gaps: 0} parent gaps and {oracleErrors: 0} oracle errors

Open example

Example space

Given the verification posture matrix {matrix:string}
When the reader derives the verification signals
Then the matrix reports {warnings:number} linkage warnings and {gaps:number} parent gaps and {oracleErrors:number} oracle errors
Verification

Verifier bindings

  • spec:validation.unbound-example-posture.lower-rungs · Below-ready examples keep declared verifier data · declared · example enabled · specs/validation/unbound-example-posture.lower-rungs.sdp.md

    External run evidence from test/self-hosting-unbound-example.test.ts

    Test anchors: test:protocol.unbound-example-posture.lower-rungs, test:protocol.unbound-example-posture.parent-traces, test:protocol.unbound-example-posture.warning-cases. Specs verified by those bindings: spec:validation.unbound-example-posture, spec:validation.unbound-example-posture.lower-rungs, spec:validation.unbound-example-posture.parent-traces, spec:validation.unbound-example-posture.warning-cases.

    Run 1: external run evidence from vitest 4.1.10

    Build: CI 380 · Branch: feature/roadmap-and-slices-v0 · Commit: 34909918bf0be0e849959644401797191cae379f · Start: 2026-10-22T17:40:31.456Z · Stop: 2026-10-22T17:42:16.171Z

    NameSuiteResultDuration
    executes the bound example against a fresh worldBelow-ready examples keep declared verifier data (spec:validation.unbound-example-posture.lower-rungs)passed10.37 ms
    executes the bound example against a fresh worldReady examples and non-example verifiers keep warnings (spec:validation.unbound-example-posture.warning-cases)passed15.25 ms
    executes the bound example against a fresh worldParent gaps follow enabled bindings and preserve the decision exemption (spec:validation.unbound-example-posture.parent-traces)passed4.06 ms
  • spec:validation.unbound-example-posture.parent-traces · Parent gaps follow enabled bindings and preserve the decision exemption · declared · example enabled · specs/validation/unbound-example-posture.parent-traces.sdp.md
  • spec:validation.unbound-example-posture.warning-cases · Ready examples and non-example verifiers keep warnings · declared · example enabled · specs/validation/unbound-example-posture.warning-cases.sdp.md

Example space

  • matrix · string · declared by the verification posture matrix {matrix}

Bound points

Oracle binding: present · oracle:protocol.unbound-example-posture · test/self-hosting-unbound-example.test.ts:32

Coverage

matrix: "lower-rungs" · spec:validation.unbound-example-posture.lower-rungs; "parent-traces" · spec:validation.unbound-example-posture.parent-traces; "warning-cases" · spec:validation.unbound-example-posture.warning-cases · not enumerable

Unbound

  • matrix: None
Design view

Requirement drawing

Requirement drawing for spec:validation.unbound-example-posture
Requirement drawing for spec:validation.unbound-example-postureverifies · anchoredverifies · anchoredverifies · anchoredsatisfies · anchoredmodels · anchoredrefines · declaredrefines, verifies · declaredrefines, verifies · declaredrefines, verifies · declaredIntended Specsspec:validation.unbound-example-postureAn unbound example belowready is data, not a warning…validation.unbound-example-posturedeclared SpecDeclared verifying examplesspec:validation.unbound-example-posture.lower-rungsBelow-ready examples keepdeclared verifier data…validation.unbound-example-posture.lower-rungsdeclared Specspec:validation.unbound-example-posture.parent-tracesParent gaps follow enabledbindings and preserve thedecision exemption…validation.unbound-example-posture.parent-tracesdeclared Specspec:validation.unbound-example-posture.warning-casesReady examples andnon-example verifiers keepwarnings…validation.unbound-example-posture.warning-casesdeclared SpecSatisfying or referencingunitsimpl:protocol.unbound-example-posturelimits unbound examplewarnings to stated readyimpl:protocol.unbound-example-postureanchored codeTest or oracle bindings3 test bindings · anchored, folded3 test bindings · anchoredoracle:protocol.unbound-example-postureexpected verificationsignals by posture matrixoracle:protocol.unbound-example-postureanchored oracle bindingOutside the selected setspec:validation.verification-linkageExample verification andoracle bindings resolvehonestly…validation.verification-linkagedeclared Spec
The diagram as text
  • spec:validation.unbound-example-posture: An unbound example below ready is data, not a warning · declared Spec
  • spec:validation.unbound-example-posture.lower-rungs: Below-ready examples keep declared verifier data · declared Spec
  • spec:validation.unbound-example-posture.parent-traces: Parent gaps follow enabled bindings and preserve the decision exemption · declared Spec
  • spec:validation.unbound-example-posture.warning-cases: Ready examples and non-example verifiers keep warnings · declared Spec
  • spec:validation.verification-linkage: Example verification and oracle bindings resolve honestly · declared Spec
  • impl:protocol.unbound-example-posture: limits unbound example warnings to stated ready · anchored code · src/validate/validators.ts:847
  • oracle:protocol.unbound-example-posture: expected verification signals by posture matrix · anchored oracle binding · test/self-hosting-unbound-example.test.ts:32
  • test:protocol.unbound-example-posture.lower-rungs: verifies declared-only examples below ready · anchored test binding · binding present · test/self-hosting-unbound-example.test.ts:206
  • test:protocol.unbound-example-posture.parent-traces: verifies parent gaps and unchanged oracle signals · anchored test binding · binding present · test/self-hosting-unbound-example.test.ts:220
  • test:protocol.unbound-example-posture.warning-cases: verifies ready and wrong-kind linkage warnings · anchored test binding · binding present · test/self-hosting-unbound-example.test.ts:213
  • spec:validation.unbound-example-posture refines spec:validation.verification-linkage · declared
  • spec:validation.unbound-example-posture.lower-rungs refines spec:validation.unbound-example-posture · declared
  • spec:validation.unbound-example-posture.lower-rungs verifies spec:validation.unbound-example-posture · declared
  • spec:validation.unbound-example-posture.parent-traces refines spec:validation.unbound-example-posture · declared
  • spec:validation.unbound-example-posture.parent-traces verifies spec:validation.unbound-example-posture · declared
  • spec:validation.unbound-example-posture.warning-cases refines spec:validation.unbound-example-posture · declared
  • spec:validation.unbound-example-posture.warning-cases verifies spec:validation.unbound-example-posture · declared
  • impl:protocol.unbound-example-posture satisfies spec:validation.unbound-example-posture · anchored
  • oracle:protocol.unbound-example-posture models spec:validation.unbound-example-posture · anchored
  • test:protocol.unbound-example-posture.lower-rungs verifies spec:validation.unbound-example-posture.lower-rungs · anchored
  • test:protocol.unbound-example-posture.parent-traces verifies spec:validation.unbound-example-posture.parent-traces · anchored
  • test:protocol.unbound-example-posture.warning-cases verifies spec:validation.unbound-example-posture.warning-cases · anchored
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: requirementDiagram. Chosen syntax: flowchart TB because models, folds require exact labels unavailable in requirement syntax.

Decisions

No decision record named.

Runtime
  • component:protocol.validate · one finding currency and ordered checks · src/validate/validators.ts:72 · layer domain · context protocol

    Uses

  • impl:protocol.unbound-example-posture · limits unbound example warnings to stated ready · src/validate/validators.ts:847

    Component: component:protocol.validate · one finding currency and ordered checks · src/validate/validators.ts:72 · layer domain · context protocol

    Uses

    None.

Runtime observation: not tracked.

Evidence

Runtime observation: not tracked.

Build attestations: not tracked.

Deployments: not tracked.

Bills of materials: not tracked.

Impact
Relations of spec:validation.unbound-example-posture
The diagram as text
  • spec:validation.unbound-example-posture: An unbound example below ready is data, not a warning
  • spec:validation.unbound-example-posture.lower-rungs: Below-ready examples keep declared verifier data
  • spec:validation.unbound-example-posture.parent-traces: Parent gaps follow enabled bindings and preserve the decision exemption
  • spec:validation.unbound-example-posture.warning-cases: Ready examples and non-example verifiers keep warnings
  • spec:validation.verification-linkage: Example verification and oracle bindings resolve honestly
  • spec:validation.unbound-example-posture refines spec:validation.verification-linkage · declared
  • spec:validation.unbound-example-posture.lower-rungs refines spec:validation.unbound-example-posture · declared
  • spec:validation.unbound-example-posture.parent-traces refines spec:validation.unbound-example-posture · declared
  • spec:validation.unbound-example-posture.warning-cases refines spec:validation.unbound-example-posture · declared
  • spec:validation.unbound-example-posture.lower-rungs verifies spec:validation.unbound-example-posture · declared
  • spec:validation.unbound-example-posture.parent-traces verifies spec:validation.unbound-example-posture · declared
  • spec:validation.unbound-example-posture.warning-cases verifies spec:validation.unbound-example-posture · 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

Rested on by

Distance 1

Relations

Relation and directionOther endClaimReasonExercised keys
refines · outgoingExample verification and oracle bindings resolve honestly
spec:validation.verification-linkage · resolves
declaredNoneNone
refines · incomingBelow-ready examples keep declared verifier data
spec:validation.unbound-example-posture.lower-rungs · resolves
declaredNoneNone
refines · incomingParent gaps follow enabled bindings and preserve the decision exemption
spec:validation.unbound-example-posture.parent-traces · resolves
declaredNoneNone
refines · incomingReady examples and non-example verifiers keep warnings
spec:validation.unbound-example-posture.warning-cases · resolves
declaredNoneNone
verifies · incomingBelow-ready examples keep declared verifier data
spec:validation.unbound-example-posture.lower-rungs · resolves
declaredNoneNone
verifies · incomingParent gaps follow enabled bindings and preserve the decision exemption
spec:validation.unbound-example-posture.parent-traces · resolves
declaredNoneNone
verifies · incomingReady examples and non-example verifiers keep warnings
spec:validation.unbound-example-posture.warning-cases · resolves
declaredNoneNone

Bindings

Implementation binding: present

  • impl:protocol.unbound-example-posture · limits unbound example warnings to stated ready · src/validate/validators.ts:847 · role validator · component component:protocol.validate · layer domain · context protocol

Design reference: none

Verifier binding: present

Expected-outcome oracle: present

  • oracle:protocol.unbound-example-posture · expected verification signals by posture matrix · test/self-hosting-unbound-example.test.ts:32

Runtime observation: not tracked.

Run results: not recorded in the graph.

Findings

None.

Composing (0)

Composing needs the script.