Spec Studio

Architecture

Components, their members and uses, and planned component designs.

14 components realized and 0 planned. They state 1 context and 4 layers. 41 uses edges between components. 0 designs differ from their components.

Components by context and layer

Arrows: uses (anchored).

The diagram as text
  • component:protocol.adapters: external runtime and source adapters, 2 members
  • component:protocol.cli: entry points, shared build and publication, 30 members
  • component:protocol.codegen: contracts and registrar output, 2 members
  • component:protocol.extract: the carrier and source pipeline, 25 members
  • component:protocol.graph: the one graph and its semantic decisions, 5 members
  • component:protocol.import: canonical conversion with a fidelity boundary, 3 members
  • component:protocol.model: the authored contracts and stable ids, 8 members
  • component:protocol.notation: the leaf step codec, 1 member
  • component:protocol.projections: read-only output, layout and owned publication, 62 members
  • component:protocol.reader: the typed graph contract and body evaluator, 6 members
  • component:protocol.runner: provider-neutral example execution, 1 member
  • component:protocol.studio-elements: optional browser behavior and proposal handoff, 13 members
  • component:protocol.testing: the generated registrar runtime, 1 member
  • component:protocol.validate: one finding currency and ordered checks, 23 members
  • component:protocol.adapters uses component:protocol.runner · anchored (2 unit edges)
  • component:protocol.cli uses component:protocol.adapters · anchored
  • component:protocol.cli uses component:protocol.codegen · anchored
  • component:protocol.cli uses component:protocol.extract · anchored
  • component:protocol.cli uses component:protocol.graph · anchored (2 unit edges)
  • component:protocol.cli uses component:protocol.import · anchored
  • component:protocol.cli uses component:protocol.model · anchored
  • component:protocol.cli uses component:protocol.projections · anchored (2 unit edges)
  • component:protocol.cli uses component:protocol.reader · anchored
  • component:protocol.cli uses component:protocol.validate · anchored
  • component:protocol.codegen uses component:protocol.graph · anchored
  • component:protocol.codegen uses component:protocol.notation · anchored
  • component:protocol.codegen uses component:protocol.reader · anchored
  • component:protocol.codegen uses component:protocol.validate · anchored
  • component:protocol.extract uses component:protocol.graph · anchored (2 unit edges)
  • component:protocol.extract uses component:protocol.model · anchored
  • component:protocol.extract uses component:protocol.notation · anchored
  • component:protocol.extract uses component:protocol.validate · anchored
  • component:protocol.graph uses component:protocol.model · anchored
  • component:protocol.graph uses component:protocol.notation · anchored
  • component:protocol.import uses component:protocol.extract · anchored
  • component:protocol.import uses component:protocol.notation · anchored
  • component:protocol.import uses component:protocol.validate · anchored
  • component:protocol.projections uses component:protocol.extract · anchored (2 unit edges)
  • component:protocol.projections uses component:protocol.graph · anchored
  • component:protocol.projections uses component:protocol.model · anchored
  • component:protocol.projections uses component:protocol.notation · anchored
  • component:protocol.projections uses component:protocol.reader · anchored (4 unit edges)
  • component:protocol.projections uses component:protocol.validate · anchored
  • component:protocol.reader uses component:protocol.graph · anchored (2 unit edges)
  • component:protocol.reader uses component:protocol.model · anchored
  • component:protocol.reader uses component:protocol.notation · anchored
  • component:protocol.reader uses component:protocol.validate · anchored (2 unit edges)
  • component:protocol.runner uses component:protocol.notation · anchored
  • component:protocol.studio-elements uses component:protocol.projections · anchored
  • component:protocol.studio-elements uses component:protocol.reader · anchored
  • component:protocol.testing uses component:protocol.adapters · anchored
  • component:protocol.testing uses component:protocol.runner · anchored
  • component:protocol.validate uses component:protocol.graph · anchored (2 unit edges)
  • component:protocol.validate uses component:protocol.model · anchored
  • component:protocol.validate uses component:protocol.notation · anchored
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: block; flowchart fallback because block cannot carry edge claims and counts.

Component uses

Rows use columns. · means no anchored use recorded; a component's own cell is empty.

Which components use which
Using / usedentry points, shared build and publication component:protocol.cliread-only output, layout and owned publication component:protocol.projectionsoptional browser behavior and proposal handoff component:protocol.studio-elementscontracts and registrar output component:protocol.codegenthe carrier and source pipeline component:protocol.extractcanonical conversion with a fidelity boundary component:protocol.importthe typed graph contract and body evaluator component:protocol.readerprovider-neutral example execution component:protocol.runnerthe one graph and its semantic decisions component:protocol.graphthe authored contracts and stable ids component:protocol.modelthe leaf step codec component:protocol.notationone finding currency and ordered checks component:protocol.validateexternal runtime and source adapters component:protocol.adaptersthe generated registrar runtime component:protocol.testing
entry points, shared build and publication component:protocol.cli2no anchored use recorded1111no anchored use recorded21no anchored use recorded11no anchored use recorded
read-only output, layout and owned publication component:protocol.projectionsno anchored use recordedno anchored use recordedno anchored use recorded2no anchored use recorded4no anchored use recorded1111no anchored use recordedno anchored use recorded
optional browser behavior and proposal handoff component:protocol.studio-elementsno anchored use recorded1no anchored use recordedno anchored use recordedno anchored use recorded1no anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded
contracts and registrar output component:protocol.codegenno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded1no anchored use recorded1no anchored use recorded11no anchored use recordedno anchored use recorded
the carrier and source pipeline component:protocol.extractno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded2111no anchored use recordedno anchored use recorded
canonical conversion with a fidelity boundary component:protocol.importno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded1no anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded11no anchored use recordedno anchored use recorded
the typed graph contract and body evaluator component:protocol.readerno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded2112no anchored use recordedno anchored use recorded
provider-neutral example execution component:protocol.runnerno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded1no anchored use recordedno anchored use recordedno anchored use recorded
the one graph and its semantic decisions component:protocol.graphno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded11no anchored use recordedno anchored use recordedno anchored use recorded
the authored contracts and stable ids component:protocol.modelno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded
the leaf step codec component:protocol.notationno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded
one finding currency and ordered checks component:protocol.validateno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded211no anchored use recordedno anchored use recorded
external runtime and source adapters component:protocol.adaptersno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded2no anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded
the generated registrar runtime component:protocol.testingno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded1no anchored use recordedno anchored use recordedno anchored use recordedno anchored use recorded1

Designed, not built

None.

Significant units

Recorded bindings state no review approval or execution verdict.

component:protocol.adapters external runtime and source adapters

Layer adapter, context protocol, role adapter.

Component source binding

Members

Role adapter

Uses

Uses component:protocol.runner · 2 unit edges

  • component:protocol.adapters uses component:protocol.runner · anchored
  • impl:protocol.example-runner-adapter uses impl:protocol.example-runner · anchored

Used by

Satisfies

References

None.

Members of component:protocol.adapters

Arrows: uses (anchored).

The diagram as text
  • impl:protocol.example-runner-adapter: registers one test per example and owns the fresh world lifecycle, role adapter
  • impl:protocol.typescript-imports: TypeScript file imports and barrel reach for external curation input, role adapter
  • impl:protocol.example-runner: Outside component
  • impl:protocol.example-runner-adapter uses impl:protocol.example-runner · anchored
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

component:protocol.cli entry points, shared build and publication

Layer edge, context protocol, role service.

Component source binding

  • component:protocol.cli entry points, shared build and publication · src/cli/build-command.ts:32

    Satisfies

    References

    None.

Members

Role codec
Role projection
  • impl:protocol.adopter-help SDP_HELP_TEXT indexes the shipped skills, recipe catalog, schema, walkthrough, glossary and specs/ by package-relative path · src/cli/help.ts:167

    Satisfies

    References

    None.

  • impl:protocol.engine-provenance-cli prints sdp version and the commit parsed from the build-info file beside the compiled CLI · src/cli/sdp.ts:102

    Satisfies

    References

    None.

Role publisher
Role service

Uses

Uses component:protocol.adapters · 1 unit edges

  • component:protocol.cli uses component:protocol.adapters · anchored

Uses component:protocol.codegen · 1 unit edges

  • component:protocol.cli uses component:protocol.codegen · anchored

Uses component:protocol.extract · 1 unit edges

  • component:protocol.cli uses component:protocol.extract · anchored

Uses component:protocol.graph · 2 unit edges

  • component:protocol.cli uses component:protocol.graph · anchored
  • impl:protocol.stamp-command uses impl:protocol.schema-version · anchored

Uses component:protocol.import · 1 unit edges

  • component:protocol.cli uses component:protocol.import · anchored

Uses component:protocol.model · 1 unit edges

  • component:protocol.cli uses component:protocol.model · anchored

Uses component:protocol.projections · 2 unit edges

  • component:protocol.cli uses component:protocol.projections · anchored
  • impl:protocol.vault-command uses component:protocol.projections · anchored

Uses component:protocol.reader · 1 unit edges

  • component:protocol.cli uses component:protocol.reader · anchored

Uses component:protocol.validate · 1 unit edges

  • component:protocol.cli uses component:protocol.validate · anchored

Used by

None.

Satisfies

References

Members of component:protocol.cli

Arrows: uses (anchored).

Members of component:protocol.cliMember depth 0impl:protocol.adopter-helpSDP_HELP_TEXT indexes theshipped skills, recipecatalog, schema,walkthrough, glossary andspecs/ by package-relativepath…adopter-helprole projectionimpl:protocol.agent-surface-cliCLI verb dispatcher andagent-surface front of thepackage CLI…agent-surface-clirole serviceimpl:protocol.build-argsshared build arguments andcorpus-rule inputs…build-argsrole codecimpl:protocol.build-artifactsthe build step that writeseach catalog recipe todist/recipes and recordsthe build commit beside theCLI…build-artifactsrole publisherimpl:protocol.build-importsopt-in imports publicationin the build command…build-importsrole publisherimpl:protocol.build-pipeline-emitstages build outputs,checks determinism andinvalidates projections…build-pipeline-emitrole serviceimpl:protocol.build-pipeline-queryrunQuery reads one body,derives the graph once forthe reader, raw graph andreport, and prints thereturn or refuses on stderr…build-pipeline-queryrole serviceimpl:protocol.census-page-clipublishes the censusthrough the explicit sdpcensus surface…census-page-clirole publisherimpl:protocol.corpus-rule-runnerruns selected corpus rulesand separates their failures…corpus-rule-runnerrole serviceimpl:protocol.corpus-rulesruns copied rule bodiesafter Protocol validationand composes the separatecorpus report, output andexit…corpus-rulesrole serviceimpl:protocol.diagnostic-rendering-clicomposes structured findingfields into the onecommand-line diagnostic form…diagnostic-rendering-clirole codecimpl:protocol.engine-provenance-cliprints sdp version and thecommit parsed from thebuild-info file beside thecompiled CLI…engine-provenance-clirole projectionimpl:protocol.generate-commandprepares all prior rootsbefore one shared build andpublishes with each verb'schecks…generate-commandrole publisherimpl:protocol.gherkin-view-clipublishes the Gherkin viewthrough the explicit sdpgherkin surface…gherkin-view-clirole publisherimpl:protocol.mermaid-view-clipublishes Mermaid throughthe explicit sdp mermaidsurface…mermaid-view-clirole publisherimpl:protocol.parameter-codecdecodes recipe parametersand refuses duplicate keys…parameter-codecrole codecimpl:protocol.query-paramsreads --params as JSON dataand injects it as thesink's fourth binding,params…query-paramsrole serviceimpl:protocol.sdp-importplans, refuses, andpublishesTypeScript-to-Markdown Specimports…sdp-importrole serviceimpl:protocol.sdp-import-publishstages Markdown siblingsand publishes them withatomic hard links…sdp-import-publishrole publisherimpl:protocol.sdp-import-scancollects .sdp.ts paths andreports scan failures…sdp-import-scanrole serviceimpl:protocol.spec-scaffolderscaffolds an honestidea-rung Markdown Specthrough sdp new spec…spec-scaffolderrole serviceimpl:protocol.stamp-commandwrites the publishing stampwithout extraction orrendering…stamp-commandrole publisherimpl:protocol.studio-base-inputreads named Studio basegraphs and run inputs…studio-base-inputrole codecimpl:protocol.studio-commandvalidates and renders theStudio with independentbyte checks and diagnosticexit codes…studio-commandrole publisherimpl:protocol.studio-watchawaits the plain Studiopublication in eachcoalesced carrier-watchcycle…studio-watchrole serviceimpl:protocol.validate-summaryprints validate's findingsand its summary line…validate-summaryrole codecimpl:protocol.validate-watchwatches carrier directoriesand coalesces events into apending validation rerun…validate-watchrole serviceimpl:protocol.vault-commandvalidates after vaultpreflight and retains priornotes behind afailed-extraction index…vault-commandrole publisherimpl:protocol.vault-watchreuses the coalescingwatcher with sourcesuffixes and a synchronousvault cycle…vault-watchrole serviceimpl:protocol.wholesale-view-rewritepublishes each DesignReview as one wholesaletemporary-directoryreplacement…wholesale-view-rewriterole publisherOutside componentcomponent:protocol.projectionsOutside component…projectionsimpl:protocol.schema-versionOutside component…schema-version
The diagram as text
  • impl:protocol.adopter-help: SDP_HELP_TEXT indexes the shipped skills, recipe catalog, schema, walkthrough, glossary and specs/ by package-relative path, role projection
  • impl:protocol.agent-surface-cli: CLI verb dispatcher and agent-surface front of the package CLI, role service
  • impl:protocol.build-args: shared build arguments and corpus-rule inputs, role codec
  • impl:protocol.build-artifacts: the build step that writes each catalog recipe to dist/recipes and records the build commit beside the CLI, role publisher
  • impl:protocol.build-imports: opt-in imports publication in the build command, role publisher
  • impl:protocol.build-pipeline-emit: stages build outputs, checks determinism and invalidates projections, role service
  • impl:protocol.build-pipeline-query: runQuery reads one body, derives the graph once for the reader, raw graph and report, and prints the return or refuses on stderr, role service
  • impl:protocol.census-page-cli: publishes the census through the explicit sdp census surface, role publisher
  • impl:protocol.corpus-rule-runner: runs selected corpus rules and separates their failures, role service
  • impl:protocol.corpus-rules: runs copied rule bodies after Protocol validation and composes the separate corpus report, output and exit, role service
  • impl:protocol.diagnostic-rendering-cli: composes structured finding fields into the one command-line diagnostic form, role codec
  • impl:protocol.engine-provenance-cli: prints sdp version and the commit parsed from the build-info file beside the compiled CLI, role projection
  • impl:protocol.generate-command: prepares all prior roots before one shared build and publishes with each verb's checks, role publisher
  • impl:protocol.gherkin-view-cli: publishes the Gherkin view through the explicit sdp gherkin surface, role publisher
  • impl:protocol.mermaid-view-cli: publishes Mermaid through the explicit sdp mermaid surface, role publisher
  • impl:protocol.parameter-codec: decodes recipe parameters and refuses duplicate keys, role codec
  • impl:protocol.query-params: reads --params as JSON data and injects it as the sink's fourth binding, params, role service
  • impl:protocol.sdp-import: plans, refuses, and publishes TypeScript-to-Markdown Spec imports, role service
  • impl:protocol.sdp-import-publish: stages Markdown siblings and publishes them with atomic hard links, role publisher
  • impl:protocol.sdp-import-scan: collects .sdp.ts paths and reports scan failures, role service
  • impl:protocol.spec-scaffolder: scaffolds an honest idea-rung Markdown Spec through sdp new spec, role service
  • impl:protocol.stamp-command: writes the publishing stamp without extraction or rendering, role publisher
  • impl:protocol.studio-base-input: reads named Studio base graphs and run inputs, role codec
  • impl:protocol.studio-command: validates and renders the Studio with independent byte checks and diagnostic exit codes, role publisher
  • impl:protocol.studio-watch: awaits the plain Studio publication in each coalesced carrier-watch cycle, role service
  • impl:protocol.validate-summary: prints validate's findings and its summary line, role codec
  • impl:protocol.validate-watch: watches carrier directories and coalesces events into a pending validation rerun, role service
  • impl:protocol.vault-command: validates after vault preflight and retains prior notes behind a failed-extraction index, role publisher
  • impl:protocol.vault-watch: reuses the coalescing watcher with source suffixes and a synchronous vault cycle, role service
  • impl:protocol.wholesale-view-rewrite: publishes each Design Review as one wholesale temporary-directory replacement, role publisher
  • component:protocol.projections: Outside component
  • impl:protocol.schema-version: Outside component
  • impl:protocol.stamp-command uses impl:protocol.schema-version · anchored
  • impl:protocol.vault-command uses component:protocol.projections · anchored
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

component:protocol.codegen contracts and registrar output

Layer application, context protocol, role projection.

Component source binding

Members

Role projection

Uses

Uses component:protocol.graph · 1 unit edges

  • component:protocol.codegen uses component:protocol.graph · anchored

Uses component:protocol.notation · 1 unit edges

  • component:protocol.codegen uses component:protocol.notation · anchored

Uses component:protocol.reader · 1 unit edges

  • component:protocol.codegen uses component:protocol.reader · anchored

Uses component:protocol.validate · 1 unit edges

  • component:protocol.codegen uses component:protocol.validate · anchored

Used by

Satisfies

References

None.

Members of component:protocol.codegen
The diagram as text
  • impl:protocol.executable-contracts: derives step and example-space contracts from the graph, role projection
  • impl:protocol.runnable-modules: derives and publishes runnable registrar modules from the graph, role projection
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

component:protocol.extract the carrier and source pipeline

Layer application, context protocol, role extractor.

Component source binding

Members

Role codec
Role contract
  • impl:protocol.exclusion-surface strict root-relative exclusion input for both extraction surfaces · src/extract/index.ts:43

    Satisfies

    References

    None.

Role decider
Role extractor
Role validator
  • impl:protocol.duplicate-id-exclusion excludes duplicated carrier ids from the graph · src/extract/index.ts:93

    Satisfies

    References

    None.

Uses

Uses component:protocol.graph · 2 unit edges

  • component:protocol.extract uses component:protocol.graph · anchored
  • impl:protocol.derive-graph uses impl:protocol.delivery-facts · anchored

Uses component:protocol.model · 1 unit edges

  • component:protocol.extract uses component:protocol.model · anchored

Uses component:protocol.notation · 1 unit edges

  • component:protocol.extract uses component:protocol.notation · anchored

Uses component:protocol.validate · 1 unit edges

  • component:protocol.extract uses component:protocol.validate · anchored

Used by

Satisfies

References

Members of component:protocol.extract

Arrows: uses (anchored).

Members of component:protocol.extractMember depth 0impl:protocol.anchor-extractionanchor reification seam:the constant form and thecomment form…anchor-extractionrole extractorimpl:protocol.authoring-normalizationnormalizes rule markers andquestion fields aftercarrier reification…authoring-normalizationrole codecimpl:protocol.duplicate-id-exclusionexcludes duplicated carrierids from the graph…duplicate-id-exclusionrole validatorimpl:protocol.entry-citation-scanrecords prose-mentiontokens with addresses inanchored source files…entry-citation-scanrole extractorimpl:protocol.entry-locationsbuilds the carrier entrylocation table…entry-locationsrole extractorimpl:protocol.envelope-contractparses the bounded Markdownfrontmatter envelope…envelope-contractrole codecimpl:protocol.exclusion-surfacestrict root-relativeexclusion input for bothextraction surfaces…exclusion-surfacerole contractimpl:protocol.extractextracts authored carriersand bindings into one graph…extractrole extractorimpl:protocol.gherkin-authoringreifies Gherkin behaviorand example authoring intothe one carrier path…gherkin-authoringrole extractorimpl:protocol.inline-code-spansscans raw HTML outsidematched code spans…inline-code-spansrole codecimpl:protocol.key-markersnormalizes step and termmarkers across the threecarriers…key-markersrole codecimpl:protocol.markdown-body-grammarmaps Markdown body contentto typed prose owners…markdown-body-grammarrole codecimpl:protocol.markdown-contentdecodes located Markdownentries and typed fences…markdown-contentrole codecimpl:protocol.markdown-pack-authoringreifies the Markdown Packmanifest into the onecarrier path…markdown-pack-authoringrole extractorimpl:protocol.markdown-parserreifies Markdown Specs andPacks through one carrierboundary…markdown-parserrole extractorimpl:protocol.markdown-yaml-policybounded YAML scalars andrelation-target forms…markdown-yaml-policyrole codecimpl:protocol.open-question-keysreads an open question'soptional key from itsMarkdown marker and refusesa bad or repeated key…open-question-keysrole codecimpl:protocol.open-section-orderpreserves authoredopen-section and model-termorder and Pack field order…open-section-orderrole codecimpl:protocol.pack-member-orderkeeps manifest member orderon the Pack node…pack-member-orderrole extractorimpl:protocol.protocol-bindingsProtocol builder-importtrust(protocolBindingScopeFor /collectProtocolBindings)…protocol-bindingsrole extractorimpl:protocol.static-reificationreifies authored carriersfrom the AST and neverevaluates them…static-reificationrole extractorMember depth 1impl:protocol.carrier-reificationreifies each canonicalcarrier surface into specs,packs, and findings…carrier-reificationrole extractorimpl:protocol.derive-graphderives the graph fromreified carriers andbindings…derive-graphrole extractorimpl:protocol.discover-filesrealizes exclusion-awarediscovery(normalizeExcludes /discoverFiles)…discover-filesrole extractorimpl:protocol.gherkin-kind-policyshared Gherkin kind-refusaland loss explanations…gherkin-kind-policyrole deciderOutside componentimpl:protocol.delivery-factsOutside component…delivery-facts
The diagram as text
  • impl:protocol.anchor-extraction: anchor reification seam: the constant form and the comment form, role extractor
  • impl:protocol.authoring-normalization: normalizes rule markers and question fields after carrier reification, role codec
  • impl:protocol.duplicate-id-exclusion: excludes duplicated carrier ids from the graph, role validator
  • impl:protocol.entry-citation-scan: records prose-mention tokens with addresses in anchored source files, role extractor
  • impl:protocol.entry-locations: builds the carrier entry location table, role extractor
  • impl:protocol.envelope-contract: parses the bounded Markdown frontmatter envelope, role codec
  • impl:protocol.exclusion-surface: strict root-relative exclusion input for both extraction surfaces, role contract
  • impl:protocol.extract: extracts authored carriers and bindings into one graph, role extractor
  • impl:protocol.gherkin-authoring: reifies Gherkin behavior and example authoring into the one carrier path, role extractor
  • impl:protocol.inline-code-spans: scans raw HTML outside matched code spans, role codec
  • impl:protocol.key-markers: normalizes step and term markers across the three carriers, role codec
  • impl:protocol.markdown-body-grammar: maps Markdown body content to typed prose owners, role codec
  • impl:protocol.markdown-content: decodes located Markdown entries and typed fences, role codec
  • impl:protocol.markdown-pack-authoring: reifies the Markdown Pack manifest into the one carrier path, role extractor
  • impl:protocol.markdown-parser: reifies Markdown Specs and Packs through one carrier boundary, role extractor
  • impl:protocol.markdown-yaml-policy: bounded YAML scalars and relation-target forms, role codec
  • impl:protocol.open-question-keys: reads an open question's optional key from its Markdown marker and refuses a bad or repeated key, role codec
  • impl:protocol.open-section-order: preserves authored open-section and model-term order and Pack field order, role codec
  • impl:protocol.pack-member-order: keeps manifest member order on the Pack node, role extractor
  • impl:protocol.protocol-bindings: Protocol builder-import trust (protocolBindingScopeFor / collectProtocolBindings), role extractor
  • impl:protocol.static-reification: reifies authored carriers from the AST and never evaluates them, role extractor
  • impl:protocol.carrier-reification: reifies each canonical carrier surface into specs, packs, and findings, role extractor
  • impl:protocol.derive-graph: derives the graph from reified carriers and bindings, role extractor
  • impl:protocol.discover-files: realizes exclusion-aware discovery (normalizeExcludes / discoverFiles), role extractor
  • impl:protocol.gherkin-kind-policy: shared Gherkin kind-refusal and loss explanations, role decider
  • impl:protocol.delivery-facts: Outside component
  • impl:protocol.derive-graph uses impl:protocol.delivery-facts · anchored
  • impl:protocol.extract uses impl:protocol.carrier-reification · anchored
  • impl:protocol.extract uses impl:protocol.derive-graph · anchored
  • impl:protocol.extract uses impl:protocol.discover-files · anchored
  • impl:protocol.gherkin-authoring uses impl:protocol.gherkin-kind-policy · anchored
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

component:protocol.graph the one graph and its semantic decisions

Layer domain, context protocol, role contract.

Component source binding

Members

Role contract
Role decider
Role reader

Uses

Uses component:protocol.model · 1 unit edges

  • component:protocol.graph uses component:protocol.model · anchored

Uses component:protocol.notation · 1 unit edges

  • component:protocol.graph uses component:protocol.notation · anchored

Used by

Satisfies

References

Members of component:protocol.graph
The diagram as text
  • impl:protocol.delivery-facts: computes delivery facts from resolving binding edges, role decider
  • impl:protocol.entry-address-resolution: resolves entry addresses for prose validation and citation readers, role reader
  • impl:protocol.example-space: resolves example-space vocabulary for contracts and floors, role decider
  • impl:protocol.oracle-target-eligibility: resolves oracle targets by example-space ownership across Spec kinds, role decider
  • impl:protocol.schema-version: versioned graph nodes, claims, edges and located evidence, role contract
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

component:protocol.import canonical conversion with a fidelity boundary

Layer application, context protocol, role service.

Component source binding

  • component:protocol.import canonical conversion with a fidelity boundary · src/import/import.ts:45

    Satisfies

    References

    None.

Members

Role codec
Role service
  • impl:protocol.sdp-import-core converts a TypeScript-carrier Spec into an idiomatic Markdown twin · src/import/import.ts:58

    Satisfies

    References

    None.

Role validator
  • impl:protocol.import-fidelity refuses Markdown emission that changes authored meaning · src/import/markdown-fidelity.ts:102

    Satisfies

    References

    None.

Uses

Uses component:protocol.extract · 1 unit edges

  • component:protocol.import uses component:protocol.extract · anchored

Uses component:protocol.notation · 1 unit edges

  • component:protocol.import uses component:protocol.notation · anchored

Uses component:protocol.validate · 1 unit edges

  • component:protocol.import uses component:protocol.validate · anchored

Used by

Satisfies

References

None.

Members of component:protocol.import
The diagram as text
  • impl:protocol.import-fidelity: refuses Markdown emission that changes authored meaning, role validator
  • impl:protocol.sdp-import-core: converts a TypeScript-carrier Spec into an idiomatic Markdown twin, role service
  • impl:protocol.sdp-import-markdown-emit: emits the Markdown document twin for an imported Spec, role codec
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

component:protocol.model the authored contracts and stable ids

Layer domain, context protocol, role contract.

Component source binding

  • component:protocol.model the authored contracts and stable ids · src/model/anchors.ts:100

    Satisfies

    References

    None.

Members

Role codec
Role contract

Uses

None.

Used by

Satisfies

References

Members of component:protocol.model
The diagram as text
  • impl:protocol.anchor-model: binding-only anchor model builders, role contract
  • impl:protocol.anchors-subpath: zero-dependency subpath exporting the id and anchor builders only, role contract
  • impl:protocol.pack-aggregate: Pack aggregate and model references, role contract
  • impl:protocol.spec-descriptors: Spec kind, altitude, and readiness coordinates, role contract
  • impl:protocol.spec-primitive: Spec envelope and enrich-in-place shape, role contract
  • impl:protocol.spec-relations: declared Spec relation builders, role contract
  • impl:protocol.spec-sections: typed Spec section shapes, role contract
  • impl:protocol.stable-ids: stable ID grammar parser, role codec
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

component:protocol.notation the leaf step codec

Layer domain, context protocol, role codec.

Component source binding

Members

Role codec
  • impl:protocol.slot-notation parses slot groups and normalizes a step to its skeleton · src/notation/slots.ts:269

    Satisfies

    References

    None.

Uses

None.

Used by

Satisfies

References

None.

Members of component:protocol.notation
The diagram as text
  • impl:protocol.slot-notation: parses slot groups and normalizes a step to its skeleton, role codec
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

component:protocol.projections read-only output, layout and owned publication

Layer edge, context protocol, role projection.

Component source binding

  • component:protocol.projections read-only output, layout and owned publication · src/projections/design-review.ts:29

    Satisfies

    References

    None.

Members

Role codec
Role contract
Role projection
Role publisher
Role service

Uses

Uses component:protocol.extract · 2 unit edges

  • component:protocol.projections uses component:protocol.extract · anchored
  • impl:protocol.gherkin-view uses impl:protocol.gherkin-kind-policy · anchored

Uses component:protocol.graph · 1 unit edges

  • component:protocol.projections uses component:protocol.graph · anchored

Uses component:protocol.model · 1 unit edges

  • component:protocol.projections uses component:protocol.model · anchored

Uses component:protocol.notation · 1 unit edges

  • component:protocol.projections uses component:protocol.notation · anchored

Uses component:protocol.reader · 4 unit edges

  • component:protocol.projections uses component:protocol.reader · anchored
  • impl:protocol.studio-recipes uses api:protocol.evaluate-body · anchored
  • impl:protocol.studio-recipes uses impl:protocol.reader · anchored
  • impl:protocol.vault-notes uses impl:protocol.reader · anchored

Uses component:protocol.validate · 1 unit edges

  • component:protocol.projections uses component:protocol.validate · anchored

Used by

Satisfies

References

Members of component:protocol.projections

Shown as text: this drawing exceeds the bound of 40 boxes and 100 edges.

The diagram as text
  • impl:protocol.binding-language-index-table: renders binding presence in index and Pack tables, role projection
  • impl:protocol.binding-language-spec-page: renders implementation, verifier, oracle, and observation binding language, role projection
  • impl:protocol.census-page: renders the derived census and runtime taxonomy projection, role projection
  • impl:protocol.derived-readiness-banner: renders stated readiness beside the structural floor and dishonest divergence, role projection
  • impl:protocol.design-review: renders the contextual Design Review projection, role projection
  • impl:protocol.design-review-codec: shared Design Review Markdown paths and links, role codec
  • impl:protocol.diagnostic-rendering-design-review: renders structured finding locations in the Design Review table, role projection
  • impl:protocol.gherkin-view: renders a generated Gherkin-shaped READ projection of any Spec, role projection
  • impl:protocol.mermaid-view: renders bounded Spec one-hop and Pack membership diagrams, role projection
  • impl:protocol.pack-design-page: renders the Pack page from the Pack design, role projection
  • impl:protocol.pack-design-sections: renders the Pack page's next-rung, boundary, question and code sections, role projection
  • impl:protocol.projections-model: pure generated projection page contract, role contract
  • impl:protocol.studio-architecture-diagrams: architecture grids and bounded context and layer folds, role projection
  • impl:protocol.studio-architecture-lens: renders recipe component rows and planned designs as architecture and member diagrams, role projection
  • impl:protocol.studio-capabilities-page: renders epic evidence, refinement and unreached Specs from the capability map, role projection
  • impl:protocol.studio-capability-diagrams: places refinement occurrences and bounded branches from the capability map, role projection
  • impl:protocol.studio-code-spans: escapes and maps code spans across Studio text, role codec
  • impl:protocol.studio-data: assembles reader contexts, Pack totals, rails and search records for static pages, role contract
  • impl:protocol.studio-diagram-layout: title-first box placement, wrapping and band sizing for desktop and phone, role projection
  • impl:protocol.studio-diagram-model: shared diagram boxes, edges and drawing bounds, role contract
  • impl:protocol.studio-diagram-routing: port, channel and overflow-rail edge routes around boxes and labels, role projection
  • impl:protocol.studio-diagram-source: escaped Mermaid flowchart and mindmap source in placed box order, role projection
  • impl:protocol.studio-diagrams: deterministic grid and band layouts with bounded folds and full text equivalents, role projection
  • impl:protocol.studio-diff: renders declared design changes and binding changes separately, role projection
  • impl:protocol.studio-evidence-lens: names the four evidence sources and what would bring each into the Studio, role projection
  • impl:protocol.studio-frame: renders Studio navigation, page rails and composing controls, role projection
  • impl:protocol.studio-glossary: renders Model terms with their entry-address links, role projection
  • impl:protocol.studio-html: shared Studio HTML, source and link encoding, role codec
  • impl:protocol.studio-index-page: renders Pack disclosures and filterable Spec rows, role projection
  • impl:protocol.studio-inputs: named base graph and run input contract, role contract
  • impl:protocol.studio-maturity-map: places resolved Pack members by their stated rung and floor in authored order, role projection
  • impl:protocol.studio-owner-queue: renders waiting readiness statements and decider questions, role projection
  • impl:protocol.studio-pack-export: copies rendered canvas content into one inline-styled document with prefixed element references, role projection
  • impl:protocol.studio-pack-page: renders Pack members, maturity and boundary joins, role projection
  • impl:protocol.studio-page-catalog: selects Studio pages, optional inputs and Pack exports, role projection
  • impl:protocol.studio-paths: encodes uppercase id letters for collision-free Pack and Spec page paths, role codec
  • impl:protocol.studio-publish: copies local assets and replaces the Studio directory through its temporary sibling, role publisher
  • impl:protocol.studio-recipes: evaluates shipped recipe bodies once and shares answers between Studio pages, role service
  • impl:protocol.studio-register-contracts: shared recipe answer shapes for Studio registers, role contract
  • impl:protocol.studio-registers: renders question, decision, declaration and backlog registers, role projection
  • impl:protocol.studio-relation-diagrams: relation and member bands and bounded relation folds, role projection
  • impl:protocol.studio-requirement-diagram: folds requirement bindings by relation direction and claim and serializes exact relations, role projection
  • impl:protocol.studio-requirement-view: selects Spec refiners, verifying examples and their recorded bindings, role projection
  • impl:protocol.studio-roadmap-page: renders roadmap needs, holding parts and the shared Markdown memo, role projection
  • impl:protocol.studio-run-rows: renders recipe 45 file rows shared by the runs page and verification panel, role projection
  • impl:protocol.studio-runs-page: renders readable CTRF inputs, file results, unjoined records and diagnostics, role projection
  • impl:protocol.studio-search-page: publishes search records beside the browser results view, role projection
  • impl:protocol.studio-slice-answer: full design slice answer consumed by the page and drawings, role contract
  • impl:protocol.studio-slice-architecture: selected component grid with distinct planned identities and complete unit edges, role projection
  • impl:protocol.studio-slice-dependencies: supplied depth bands with protected boundary boxes and lossless text, role projection
  • impl:protocol.studio-slice-page: design slice summaries, member needs, architecture comparisons and boundary tables, role projection
  • impl:protocol.studio-spec-page: renders Spec intent, relations and realization bindings, role projection
  • impl:protocol.studio-spec-structure: renders requirement and trace diagrams and the recorded structural neighborhood, role projection
  • impl:protocol.studio-tests-lens: renders shared rule and example-space coverage with filters and verifier bindings, role projection
  • impl:protocol.studio-text: escapes prose and links graph-resolving mentions, role codec
  • impl:protocol.studio-unit-register: renders component source bindings and role-grouped recorded units, role projection
  • impl:protocol.studio-verification-panels: renders rule coverage, example cards, constraint targets, verifiers and example-space coverage, role projection
  • impl:protocol.vault-bases: serializes standing query predicates over reader properties as Obsidian Bases, role projection
  • impl:protocol.vault-notes: renders reader contexts, declared relations and keyed terms as linked notes, role projection
  • impl:protocol.vault-sections: renders sections in graph order with keyed entry block ids, role projection
  • impl:protocol.vault-sync: guards every owned entry and records transitional hashes before atomic file replacement, role publisher
  • impl:protocol.vault-text: renders checked mentions and escapes Obsidian syntax outside code spans, role codec
  • api:protocol.evaluate-body: Outside component
  • impl:protocol.gherkin-kind-policy: Outside component
  • impl:protocol.reader: Outside component
  • impl:protocol.gherkin-view uses impl:protocol.gherkin-kind-policy · anchored
  • impl:protocol.studio-diagrams uses impl:protocol.studio-diagram-model · anchored
  • impl:protocol.studio-recipes uses api:protocol.evaluate-body · anchored
  • impl:protocol.studio-recipes uses impl:protocol.reader · anchored
  • impl:protocol.vault-notes uses impl:protocol.reader · anchored

component:protocol.reader the typed graph contract and body evaluator

Layer application, context protocol, role reader.

Component source binding

  • component:protocol.reader the typed graph contract and body evaluator · src/reader/reader.ts:671

    Satisfies

    References

    None.

Members

Role codec
Role reader
Role service

Uses

Uses component:protocol.graph · 2 unit edges

  • component:protocol.reader uses component:protocol.graph · anchored
  • impl:protocol.reader uses impl:protocol.delivery-facts · anchored

Uses component:protocol.model · 1 unit edges

  • component:protocol.reader uses component:protocol.model · anchored

Uses component:protocol.notation · 1 unit edges

  • component:protocol.reader uses component:protocol.notation · anchored

Uses component:protocol.validate · 2 unit edges

  • component:protocol.reader uses component:protocol.validate · anchored
  • impl:protocol.reader uses impl:protocol.next-rung-floor · anchored

Used by

Satisfies

References

Members of component:protocol.reader

Arrows: uses (anchored).

The diagram as text
  • api:protocol.evaluate-body: evaluates bodies and shipped recipes over one in-memory reader, graph and report, role service
  • impl:protocol.entry-citation-reader: resolves citations and joins file anchors with direct and example-based test verification, role reader
  • impl:protocol.example-space-decoding: shared example-space interpretation for contracts and reader contexts, role codec
  • impl:protocol.pack-design: the Pack design helpers and the Pack context assembly they serve, role reader
  • impl:protocol.reader: typed graph queries, entry adapters and context joins, role reader
  • impl:protocol.studio-concept-match: matches concepts deterministically across graph and browser queries, role reader
  • impl:protocol.delivery-facts: Outside component
  • impl:protocol.next-rung-floor: Outside component
  • impl:protocol.reader uses impl:protocol.delivery-facts · anchored
  • impl:protocol.reader uses impl:protocol.next-rung-floor · anchored
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

component:protocol.runner provider-neutral example execution

Layer application, context protocol, role service.

Component source binding

Members

Role service

Uses

Uses component:protocol.notation · 1 unit edges

  • component:protocol.runner uses component:protocol.notation · anchored

Used by

Satisfies

References

None.

Members of component:protocol.runner
The diagram as text
  • impl:protocol.example-runner: plans and executes a bound example against the caller's world, role service
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

component:protocol.studio-elements optional browser behavior and proposal handoff

Layer edge, context protocol, role interaction.

Component source binding

Members

Role contract
Role interaction
Role projection
Role service

Uses

Uses component:protocol.projections · 1 unit edges

  • component:protocol.studio-elements uses component:protocol.projections · anchored

Uses component:protocol.reader · 1 unit edges

  • component:protocol.studio-elements uses component:protocol.reader · anchored

Used by

None.

Satisfies

References

Members of component:protocol.studio-elements
Members of component:protocol.studio-elementsMember depth 0impl:protocol.studio-composeopens a native requestdialog besidebuild-rendered scopeswithout changing theircontent…studio-composerole interactionimpl:protocol.studio-copycopies text with selectionfallback and failurefeedback…studio-copyrole interactionimpl:protocol.studio-diagram-elementadds view-box pan, zoom andpinch to build-rendered SVGwithout changing its layout…studio-diagram-elementrole interactionimpl:protocol.studio-expanderopens fragment ancestorsand expands disclosures forprint…studio-expanderrole interactionimpl:protocol.studio-filterfilters build-rendered rowsthrough their recordedattributes…studio-filterrole interactionimpl:protocol.studio-intent-panelgathers ordered intentsunder the page-root storagekey and partitions theirhand-off…studio-intent-panelrole serviceimpl:protocol.studio-intent-panel-elementdisplays gathered requestsand writes copy selectionsor local download links…studio-intent-panel-elementrole interactionimpl:protocol.studio-proposal-contractbrowser proposal shape andschema checks…studio-proposal-contractrole contractimpl:protocol.studio-proposal-memorenders proposal fieldsverbatim with fences thatoutgrow their content…studio-proposal-memorole projectionimpl:protocol.studio-scenario-editorgathers the edited Given,When and Then as exact textscoped to its subject…studio-scenario-editorrole interactionimpl:protocol.studio-search-formroutes search forms throughpage-root URLs and fragments…studio-search-formrole interactionimpl:protocol.studio-search-resultsranks and renders concept,entry and file search hits…studio-search-resultsrole projectionimpl:protocol.studio-stampresolves published stampsand source links in thebrowser…studio-stamprole interaction
The diagram as text
  • impl:protocol.studio-compose: opens a native request dialog beside build-rendered scopes without changing their content, role interaction
  • impl:protocol.studio-copy: copies text with selection fallback and failure feedback, role interaction
  • impl:protocol.studio-diagram-element: adds view-box pan, zoom and pinch to build-rendered SVG without changing its layout, role interaction
  • impl:protocol.studio-expander: opens fragment ancestors and expands disclosures for print, role interaction
  • impl:protocol.studio-filter: filters build-rendered rows through their recorded attributes, role interaction
  • impl:protocol.studio-intent-panel: gathers ordered intents under the page-root storage key and partitions their hand-off, role service
  • impl:protocol.studio-intent-panel-element: displays gathered requests and writes copy selections or local download links, role interaction
  • impl:protocol.studio-proposal-contract: browser proposal shape and schema checks, role contract
  • impl:protocol.studio-proposal-memo: renders proposal fields verbatim with fences that outgrow their content, role projection
  • impl:protocol.studio-scenario-editor: gathers the edited Given, When and Then as exact text scoped to its subject, role interaction
  • impl:protocol.studio-search-form: routes search forms through page-root URLs and fragments, role interaction
  • impl:protocol.studio-search-results: ranks and renders concept, entry and file search hits, role projection
  • impl:protocol.studio-stamp: resolves published stamps and source links in the browser, role interaction
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

component:protocol.testing the generated registrar runtime

Layer adapter, context protocol, role adapter.

Component source binding

Members

Role adapter

Uses

Uses component:protocol.adapters · 1 unit edges

  • component:protocol.testing uses component:protocol.adapters · anchored

Uses component:protocol.runner · 1 unit edges

  • component:protocol.testing uses component:protocol.runner · anchored

Used by

None.

Satisfies

References

None.

Members of component:protocol.testing
The diagram as text
  • impl:protocol.example-testing-helpers: adapter-lifecycle and oracle-comparison helpers for bound examples, role adapter
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

component:protocol.validate one finding currency and ordered checks

Layer domain, context protocol, role validator.

Component source binding

Members

Role contract
Role decider
  • impl:protocol.kind-evidence defines the code-level per-kind evidence rows for readiness floors · src/validate/readiness-floor.ts:398

    Satisfies

    References

    None.

Role index
  • impl:protocol.graph-index builds the one-graph index validators and the reader share · src/validate/graph-index.ts:28

    Satisfies

    References

    None.

Role validator

Uses

Uses component:protocol.graph · 2 unit edges

  • component:protocol.validate uses component:protocol.graph · anchored
  • impl:protocol.authored-honesty-delivery-facts uses impl:protocol.delivery-facts · anchored

Uses component:protocol.model · 1 unit edges

  • component:protocol.validate uses component:protocol.model · anchored

Uses component:protocol.notation · 1 unit edges

  • component:protocol.validate uses component:protocol.notation · anchored

Used by

Satisfies

References

Members of component:protocol.validate

Arrows: uses (anchored).

Members of component:protocol.validateMember depth 0impl:protocol.authored-honesty-delivery-factschecks stated deliveryfacts equal the onerecomputed derivation…authored-honesty-delivery-factsrole validatorimpl:protocol.authored-honesty-shaperefuses delivery factssmuggled through authoredsection carriers…authored-honesty-shaperole validatorimpl:protocol.claim-separationchecks graph claims,descriptors, node shapes,and relation endpointcontracts…claim-separationrole validatorimpl:protocol.duplicate-idsrejects duplicate nodeidentities from any graphproducer…duplicate-idsrole validatorimpl:protocol.graph-indexbuilds the one-graph indexvalidators and the readershare…graph-indexrole indeximpl:protocol.kind-evidencedefines the code-levelper-kind evidence rows forreadiness floors…kind-evidencerole deciderimpl:protocol.next-rung-floorevaluates the floor for atarget rung and names thetargets that break adependency…next-rung-floorrole validatorimpl:protocol.oracle-linkageresolves and de-duplicatesexpected-outcome oraclebindings…oracle-linkagerole validatorimpl:protocol.orphan-signalsurfaces relationless Specsas informative orphanwarnings…orphan-signalrole validatorimpl:protocol.pack-coherencechecks Pack membershipagreement and uniquenessand model-reference kinds…pack-coherencerole validatorimpl:protocol.prose-mentionschecks that prose mentionsresolve and warns once perunbacked Spec pair…prose-mentionsrole validatorimpl:protocol.readiness-floorevaluates the statedreadiness floor against thegraph…readiness-floorrole validatorimpl:protocol.referential-integritychecks every graph edgeendpoint and Pack modelreference resolves…referential-integrityrole validatorimpl:protocol.rule-exerciseschecks the keys named bydeclared verifies relations…rule-exercisesrole validatorimpl:protocol.structural-anchorschecks structural anchorvalidity and disjointrealization and referencetargets…structural-anchorsrole validatorimpl:protocol.superseded-decision-signalwalks decision replacementsto surface stale shapingrelations…superseded-decision-signalrole validatorimpl:protocol.typed-dependency-floorchecks stated readinessacross all four typeddependencies…typed-dependency-floorrole validatorimpl:protocol.unbound-example-posturelimits unbound examplewarnings to stated ready…unbound-example-posturerole validatorimpl:protocol.validation-contractsconformance/honesty familycurrency and finding shapes…validation-contractsrole contractimpl:protocol.validation-familiesconformance and honestyvalidator registry…validation-familiesrole contractimpl:protocol.verifier-gap-signalsurfaces ready Specswithout recomputed verifierbindings as informative gaps…verifier-gap-signalrole validatorimpl:protocol.verifier-semanticsreadiness clauses overdirect verification bindings…verifier-semanticsrole validatorimpl:protocol.verifies-linkageresolves declared exampleverification throughenabled test bindings…verifies-linkagerole validatorOutside componentimpl:protocol.delivery-factsOutside component…delivery-facts
The diagram as text
  • impl:protocol.authored-honesty-delivery-facts: checks stated delivery facts equal the one recomputed derivation, role validator
  • impl:protocol.authored-honesty-shape: refuses delivery facts smuggled through authored section carriers, role validator
  • impl:protocol.claim-separation: checks graph claims, descriptors, node shapes, and relation endpoint contracts, role validator
  • impl:protocol.duplicate-ids: rejects duplicate node identities from any graph producer, role validator
  • impl:protocol.graph-index: builds the one-graph index validators and the reader share, role index
  • impl:protocol.kind-evidence: defines the code-level per-kind evidence rows for readiness floors, role decider
  • impl:protocol.next-rung-floor: evaluates the floor for a target rung and names the targets that break a dependency, role validator
  • impl:protocol.oracle-linkage: resolves and de-duplicates expected-outcome oracle bindings, role validator
  • impl:protocol.orphan-signal: surfaces relationless Specs as informative orphan warnings, role validator
  • impl:protocol.pack-coherence: checks Pack membership agreement and uniqueness and model-reference kinds, role validator
  • impl:protocol.prose-mentions: checks that prose mentions resolve and warns once per unbacked Spec pair, role validator
  • impl:protocol.readiness-floor: evaluates the stated readiness floor against the graph, role validator
  • impl:protocol.referential-integrity: checks every graph edge endpoint and Pack model reference resolves, role validator
  • impl:protocol.rule-exercises: checks the keys named by declared verifies relations, role validator
  • impl:protocol.structural-anchors: checks structural anchor validity and disjoint realization and reference targets, role validator
  • impl:protocol.superseded-decision-signal: walks decision replacements to surface stale shaping relations, role validator
  • impl:protocol.typed-dependency-floor: checks stated readiness across all four typed dependencies, role validator
  • impl:protocol.unbound-example-posture: limits unbound example warnings to stated ready, role validator
  • impl:protocol.validation-contracts: conformance/honesty family currency and finding shapes, role contract
  • impl:protocol.validation-families: conformance and honesty validator registry, role contract
  • impl:protocol.verifier-gap-signal: surfaces ready Specs without recomputed verifier bindings as informative gaps, role validator
  • impl:protocol.verifier-semantics: readiness clauses over direct verification bindings, role validator
  • impl:protocol.verifies-linkage: resolves declared example verification through enabled test bindings, role validator
  • impl:protocol.delivery-facts: Outside component
  • impl:protocol.authored-honesty-delivery-facts uses impl:protocol.delivery-facts · anchored
Mermaid source

Copyable source; the Studio draws static SVG.

Preferred syntax: flowchart. Chosen syntax: labelled flowchart, preserving exact relations, claims and folds.

No component

Role contract
  • impl:protocol.proposal-schema-and-recipe realizes the shipped proposal schema and proposal check in the recipe catalog · test/iteration-recipes.test.ts:1510

    Satisfies

    References

    None.

  • impl:protocol.validator-probe-table declares the refusing and accepting probes for every registered finding id · test/helpers/validator-probes.ts:372

    Satisfies

    References

    None.

Role projection
  • impl:protocol.capability-adoption-recipe realizes capability adoption in the shipped recipe catalog · test/upgrade-kit.test.ts:514

    Satisfies

    References

    None.

  • impl:protocol.capability-map-recipe asserts realization of The capability map in docs/agent-surface/recipes.md · test/recipes.test.ts:7602

    Satisfies

    References

  • impl:protocol.context-bundle-recipe realizes the context bundle in the shipped recipe catalog · test/iteration-recipes.test.ts:765

    Satisfies

    References

    None.

  • impl:protocol.design-diff-recipe realizes the design diff in the shipped recipe catalog · test/iteration-recipes.test.ts:27

    Satisfies

    References

    None.

  • impl:protocol.design-slice-recipe realizes the design slice in the shipped recipe catalog · test/self-hosting-design-slice.test.ts:148

    Satisfies

    References

    None.

  • impl:protocol.perspective-filter-recipe realizes the perspective filter in the shipped recipe catalog · test/iteration-recipes.test.ts:753

    Satisfies

    References

    None.

  • impl:protocol.roadmap-memo-recipe realizes the roadmap memo in the shipped recipe catalog · test/roadmap.test.ts:27

    Satisfies

    References

    None.

  • impl:protocol.roadmap-recipe realizes the roadmap in the shipped recipe catalog · test/roadmap.test.ts:20

    Satisfies

    References

    None.

  • impl:protocol.rule-key-proposal-recipe realizes the rule-key proposal in the shipped recipe catalog · test/upgrade-kit.test.ts:742

    Satisfies

    References

    None.

  • impl:protocol.statement-queue-recipe realizes the statement queue in the shipped recipe catalog · test/self-hosting-readiness-planner.test.ts:74

    Satisfies

    References

    None.

Role validator
  • impl:protocol.roadmap-practice realizes the roadmap handbook and its current-record gate · test/check-self-hosting-gates.test.ts:52

    Satisfies

    References

    None.

  • impl:protocol.validator-self-testing audits the finding registries against source literals and paired probes · test/helpers/validator-audit.ts:86

    Satisfies

    References

    None.

Role not stated
Composing (0)

Composing needs the script.