Spec Studio

Floor-read sections are closed typed shapes

spec:decisions.typing-lawDecision Record · featureready floor ready

Packs: pack:self-hosting-v1

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

Findings: no errors, no warnings

specs/decisions/typing-law.sdp.md

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

Intent
outcome
Give authors guardrails exactly where readiness and honesty checks depend on section content.
Decision
context
A fixed list of typed sections becomes stale when the readiness floor evolves.
decision
Every section read by a floor clause has a closed typed shape; unsettled design and ui surfaces remain open.
rationale
  • Closed shapes block authored-fact smuggling and provide useful authoring guidance without prematurely fixing unsettled surfaces.
consequences
  • A newly floor-read section becomes typed by the criterion, not by a frozen list.
Verification

Verifier bindings

No verifier binding recorded.

Design view

Requirement drawing

  • Declared verifying examples: no declared verifying example.
  • Satisfying or referencing units: no recorded binding.
  • Test or oracle bindings: no recorded binding.
Requirement drawing for spec:decisions.typing-law

Arrows: refines (declared).

The diagram as text
  • spec:decisions.typing-law: Floor-read sections are closed typed shapes · declared Spec
  • spec:model.spec-sections: Spec sections carry typed detail and direct verifier semantics · declared Spec
  • spec:decisions.typing-law refines spec:model.spec-sections · declared
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:decisions.typing-law
  • E3: decidedBy · declared
The diagram as text
  • spec:decisions.typing-law: Floor-read sections are closed typed shapes
  • spec:extraction.contract-declarations: Pinned declarations give an adopter a derived module to typecheck
  • spec:model.spec-sections: Spec sections carry typed detail and direct verifier semantics
  • spec:decisions.typing-law refines spec:model.spec-sections · declared
  • spec:extraction.contract-declarations decidedBy spec:decisions.typing-law · declared — the Design section stays open, so the Protocol fixes no declaration key vocabulary
  • spec:model.spec-sections decidedBy spec:decisions.typing-law · 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

  • spec:extraction.contract-declarations

    Implementing units

    • impl:protocol.pack-design · src/reader/reader.ts:499
    • impl:protocol.register-recipes · test/recipes.test.ts:2057

    Referencing units

    None.

    Enabled verifiers: test:protocol.register-recipes

    Packs: pack:self-hosting-v1

  • spec:model.spec-sections

    Implementing units

    • impl:protocol.spec-sections · src/model/sections.ts:138
    • impl:protocol.verifier-semantics · src/validate/readiness-floor.ts:593

    Referencing units

    None.

    Enabled verifiers: None

    Packs: pack:self-hosting-v1

Distance 2

Distance 3

Distance 4

Distance 5

Distance 6

Distance 7

Distance 8

Distance 9

Distance 10

Relations

Relation and directionOther endClaimReasonExercised keys
refines · outgoingSpec sections carry typed detail and direct verifier semantics
spec:model.spec-sections · resolves
declaredNoneNone
decidedBy · incomingPinned declarations give an adopter a derived module to typecheck
spec:extraction.contract-declarations · resolves
declaredthe Design section stays open, so the Protocol fixes no declaration key vocabularyNone
decidedBy · incomingSpec sections carry typed detail and direct verifier semantics
spec:model.spec-sections · resolves
declaredNoneNone

Bindings

Implementation binding: none

Design reference: none

Verifier binding: none

Expected-outcome oracle: none

Runtime observation: not tracked.

Run results: not recorded in the graph.

Findings

None.

Composing (0)

Composing needs the script.