Spec Studio

Every relation reads the four stated target rungs

spec:validation.typed-dependency-floor.relation-rungsExample / Scenario · storyready floor ready

Packs: pack:self-hosting-v1

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

Findings: no errors, no warnings

specs/validation/typed-dependency-floor.relation-rungs.sdp.md

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

Intent
outcome
Check the relation-rungs matrix through the readiness floor.
assumptions
  • The world has 24 single-relation rule subjects stating ready, one for each pairing of refines, dependsOn, constrainedBy, decidedBy, verifies, and supersedes with a target stating idea, scoped, defined, or ready. Every target resolves. constrainedBy targets are constraints; decidedBy and supersedes targets are decisions; the other targets are rules. No Spec has a blocking open question.
  • All probes are story-altitude Specs with declared relations and an Intent outcome. Rule subjects and rule targets carry a behavior rule; constraint targets carry a statement and target; decision targets carry a written decision. Each resolving target declares dependsOn back to its subject. No anchors are present. The expected counts include only honesty/readiness-floor findings, not findings from other validators.
  • The four included relations each fail typed-dependency-targets-are-defined for their idea and scoped targets, giving eight target failures. Their defined and ready boundaries pass. verifies and supersedes pass at every target rung.
  • The world also has sixteen rule subjects stating ready. Each pairs refines or dependsOn with constrainedBy or decidedBy. One target states defined and the other states scoped. Each pair appears with the older relation passing and the newer relation failing, and with the older relation failing and the newer relation passing, in both declaration orders. Targets have the same kinds and evidence as the single-relation probes and declare dependsOn back to their subject. Every mixed subject fails typed-dependency-targets-are-defined once and derives defined, regardless of declaration order.
Behavior

Examples

Given the typed dependency matrix {matrix: "relation-rungs"}
When the reader checks the readiness floor
Then the matrix reports {targetFailures: 24} target failures and {resolutionFailures: 0} resolution failures and {questionFailures: 0} blocking question failures
Verification

Verifier bindings

  • test:protocol.typed-dependency-floor.relation-rungs · verifies six relations across four target rungs · anchored · test anchor binding present · test/self-hosting-typed-dependency.test.ts:313

    External run evidence from test/self-hosting-typed-dependency.test.ts

    Test anchors: test:protocol.typed-dependency-floor.missing-targets, test:protocol.typed-dependency-floor.relation-rungs, test:protocol.typed-dependency-floor.stated-readiness, test:protocol.typed-dependency-floor.unsettled-fact. Specs verified by those bindings: spec:validation.typed-dependency-floor, spec:validation.typed-dependency-floor.missing-targets, spec:validation.typed-dependency-floor.relation-rungs, spec:validation.typed-dependency-floor.stated-readiness, spec:validation.typed-dependency-floor.unsettled-fact.

    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 worldEvery relation reads the four stated target rungs (spec:validation.typed-dependency-floor.relation-rungs)passed19 ms
    executes the bound example against a fresh worldMissing targets fail relation resolution once (spec:validation.typed-dependency-floor.missing-targets)passed1.85 ms
    executes the bound example against a fresh worldAn unsettled constraint bounds ready but permits defined (spec:validation.typed-dependency-floor.unsettled-fact)passed1.36 ms
    executes the bound example against a fresh worldTarget floor failures do not propagate across dependencies (spec:validation.typed-dependency-floor.stated-readiness)passed43.6 ms
Design view

Requirement drawing

  • Satisfying or referencing units: no recorded binding.
Requirement drawing for spec:validation.typed-dependency-floor.relation-rungs
The diagram as text
  • spec:validation.typed-dependency-floor.relation-rungs: Every relation reads the four stated target rungs · declared Spec
  • spec:validation.typed-dependency-floor: A ready Spec rests only on settled dependencies · declared Spec
  • test:protocol.typed-dependency-floor.relation-rungs: verifies six relations across four target rungs · anchored test binding · binding present · test/self-hosting-typed-dependency.test.ts:313
  • spec:validation.typed-dependency-floor.relation-rungs refines spec:validation.typed-dependency-floor · declared
  • spec:validation.typed-dependency-floor.relation-rungs verifies spec:validation.typed-dependency-floor · declared
  • test:protocol.typed-dependency-floor.relation-rungs verifies spec:validation.typed-dependency-floor.relation-rungs · 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
Relations of spec:validation.typed-dependency-floor.relation-rungs
  • E2: verifies · declared
The diagram as text
  • spec:validation.typed-dependency-floor: A ready Spec rests only on settled dependencies
  • spec:validation.typed-dependency-floor.relation-rungs: Every relation reads the four stated target rungs
  • spec:validation.typed-dependency-floor.relation-rungs refines spec:validation.typed-dependency-floor · declared
  • spec:validation.typed-dependency-floor.relation-rungs verifies spec:validation.typed-dependency-floor · 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

No Spec rests on this Spec.

Relations

Relation and directionOther endClaimReasonExercised keys
refines · outgoingA ready Spec rests only on settled dependencies
spec:validation.typed-dependency-floor · resolves
declaredNoneNone
verifies · outgoingA ready Spec rests only on settled dependencies
spec:validation.typed-dependency-floor · resolves
declaredNoneNone

Bindings

Implementation binding: none

Design reference: none

Verifier binding: present

  • test:protocol.typed-dependency-floor.relation-rungs · verifies six relations across four target rungs · anchored · test/self-hosting-typed-dependency.test.ts:313 · 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.