actorA Pack is read from a named perspective
spec:consumers.review-perspectivesChanged since the base graph base da4b141: narrative
Base input: schema 0.11.0, 405 Specs.
Packs: pack:design-iteration-v1, pack:design-management-v1, pack:self-hosting-v1
Design: 4 design entries · 1 pinned declaration · no decisions
Findings: no errors, no warnings
specs/consumers/review-perspectives.sdp.md
No open questions and no blocking questions; implementation binding present, verifier binding present, and expected-outcome oracle none.
The original design gave every reader one reading surface, each reading from their own concern: the analyst, the domain engineer, the architect, the tester, the designer and the agent (docs/lineage/v0-design/04-authoring-surfaces.md §6). The first adopter iterates each capability's design through advisor lenses, its runtime platform, the domain, operations and the product, each a written list of the questions its field asks, run over the same Pack by the same pass brief (libar-platform/design/advisors/lenses/, libar-platform/design/advisors/task-pass.md). It asks for a lens to be a filter over the same capability that reorders and emphasizes questions, entries, examples and constraints and opens the same Specs, with no new Spec kind and no compulsory sequence of stages (libar-platform/docs/feedback/sdp-feedback-02.md, item 28). The Protocol takes the member filter and the order and leaves each member's content whole; emphasis inside a member stays the reader's.
The owner ruled the word: perspective. The Spec Studio keeps lens for its graph views, its Packs, capabilities, architecture, tests and evidence views, and discipline stays the filter by kind or section. The adopter's advisor lens is a reader's concern, not a view of the graph, so in the Protocol's terms it is a perspective.
Intent
- A reviewer or an agent who reads a Pack for one concern, such as the domain model, operations or the runtime platform.
problem- Every reading of a Pack shows every member in the same order with the same emphasis, so a reader with one concern sorts it by hand, and an adopter keeps its perspectives as prose briefs the graph cannot apply.
outcome- Let a reviewer read the same Pack from one perspective at a time, filtered and ordered for that perspective, without a new kind or a stage.
Behavior
rule.contentIntactline 22 ·specs/consumers/review-perspectives.sdp.md:22- A perspective filters and orders a Pack's members and leaves each selected member's content intact; every row opens the same Spec, and the whole Pack stays one step away.
no example exercises it
ruleline 23 ·specs/consumers/review-perspectives.sdp.md:23- A perspective adds no kind, readiness, stage or sequence; reading a Pack from one perspective records nothing, and no perspective is required before another or before
readyis stated. ruleline 24 ·specs/consumers/review-perspectives.sdp.md:24- The corpus owns its perspectives and their questions; the Protocol supplies the filter and ships no list of perspectives.
ruleline 25 ·specs/consumers/review-perspectives.sdp.md:25- A perspective is corpus data: a JSON object the corpus keeps beside its briefs and passes to the perspective filter, a catalog recipe, through
--params. The reader loads no perspective file, and no validator lists or checks perspectives, so no registry forms. ruleline 26 ·specs/consumers/review-perspectives.sdp.md:26- A perspective selects members by Spec id or id prefix, kind, section presence, Design key with an optional value, question key, and authored relation type with a stated direction; it selects component layer or context only through the member's code unit bindings, satisfying or referencing, that the perspective names; it infers nothing from prose, paths or imports.
ruleline 27 ·specs/consumers/review-perspectives.sdp.md:27- A member selected by a Design key, including the
layerandcontextkeys a component design states, is selected on declared intent; a member selected through a binding's component is selected on anchored structure; each row names which, and the two are never merged into one architecture answer. ruleline 28 ·specs/consumers/review-perspectives.sdp.md:28- Values within one selector are alternatives and different selectors combine as requirements; an unsupported selector is a diagnostic in the result, and a valid selector that matches nothing is an explicit empty result.
ruleline 29 ·specs/consumers/review-perspectives.sdp.md:29- Members keep the manifest's authored order unless the perspective gives an explicit priority order, authored order breaking ties; every selected member's blocking questions stay visible whatever else the perspective filters out.
7 unkeyed rules.
Design
perspectiveObjectline 33 ·specs/consumers/review-perspectives.sdp.md:33{ "name": "models", "select": { "kinds": ["model"] } }selects the members of kindmodel. A perspective is{ name, select, order }withselectandorderoptional, and its selectors areids,idPrefixes,kinds,sections,designKeys,questionKeys,relationsandbindings, each optional; different selectors combine as requirements. An absent selector imposes no requirement, a present empty list matches no member, and an absent or emptyselectobject selects every member. AdesignKeysitem is{ key, value }withvalueoptional; arelationsitem is{ type, direction, target }withdirectionoutorinandtargetoptional;bindingsis{ via, layers, contexts }, whereviais required and listssatisfiesorreferences, and absentlayersorcontextsimpose no restriction.orderlists Spec ids by priority, authored order breaking ties.no citation recorded
perspectiveRecipeline 34 ·specs/consumers/review-perspectives.sdp.md:34- recipe 37, the perspective filter, takes
params.packandparams.perspectiveand returns{ pack, perspective, totals: { members, selected }, diagnostics, selected, notSelected }. perspectiveRowsline 35 ·specs/consumers/review-perspectives.sdp.md:35- each
selectedrow is{ id, matchedOn: [{ selector, value, claim }], blockingQuestions: [{ address, question }] }in the perspective's order and then authored order;claimisdeclaredfor a match on authored intent andanchoredfor a match through a binding;notSelectedlists the remaining member ids in authored order. perspectiveDiagnosticsline 36 ·specs/consumers/review-perspectives.sdp.md:36- an unknown selector, a value of the wrong type or a
bindingsselector with noviais a diagnostic row{ selector, problem }, and the recipe still applies the selectors it understood.
Verification
Verifier bindings
- test:protocol.perspective-filter-recipe · anchored · test anchor binding present ·
test/iteration-recipes.test.ts:760External run evidence from
test/iteration-recipes.test.tsTest anchors:
test:protocol.context-bundle-recipe,test:protocol.design-diff-recipe,test:protocol.perspective-filter-recipe,test:protocol.proposal-schema-and-recipe. Specs verified by those bindings: spec:consumers.context-bundle, spec:consumers.design-diff, spec:consumers.intent-composition.proposal, spec:consumers.review-perspectives.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 compares keyed values, keyed order and unkeyed sections while keeping bindings apart iteration loop: design diff passed 72.53 ms compares question fields by key, whole unkeyed questions, envelope fields and other sections iteration loop: design diff passed 30.62 ms reports added and removed Specs and Packs, filters the union of membership, and ignores source lines iteration loop: design diff passed 40.64 ms diagnoses required input and schema differences and compares common content iteration loop: design diff passed 12.84 ms runs the documented base-worktree procedure, preserves constant anchors, and compares HEAD iteration loop: design diff passed 24191.88 ms compares a keyed rule that becomes a flow at the same address iteration loop: design diff passed 40.12 ms compares new Design entries across schema versions when the base corpus has none iteration loop: design diff passed 20.7 ms diagnoses uncertain optional fields at base 0.9.0 and head 0.9.0 iteration loop: design diff passed 12.31 ms diagnoses uncertain optional fields at base 0.9.0 and head 0.10.0 iteration loop: design diff passed 14.37 ms diagnoses uncertain optional fields at base 0.10.0 and head 0.9.0 iteration loop: design diff passed 25.38 ms normalizes legacy rule markers in graphs with comparable rule-key capability iteration loop: design diff passed 14.26 ms invents no order across rules and flows from a legacy base iteration loop: design diff passed 24.92 ms compares a legacy base's keyed entries by order within each list iteration loop: design diff passed 28.06 ms reports proposal scopes outside the common schema as incomparable iteration loop: design diff passed 13.58 ms lists all authored reasons into and out of the planning subject in type/from/to order relation reasons in planning recipes passed 19.97 ms keeps dependency reasons in context-bundle footing relation reasons in planning recipes passed 9.01 ms matches every declared selector, combines requirements, and keeps authored order unless prioritized iteration loop: perspective filter passed 55.16 ms matches layers and contexts only through named bindings and keeps anchored matches apart iteration loop: perspective filter passed 32.84 ms reports malformed and unsupported selectors while applying understood ones iteration loop: perspective filter passed 33.17 ms keeps term addresses, term lines and key maps through the section cut iteration loop: context bundle passed 26.54 ms keeps questions and declarations in one place and member-example steps only in their member row iteration loop: context bundle passed 19.18 ms takes the declaration cut last only with addresses and keeps compact pointers and links iteration loop: context bundle passed 77.64 ms cuts a pinned dotted key to its line when it has no entry address iteration loop: context bundle passed 46.93 ms composes both scopes, dependency footing, declarations, example bindings and a perspective subset iteration loop: context bundle passed 24.38 ms takes all six whole-mode cuts in fixed order and counts the complete returned value including Unicode iteration loop: context bundle passed 45.42 ms keeps a pinned declaration whole through the sixth cut when its key contains a dot iteration loop: context bundle passed 18.09 ms reports invalid, missing, doubled and unknown scopes without a partial bundle iteration loop: context bundle passed 39.62 ms accepts term scopes and detects changed definitions through their authored keys iteration loop: proposal schema and check passed 27.58 ms holds the schema and recipe to the same accepted and refused documents iteration loop: proposal schema and check passed 115.66 ms checks the complete scope union, resolves both graphs, and reports each change independently iteration loop: proposal schema and check passed 18.38 ms agrees with recipe 35 on added, removed and changed entry values and on whole-Spec changes iteration loop: proposal schema and check passed 28.57 ms excludes anchor-only changes and requires the caller's base graph iteration loop: proposal schema and check passed 29.83 ms compares interleaved keyed rules and flows in their authored order and reports verifier changes apart iteration loop: comparison and budget edges passed 31.26 ms cuts example text once and preserves compact pointers after the sixth cut iteration loop: comparison and budget edges passed 32.28 ms reads the base graph and proposal from named JSON files through the real parameter seam iteration loop: comparison and budget edges passed 9.74 ms requires a test bound directly to an example before the bundle names it enabled iteration loop: example enablement passed 15.3 ms compares rule order by text and other anonymous collections as a whole iteration loop: anonymous collection order passed 25.17 ms keeps addresses in each place when narrative, example, question and section text are cut iteration loop: protected entry addresses passed 56.27 ms
Design view
Requirement drawing
- Declared verifying examples: no declared verifying example.
The diagram as text
- spec:consumers.review-perspectives: A Pack is read from a named perspective · declared Spec
- spec:consumers.projections-model: Projections fan out from one graph without becoming truth stores · declared Spec
- impl:protocol.perspective-filter-recipe: realizes the perspective filter in the shipped recipe catalog · anchored code ·
test/iteration-recipes.test.ts:753 - test:protocol.perspective-filter-recipe: test:protocol.perspective-filter-recipe · anchored test binding · binding present ·
test/iteration-recipes.test.ts:760 - spec:consumers.review-perspectives refines spec:consumers.projections-model · declared
- impl:protocol.perspective-filter-recipe satisfies spec:consumers.review-perspectives · anchored
- test:protocol.perspective-filter-recipe verifies spec:consumers.review-perspectives · 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
impl:protocol.perspective-filter-recipe· realizes the perspective filter in the shipped recipe catalog ·test/iteration-recipes.test.ts:753Uses
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.delivery-session-on-ramp: Delivery sessions route work from current graph state
- spec:consumers.design-slice: A slice reads a Pack as one design, with the architecture it touches and what each member needs next
- spec:consumers.pack-design: The Pack context carries the Pack's design
- spec:consumers.projections-model: Projections fan out from one graph without becoming truth stores
- spec:consumers.review-perspectives: A Pack is read from a named perspective
- spec:consumers.upgrade-kit.capability-adoption: Capability adoption counts where each capability is used and where it could apply
- spec:consumers.review-perspectives dependsOn spec:consumers.pack-design · declared
- spec:consumers.review-perspectives refines spec:consumers.projections-model · declared
- spec:consumers.delivery-session-on-ramp dependsOn spec:consumers.review-perspectives · declared — the design loop narrows a Pack to one perspective's members
- spec:consumers.design-slice dependsOn spec:consumers.review-perspectives · declared — a slice read for one concern takes the members a perspective selects
- spec:consumers.upgrade-kit.capability-adoption dependsOn spec:consumers.review-perspectives · declared — perspectives are counted from the objects the caller passes
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.projections-model · stated ready, floor ready
- dependsOn · spec:consumers.pack-design · stated ready, floor ready
Rested on by
Distance 1
- spec:consumers.delivery-session-on-ramp
Implementing units
impl:protocol.delivery-session-on-ramp·test/skills.test.ts:83
Referencing units
None.
Enabled verifiers: test:protocol.delivery-session-on-ramp
Packs: pack:self-hosting-v1
- spec:consumers.design-slice
Implementing units
impl:protocol.design-slice-recipe·test/self-hosting-design-slice.test.ts:148
Referencing units
impl:protocol.studio-slice-answer·src/projections/studio/slice-answer.ts:1
Enabled verifiers: spec:consumers.design-slice.chain, spec:consumers.design-slice.component-absent, spec:consumers.design-slice.component-differing, spec:consumers.design-slice.component-matching, spec:consumers.design-slice.component-unreadable, spec:consumers.design-slice.component-unrelated, spec:consumers.design-slice.decision-backlink, spec:consumers.design-slice.dependency-cycle, spec:consumers.design-slice.folded-example, spec:consumers.design-slice.independent-example, spec:consumers.design-slice.outside-components, spec:consumers.design-slice.outside-holding, spec:consumers.design-slice.outside-satisfied, spec:consumers.design-slice.outside-unbound, test:protocol.design-slice
- spec:consumers.upgrade-kit.capability-adoption
Implementing units
impl:protocol.capability-adoption-recipe·test/upgrade-kit.test.ts:514
Referencing units
None.
Enabled verifiers: spec:consumers.upgrade-kit.capability-adoption.counts-a-corpus
Distance 2
- spec:consumers.design-slice.chain
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.chain
- spec:consumers.design-slice.component-absent
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.component-absent
- spec:consumers.design-slice.component-differing
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.component-differing
- spec:consumers.design-slice.component-matching
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.component-matching
- spec:consumers.design-slice.component-unreadable
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.component-unreadable
- spec:consumers.design-slice.component-unrelated
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.component-unrelated
- spec:consumers.design-slice.decision-backlink
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.decision-backlink
- spec:consumers.design-slice.dependency-cycle
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.dependency-cycle
- spec:consumers.design-slice.folded-example
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.folded-example
- spec:consumers.design-slice.independent-example
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.independent-example
- spec:consumers.design-slice.outside-components
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.outside-components
- spec:consumers.design-slice.outside-holding
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.outside-holding
- spec:consumers.design-slice.outside-satisfied
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.outside-satisfied
- spec:consumers.design-slice.outside-unbound
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.design-slice.outside-unbound
- spec:consumers.graph-first-planning
Implementing units
impl:protocol.graph-first-planning·test/skills.test.ts:290
Referencing units
None.
Enabled verifiers: test:protocol.graph-first-planning
Packs: pack:self-hosting-v1
- spec:consumers.spec-studio.diagram-kinds.dependency
Implementing units
impl:protocol.studio-slice-dependencies·src/projections/studio/diagrams/slice.ts:10
Referencing units
None.
Enabled verifiers: test:protocol.studio-slice-dependency
- spec:consumers.spec-studio.diagram-kinds.scoped-architecture
Implementing units
impl:protocol.studio-slice-architecture·src/projections/studio/diagrams/slice.ts:219
Referencing units
None.
Enabled verifiers: test:protocol.studio-slice-architecture
- spec:consumers.spec-studio.slice-page
Implementing units
impl:protocol.studio-slice-page·src/projections/studio/pages/slice-page.ts:25
Referencing units
None.
Enabled verifiers: test:protocol.studio-slice-page
- spec:consumers.upgrade-kit.capability-adoption.counts-a-corpus
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.capability-adoption.counts-a-corpus
Distance 3
- spec:consumers.readiness-planner
Implementing units
impl:protocol.statement-queue-recipe·test/self-hosting-readiness-planner.test.ts:74
Referencing units
None.
Enabled verifiers: spec:consumers.readiness-planner.cycle-shares-a-round, spec:consumers.readiness-planner.decision-first, spec:consumers.readiness-planner.dependency-order, spec:consumers.readiness-planner.owner-question-holds
- spec:consumers.roadmap
Implementing units
impl:protocol.roadmap-recipe·test/roadmap.test.ts:20
Referencing units
None.
Enabled verifiers: spec:consumers.roadmap.blocking-part, spec:consumers.roadmap.buildable-part, spec:consumers.roadmap.built-work, spec:consumers.roadmap.design-part, spec:consumers.roadmap.drifting-part, spec:consumers.roadmap.missing-evidence, spec:consumers.roadmap.outside-parent, spec:consumers.roadmap.statement-order, spec:consumers.roadmap.statement-part, test:protocol.roadmap-recipe
Distance 4
- spec:consumers.projections-model.roadmap-views
Implementing units
None.
Referencing units
None.
Enabled verifiers: None
- spec:consumers.readiness-planner.cycle-shares-a-round
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.readiness-planner.cycle-shares-a-round
- spec:consumers.readiness-planner.decision-first
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.readiness-planner.decision-first
- spec:consumers.readiness-planner.dependency-order
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.readiness-planner.dependency-order
- spec:consumers.readiness-planner.owner-question-holds
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.readiness-planner.owner-question-holds
- spec:consumers.roadmap.blocking-part
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.roadmap.blocking-part
- spec:consumers.roadmap.buildable-part
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.roadmap.buildable-part
- spec:consumers.roadmap.built-work
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.roadmap.built-work
- spec:consumers.roadmap.design-part
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.roadmap.design-part
- spec:consumers.roadmap.drifting-part
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.roadmap.drifting-part
- spec:consumers.roadmap.memo
Implementing units
impl:protocol.roadmap-memo-recipe·test/roadmap.test.ts:27impl:protocol.studio-roadmap-page·src/projections/studio/pages/roadmap-page.ts:168
Referencing units
None.
Enabled verifiers: test:protocol.roadmap-memo-recipe, test:protocol.studio-roadmap-page
- spec:consumers.roadmap.missing-evidence
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.roadmap.missing-evidence
- spec:consumers.roadmap.outside-parent
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.roadmap.outside-parent
- spec:consumers.roadmap.statement-order
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.roadmap.statement-order
- spec:consumers.roadmap.statement-part
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.roadmap.statement-part
- spec:consumers.spec-studio.owner-queue
Implementing units
impl:protocol.studio-owner-queue·src/projections/studio/pages/queue-page.ts:9
Referencing units
None.
Enabled verifiers: spec:consumers.spec-studio.owner-queue.dependency-first
- spec:consumers.spec-studio.roadmap-page
Implementing units
impl:protocol.studio-roadmap-page·src/projections/studio/pages/roadmap-page.ts:168
Referencing units
None.
Enabled verifiers: test:protocol.studio-roadmap-page
- spec:consumers.upgrade-kit
Implementing units
impl:protocol.upgrade-guide·test/upgrade-kit.test.ts:87
Referencing units
None.
Enabled verifiers: test:protocol.upgrade-guide
- spec:protocol.roadmap-replaces-plans
Implementing units
impl:protocol.roadmap-practice·test/check-self-hosting-gates.test.ts:52
Referencing units
None.
Enabled verifiers: test:protocol.roadmap-practice
Distance 5
- spec:consumers.spec-studio.owner-queue.dependency-first
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.studio-queue-dependency-first
- spec:consumers.upgrade-kit.rule-key-proposal
Implementing units
impl:protocol.rule-key-proposal-recipe·test/upgrade-kit.test.ts:742
Referencing units
None.
Enabled verifiers: spec:consumers.upgrade-kit.rule-key-proposal.collision-and-unkeyable, spec:consumers.upgrade-kit.rule-key-proposal.proposal-applies-clean
- spec:protocol.delivery-record-cleanup
Implementing units
None.
Referencing units
None.
Enabled verifiers: None
Packs: pack:roadmap, pack:self-hosting-v1
Distance 6
- spec:consumers.upgrade-kit.rule-key-proposal.collision-and-unkeyable
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.rule-key-proposal.collision-and-unkeyable
- spec:consumers.upgrade-kit.rule-key-proposal.proposal-applies-clean
Implementing units
None.
Referencing units
None.
Enabled verifiers: test:protocol.rule-key-proposal.proposal-applies-clean
Relations
| Relation and direction | Other end | Claim | Reason | Exercised keys |
|---|---|---|---|---|
| dependsOn · outgoing | The Pack context carries the Pack's designspec:consumers.pack-design · resolves | declared | None | None |
| refines · outgoing | Projections fan out from one graph without becoming truth storesspec:consumers.projections-model · resolves | declared | None | None |
| dependsOn · incoming | Delivery sessions route work from current graph statespec:consumers.delivery-session-on-ramp · resolves | declared | the design loop narrows a Pack to one perspective's members | None |
| dependsOn · incoming | A slice reads a Pack as one design, with the architecture it touches and what each member needs nextspec:consumers.design-slice · resolves | declared | a slice read for one concern takes the members a perspective selects | None |
| dependsOn · incoming | Capability adoption counts where each capability is used and where it could applyspec:consumers.upgrade-kit.capability-adoption · resolves | declared | perspectives are counted from the objects the caller passes | None |
Bindings
Implementation binding: present
impl:protocol.perspective-filter-recipe· realizes the perspective filter in the shipped recipe catalog ·test/iteration-recipes.test.ts:753· role projection
Design reference: none
Verifier binding: present
- test:protocol.perspective-filter-recipe · anchored ·
test/iteration-recipes.test.ts:760· 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.