outcomeThe maturity map is drawn as a grid of counts
spec:consumers.spec-studio.diagram-kinds.maturity-pictureNew since the base graph base da4b141. See the diff.
Base input: schema 0.11.0, 405 Specs.
Packs: pack:roadmaps-and-slices-v1, pack:self-hosting-v1
Design: 6 design entries · 1 pinned declaration · no decisions
Findings: no errors, no warnings
specs/consumers/spec-studio.diagram-kinds.maturity-picture.sdp.md
No open questions and no blocking questions; implementation binding present, verifier binding present, and expected-outcome oracle none.
Intent
- See whether a Pack's statements match, lag or exceed its floors without a wall of member cards inside the picture.
Behavior
rule.discreteCellsline 15 ·specs/consumers/spec-studio.diagram-kinds.maturity-picture.sdp.md:15- Draw one equal-sized cell per stated-rung and floor pair. A populated cell shows its exact count and one mark per member, up to
100marks, beyond which it is filled solid, and links to that cell's full ordered member list; an empty cell is a faint outline with no number.matches,floor above statementandstatement above floorare named once each in the legend, and the diagonal carries an outline. Floor none is distinct from idea, and unresolved members are listed apart.no example exercises it
rule.noScoreline 16 ·specs/consumers/spec-studio.diagram-kinds.maturity-picture.sdp.md:16- Use categorical cell position, never normalized coordinates, a quality score, area proportional to maturity, completion percentage or a recommendation to implement. Marks count members and score nothing.
no example exercises it
rule.fullMembershipline 17 ·specs/consumers/spec-studio.diagram-kinds.maturity-picture.sdp.md:17- Every resolved member appears in exactly one cell list in authored order. The picture holds cell counts, not per-member cards. Without script every populated cell links to its already-built list and every member links to its card.
no example exercises it
rule.oneCellline 18 ·specs/consumers/spec-studio.diagram-kinds.maturity-picture.sdp.md:18- When every resolved member falls in one cell, one sentence before the grid names that cell's stated rung and floor with its count and links to the cell's member list, and the grid sits in a closed disclosure; when two or more cells hold members, the grid shows with no disclosure. The sentence scores nothing, and print opens the disclosure.
no example exercises it
0 unkeyed rules.
Design
matrixline 21 ·specs/consumers/spec-studio.diagram-kinds.maturity-picture.sdp.md:21- Rows run stated idea, scoped, defined, ready from top to bottom; columns run floor none, idea, scoped, defined, ready from left to right. The grid including axes fits the shared width budget. Empty cells show only a faint outline; the matching diagonal has a stronger outline. Relation phrases appear once in the legend.
boundline 22 ·specs/consumers/spec-studio.diagram-kinds.maturity-picture.sdp.md:22- The fixed categorical cells fit the shared box bound and have no edges. Membership volume does not grow the picture; complete lists follow in closed disclosures and print open. Overlong lists are never truncated.
oneCellDisclosureline 23 ·specs/consumers/spec-studio.diagram-kinds.maturity-picture.sdp.md:23- the disclosure that holds a one-cell grid reads
Stated readiness by floor reachedas its summary; the grid inside it keeps its element ids. textEquivalentline 24 ·specs/consumers/spec-studio.diagram-kinds.maturity-picture.sdp.md:24- Keep the accessible table of cell counts and complete member lists as the diagram's text equivalent; identify every member by its full id, title, stated rung and floor. The axis explanation belongs to the caption.
elementIdsline 25 ·specs/consumers/spec-studio.diagram-kinds.maturity-picture.sdp.md:25- Use
diagram.<subject>.maturity.textanddiagram.<subject>.maturity.cell.<stated>.<floor>; cell links target the built list, with unique member-card targets supplied by the Pack page. mermaidKindline 26 ·specs/consumers/spec-studio.diagram-kinds.maturity-picture.sdp.md:26blockwith a fixed categorical grid, cell labels and counts. This is not a quadrant chart; source includes each cell's full membership as comments and names its accessible table.no citation recorded
Verification
Verifier bindings
- test:protocol.studio-architecture-maturity-requirement · anchored · test anchor binding present ·
test/studio-panels.test.ts:35External run evidence from
test/studio-panels.test.tsTest anchors:
test:protocol.studio-architecture-maturity-requirement. Specs verified by those bindings: spec:consumers.spec-studio.diagram-kinds.maturity-picture, spec:consumers.spec-studio.diagram-kinds.requirement-trace, spec:consumers.spec-studio.lenses.architecture, spec:consumers.spec-studio.lenses.architecture.unit-register, spec:consumers.spec-studio.pack-page.maturity-map, spec:consumers.spec-studio.spec-page.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
Name Suite Result Duration orders both matrix axes by layer and id, links counts to supporting unit edges and keeps zeros compact architecture tables and register passed 74.8 ms groups unfamiliar and omitted roles in code-unit order, with source rows and separate binding lists architecture tables and register passed 27.09 ms draws equal categorical cells, exact counts and marks with ordered complete lists and unresolved members apart maturity picture passed 38.78 ms places the map inside the page's expander so a cell link opens its member list maturity picture passed 21.01 ms puts a uniform map behind a closed disclosure and uses solid fill above the mark bound maturity picture passed 321.53 ms selects the subject, refiners and verifying examples and keeps declared and anchored claims separate requirement drawing passed 35.44 ms keeps a refining verifier in the examples band and outside Specs apart requirement drawing passed 11.64 ms offers requirement syntax for the supported exact relation subset requirement drawing passed 10.84 ms counts the subject example when reporting selected verifying examples requirement drawing passed 8.27 ms folds the largest exact relation group deterministically and keeps every original binding in text not recorded passed 6.82 ms keeps a sparse large uses matrix readable with one visible zero legend and hidden cell words not recorded passed 17.36 ms contains the matrix's hidden cell words inside their scroll region not recorded passed 0.48 ms does not assert missing bindings on a boundary Spec whose bindings are outside the selected set not recorded passed 9.21 ms lets full component ids wrap so every uses column fits the printed page not recorded passed 1.26 ms keeps roles out of the pinned search record while preserving them on graph units not recorded passed 3.1 ms lists a unit whose recorded component is missing in No component and in unresolved structure not recorded passed 4.23 ms uses the singular member in a one-member Pack's uniform sentence not recorded passed 8.51 ms states each absent requirement band without implying that a populated drawing is missing not recorded passed 5.53 ms breaks equal requirement fold groups by 'kind' in lexical order not recorded passed 3.79 ms breaks equal requirement fold groups by 'direction' in lexical order not recorded passed 1.83 ms breaks equal requirement fold groups by 'claim' in lexical order not recorded passed 1.31 ms offers only the active relation and member renderers after requirement replaces realization not recorded passed 0.25 ms applies the closed-source print rule to both requirement and maturity drawings not recorded passed 0.3 ms
Design view
Requirement drawing
- Declared verifying examples: no declared verifying example.
The diagram as text
- spec:consumers.spec-studio.diagram-kinds.maturity-picture: The maturity map is drawn as a grid of counts · declared Spec
- spec:consumers.spec-studio.diagram-kinds: The Studio chooses diagram kinds from graph values · declared Spec
- impl:protocol.studio-maturity-map: places resolved Pack members by their stated rung and floor in authored order · anchored code ·
src/projections/studio/pages/maturity-map.ts:7 - test:protocol.studio-architecture-maturity-requirement: test:protocol.studio-architecture-maturity-requirement · anchored test binding · binding present ·
test/studio-panels.test.ts:35 - spec:consumers.spec-studio.diagram-kinds.maturity-picture refines spec:consumers.spec-studio.diagram-kinds · declared
- impl:protocol.studio-maturity-map satisfies spec:consumers.spec-studio.diagram-kinds.maturity-picture · anchored
- test:protocol.studio-architecture-maturity-requirement verifies spec:consumers.spec-studio.diagram-kinds.maturity-picture · 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
component:protocol.projections· read-only output, layout and owned publication ·src/projections/design-review.ts:29· layer edge · context protocol Uses
component:protocol.extract· the carrier and source pipeline ·src/extract/index.ts:192· layer application · context protocol component:protocol.graph· the one graph and its semantic decisions ·src/graph/schema.ts:34· layer domain · context protocol component:protocol.model· the authored contracts and stable ids ·src/model/anchors.ts:100· layer domain · context protocol component:protocol.notation· the leaf step codec ·src/notation/slots.ts:261· layer domain · context protocol component:protocol.reader· the typed graph contract and body evaluator ·src/reader/reader.ts:671· layer application · context protocol component:protocol.validate· one finding currency and ordered checks ·src/validate/validators.ts:72· layer domain · context protocol
impl:protocol.studio-maturity-map· places resolved Pack members by their stated rung and floor in authored order ·src/projections/studio/pages/maturity-map.ts:7Component:
component:protocol.projections· read-only output, layout and owned publication ·src/projections/design-review.ts:29· layer edge · 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
The diagram as text
- spec:consumers.spec-studio.diagram-kinds: The Studio chooses diagram kinds from graph values
- spec:consumers.spec-studio.diagram-kinds.maturity-picture: The maturity map is drawn as a grid of counts
- spec:consumers.spec-studio.pack-page.maturity-map: A Pack page's maturity map places every member by its stated rung and its floor
- spec:consumers.spec-studio.diagram-kinds.maturity-picture refines spec:consumers.spec-studio.diagram-kinds · declared
- spec:consumers.spec-studio.pack-page.maturity-map dependsOn spec:consumers.spec-studio.diagram-kinds.maturity-picture · declared — the map is drawn as the picture defines
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.diagram-kinds · stated ready, floor ready
Rested on by
Distance 1
- spec:consumers.spec-studio.pack-page.maturity-map
Implementing units
impl:protocol.studio-maturity-map·src/projections/studio/pages/maturity-map.ts:7
Referencing units
None.
Enabled verifiers: test:protocol.studio-architecture-maturity-requirement, test:protocol.studio-panels
Relations
| Relation and direction | Other end | Claim | Reason | Exercised keys |
|---|---|---|---|---|
| refines · outgoing | The Studio chooses diagram kinds from graph valuesspec:consumers.spec-studio.diagram-kinds · resolves | declared | None | None |
| dependsOn · incoming | A Pack page's maturity map places every member by its stated rung and its floorspec:consumers.spec-studio.pack-page.maturity-map · resolves | declared | the map is drawn as the picture defines | None |
Bindings
Implementation binding: present
impl:protocol.studio-maturity-map· places resolved Pack members by their stated rung and floor in authored order ·src/projections/studio/pages/maturity-map.ts:7· role projection · component component:protocol.projections· layer edge · context protocol
Design reference: none
Verifier binding: present
- test:protocol.studio-architecture-maturity-requirement · anchored ·
test/studio-panels.test.ts:35· 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.