Spec Studio

Runs

External run evidence from test files, read beside verifier bindings. Results describe the reported tests in each file.

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

3182 passed, 0 failed, 8 skipped, 0 pending, 0 other.

External run evidence from test/authoring-grammar.test.ts

Test anchors: test:protocol.authoring-grammar. Specs verified by those bindings: spec:model.open-question-fields, spec:model.relation-reasons, spec:model.rule-keys.

NameSuiteResultDuration
normalizes TypeScript keys and locates keyed and unkeyed rulesrule keyspassed74.83 ms
normalizes Markdown keys and locates keyed and unkeyed rulesrule keyspassed17.53 ms
normalizes Gherkin keys and locates keyed and unkeyed rulesrule keyspassed6.86 ms
accepts keys on every Behavior entryrule keyspassed1.99 ms
accepts keys on every Rule entryrule keyspassed1.89 ms
accepts keys on every Workflow entryrule keyspassed1.82 ms
accepts keys on every Contract entryrule keyspassed1.19 ms
keeps the TypeScript field order when it keys flows and rulesrule keyspassed4.94 ms
reports every repeated key in TypeScriptrule keyspassed4.11 ms
reports every repeated key in Markdownrule keyspassed4.89 ms
reports every repeated key in Gherkinrule keyspassed1.07 ms
reports duplicate keys across rules and flows at both sitesrule keyspassed1.22 ms
refuses malformed marker [#Bad] Text. in all carriersrule keyspassed6.13 ms
refuses malformed marker [#bad-key] Text. in all carriersrule keyspassed4.41 ms
refuses malformed marker [#] Text. in all carriersrule keyspassed4.5 ms
refuses malformed marker [#key]Text. in all carriersrule keyspassed3.64 ms
refuses malformed marker [#key] Text. in all carriersrule keyspassed5.2 ms
refuses malformed marker [#key] in all carriersrule keyspassed4.24 ms
omits ruleKeys when no rule is keyed and keeps Design Review rule text unchangedrule keyspassed4.27 ms
carries an optional runtime reasonrelation attributespassed0.43 ms
carries an optional runtime reasonrelation attributespassed0.33 ms
carries an optional runtime reasonrelation attributespassed0.2 ms
carries an optional runtime reasonrelation attributespassed0.17 ms
carries an optional runtime reasonrelation attributespassed0.27 ms
carries an optional runtime reasonrelation attributespassed0.21 ms
carries exercises only from a declared verifies relationrelation attributespassed4.67 ms
reads a target-only refines object as the plain idrelation attributespassed9.3 ms
reads a target-only dependsOn object as the plain idrelation attributespassed8.73 ms
reads a target-only constrainedBy object as the plain idrelation attributespassed5.38 ms
reads a target-only decidedBy object as the plain idrelation attributespassed5.8 ms
reads a target-only verifies object as the plain idrelation attributespassed15.44 ms
reads a target-only supersedes object as the plain idrelation attributespassed5.68 ms
accepts mixed Markdown target forms and TypeScript second argumentsrelation attributespassed3.05 ms
refuses invalid relation options {reason: ""}relation attributespassed1.72 ms
refuses invalid relation options {reason: "one\ntwo"}relation attributespassed2.13 ms
refuses invalid relation options {strength: "hard"}relation attributespassed1.63 ms
refuses invalid relation options {exercises: ["first"]}relation attributespassed1.73 ms
refuses invalid Markdown relation options {reason: ""}relation attributespassed1.6 ms
refuses invalid Markdown relation options {reason: "one\ntwo"}relation attributespassed0.54 ms
refuses invalid Markdown relation options {aspect: "shape"}relation attributespassed0.48 ms
refuses invalid Markdown relation options {exercises: [first]}relation attributespassed0.47 ms
refuses invalid Markdown relation options {target: spec:probe.parent, reason: "x"}relation attributespassed0.93 ms
refuses malformed exercises []relation attributespassed1.62 ms
refuses malformed exercises ["first", "first"]relation attributespassed1.5 ms
refuses malformed exercises ["Bad"]relation attributespassed1.39 ms
refuses malformed exercises "first"relation attributespassed1.29 ms
refuses a duplicate target across plain and object formsrelation attributespassed5.06 ms
refuses a duplicate target shared by plain and target-only formsrelation attributespassed3.15 ms
maps Gherkin exercises to the default or explicit verified targetrelation attributespassed1.6 ms
refuses invalid Gherkin exercises @exercises.Badrelation attributespassed0.64 ms
refuses invalid Gherkin exercises @exercises.first @exercises.firstrelation attributespassed0.4 ms
refuses invalid Gherkin exercises @exercises.first @verifies.spec:probe.parent @verifies.spec:probe.otherrelation attributespassed0.39 ms
refuses Gherkin exercises on a Feature or example spacerelation attributespassed1.91 ms
refuses Gherkin exercises on an otherwise lawful example-space scenariogrammar boundary checkspassed0.6 ms
refuses a malformed or near-miss exercises tag @exercisesgrammar boundary checkspassed0.49 ms
refuses a malformed or near-miss exercises tag @exercise.firstgrammar boundary checkspassed0.39 ms
keeps the carrier finding caps after common normalizationgrammar boundary checkspassed4.38 ms
keeps collection order for rule keys when only some entries carry a linegrammar boundary checkspassed0.21 ms
keeps relation finding lines after serialization reorders edgesgrammar boundary checkspassed1.92 ms
refuses exercises on an anchored verifies edgegrammar boundary checkspassed0.84 ms
refuses an unknown relation property even when its name is inheritedgrammar boundary checkspassed0.57 ms
carries the fields through Markdown, serialization and the reader with exact linesquestion fieldspassed2.84 ms
records TypeScript fields at their properties and leaves absent fields absentquestion fieldspassed3.01 ms
refuses invalid Markdown field - decider: Owner at its linequestion fieldspassed0.63 ms
refuses invalid Markdown field - decider: at its linequestion fieldspassed0.53 ms
refuses invalid Markdown field - decider: owner - decider: delegated at its linequestion fieldspassed0.59 ms
refuses invalid Markdown field - links: at its linequestion fieldspassed0.51 ms
refuses invalid Markdown field - links: spec:probe.parent, spec:probe.parent at its linequestion fieldspassed0.45 ms
refuses invalid Markdown field - provisional: at its linequestion fieldspassed0.46 ms
refuses invalid Markdown field - trigger: at its linequestion fieldspassed0.42 ms
refuses invalid Markdown field - status: waiting at its linequestion fieldspassed0.41 ms
refuses invalid Markdown field - decider: owner at its linequestion fieldspassed0.49 ms
refuses invalid Markdown field - decider: owner continuation at its linequestion fieldspassed0.45 ms
refuses a trigger on a non-blocking question and a field outside a questionquestion fieldspassed4.8 ms
refuses invalid TypeScript field decider: "Owner"question fieldspassed1.98 ms
refuses invalid TypeScript field links: []question fieldspassed1.79 ms
refuses invalid TypeScript field links: ["spec:probe.parent", "spec:probe.parent"]question fieldspassed5.77 ms
refuses invalid TypeScript field provisional: "one\ntwo"question fieldspassed4.65 ms
refuses invalid TypeScript field trigger: "A caller."question fieldspassed1.76 ms
refuses invalid TypeScript field status: "waiting"question fieldspassed1.64 ms
refuses invalid TypeScript field decider: "owner", decider: "delegated"question fieldspassed1.37 ms
refuses invalid TypeScript field decider: selectOwner()question fieldspassed1.61 ms
refuses invalid TypeScript field links: [ref("spec:probe.parent")]question fieldspassed1.56 ms
refuses invalid TypeScript field links: ["spec:probe.parent", ...others]question fieldspassed1.57 ms
checks every link as a complete token and groups unbacked pairs with prosequestion fieldspassed2.14 ms
keeps readiness dependent on the blocking flag alonequestion fieldspassed4.18 ms
preserves rule and flow keys, all question fields, reasons and exercisesTypeScript importpassed8.9 ms

External run evidence from test/builders.test.ts

Test anchors: test:protocol.core-model, test:protocol.pack-builder, test:protocol.relation-builders. Specs verified by those bindings: spec:model.core-model, spec:model.pack-aggregate, spec:model.relations.

NameSuiteResultDuration
enriches one Spec envelope while keeping all three coordinates independentbuilderspassed37.1 ms
derives delivery facts directly without propagating realization through refinementbuilderspassed1.44 ms
builds plain serializable specs with declared relationsbuilderspassed3.7 ms
builds packs as plain manifests with no authored truth fieldsbuilderspassed0.47 ms
builds identity-only anchors as plain serializable objectsbuilderspassed0.36 ms

External run evidence from test/census.test.ts

Test anchors: test:protocol.census-page. Specs verified by those bindings: spec:consumers.census-page.

NameSuiteResultDuration
renders the checkout fixture as the reviewed golden pagethe derived census/taxonomy projectionpassed125.03 ms
labels the index as diagnostic when the real reader reports validation errorsthe derived census/taxonomy projectionpassed44.85 ms
is byte-identical under reordered graph inputthe derived census/taxonomy projectionpassed0.92 ms
keeps every exported runtime taxonomy category visible at zerothe derived census/taxonomy projectionpassed0.98 ms
renders component rollups and uses cycles deterministicallythe derived census/taxonomy projectionpassed1.44 ms
renders dangling structural references from reader findings without re-deriving themthe derived census/taxonomy projectionpassed0.49 ms
renders a dangling structural reference produced by the real extraction pipelinethe derived census/taxonomy projectionpassed6.19 ms
renders foreign taxonomy values as deterministic unrecognized rowsthe derived census/taxonomy projectionpassed0.56 ms
counts stated and derived readiness in separate dimensionsthe derived census/taxonomy projectionpassed0.49 ms
sources its findings only from reader.findings()the derived census/taxonomy projectionpassed0.4 ms
renders anchor flavor from node type, namespace, and binding edgethe derived census/taxonomy projectionpassed0.32 ms
renders the role, layer, and context taxonomies and the references table from the graphthe derived census/taxonomy projectionpassed21.95 ms
renders attribute-only structure, a foreign layer value, and empty tables deterministicallythe derived census/taxonomy projectionpassed0.82 ms
groups twenty thousand units sharing one role and one context into one bucket each, in id orderthe derived census/taxonomy projectionpassed174.02 ms
creates each attribute bucket once, however many units share the valuethe derived census/taxonomy projectionpassed320.72 ms
keeps the explicit empty state while still counting units apart from edgesthe derived census/taxonomy projectionpassed0.56 ms
publishes diagnostic output for validation errors and returns nonzerosdp census publicationpassed39.92 ms
creates the explicit generated/census surface by wholesale temporary-directory replacementsdp census publicationpassed36.79 ms
refuses drift under --check-clean and removes output that cannot read as currentsdp census publicationpassed74.84 ms
refuses a diverging --check-clean twin without publishing stale or partial outputsdp census publicationpassed83.77 ms
invalidates stale census output before a controlled failed buildsdp census publicationpassed7.16 ms

External run evidence from test/check-self-hosting-gates.test.ts

Test anchors: test:protocol.roadmap-practice. Specs verified by those bindings: spec:protocol.roadmap-replaces-plans.

NameSuiteResultDuration
accepts the current record without requiring the historical ledger shapethe self-hosting records gatepassed71.95 ms
fails when a frozen historical owner-packet pin is brokenthe self-hosting records gatepassed53.98 ms
refuses a missing handbook pointer: pack:roadmapthe self-hosting records gatepassed50.43 ms
refuses a missing handbook pointer: recipe 53the self-hosting records gatepassed51.4 ms
names a missing roadmap manifestthe self-hosting records gatepassed49.75 ms
names the generated graph when absentthe self-hosting records gatepassed53.27 ms
names the generated graph when corruptthe self-hosting records gatepassed48.12 ms
accepts quoted priority with a comment and rejects a renamed roadmap idthe self-hosting records gatepassed103.12 ms
requires a priority roadmap node derived from the manifest: the self-hosting records gatepassed55.64 ms
requires a priority roadmap node derived from the manifest: order: readingthe self-hosting records gatepassed57.4 ms
requires a priority roadmap node derived from the manifest: --- # Roadmap order: prioritythe self-hosting records gatepassed52.17 ms
checks no content, dependency order or plan number: []the self-hosting records gatepassed56.92 ms
checks no content, dependency order or plan number: [spec:probe.built]the self-hosting records gatepassed58.16 ms
checks no content, dependency order or plan number: [spec:probe.dependent, spec:probe.dependency]the self-hosting records gatepassed46.96 ms
keeps the documented green gate and semantic plan-status banthe self-hosting records gatepassed56.19 ms
ships the roadmap, recovery and review convention in the handbookthe self-hosting records gatepassed7.56 ms

External run evidence from test/cli-q.test.ts

Test anchors: test:protocol.evaluation-sink, test:protocol.query-answer-shapes, test:protocol.query-params. Specs verified by those bindings: spec:consumers.agent-surface.evaluation-sink, spec:consumers.agent-surface.recipe-parameters.

NameSuiteResultDuration
evaluates an argv body over the derived graph and prints the pre-shaped returnsdp q — the agent front doorpassed30.42 ms
reads the body from stdin when stdin is not a terminalsdp q — the agent front doorpassed9.06 ms
prefers the argv body over stdin when both are availablesdp q — the agent front doorpassed14.89 ms
refuses with no body when stdin is a terminal instead of waiting on itsdp q — the agent front doorpassed0.38 ms
refuses an empty body rather than evaluating nothingsdp q — the agent front doorpassed0.26 ms
prints JSON for --jsonsdp q — the agent front doorpassed6.89 ms
exits 1 and names the failure when the body throwssdp q — the agent front doorpassed5.4 ms
exits 1 on a body that does not compilesdp q — the agent front doorpassed10.85 ms
awaits an asynchronous bodysdp q — the agent front doorpassed6.69 ms
injects a live reader: the entry adapters answer from the derived graphsdp q — the agent front doorpassed6.81 ms
injects the raw graph schema alongside the readersdp q — the agent front doorpassed7.44 ms
injects the validation report as data, never as a gatesdp q — the agent front doorpassed5.16 ms
runs the body when the graph merely reports findings — checks never gate the read pathsdp q — the agent front doorpassed3.87 ms
refuses to run the body when the graph does not derive, rendering the extraction findingssdp q — the agent front doorpassed11.48 ms
reports a body that returns nothing rather than printing a silent blanksdp q — the agent front doorpassed9.5 ms
refuses an unknown option and a second body without deriving anythingsdp q — the agent front doorpassed0.31 ms
refuses an empty --root instead of reinterpreting it as the working directorysdp q — the agent front doorpassed0.13 ms
refuses a root that is not a directory, naming the resolved absolute pathsdp q — the agent front doorpassed0.15 ms
honours --exclude, so the sink omits exactly the paths the caller namessdp q — the agent front doorpassed3.39 ms
runs the body when extraction itself only warns — the warning is data, never a gatesdp q — the agent front doorpassed3.56 ms
detects a terminal from the file descriptor, never from a stream propertysdp q — the agent front doorpassed3.91 ms
puts --exclude through the strict exclusion contract before deriving anythingsdp q — the agent front doorpassed0.33 ms
reports a throw from rendering the return value through the one diagnostic currencysdp q — the agent front doorpassed3.17 ms
refuses a --json return value whose toJSON yields no JSON formsdp q — the agent front doorpassed4.15 ms
writes nothing: the sink is a pure read toolsdp q — the agent front doorpassed273.64 ms
injects params as a fourth binding beside g, graph and reportsdp q --params — a recipe parameter as datapassed12.05 ms
binds params to an empty object without the flagsdp q --params — a recipe parameter as datapassed4.98 ms
passes any JSON object through unchangedsdp q --params — a recipe parameter as datapassed8.55 ms
reads params from a file named with @PATH, a byte-order mark droppedsdp q --params — a recipe parameter as datapassed4.8 ms
refuses inline text that is not JSON before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.82 ms
refuses an empty value before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.34 ms
refuses null before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.29 ms
refuses an array before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.27 ms
refuses a string before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.18 ms
refuses a number before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.18 ms
refuses a boolean before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.16 ms
refuses a file that cannot be read before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.33 ms
refuses an @ with no path before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.37 ms
refuses a missing value before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.27 ms
refuses a flag in place of the value before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.21 ms
refuses a repeated key before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.28 ms
refuses a key outside the lower-camel grammar before the body runs: exit 1, one line, nothing on stdoutsdp q --params — a recipe parameter as datapassed0.23 ms
refuses a file whose JSON is not an object, in one line naming the filesdp q --params — a recipe parameter as datapassed0.38 ms
refuses a file whose text is not JSON, in one line naming the filesdp q --params — a recipe parameter as datapassed0.35 ms
locates a refused body return )query body positions and merged parameterspassed1.02 ms
locates a refused body return 1; foo barquery body positions and merged parameterspassed0.61 ms
locates a refused body let x = 'a' 'bcdef';query body positions and merged parameterspassed0.54 ms
locates a refused body const value = 1; return )query body positions and merged parameterspassed0.46 ms
locates a refused body return (query body positions and merged parameterspassed0.68 ms
names a body that stops short instead of the wrapper's closing bracequery body positions and merged parameterspassed0.52 ms
keeps runtime failures separate, including a thrown SyntaxErrorquery body positions and merged parameterspassed0.39 ms
refuses repeated top-level keys inside one inline object before extractionquery body positions and merged parameterspassed65.21 ms
refuses repeated top-level keys inside one file object before extractionquery body positions and merged parameterspassed80.84 ms
accepts nested duplicates and duplicate-looking text inside valuesquery body positions and merged parameterspassed1.16 ms
binds a keyed file's JSON value null beside merged objectsquery body positions and merged parameterspassed1 ms
binds a keyed file's JSON value 1 beside merged objectsquery body positions and merged parameterspassed37.32 ms
binds a keyed file's JSON value "text" beside merged objectsquery body positions and merged parameterspassed14.05 ms
binds a keyed file's JSON value 4 beside merged objectsquery body positions and merged parameterspassed46.29 ms
binds a keyed file's JSON value true beside merged objectsquery body positions and merged parameterspassed58.06 ms
binds a keyed file's JSON value {"nested":{"a":1}} beside merged objectsquery body positions and merged parameterspassed72.25 ms
refuses duplicate keys from inline-file before extractionquery body positions and merged parameterspassed0.63 ms
refuses duplicate keys from file-inline before extractionquery body positions and merged parameterspassed0.28 ms
refuses duplicate keys from keyed-inline before extractionquery body positions and merged parameterspassed96.72 ms
refuses duplicate keys from inline-keyed before extractionquery body positions and merged parameterspassed0.58 ms
refuses duplicate keys from keyed-keyed before extractionquery body positions and merged parameterspassed0.51 ms
keeps merged parameter keys writable for the caller's bodyquery body positions and merged parameterspassed0.91 ms
refuses an invalid keyed input key=@ before extractionquery body positions and merged parameterspassed0.34 ms
refuses an invalid keyed input key=@missing-file.json before extractionquery body positions and merged parameterspassed0.27 ms
refuses an invalid keyed input bad-key=@missing-file.json before extractionquery body positions and merged parameterspassed0.16 ms
refuses an invalid keyed input bad_key=@missing-file.json before extractionquery body positions and merged parameterspassed0.29 ms
reads inline JSON and @PATH before KEY=@PATH when the input contains =@query body positions and merged parameterspassed0.69 ms
refuses a keyed file holding invalid JSON before extractionquery body positions and merged parameterspassed0.4 ms
merges own keys without treating __proto__ as an assignmentquery body positions and merged parameterspassed0.57 ms

External run evidence from test/codegen.test.ts

Test anchors: test:protocol.runnable-modules-generation. Specs verified by those bindings: spec:extraction.runnable-modules.

NameSuiteResultDuration
emits a space contract per example-space parent and a step contract per bindable examplethe contracts codegen stagepassed5.81 ms
emits an exhaustive sibling registrar for a bindable anchored examplethe contracts codegen stagepassed1.41 ms
keys sibling registrar paths by Spec ID when one authored suite verifies multiple examplesthe contracts codegen stagepassed4.35 ms
refuses multiple distinct registrar paths for one examplethe contracts codegen stagepassed1.32 ms
is deterministic: two generations over one graph are byte-identicalthe contracts codegen stagepassed0.99 ms
refuses a prose-only example and an unbound-slot example — refusing is the honest behaviorthe contracts codegen stagepassed0.6 ms
emits a step contract with inferred param types when no parent vocabulary matchesthe contracts codegen stagepassed0.42 ms
withholds a child contract when its steps drift outside an existing parent vocabularythe contracts codegen stagepassed1.48 ms
withholds a child contract when multiple parent spaces type one skeleton incompatiblythe contracts codegen stagepassed1 ms
keeps a partial point honest: only the bound dimensions enter the pointthe contracts codegen stagepassed0.69 ms
keeps incomplete contract points in reader and recipe coveragethe contracts codegen stagepassed6.43 ms
counts the review probe's small binding with an empty Then in recipe 44the contracts codegen stagepassed1.89 ms
warns and drops an undeclared slot from the point — loud, never silent (L2)the contracts codegen stagepassed0.67 ms
warns and drops an off-dimension value; the step contract widens the slot so it still compilesthe contracts codegen stagepassed0.76 ms
warns on a conflicting re-binding of one skeleton within one example — first wins (MD-17)the contracts codegen stagepassed0.71 ms
warns on a conflicting dimension declaration across vocabulary steps — first winsthe contracts codegen stagepassed0.34 ms
warns on conflicting declarations of one dimension within a vocabulary step — first winsthe contracts codegen stagepassed0.38 ms
refuses to guess the single-quoted-literal vocabulary form — deferred to the grammar session, loudlythe contracts codegen stagepassed0.47 ms
warns on a vocabulary slot that declares no usable type — an authored slot never falls out silently (L2)the contracts codegen stagepassed0.43 ms
binding a Then-vocabulary slot is ordinary (the outcome point) — no undeclared-slot warningthe contracts codegen stagepassed0.69 ms
emits nothing over a graph with no example spaces and no bindable examplesthe contracts codegen stagepassed0.19 ms
derives contract AND point from the first complete entry, and names extra entries (MD-17 made loud)the contracts codegen stagepassed0.59 ms
warns on a conflicting re-binding of one slot WITHIN a single step text — first winsthe contracts codegen stagepassed0.52 ms
withholds the contracts tree WHOLE on a case-colliding path — all-or-nothing, never a second gatethe contracts codegen stagepassed0.81 ms

External run evidence from test/concept-match.test.ts

Test anchors: test:protocol.studio-concept-match. Specs verified by those bindings: spec:consumers.spec-studio.search.

NameSuiteResultDuration
ships a standalone matcher module with no Node dependencythe concept matcher shared by the reader and Studiopassed2.06 ms
keeps reader results and their order for "order" on both corporathe concept matcher shared by the reader and Studiopassed157.77 ms
keeps reader results and their order for "ready" on both corporathe concept matcher shared by the reader and Studiopassed107.75 ms
keeps reader results and their order for "sentinel" on both corporathe concept matcher shared by the reader and Studiopassed108.29 ms
keeps reader results and their order for "POST /ORDERS" on both corporathe concept matcher shared by the reader and Studiopassed110.85 ms
keeps reader results and their order for "inventorySnapshot" on both corporathe concept matcher shared by the reader and Studiopassed67.82 ms
keeps reader results and their order for "given" on both corporathe concept matcher shared by the reader and Studiopassed63.98 ms
keeps reader results and their order for "" on both corporathe concept matcher shared by the reader and Studiopassed43.41 ms
keeps reader results and their order for " " on both corporathe concept matcher shared by the reader and Studiopassed47.33 ms
pins ranking and the fields the reader scans independently of its callerthe concept matcher shared by the reader and Studiopassed0.37 ms
appends only coined-key and file matches, after concept matchesthe concept matcher shared by the reader and Studiopassed0.47 ms

External run evidence from test/corpus-rules.test.ts

Test anchors: test:protocol.validate-watch-rules. Specs verified by those bindings: spec:consumers.validate-watch.

NameSuiteResultDuration
documents repeatable rules, per-file parameters and check-cleancorpus rule argumentspassed1.64 ms
refuses "--params" before derivingcorpus rule argumentspassed0.95 ms
refuses "--params" before derivingcorpus rule argumentspassed0.2 ms
refuses "--rules" before derivingcorpus rule argumentspassed0.17 ms
refuses "--rules" before derivingcorpus rule argumentspassed0.51 ms
refuses "--rules" before derivingcorpus rule argumentspassed0.62 ms
refuses "--rules" before derivingcorpus rule argumentspassed0.31 ms
refuses "--rules" before derivingcorpus rule argumentspassed0.28 ms
refuses "--rules" before derivingcorpus rule argumentspassed0.19 ms
binds parameters to the preceding file across other optionscorpus rule argumentspassed0.99 ms
refuses rules on buildcorpus rule argumentspassed0.32 ms
refuses rules on viewcorpus rule argumentspassed0.12 ms
refuses rules on censuscorpus rule argumentspassed0.08 ms
refuses rules on mermaidcorpus rule argumentspassed0.17 ms
refuses rules on gherkincorpus rule argumentspassed0.21 ms
refuses rules on qcorpus rule argumentspassed0.22 ms
refuses the same rules file through a symlink before derivingcorpus rules on validatepassed1.44 ms
refuses a finding file outside root-relative POSIX paths: /etc/passwdcorpus rules on validatepassed17.39 ms
refuses a finding file outside root-relative POSIX paths: ../outside.tscorpus rules on validatepassed3.81 ms
refuses a finding file outside root-relative POSIX paths: src/../../outside.tscorpus rules on validatepassed3.33 ms
refuses a finding file outside root-relative POSIX paths: src\\probe.tscorpus rules on validatepassed2.78 ms
refuses a finding file outside root-relative POSIX paths: C:/outside.tscorpus rules on validatepassed2.73 ms
reports a root-relative finding path: src/probe.tscorpus rules on validatepassed2.49 ms
reports a root-relative finding path: src/../probe.tscorpus rules on validatepassed5.91 ms
reports a error finding apart from Protocol findingscorpus rules on validatepassed3.89 ms
reports a warning finding apart from Protocol findingscorpus rules on validatepassed6.12 ms
fails a broken file and continues: throw new Error('two\nlines')corpus rules on validatepassed3.14 ms
fails a broken file and continues: return {corpus rules on validatepassed9.22 ms
fails a broken file and continues: return { diagnostics: ['bad'] }corpus rules on validatepassed5.85 ms
fails a broken file and continues: return { unknownParams: ['typo'], accepts: [] }corpus rules on validatepassed4.67 ms
fails a broken file and continues: return { findings: [{ validatorId: 'a', severity: 'warning', message: 'x' }] }corpus rules on validatepassed3.95 ms
fails a broken file and continues: return { findings: [{ ...({ validatorId: "probe-rule", subjectId: "probe-subject", severity: "error", message: "probe finding" }), severity: 'info' }] }corpus rules on validatepassed2.81 ms
fails a broken file and continues: return { findings: [{ ...({ validatorId: "probe-rule", subjectId: "probe-subject", severity: "error", message: "probe finding" }), validatorId: 'a/b' }] }corpus rules on validatepassed2.24 ms
fails a broken file and continues: return { findings: [{ ...({ validatorId: "probe-rule", subjectId: "probe-subject", severity: "error", message: "probe finding" }), line: 1 }] }corpus rules on validatepassed2.98 ms
fails a broken file and continues: return { findings: [{ ...({ validatorId: "probe-rule", subjectId: "probe-subject", severity: "error", message: "probe finding" }), relatedId: 1 }] }corpus rules on validatepassed2.42 ms
fails a broken file and continues: return { findings: [{ ...({ validatorId: "probe-rule", subjectId: "probe-subject", severity: "error", message: "probe finding" }), path: 1 }] }corpus rules on validatepassed2.2 ms
fails a broken file and continues: return { findings: [{ ...({ validatorId: "probe-rule", subjectId: "probe-subject", severity: "error", message: "probe finding" }), file: '' }] }corpus rules on validatepassed2.1 ms
fails an unreadable filecorpus rules on validatepassed2.49 ms
discards every finding of a malformed answercorpus rules on validatepassed2.18 ms
clones the graph and report separately for each file and leaves written bytes wholecorpus rules on validatepassed2.98 ms
gives each file only its own parameters, including JSON files and keyed valuescorpus rules on validatepassed2.5 ms
keeps the ordinary validate output unchanged and q report free of corpus datacorpus rules on validatepassed3.32 ms
does not run rules when the graph does not derivecorpus rules on validatepassed1.86 ms
exposes corpus data only on the aggregate validate outcomenot recordedpassed1.96 ms
awaits bodies in file order and keeps a Protocol error fatalnot recordedpassed9 ms
SIGINT exits 0 during a live rules body, with no later output or rules, even if it can settle: falsenot recordedpassed407.24 ms
SIGINT exits 0 during a live rules body, with no later output or rules, even if it can settle: truenot recordedpassed484.28 ms
rereads rules when its file changesnot recordedpassed6.75 ms
gives each watch cycle fresh parameters after a body mutates themnot recordedpassed6.89 ms

External run evidence from test/curation-imports.test.ts

Test anchors: test:protocol.curation-imports. Specs verified by those bindings: spec:consumers.impact-graph, spec:consumers.impact-graph.curation-assist.

NameSuiteResultDuration
compares Windows source paths in the form the compiler returns themTypeScript curation importspassed2.78 ms
resolves aliases, JS specifiers, types, side effects, import equals and cyclic barrels within configured rootsTypeScript curation importspassed645.46 ms
sorts paths by code unit, includes empty files, and deduplicates overlapping rootsTypeScript curation importspassed656.99 ms
follows re-exports through files outside the roots but never follows ordinary transitive importsTypeScript curation importspassed283.7 ms
reads literal dynamic imports and import types, and skips computed specifiersTypeScript curation importspassed749.48 ms
excludes exact files and subtrees with segment boundaries and normalized metadataTypeScript curation importspassed519.19 ms
resolves barrel reach through excluded intermediates without emitting themTypeScript curation importspassed222.52 ms
accepts empty exclusions and normalizes root-relative exclusion spellingsTypeScript curation importspassed686.42 ms
refuses invalid exclusion configuration {"extra":true}TypeScript curation importspassed2.65 ms
refuses invalid exclusion configuration {"exclude":null}TypeScript curation importspassed3.52 ms
refuses invalid exclusion configuration {"exclude":"code"}TypeScript curation importspassed2.02 ms
refuses invalid exclusion configuration {"exclude":[1]}TypeScript curation importspassed3.41 ms
refuses invalid exclusion configuration {"exclude":[""]}TypeScript curation importspassed1.39 ms
refuses invalid exclusion configuration {"exclude":[" "]}TypeScript curation importspassed3.65 ms
refuses invalid exclusion configuration {"exclude":["."]}TypeScript curation importspassed1.5 ms
refuses invalid exclusion configuration {"exclude":["./"]}TypeScript curation importspassed1.32 ms
refuses invalid exclusion configuration {"exclude":["../other"]}TypeScript curation importspassed3.46 ms
refuses invalid exclusion configuration {"exclude":["code/../../other"]}TypeScript curation importspassed1.46 ms
refuses invalid exclusion configuration {"exclude":["/code"]}TypeScript curation importspassed1.27 ms
refuses invalid exclusion configuration {"exclude":["C:/code"]}TypeScript curation importspassed1.26 ms
refuses invalid exclusion configuration {"exclude":["C:code"]}TypeScript curation importspassed1.26 ms
refuses invalid exclusion configuration {"exclude":["code\\leaf.ts"]}TypeScript curation importspassed1.17 ms
refuses invalid configuration {}TypeScript curation importspassed1.21 ms
refuses invalid configuration {"adapter":"other","tsconfig":"tsconfig.json","roots":["code"]}TypeScript curation importspassed1.16 ms
refuses invalid configuration {"adapter":"typescript","tsconfig":"tsconfig.json","roots":[]}TypeScript curation importspassed1.26 ms
refuses invalid configuration {"adapter":"typescript","tsconfig":"tsconfig.json","roots":[1]}TypeScript curation importspassed1.23 ms
refuses invalid configuration {"adapter":"typescript","tsconfig":"../tsconfig.json","roots":["code"]}TypeScript curation importspassed2.68 ms
refuses invalid configuration {"adapter":"typescript","tsconfig":"tsconfig.json","roots":["../"]}TypeScript curation importspassed1.25 ms
refuses invalid configuration {"adapter":"typescript","tsconfig":"tsconfig.json","roots":["/src"]}TypeScript curation importspassed1.12 ms
refuses the source root missing by its configured pathTypeScript curation importspassed1.44 ms
refuses the source root code/leaf.ts by its configured pathTypeScript curation importspassed1.76 ms
builds the imports file atomically and leaves the curated graph byte-identicalTypeScript curation importspassed957.13 ms
writes no imports file without the flag and preserves an existing file even on build failureTypeScript curation importspassed37.02 ms
removes requested stale imports after a configuration or extraction failureTypeScript curation importspassed219.76 ms
refuses invalid build flag argv "build"TypeScript curation importspassed0.29 ms
refuses invalid build flag argv "build"TypeScript curation importspassed0.12 ms
refuses invalid build flag argv "build"TypeScript curation importspassed0.11 ms
refuses invalid build flag argv "build"TypeScript curation importspassed0.08 ms
refuses invalid build flag argv "validate"TypeScript curation importspassed0.07 ms
refuses invalid build flag argv "view"TypeScript curation importspassed0.07 ms
refuses invalid build flag argv "census"TypeScript curation importspassed0.07 ms
refuses invalid build flag argv "mermaid"TypeScript curation importspassed0.07 ms
refuses invalid build flag argv "gherkin"TypeScript curation importspassed0.16 ms
completes over the repository src and lists a known build-command importTypeScript curation importspassed2302.57 ms

External run evidence from test/curation-recipes.test.ts

Test anchors: test:protocol.curation-recipe, test:protocol.slimming-recipe. Specs verified by those bindings: spec:consumers.impact-graph.curation-assist, spec:model.enrichment-lifecycle.

NameSuiteResultDuration
requires both facts and uses recipe 24's opening span rule, with lines and bindingsslimming candidates recipepassed8.45 ms
selects only Pack members and returns no rows for a clean Packslimming candidates recipepassed2.54 ms
distinguishes an unknown Pack from a clean existing Packslimming candidates recipepassed1.83 ms
includes enabled example verifier bindings without claiming they realize an entryslimming candidates recipepassed1.44 ms
returns diagnostics and no rows for invalid imports input undefinedcuration report recipepassed1.13 ms
returns diagnostics and no rows for invalid imports input nullcuration report recipepassed1.03 ms
returns diagnostics and no rows for invalid imports input []curation report recipepassed0.56 ms
returns diagnostics and no rows for invalid imports input 'imports'curation report recipepassed0.63 ms
returns diagnostics and no rows for invalid imports input {}curation report recipepassed0.73 ms
returns diagnostics and no rows for invalid imports input { schema: 'sdp-imports/2', …(2) }curation report recipepassed0.52 ms
returns diagnostics and no rows for invalid imports input { schema: 'sdp-imports/1', files: [] }curation report recipepassed0.49 ms
returns diagnostics and no rows for invalid imports input { schema: 'sdp-imports/1', …(2) }curation report recipepassed0.47 ms
returns diagnostics and no rows for invalid imports input { schema: 'sdp-imports/1', …(3) }curation report recipepassed0.58 ms
returns diagnostics and no rows for invalid imports input { schema: 'sdp-imports/1', …(3) }curation report recipepassed0.59 ms
returns diagnostics and no rows for invalid imports input { schema: 'sdp-imports/1', …(2) }curation report recipepassed0.58 ms
returns diagnostics and no rows for invalid imports input { schema: 'sdp-imports/1', …(2) }curation report recipepassed0.44 ms
returns diagnostics and no rows for invalid imports input { schema: 'sdp-imports/1', …(2) }curation report recipepassed0.47 ms
returns diagnostics and no rows for invalid limit 0curation report recipepassed0.51 ms
returns diagnostics and no rows for invalid limit -1curation report recipepassed0.4 ms
returns diagnostics and no rows for invalid limit 1.5curation report recipepassed0.48 ms
returns diagnostics and no rows for invalid limit "1"curation report recipepassed0.4 ms
returns diagnostics and no rows for invalid limit nullcuration report recipepassed0.36 ms
returns diagnostics and no rows for invalid limit truecuration report recipepassed0.48 ms
recognizes every lawful component-id segment and keeps invalid convention values outcuration report recipepassed0.7 ms
echoes import exclusions without changing the supplied graph or inferring omissionscuration report recipepassed2.33 ms
joins directed component pairs, ranks uncovered files and reports incomplete input and unrealized designscuration report recipepassed1.13 ms
applies the limit only to uncovered rows and counts distinct file pairscuration report recipepassed0.93 ms
aggregates file pairs for a component pair and picks the first sample in path ordercuration report recipepassed0.81 ms
uses code-unit order for tied ranks and samples, and defaults to twenty uncovered rowscuration report recipepassed1.57 ms
keeps several component bindings in one file and ignores inferred structural edgescuration report recipepassed0.95 ms
builds a small fixture imports file and supplies its object to the recipe, backing uses through a barrelcuration report recipepassed473.8 ms
reports missing or malformed parameter data {}curation report recipepassed0.68 ms
reports missing or malformed parameter data {"imports":{}}curation report recipepassed0.4 ms
reports missing or malformed parameter data {"imports":{"schema":"sdp-imports/1","adapter":"typescript","files":[{"file":"code/idle.ts","imports":[]},{"file":"code/a.ts","imports":["code/index.ts","code/leaf.ts"]},{"file":"code/index.ts","imports":["code/leaf.ts"]},{"file":"code/leaf.ts","imports":["code/a.ts"]},{"file":"code/loose.ts","imports":[]}]},"limit":-1}curation report recipepassed0.4 ms
reports missing or malformed parameter data {"imports":{"schema":"sdp-imports/1","adapter":"typescript","files":[{"file":"code/idle.ts","imports":[]},{"file":"code/a.ts","imports":["code/index.ts","code/leaf.ts"]},{"file":"code/index.ts","imports":["code/leaf.ts"]},{"file":"code/leaf.ts","imports":["code/a.ts"]},{"file":"code/loose.ts","imports":[]}]},"limit":1.5}curation report recipepassed8.89 ms

External run evidence from test/design-review-pack-page.test.ts

Test anchors: test:protocol.pack-design-page. Specs verified by those bindings: spec:consumers.design-review.pack-design-page.

NameSuiteResultDuration
keeps the title line, framing and vocabulary, then renders the sections in orderthe Design Review's Pack page presents the Pack designpassed20.45 ms
numbers one member row from 1 in authored order, with design columns and binding columnsthe Design Review's Pack page presents the Pack designpassed10.78 ms
lists what holds each member below its stated next rung, and apart, the members that wait for their authorthe Design Review's Pack page presents the Pack designpassed9 ms
renders the boundary as four lists, each row with its rung, its binding and the members it joinsthe Design Review's Pack page presents the Pack designpassed4.13 ms
renders outside superseding decisions apart from Specs that rest on membersthe Design Review's Pack page presents the Pack designpassed4.24 ms
groups questions by member with their flag, address, escaped text and a line linkthe Design Review's Pack page presents the Pack designpassed5.61 ms
lists each member's realizing and referencing units with a line link, role and componentthe Design Review's Pack page presents the Pack designpassed4.59 ms
percent-encodes each path segment of a line link and escapes brackets in its labelthe Design Review's Pack page presents the Pack designpassed3.26 ms
keeps a multiline title, question or label inside its heading or list itemthe Design Review's Pack page presents the Pack designpassed4.19 ms
speaks binding language: no delivery-fact name renders as textthe Design Review's Pack page presents the Pack designpassed3.81 ms
renders byte-identical pages from two freshly derived graphs, with no time or committhe Design Review's Pack page presents the Pack designpassed7.72 ms
says so in one line where a section has nothing to showthe Design Review's Pack page presents the Pack designpassed0.93 ms

External run evidence from test/design-review.test.ts

Test anchors: test:protocol.projections-model.rendering. Specs verified by those bindings: spec:consumers.projections-model.

NameSuiteResultDuration
labels the index as diagnostic when the real reader reports validation errorsthe generated Design Reviewpassed22.16 ms
publishes the real diagnostic Design Review and returns nonzerothe generated Design Reviewpassed10.01 ms
renders the self-hosting spec narrative from the graphthe generated Design Reviewpassed1.26 ms
renders every owned description as escaped prose and omits absent prose artifactsthe generated Design Reviewpassed3.93 ms
reads no authored Markdown source while projecting graph and Reader valuesthe generated Design Reviewpassed1.58 ms
renders the committed self-hosting corpus byte-identically at two absolute rootsthe generated Design Reviewpassed8345.08 ms
rejects swapped prose semantically even when the wrong graph renders deterministicallythe generated Design Reviewpassed3.25 ms
percent-encodes source link targets on Spec and Pack headers and every bindingthe generated Design Reviewpassed16.79 ms
percent-encodes page link targets on the index and detail pagesthe generated Design Reviewpassed21.66 ms
golden correctness oracle: the renderer produces the right view, page set and bytesthe generated Design Reviewpassed1.12 ms
renders authored entry order in lists and the Model tablethe generated Design Reviewpassed3.77 ms
re-rendering from the same graph is byte-identical (a pure projection)the generated Design Reviewpassed16.33 ms
renders byte-identically when graph node insertion order differsthe generated Design Reviewpassed0.66 ms
escapes Markdown text fields and open-section stringsthe generated Design Reviewpassed0.57 ms
speaks binding language, never liveness: bindings present/none, observation not trackedthe generated Design Reviewpassed0.24 ms
distinguishes the enabled verifier from the unenabled one — the claim cues travel alongthe generated Design Reviewpassed0.14 ms
keeps the incomplete trace in bindings without a below-ready warningthe generated Design Reviewpassed0.14 ms
locates a deliberate finding through structured Primitive fieldsthe generated Design Reviewpassed15.17 ms
shows what a verifier covers on its own page (JS-G2: from the test back to the spec)the generated Design Reviewpassed0.16 ms
renders bound example steps naturally while preserving typed parent vocabularythe generated Design Reviewpassed0.2 ms
renders a test-anchor verifier as the enabled binding only along its contract rowthe generated Design Reviewpassed2.52 ms
names the off-contract claim, never a missing anchor, when a bound example's edge is off-contractthe generated Design Reviewpassed0.97 ms
renders the pack as a review unit with the verifier gaps surfacedthe generated Design Reviewpassed3.22 ms
raises the derived-readiness banner only in the dishonest directionthe generated Design Reviewpassed1 ms
names an unresolved relation target instead of linking itthe generated Design Reviewpassed0.45 ms
lists the referencing units with file and line, and the reference confers no bindingthe generated Design Reviewpassed6.01 ms
shows a component row's layer and contextthe generated Design Reviewpassed0.47 ms

External run evidence from test/entry-citations.test.ts

Test anchors: test:protocol.entry-citations.code-comment-cites-declaration, test:protocol.entry-citations.test-title-cites-declaration, test:protocol.entry-citations.unanchored-file-unread, test:protocol.entry-citations.unresolved-citation. Specs verified by those bindings: spec:extraction.entry-citations, spec:extraction.entry-citations.code-comment-cites-declaration, spec:extraction.entry-citations.test-title-cites-declaration, spec:extraction.entry-citations.unanchored-file-unread, spec:extraction.entry-citations.unresolved-citation.

NameSuiteResultDuration
executes the bound example against a fresh worldA test title in an anchored file cites a pinned declaration (spec:extraction.entry-citations.test-title-cites-declaration)passed541.08 ms
executes the bound example against a fresh worldA code file's comment cites a declaration without reading as a test line (spec:extraction.entry-citations.code-comment-cites-declaration)passed465.27 ms
executes the bound example against a fresh worldA file that carries no anchor is not read for citations (spec:extraction.entry-citations.unanchored-file-unread)passed445.6 ms
executes the bound example against a fresh worldA citation of an entry its Spec lacks reports through the recipe, never as a Protocol finding (spec:extraction.entry-citations.unresolved-citation)passed457.36 ms
scans comments, strings and templates, deduplicates a line and keeps code-unit orderentry citation extraction and readerpassed28.19 ms
records no citation for a token continued by interpolation, even when its prefix parsesentry citation extraction and readerpassed463.69 ms
keeps a literal malformed token beside an interpolated token on the same lineentry citation extraction and readerpassed0.39 ms
keeps a malformed literal before a separate template interpolationentry citation extraction and readerpassed4.86 ms
records no citation for a prefix with trailing punctuation before interpolationentry citation extraction and readerpassed0.32 ms
does not report a computed order key as an unresolved citation in recipe 51entry citation extraction and readerpassed473.68 ms
recipe 51 locates a citation of the second keyed questionentry citation extraction and readerpassed8.14 ms
ends citation tokens at source escapes before checking for an addressentry citation extraction and readerpassed4.29 ms
sorts in-memory citations by address on a shared source lineentry citation extraction and readerpassed3.29 ms
sorts reader citations by address before file and lineentry citation extraction and readerpassed3.62 ms
rejects a crashed rules file even when its exit code matches the exampleentry citation extraction and readerpassed455.33 ms
counts Unicode source line separators as TypeScript doesentry citation extraction and readerpassed3.74 ms
reads a file carrying only an identity anchor, and ignores carriers and unanchored sourcesentry citation extraction and readerpassed2.42 ms
includes only tests in the citing file that verify directly or through an exampleentry citation extraction and readerpassed5.56 ms
reads a newly shared term address through termKeys even without location rowsentry citation extraction and readerpassed3.06 ms
does not treat future address sections as Model termsentry citation extraction and readerpassed2.6 ms
resolves UI, rules, flows and questions without depending on entry locationsentry citation extraction and readerpassed3.18 ms

External run evidence from test/entry-locations.test.ts

Test anchors: test:protocol.entry-locations. Specs verified by those bindings: spec:extraction.entry-locations, spec:validation.prose-mentions.

NameSuiteResultDuration
locates each Gherkin relation at its own tag and defaults at the Scenario lineentry locationspassed6.89 ms
records Markdown Design, UI, keyed and unkeyed questions at their first item linesentry locationspassed10.91 ms
locates Markdown question fields, rules, flows and declared relation targetsentry locationspassed3.53 ms
records TypeScript property lines through transparent wrappersentry locationspassed23.94 ms
locates TypeScript string questions and omits properties dropped as non-staticentry locationspassed6.38 ms
locates Gherkin rules and relations while keeping open questions outside its grammarentry locationspassed4.73 ms
sorts Specs and entries in code-unit order and serializes reversed rows identicallyentry locationspassed4.41 ms
keeps Primitive and Pack nodes line-free when an edit above entries moves their linesentry locationspassed5.97 ms
compares carrier parity on nodes and edges while locations differentry locationspassed7.87 ms
serializes an empty table for entries without recorded carrier linesentry locationspassed1.38 ms
extracts the location table byte-identically twiceentry locationspassed6.43 ms
locates errors and warnings in behavior Behavior rule: entriesprose mention finding linespassed13.55 ms
locates errors and warnings in behavior Behavior flow: entriesprose mention finding linespassed2.93 ms
locates errors and warnings in rule Rule entriesprose mention finding linespassed3.2 ms
locates errors and warnings in workflow Workflow entriesprose mention finding linespassed2.44 ms
locates errors and warnings in workflow Workflow rule: entriesprose mention finding linespassed2.9 ms
locates errors and warnings in contract Contract entriesprose mention finding linespassed2.05 ms
locates question text, fields and links and omits an unrecorded lineprose mention finding linespassed1.95 ms

External run evidence from test/extract.test.ts

Test anchors: test:protocol.delivery-facts, test:protocol.extract. Specs verified by those bindings: spec:extraction.delivery-facts, spec:extraction.derive-graph.

NameSuiteResultDuration
invalid-non-static-id: envelope hard error; the static sibling still extracts (L3)extraction corporapassed29.66 ms
invalid-malformed-id: a static id failing the id grammar is an invalid-id hard errorextraction corporapassed3.7 ms
invalid-non-static-section: that one property drops with a warning; the spec survivesextraction corporapassed3.96 ms
invalid-hand-authored-satisfies-edge: a raw relations[] entry is an envelope errorextraction corporapassed3.81 ms
duplicate-id: TypeScript and Markdown sites are excluded before graph derivation; the healthy sibling remainsextraction corporapassed12.46 ms
dangling-relation: the edge is emitted, not dropped; referential integrity flags itextraction corporapassed9.03 ms
unrecognized-statement: the stray statement warns and is ignored; the spec extractsextraction corporapassed6.46 ms
invalid-reserved-property: a hand-authored delivery fact at the top level is an envelope hard error; the sibling survives (L3)extraction corporapassed4.95 ms
unrecognized-property: a typoed section name drops with a warning; the spec survives without itextraction corporapassed2.84 ms
unrecognized in-section property: warns before canonical serialization drops itextraction corporapassed2.94 ms
model term named description: both carriers extract it as an ordinary term in its authored placeextraction corporapassed6.45 ms
integer-like keys: refuses numeric and string integer-like names in design and keeps the Spec with its other keysextraction corporapassed2.36 ms
integer-like keys: refuses an integer-like name in uiextraction corporapassed1.87 ms
integer-like keys: refuses an integer-like name in model termsextraction corporapassed1.74 ms
integer-like keys: the string keys 00 and 01 in design are lawful and keep their values and orderextraction corporapassed1.76 ms
integer-like keys: the string keys 00 and 01 in ui are lawful and keep their values and orderextraction corporapassed1.61 ms
integer-like keys: the string keys 00 and 01 in model terms are lawful and keep their values and orderextraction corporapassed1.72 ms
integer-like keys: refuses the key in design whatever its value (a static value), with one error and the Spec keptextraction corporapassed1.38 ms
integer-like keys: refuses the key in design whatever its value (a call), with one error and the Spec keptextraction corporapassed1.32 ms
integer-like keys: refuses the key in design whatever its value (an unbound identifier), with one error and the Spec keptextraction corporapassed1.28 ms
integer-like keys: refuses the key in design whatever its value (a template with an expression), with one error and the Spec keptextraction corporapassed1.5 ms
integer-like keys: refuses the key in design whatever its value (an object with a non-static entry), with one error and the Spec keptextraction corporapassed1.54 ms
integer-like keys: refuses the key in ui whatever its value (a static value), with one error and the Spec keptextraction corporapassed1.12 ms
integer-like keys: refuses the key in ui whatever its value (a call), with one error and the Spec keptextraction corporapassed1.22 ms
integer-like keys: refuses the key in ui whatever its value (an unbound identifier), with one error and the Spec keptextraction corporapassed1.36 ms
integer-like keys: refuses the key in ui whatever its value (a template with an expression), with one error and the Spec keptextraction corporapassed1.26 ms
integer-like keys: refuses the key in ui whatever its value (an object with a non-static entry), with one error and the Spec keptextraction corporapassed1.52 ms
integer-like keys: refuses the key in model terms whatever its value (a static value), with one error and the Spec keptextraction corporapassed5.45 ms
integer-like keys: refuses the key in model terms whatever its value (a call), with one error and the Spec keptextraction corporapassed1.93 ms
integer-like keys: refuses the key in model terms whatever its value (an unbound identifier), with one error and the Spec keptextraction corporapassed1.12 ms
integer-like keys: refuses the key in model terms whatever its value (a template with an expression), with one error and the Spec keptextraction corporapassed1.15 ms
integer-like keys: refuses the key in model terms whatever its value (an object with a non-static entry), with one error and the Spec keptextraction corporapassed1.15 ms
integer-like keys: refuses design's integer-like name on a method, one error per member and the Spec keptextraction corporapassed1.57 ms
integer-like keys: refuses design's integer-like name on a string-named method, one error per member and the Spec keptextraction corporapassed1.18 ms
integer-like keys: refuses design's integer-like name on a numeric-separator-named method, one error per member and the Spec keptextraction corporapassed1.13 ms
integer-like keys: refuses design's integer-like name on a getter, one error per member and the Spec keptextraction corporapassed1.2 ms
integer-like keys: refuses design's integer-like name on a numeric-separator-named getter, one error per member and the Spec keptextraction corporapassed1.24 ms
integer-like keys: refuses design's integer-like name on a setter, one error per member and the Spec keptextraction corporapassed1.68 ms
integer-like keys: refuses design's integer-like name on a numeric-separator-named setter, one error per member and the Spec keptextraction corporapassed1.63 ms
integer-like keys: refuses design's integer-like name on a getter and a setter of one name, one error per member and the Spec keptextraction corporapassed1.37 ms
integer-like keys: refuses ui's integer-like name on a method, one error per member and the Spec keptextraction corporapassed1.41 ms
integer-like keys: refuses ui's integer-like name on a string-named method, one error per member and the Spec keptextraction corporapassed4.25 ms
integer-like keys: refuses ui's integer-like name on a numeric-separator-named method, one error per member and the Spec keptextraction corporapassed1.34 ms
integer-like keys: refuses ui's integer-like name on a getter, one error per member and the Spec keptextraction corporapassed3.72 ms
integer-like keys: refuses ui's integer-like name on a numeric-separator-named getter, one error per member and the Spec keptextraction corporapassed1.05 ms
integer-like keys: refuses ui's integer-like name on a setter, one error per member and the Spec keptextraction corporapassed1.12 ms
integer-like keys: refuses ui's integer-like name on a numeric-separator-named setter, one error per member and the Spec keptextraction corporapassed1.03 ms
integer-like keys: refuses ui's integer-like name on a getter and a setter of one name, one error per member and the Spec keptextraction corporapassed1.22 ms
integer-like keys: refuses model terms's integer-like name on a method, one error per member and the Spec keptextraction corporapassed1.1 ms
integer-like keys: refuses model terms's integer-like name on a string-named method, one error per member and the Spec keptextraction corporapassed1.3 ms
integer-like keys: refuses model terms's integer-like name on a numeric-separator-named method, one error per member and the Spec keptextraction corporapassed1.4 ms
integer-like keys: refuses model terms's integer-like name on a getter, one error per member and the Spec keptextraction corporapassed1.35 ms
integer-like keys: refuses model terms's integer-like name on a numeric-separator-named getter, one error per member and the Spec keptextraction corporapassed1.26 ms
integer-like keys: refuses model terms's integer-like name on a setter, one error per member and the Spec keptextraction corporapassed1.38 ms
integer-like keys: refuses model terms's integer-like name on a numeric-separator-named setter, one error per member and the Spec keptextraction corporapassed1.46 ms
integer-like keys: refuses model terms's integer-like name on a getter and a setter of one name, one error per member and the Spec keptextraction corporapassed1.15 ms
integer-like keys: a numeric name in design whose key is not integer-like (1.5, value "static") drops as a non-static nameextraction corporapassed1.91 ms
integer-like keys: a numeric name in design whose key is not integer-like (1.5, value compute()) drops as a non-static nameextraction corporapassed0.86 ms
integer-like keys: a numeric name in design whose key is not integer-like (0.0000001, value "static") drops as a non-static nameextraction corporapassed1.22 ms
integer-like keys: a numeric name in design whose key is not integer-like (0.0000001, value compute()) drops as a non-static nameextraction corporapassed1.16 ms
integer-like keys: a numeric name in design whose key is not integer-like (0.000_000_1, value "static") drops as a non-static nameextraction corporapassed1.16 ms
integer-like keys: a numeric name in design whose key is not integer-like (0.000_000_1, value compute()) drops as a non-static nameextraction corporapassed1.18 ms
integer-like keys: a numeric name in design whose key is not integer-like (1e21, value "static") drops as a non-static nameextraction corporapassed1.13 ms
integer-like keys: a numeric name in design whose key is not integer-like (1e21, value compute()) drops as a non-static nameextraction corporapassed1.14 ms
integer-like keys: a numeric name in design whose key is not integer-like (1_0e21, value "static") drops as a non-static nameextraction corporapassed5.04 ms
integer-like keys: a numeric name in design whose key is not integer-like (1_0e21, value compute()) drops as a non-static nameextraction corporapassed1.29 ms
integer-like keys: a numeric name in ui whose key is not integer-like (1.5, value "static") drops as a non-static nameextraction corporapassed1.19 ms
integer-like keys: a numeric name in ui whose key is not integer-like (1.5, value compute()) drops as a non-static nameextraction corporapassed1.15 ms
integer-like keys: a numeric name in ui whose key is not integer-like (0.0000001, value "static") drops as a non-static nameextraction corporapassed1.21 ms
integer-like keys: a numeric name in ui whose key is not integer-like (0.0000001, value compute()) drops as a non-static nameextraction corporapassed1.25 ms
integer-like keys: a numeric name in ui whose key is not integer-like (0.000_000_1, value "static") drops as a non-static nameextraction corporapassed1.15 ms
integer-like keys: a numeric name in ui whose key is not integer-like (0.000_000_1, value compute()) drops as a non-static nameextraction corporapassed1.2 ms
integer-like keys: a numeric name in ui whose key is not integer-like (1e21, value "static") drops as a non-static nameextraction corporapassed1.08 ms
integer-like keys: a numeric name in ui whose key is not integer-like (1e21, value compute()) drops as a non-static nameextraction corporapassed1.25 ms
integer-like keys: a numeric name in ui whose key is not integer-like (1_0e21, value "static") drops as a non-static nameextraction corporapassed1.13 ms
integer-like keys: a numeric name in ui whose key is not integer-like (1_0e21, value compute()) drops as a non-static nameextraction corporapassed1.12 ms
integer-like keys: a numeric name in model terms whose key is not integer-like (1.5, value "static") drops as a non-static nameextraction corporapassed1.17 ms
integer-like keys: a numeric name in model terms whose key is not integer-like (1.5, value compute()) drops as a non-static nameextraction corporapassed1.1 ms
integer-like keys: a numeric name in model terms whose key is not integer-like (0.0000001, value "static") drops as a non-static nameextraction corporapassed1.07 ms
integer-like keys: a numeric name in model terms whose key is not integer-like (0.0000001, value compute()) drops as a non-static nameextraction corporapassed0.92 ms
integer-like keys: a numeric name in model terms whose key is not integer-like (0.000_000_1, value "static") drops as a non-static nameextraction corporapassed1.17 ms
integer-like keys: a numeric name in model terms whose key is not integer-like (0.000_000_1, value compute()) drops as a non-static nameextraction corporapassed1.19 ms
integer-like keys: a numeric name in model terms whose key is not integer-like (1e21, value "static") drops as a non-static nameextraction corporapassed1.12 ms
integer-like keys: a numeric name in model terms whose key is not integer-like (1e21, value compute()) drops as a non-static nameextraction corporapassed1.08 ms
integer-like keys: a numeric name in model terms whose key is not integer-like (1_0e21, value "static") drops as a non-static nameextraction corporapassed1.1 ms
integer-like keys: a numeric name in model terms whose key is not integer-like (1_0e21, value compute()) drops as a non-static nameextraction corporapassed1.1 ms
integer-like keys: a numeric name in design whose key is integer-like (1e3, value "static") is refused under that keyextraction corporapassed1.3 ms
integer-like keys: a numeric name in design whose key is integer-like (1e3, value compute()) is refused under that keyextraction corporapassed1.37 ms
integer-like keys: a numeric name in design whose key is integer-like (0x10, value "static") is refused under that keyextraction corporapassed1.08 ms
integer-like keys: a numeric name in design whose key is integer-like (0x10, value compute()) is refused under that keyextraction corporapassed1.07 ms
integer-like keys: a numeric name in design whose key is integer-like (1_0, value "static") is refused under that keyextraction corporapassed1.04 ms
integer-like keys: a numeric name in design whose key is integer-like (1_0, value compute()) is refused under that keyextraction corporapassed0.85 ms
integer-like keys: a numeric name in design whose key is integer-like (1_000, value "static") is refused under that keyextraction corporapassed0.82 ms
integer-like keys: a numeric name in design whose key is integer-like (1_000, value compute()) is refused under that keyextraction corporapassed0.79 ms
integer-like keys: a numeric name in ui whose key is integer-like (1e3, value "static") is refused under that keyextraction corporapassed0.76 ms
integer-like keys: a numeric name in ui whose key is integer-like (1e3, value compute()) is refused under that keyextraction corporapassed1.11 ms
integer-like keys: a numeric name in ui whose key is integer-like (0x10, value "static") is refused under that keyextraction corporapassed1.22 ms
integer-like keys: a numeric name in ui whose key is integer-like (0x10, value compute()) is refused under that keyextraction corporapassed1.08 ms
integer-like keys: a numeric name in ui whose key is integer-like (1_0, value "static") is refused under that keyextraction corporapassed5.47 ms
integer-like keys: a numeric name in ui whose key is integer-like (1_0, value compute()) is refused under that keyextraction corporapassed1.29 ms
integer-like keys: a numeric name in ui whose key is integer-like (1_000, value "static") is refused under that keyextraction corporapassed1.15 ms
integer-like keys: a numeric name in ui whose key is integer-like (1_000, value compute()) is refused under that keyextraction corporapassed1.03 ms
integer-like keys: a numeric name in model terms whose key is integer-like (1e3, value "static") is refused under that keyextraction corporapassed0.89 ms
integer-like keys: a numeric name in model terms whose key is integer-like (1e3, value compute()) is refused under that keyextraction corporapassed1.28 ms
integer-like keys: a numeric name in model terms whose key is integer-like (0x10, value "static") is refused under that keyextraction corporapassed1.28 ms
integer-like keys: a numeric name in model terms whose key is integer-like (0x10, value compute()) is refused under that keyextraction corporapassed1.22 ms
integer-like keys: a numeric name in model terms whose key is integer-like (1_0, value "static") is refused under that keyextraction corporapassed1.04 ms
integer-like keys: a numeric name in model terms whose key is integer-like (1_0, value compute()) is refused under that keyextraction corporapassed0.83 ms
integer-like keys: a numeric name in model terms whose key is integer-like (1_000, value "static") is refused under that keyextraction corporapassed1.35 ms
integer-like keys: a numeric name in model terms whose key is integer-like (1_000, value compute()) is refused under that keyextraction corporapassed0.99 ms
reserved camel delivery fact: rejects hasVerifier at the TS carrier envelope (R-6 parity)extraction corporapassed0.96 ms
retains a nested __proto__ model term as own string contentextraction corporapassed0.94 ms
retains an object-valued nested __proto__ term without prototype pollutionextraction corporapassed1.48 ms
retains a Markdown __proto__ Model term through extract and serializeGraphextraction corporapassed1.8 ms
id-shaped-string-content: a raw id-shaped string in section content is prose — kept, edge-free, finding-freeextraction corporapassed1.54 ms
invalid-parse-error: a parse-broken file is excluded whole, loudly, on both surfaces; siblings survive (L3)extraction corporapassed3.29 ms
invalid-missing-envelope-fields: every absent required field reports in one pass — spec, pack, and anchor carriersextraction corporapassed3.54 ms
invalid-duplicate-property: a property authored twice in one carrier fails the envelope loudly; the last value never winsextraction corporapassed2.49 ms
ref-in-section-content: an id builder in section content drops the owning property (MD-10)extraction corporapassed1.7 ms
invalid-wrong-builder: an id wrapping the wrong builder is an invalid-id hard error — the builder's contract, restated staticallyextraction corporapassed1.41 ms
opaque-envelope-entries: a shorthand or spread entry never double-reports its fields as missingextraction corporapassed1.68 ms
duplicate-section-property: a repeated name inside section content drops with a warning; the first authored value survivesextraction corporapassed1.25 ms
entry-address-slots: every TypeScript id slot refuses an entry address, and no # reaches the graphextraction corporapassed11.34 ms
entry-address-slots: anchor verifies refuses an entry address, and no # reaches the graphextraction corporapassed5.48 ms
entry-address-slots: anchor models refuses an entry address, and no # reaches the graphextraction corporapassed2.5 ms
entry-address-slots: anchor component refuses an entry address, and no # reaches the graphextraction corporapassed2.13 ms
entry-address-slots: anchor uses refuses an entry address, and no # reaches the graphextraction corporapassed2.47 ms
entry-address-slots: the Pack identity refuses an entry address, and no # reaches the graphextraction corporapassed2.18 ms
entry-address-slots: the test anchor identity refuses an entry address, and no # reaches the graphextraction corporapassed2.08 ms
entry-address-slots: the oracle anchor identity refuses an entry address, and no # reaches the graphextraction corporapassed2.5 ms
entry-address-slots: the API anchor identity refuses an entry address, and no # reaches the graphextraction corporapassed2.58 ms
routes the five defused target documents through real discovery with their exact nodesMarkdown carrier discoverypassed6.88 ms
derives semantically equivalent accepted subsets through extract and serializeGraphMarkdown carrier discoverypassed2.69 ms
excludes a malformed Markdown carrier while retaining its healthy TypeScript siblingMarkdown carrier discoverypassed1.87 ms
reports same-ID TypeScript and Markdown carriers at both sites without deriving eitherMarkdown carrier discoverypassed2.51 ms
anchored-binding: the full ladder — anchored edges and delivery facts per `spec:extraction.delivery-facts`anchor extraction corporapassed4.71 ms
unenabled-verifier: a below-ready example confers nothing; a wrong-kind verifier still warnsanchor extraction corporapassed2.41 ms
invalid-non-static-anchor: envelope hard error; the static sibling still extracts (L3)anchor extraction corporapassed3.08 ms
invalid-anchor-namespace: a code anchor with a test: id is an invalid-id hard erroranchor extraction corporapassed1.46 ms
duplicate-anchor-id: both sites reported (L2); neither enters the graph; the counts record bothanchor extraction corporapassed6.57 ms
dangling-anchor: the edge is emitted, no fact is conferred, and referential integrity flags itanchor extraction corporapassed1.68 ms
misplaced-anchor: authoring calls outside their surface warn and are not extractedanchor extraction corporapassed1.94 ms
non-static-anchor-label: the label drops with a warning; the binding survives wholeanchor extraction corporapassed1.53 ms
namespace-import: carriers authored as `ns.builder(…)` extract on both surfaces — the full anchored ladderimport-surface and discovery corporapassed4.32 ms
namespace-misplaced-authoring: the misplaced-authoring sweep sees the property-access spelling (L2)import-surface and discovery corporapassed1.55 ms
dot-directory-skipped: discovery never descends into a dot-directory, so a stray copy raises no duplicate-id noiseimport-surface and discovery corporapassed2.16 ms
shadowed-namespace-local: a parameter or local shadowing the import is somebody else's value — no spurious misplaced-authoringimport-surface and discovery corporapassed3.18 ms
default-import: a binding authored through a default-import local extracts — it never silently falls out (L2)import-surface and discovery corporapassed1.2 ms
consumer exclusions are case-sensitive root-relative prefixes applied before either surface classifiesimport-surface and discovery corporapassed6.17 ms
rejects the invalid consumer exclusion ""import-surface and discovery corporapassed0.75 ms
rejects the invalid consumer exclusion "."import-surface and discovery corporapassed0.24 ms
rejects the invalid consumer exclusion "./explorations"import-surface and discovery corporapassed0.17 ms
rejects the invalid consumer exclusion "explorations/"import-surface and discovery corporapassed0.25 ms
rejects the invalid consumer exclusion "/explorations"import-surface and discovery corporapassed0.29 ms
rejects the invalid consumer exclusion "C:/work/specs"import-surface and discovery corporapassed0.26 ms
rejects the invalid consumer exclusion "../x"import-surface and discovery corporapassed0.23 ms
rejects the invalid consumer exclusion "a/../b"import-surface and discovery corporapassed0.28 ms
rejects the invalid consumer exclusion "a/./b"import-surface and discovery corporapassed0.29 ms
rejects the invalid consumer exclusion "a/."import-surface and discovery corporapassed0.24 ms
rejects the invalid consumer exclusion "a//b"import-surface and discovery corporapassed0.24 ms
rejects the invalid consumer exclusion "a\\b"import-surface and discovery corporapassed0.26 ms
invalid-ready-with-unresolved-dependency: the conformance error and the floor failure both fire — two families, two statementsgraph-validator corporapassed2.45 ms
invalid-ready-with-target-below-defined: every reference resolves; the one error is the floor clausegraph-validator corporapassed2.84 ms
invalid-hand-authored-delivery-fact-in-section: the smuggled key fails over the graph end-to-end (MD-16)graph-validator corporapassed2 ms
invalid-duplicate-pack-member: a duplicated manifest entry is a pack-coherence errorgraph-validator corporapassed2.93 ms
invalid-non-model-modelref: a resolving but wrong-kind modelRef is a pack-coherence errorgraph-validator corporapassed2.42 ms
non-example-verifier: a declared verifies from a non-example kind is surfaced, never gatedgraph-validator corporapassed2.22 ms
orphan-spec: no relations and nothing pointing at it — a warning, never a gategraph-validator corporapassed1.47 ms
ready-without-verifier: the cleared floor plus the surfaced gap — informative onlygraph-validator corporapassed2.59 ms
two independent extractions of the example serialize byte-identicallydeterminism self-check (rebuild twice, byte-compare — distinct from the golden oracle)passed52.33 ms
materializes a defused .sdp.gherkin carrier and leaves ordinary .feature beside it on diskGherkin carrier suffix discoverypassed0.45 ms
discovers and routes only .sdp.gherkin; an ordinary Cucumber Feature never enters specFiles or poisons extractionGherkin carrier suffix discoverypassed2.45 ms
treats a root of only ordinary .feature files as an empty authored model at the extractorGherkin carrier suffix discoverypassed0.39 ms
admits a lawful key beside prose and unkeyed questionsopen question keys in the TypeScript carrierpassed1.37 ms
drops a key off the grammar with an error and keeps the question and the Specopen question keys in the TypeScript carrierpassed3.67 ms
drops a key an earlier question carries, keeping the firstopen question keys in the TypeScript carrierpassed1.96 ms
derives a graph where only the first of a repeated key remainsopen question keys in the TypeScript carrierpassed1.37 ms
derives ready when no question blocks — the control for every case belowopen question keys in the TypeScript carrier > a non-static key drops alone and the blocking sibling holds readinesspassed2.9 ms
strips a key that is null and keeps the question and its blocking siblingopen question keys in the TypeScript carrier > a non-static key drops alone and the blocking sibling holds readinesspassed2.23 ms
strips a key that is undefined and keeps the question and its blocking siblingopen question keys in the TypeScript carrier > a non-static key drops alone and the blocking sibling holds readinesspassed4.91 ms
strips a key that is a function and keeps the question and its blocking siblingopen question keys in the TypeScript carrier > a non-static key drops alone and the blocking sibling holds readinesspassed1.78 ms
strips a key that is an identifier and keeps the question and its blocking siblingopen question keys in the TypeScript carrier > a non-static key drops alone and the blocking sibling holds readinesspassed1.48 ms
strips a key that is a template with a substitution and keeps the question and its blocking siblingopen question keys in the TypeScript carrier > a non-static key drops alone and the blocking sibling holds readinesspassed1.54 ms
drops a repeated key alone and keeps the blocking siblingopen question keys in the TypeScript carrier > a non-static key drops alone and the blocking sibling holds readinesspassed2.27 ms
admits an omitted key beside the blocking siblingopen question keys in the TypeScript carrier > a non-static key drops alone and the blocking sibling holds readinesspassed2.21 ms
keeps every other property strict: a non-static question still drops the arrayopen question keys in the TypeScript carrier > a non-static key drops alone and the blocking sibling holds readinesspassed2.27 ms

External run evidence from test/gherkin-view.test.ts

Test anchors: test:protocol.gherkin-view. Specs verified by those bindings: spec:consumers.gherkin-view.

NameSuiteResultDuration
double-renders byte-identically and sorts independently of input orderthe generated Gherkin-shaped READ projectionpassed3.72 ms
labels the index as diagnostic when validation errors are presentthe generated Gherkin-shaped READ projectionpassed0.47 ms
marks refused kinds with the ruled lie-reason and never uses .sdp.gherkinthe generated Gherkin-shaped READ projectionpassed0.44 ms
marks escaped relation reasons as lossy commentary in relation order without changing tagsthe generated Gherkin-shaped READ projectionpassed5.24 ms
marks every populated section that a canonical Gherkin shape cannot representthe generated Gherkin-shaped READ projectionpassed0.65 ms
escapes hostile characters so they cannot close a fence or invent a DocStringthe generated Gherkin-shaped READ projectionpassed0.38 ms
renders the checkout-v1 corpus as a disposable generated viewthe generated Gherkin-shaped READ projectionpassed134.08 ms
publishes diagnostic output for validation errors and returns nonzerosdp gherkin publicationpassed16.93 ms
surfaces the explicit command in help and names Gherkin on bad inputsdp gherkin publicationpassed0.35 ms
publishes only generated/gherkin wholesale and regenerates byte-identically without tmp residuesdp gherkin publicationpassed12.66 ms
passes --check-clean only when twin renders and the published bytes agreesdp gherkin publicationpassed15.13 ms
refuses perturbed published bytes and removes both live and temporary rootssdp gherkin publicationpassed15.51 ms
refuses divergent --check-clean twins and removes both publication rootssdp gherkin publicationpassed21.2 ms
removes planted stale live and tmp output when the authored corpus failssdp gherkin publicationpassed3.17 ms

External run evidence from test/graph-schema.test.ts

Test anchors: test:protocol.claim-taxonomy, test:protocol.open-section-order. Specs verified by those bindings: spec:extraction.claim-taxonomy, spec:extraction.open-section-order.

NameSuiteResultDuration
serializes authored entry order with description first and schema 0.12.0graph schemapassed2.2 ms
gives the reader, the serialized graph, and the Design Review one entry ordergraph schemapassed28.91 ms
serializes question text, optional blocking and optional key in canonical ordergraph schemapassed0.47 ms
inherits the Pack's declared claim for membership and keeps binding claims apartgraph schemapassed70.7 ms
exports the graph schema contractsgraph schemapassed0.52 ms

External run evidence from test/import-round-trip.test.ts

Test anchors: test:protocol.markdown-authoring. Specs verified by those bindings: spec:carrier.markdown-authoring.

NameSuiteResultDuration
preserves reified authored data through emitted Markdownimport round-trip harnesspassed41.28 ms
preserves the mini-corpus graph under the declared delta catalogimport round-trip harnesspassed116.82 ms
rejects a corrupted Markdown twinimport round-trip harnesspassed64.41 ms

External run evidence from test/iteration-recipes.test.ts

Test 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.

NameSuiteResultDuration
compares keyed values, keyed order and unkeyed sections while keeping bindings apartiteration loop: design diffpassed72.53 ms
compares question fields by key, whole unkeyed questions, envelope fields and other sectionsiteration loop: design diffpassed30.62 ms
reports added and removed Specs and Packs, filters the union of membership, and ignores source linesiteration loop: design diffpassed40.64 ms
diagnoses required input and schema differences and compares common contentiteration loop: design diffpassed12.84 ms
runs the documented base-worktree procedure, preserves constant anchors, and compares HEADiteration loop: design diffpassed24191.88 ms
compares a keyed rule that becomes a flow at the same addressiteration loop: design diffpassed40.12 ms
compares new Design entries across schema versions when the base corpus has noneiteration loop: design diffpassed20.7 ms
diagnoses uncertain optional fields at base 0.9.0 and head 0.9.0iteration loop: design diffpassed12.31 ms
diagnoses uncertain optional fields at base 0.9.0 and head 0.10.0iteration loop: design diffpassed14.37 ms
diagnoses uncertain optional fields at base 0.10.0 and head 0.9.0iteration loop: design diffpassed25.38 ms
normalizes legacy rule markers in graphs with comparable rule-key capabilityiteration loop: design diffpassed14.26 ms
invents no order across rules and flows from a legacy baseiteration loop: design diffpassed24.92 ms
compares a legacy base's keyed entries by order within each listiteration loop: design diffpassed28.06 ms
reports proposal scopes outside the common schema as incomparableiteration loop: design diffpassed13.58 ms
lists all authored reasons into and out of the planning subject in type/from/to orderrelation reasons in planning recipespassed19.97 ms
keeps dependency reasons in context-bundle footingrelation reasons in planning recipespassed9.01 ms
matches every declared selector, combines requirements, and keeps authored order unless prioritizediteration loop: perspective filterpassed55.16 ms
matches layers and contexts only through named bindings and keeps anchored matches apartiteration loop: perspective filterpassed32.84 ms
reports malformed and unsupported selectors while applying understood onesiteration loop: perspective filterpassed33.17 ms
keeps term addresses, term lines and key maps through the section cutiteration loop: context bundlepassed26.54 ms
keeps questions and declarations in one place and member-example steps only in their member rowiteration loop: context bundlepassed19.18 ms
takes the declaration cut last only with addresses and keeps compact pointers and linksiteration loop: context bundlepassed77.64 ms
cuts a pinned dotted key to its line when it has no entry addressiteration loop: context bundlepassed46.93 ms
composes both scopes, dependency footing, declarations, example bindings and a perspective subsetiteration loop: context bundlepassed24.38 ms
takes all six whole-mode cuts in fixed order and counts the complete returned value including Unicodeiteration loop: context bundlepassed45.42 ms
keeps a pinned declaration whole through the sixth cut when its key contains a dotiteration loop: context bundlepassed18.09 ms
reports invalid, missing, doubled and unknown scopes without a partial bundleiteration loop: context bundlepassed39.62 ms
accepts term scopes and detects changed definitions through their authored keysiteration loop: proposal schema and checkpassed27.58 ms
holds the schema and recipe to the same accepted and refused documentsiteration loop: proposal schema and checkpassed115.66 ms
checks the complete scope union, resolves both graphs, and reports each change independentlyiteration loop: proposal schema and checkpassed18.38 ms
agrees with recipe 35 on added, removed and changed entry values and on whole-Spec changesiteration loop: proposal schema and checkpassed28.57 ms
excludes anchor-only changes and requires the caller's base graphiteration loop: proposal schema and checkpassed29.83 ms
compares interleaved keyed rules and flows in their authored order and reports verifier changes apartiteration loop: comparison and budget edgespassed31.26 ms
cuts example text once and preserves compact pointers after the sixth cutiteration loop: comparison and budget edgespassed32.28 ms
reads the base graph and proposal from named JSON files through the real parameter seamiteration loop: comparison and budget edgespassed9.74 ms
requires a test bound directly to an example before the bundle names it enablediteration loop: example enablementpassed15.3 ms
compares rule order by text and other anonymous collections as a wholeiteration loop: anonymous collection orderpassed25.17 ms
keeps addresses in each place when narrative, example, question and section text are cutiteration loop: protected entry addressespassed56.27 ms

External run evidence from test/keyed-content.test.ts

Test anchors: test:protocol.keyed-content. Specs verified by those bindings: spec:carrier.step-keys, spec:model.term-addresses.

NameSuiteResultDuration
records each TypeScript term's own physical line and authored keykeyed carrier contentpassed23.21 ms
locates a refused TypeScript exampleSpace step below its Spec declarationkeyed carrier contentpassed3.75 ms
locates a refused TypeScript examples step below its Spec declarationkeyed carrier contentpassed2.24 ms
rejects unexpected step extraction findings when the example's message slot is emptykeyed carrier contentpassed1109.23 ms
rejects unexpected term extraction findings when the example's message slot is emptykeyed carrier contentpassed27.81 ms
reports false when unchanged handlers typecheck but the step reach changeskeyed carrier contentpassed844.39 ms
preserves authored key order, strips markers, records terms and never records stepskeyed carrier contentpassed2.48 ms
refuses malformed markers at their physical step and term: [#bad-key] textkeyed carrier contentpassed1.11 ms
refuses malformed markers at their physical step and term: [#good] textkeyed carrier contentpassed1.05 ms
refuses malformed markers at their physical step and term: [#good] textkeyed carrier contentpassed0.79 ms
refuses malformed markers at their physical step and term: [#good] keyed carrier contentpassed0.74 ms
keeps later markers as ordinary text and permits a repeated keyed skeletonkeyed carrier contentpassed4.4 ms
drops each conflicting TypeScript key while preserving its Spec and marker-free textkeyed carrier contentpassed5.87 ms
refuses a Gherkin carrier whole at every conflicting stepkeyed carrier contentpassed2.83 ms
keeps keyed fence text and derived key maps out of the prose mention scankeyed carrier contentpassed1.02 ms
checks term addresses and refuses them in Spec id slotskeyed carrier contentpassed0.37 ms
locates mentions inside keyed and unkeyed definitions, even when a term contains dotskeyed carrier contentpassed1.06 ms
breaks a keyed binding when its parameter or key changes: items -> countkeyed carrier contentpassed625.31 ms
breaks a keyed binding when its parameter or key changes: [#cartSize] -> keyed carrier contentpassed635.71 ms
breaks an unchanged typed handler when a still-compatible bound point changes slot typecontract keys and Then outcomespassed690.02 ms
withholds a child marker where the vocabulary step carries no markercontract keys and Then outcomespassed4.51 ms
keys a standalone example and a generated Then registrar by the authored keyscontract keys and Then outcomespassed5.02 ms
uses a keyed Then for the Outcome union and the registrar bindingcontract keys and Then outcomespassed2.69 ms
withholds a colliding space and its registrars, while naming the space collisioncontract keys and Then outcomespassed17.45 ms
dispatches keyed steps and renders a failure from their current wordingcontract keys and Then outcomespassed1.71 ms
compares an oracle by contract key and lists keys when no Then matchescontract keys and Then outcomespassed1.04 ms

External run evidence from test/markdown-reifier.test.ts

Test anchors: test:protocol.envelope-contract, test:protocol.markdown-parser, test:protocol.prose-ownership. Specs verified by those bindings: spec:carrier.envelope-contract, spec:carrier.markdown-parser, spec:carrier.prose-ownership-rule.

NameSuiteResultDuration
reifies a lawful Markdown Pack manifestMarkdown frontmatter reifierpassed7.35 ms
refuses a Spec-only key on a PackMarkdown frontmatter reifierpassed1.84 ms
refuses Pack membership on a SpecMarkdown frontmatter reifierpassed2.34 ms
refuses a Pack section headingMarkdown frontmatter reifierpassed1.36 ms
refuses a wrong-namespace Pack memberMarkdown frontmatter reifierpassed1.02 ms
refuses a reserved derived-name key on a PackMarkdown frontmatter reifierpassed0.85 ms
refuses a pack: id that fails the id grammarMarkdown frontmatter reifierpassed1.02 ms
reifies the frozen corpus envelopes at their id token linesMarkdown frontmatter reifierpassed15.53 ms
maps scalar and list relations in authored orderMarkdown frontmatter reifierpassed1.91 ms
distinguishes an explicit empty relation set from a missing relation keyMarkdown frontmatter reifierpassed1.34 ms
refuses warning without throwingMarkdown frontmatter reifierpassed1.25 ms
refuses directive without throwingMarkdown frontmatter reifierpassed1.04 ms
refuses tag without throwingMarkdown frontmatter reifierpassed1 ms
refuses anchor without throwingMarkdown frontmatter reifierpassed0.83 ms
refuses alias without throwingMarkdown frontmatter reifierpassed0.86 ms
refuses merge without throwingMarkdown frontmatter reifierpassed0.91 ms
refuses complex key without throwingMarkdown frontmatter reifierpassed0.99 ms
refuses non-string scalar without throwingMarkdown frontmatter reifierpassed0.59 ms
refuses body delimiter without throwingMarkdown frontmatter reifierpassed0.2 ms
caps findings and leaves a healthy sibling independently reifiableMarkdown frontmatter reifierpassed19.8 ms
caps body findings with the frozen structure finding IDMarkdown frontmatter reifierpassed1.45 ms
reports a genuine YAML document warningMarkdown frontmatter reifierpassed0.99 ms
contains the YAML parser's unknown throw at the public reifier boundaryMarkdown frontmatter reifierpassed19.86 ms
enforces the 256 KiB carrier byte limit at and immediately over its boundaryMarkdown frontmatter reifierpassed1.98 ms
enforces the 32 KiB frontmatter byte limit at and immediately over its boundaryMarkdown frontmatter reifierpassed1.09 ms
enforces the 16 KiB scalar byte limit at and immediately over its boundaryMarkdown frontmatter reifierpassed2.21 ms
enforces the 2,000 node limit at and immediately over its boundaryMarkdown frontmatter reifierpassed651.75 ms
enforces the depth limit of 16 at and immediately over its boundaryMarkdown frontmatter reifierpassed1.5 ms
refuses duplicate relation keysMarkdown frontmatter reifierpassed0.56 ms
refuses duplicate targets within one relation listMarkdown frontmatter reifierpassed0.4 ms
refuses an empty relation sequenceMarkdown frontmatter reifierpassed6.52 ms
refuses a wrong-namespace relation targetMarkdown frontmatter reifierpassed0.47 ms
refuses an entry address in the Spec id at the field's lineMarkdown frontmatter reifierpassed0.67 ms
refuses an entry address in a relation target at the field's lineMarkdown frontmatter reifierpassed0.41 ms
refuses an entry address in a Pack member at the field's lineMarkdown frontmatter reifierpassed0.39 ms
refuses an entry address in a Pack model reference at the field's lineMarkdown frontmatter reifierpassed4.11 ms
refuses a Pack whose own id carries an entry address with the namespace reasonMarkdown frontmatter reifierpassed0.46 ms
accepts distinct relation keys that share a targetMarkdown frontmatter reifierpassed0.51 ms
accepts a pure CRLF carrierMarkdown frontmatter reifierpassed0.62 ms
refuses a byte-order markMarkdown frontmatter reifierpassed0.14 ms
refuses an indented openerMarkdown frontmatter reifierpassed0.1 ms
refuses a document-end closerMarkdown frontmatter reifierpassed0.08 ms
refuses a lone CR after a valid LF carrierMarkdown frontmatter reifierpassed0.06 ms
refuses mixed CRLF and LF newlinesMarkdown frontmatter reifierpassed0.06 ms
maps the ruled title, intent, and behavior lists from the bodyMarkdown frontmatter reifierpassed4.99 ms
maps the ruled fences and every remaining typed ownerMarkdown frontmatter reifierpassed2.46 ms
serializes owned prose canonically across both public carrier reifiersMarkdown frontmatter reifierpassed32.16 ms
serializes GWT and behavior key permutations to identical bytesMarkdown frontmatter reifierpassed11.66 ms
omits absent prose fields and rejects constraint-local prose from the TypeScript carrierMarkdown frontmatter reifierpassed6.96 ms
uses the first minimum heading suggestion within edit distance twoMarkdown frontmatter reifierpassed1.16 ms
refuses a missing H1 through the frozen body diagnosticMarkdown frontmatter reifierpassed0.48 ms
refuses an empty H1 through the frozen body diagnosticMarkdown frontmatter reifierpassed0.35 ms
refuses a heading beyond suggestion distance two through the frozen body diagnosticMarkdown frontmatter reifierpassed0.59 ms
refuses a tied heading using the first minimum through the frozen body diagnosticMarkdown frontmatter reifierpassed0.67 ms
refuses a blank line in a fence through the frozen body diagnosticMarkdown frontmatter reifierpassed2.67 ms
refuses fence attributes through the frozen body diagnosticMarkdown frontmatter reifierpassed0.5 ms
refuses an unclosed fence through the frozen body diagnosticMarkdown frontmatter reifierpassed0.43 ms
refuses a gwt fence on a non-example through the frozen body diagnosticMarkdown frontmatter reifierpassed0.43 ms
refuses an invalid Verification mode through the frozen body diagnosticMarkdown frontmatter reifierpassed1.44 ms
refuses a repeated identical literal heading through the frozen body diagnosticMarkdown frontmatter reifierpassed0.42 ms
refuses ordered dot list in narrativeMarkdown frontmatter reifierpassed0.43 ms
refuses ordered parenthesis list in narrativeMarkdown frontmatter reifierpassed0.25 ms
refuses star list in narrativeMarkdown frontmatter reifierpassed0.31 ms
refuses plus list in narrativeMarkdown frontmatter reifierpassed3.47 ms
refuses ordered dot tab list in narrativeMarkdown frontmatter reifierpassed0.44 ms
refuses ordered parenthesis tab list in narrativeMarkdown frontmatter reifierpassed0.37 ms
refuses star tab list in narrativeMarkdown frontmatter reifierpassed0.58 ms
refuses plus tab list in narrativeMarkdown frontmatter reifierpassed3.49 ms
refuses HTML comment in narrativeMarkdown frontmatter reifierpassed0.42 ms
refuses setext equals underline in narrativeMarkdown frontmatter reifierpassed0.37 ms
refuses setext dash underline in narrativeMarkdown frontmatter reifierpassed3.24 ms
refuses star thematic break in narrativeMarkdown frontmatter reifierpassed3.58 ms
refuses underscore thematic break in narrativeMarkdown frontmatter reifierpassed0.47 ms
refuses ordered list in section proseMarkdown frontmatter reifierpassed0.4 ms
refuses star list in section proseMarkdown frontmatter reifierpassed0.54 ms
refuses plus list in section proseMarkdown frontmatter reifierpassed0.4 ms
refuses setext underline in section proseMarkdown frontmatter reifierpassed0.35 ms
refuses thematic break in section proseMarkdown frontmatter reifierpassed0.33 ms
refuses bare HTML opener in section proseMarkdown frontmatter reifierpassed10.84 ms
refuses dash tab list in section proseMarkdown frontmatter reifierpassed0.62 ms
refuses HTML comment in section proseMarkdown frontmatter reifierpassed0.48 ms
refuses processing instruction in section proseMarkdown frontmatter reifierpassed0.43 ms
refuses declaration in section proseMarkdown frontmatter reifierpassed0.38 ms
refuses mixed-mode Verification headings instead of overwriting the first sectionMarkdown frontmatter reifierpassed3.62 ms
preserves Behavior rules when an example Intent appears after BehaviorMarkdown frontmatter reifierpassed0.84 ms
refuses a GWT fence under ModelMarkdown frontmatter reifierpassed0.66 ms
refuses an H3 under DesignMarkdown frontmatter reifierpassed0.54 ms
refuses an open question before its H3 ownerMarkdown frontmatter reifierpassed0.49 ms
refuses an Intent field after the open-questions H3Markdown frontmatter reifierpassed3.79 ms
refuses frontmatter title through its ruled diagnosticMarkdown frontmatter reifierpassed0.49 ms
refuses second H1 through its ruled diagnosticMarkdown frontmatter reifierpassed0.36 ms
refuses near-miss heading through its ruled diagnosticMarkdown frontmatter reifierpassed0.4 ms
refuses indented list through its ruled diagnosticMarkdown frontmatter reifierpassed0.45 ms
refuses empty list through its ruled diagnosticMarkdown frontmatter reifierpassed0.41 ms
refuses nested list through its ruled diagnosticMarkdown frontmatter reifierpassed0.54 ms
refuses extra heading space through its ruled diagnosticMarkdown frontmatter reifierpassed0.35 ms
refuses extra list space through its ruled diagnosticMarkdown frontmatter reifierpassed0.37 ms
refuses invalid GWT phase through its ruled diagnosticMarkdown frontmatter reifierpassed0.47 ms
refuses late description through its ruled diagnosticMarkdown frontmatter reifierpassed0.4 ms
refuses raw HTML through its ruled diagnosticMarkdown frontmatter reifierpassed0.35 ms
refuses inline raw HTML through its ruled diagnosticMarkdown frontmatter reifierpassed0.31 ms
refuses trailing prose through its ruled diagnosticMarkdown frontmatter reifierpassed0.42 ms
refuses unsupported block through its ruled diagnosticMarkdown frontmatter reifierpassed0.33 ms
refuses reserved authored fact through its ruled diagnosticMarkdown frontmatter reifierpassed0.38 ms
reads a key after the flag and leaves an unkeyed question without oneopen question keys in the Markdown markerpassed0.71 ms
refuses the carrier whole on a key with an upper-case first letteropen question keys in the Markdown markerpassed0.47 ms
refuses the carrier whole on a key with an empty keyopen question keys in the Markdown markerpassed0.39 ms
refuses the carrier whole on a key with a hyphenopen question keys in the Markdown markerpassed0.38 ms
refuses the carrier whole on a key with a digit firstopen question keys in the Markdown markerpassed0.37 ms
refuses the carrier whole on a key with a space insideopen question keys in the Markdown markerpassed0.38 ms
refuses the carrier whole on a key with a non-ASCII letteropen question keys in the Markdown markerpassed0.35 ms
refuses the carrier whole on a key an earlier question of the Spec carriesopen question keys in the Markdown markerpassed0.75 ms
keeps distinct keys that differ only in caseopen question keys in the Markdown markerpassed0.93 ms
keeps today's refusal for a marker with no space before the hashopen question keys in the Markdown markerpassed3.13 ms
keeps today's refusal for a marker with two spaces before the hashopen question keys in the Markdown markerpassed0.42 ms
keeps today's refusal for a marker with a key without its hashopen question keys in the Markdown markerpassed1.76 ms
refuses a keyed question outside its H3 owner as an unkeyed one is refusedopen question keys in the Markdown markerpassed0.51 ms

External run evidence from test/mermaid-render.test.ts

Test anchors: test:protocol.mermaid-view. Specs verified by those bindings: spec:consumers.mermaid-view.

NameSuiteResultDuration
renders every checkout-v1 Spec, Pack, and index page as the reviewed goldenthe bounded Mermaid projectionpassed88.81 ms
is byte-identical under node and edge permutation with code-unit sorted recordsthe bounded Mermaid projectionpassed1.29 ms
labels the index as diagnostic when validation errors are presentthe bounded Mermaid projectionpassed1.1 ms
escapes hostile labels without changing injective full-ID machine tokensthe bounded Mermaid projectionpassed0.78 ms
refuses a diagram whose neighbor has a duplicated id and names that neighborthe bounded Mermaid projectionpassed0.86 ms
names each duplicated root in its own refusalthe bounded Mermaid projectionpassed0.36 ms
keeps one-hop cycles, disconnected Pack members, foreign edges, and dangling placeholders without emitting a whole graphthe bounded Mermaid projectionpassed0.59 ms
withholds only the affected diagram when identities collide or a bound overflowsthe bounded Mermaid projectionpassed2.14 ms
accepts diagrams exactly at the 64-node and 128-edge boundsthe bounded Mermaid projectionpassed1.99 ms
withholds an oversized Pack and still renders every in-bound Spec diagramthe bounded Mermaid projectionpassed10.84 ms

External run evidence from test/pack-design.test.ts

Test anchors: test:protocol.pack-design. Specs verified by those bindings: spec:consumers.pack-design, spec:model.design-maturity.

NameSuiteResultDuration
keeps the manifest's order and every existing fieldthe Pack design on the Pack contextpassed16.56 ms
names the stated next rung's unmet clauses, with the targets a dependency clause namesthe Pack design on the Pack contextpassed3.72 ms
reads an empty list where the floor already holds the stated next rungthe Pack design on the Pack contextpassed1.63 ms
keeps the stated reading apart from the floor-reached readingthe Pack design on the Pack contextpassed2.77 ms
names no next rung above readythe Pack design on the Pack contextpassed1.78 ms
counts the design columns: keyed entries, pinned declarations and questionsthe Pack design on the Pack contextpassed2.72 ms
exposes the same design columns on Spec context and Pack membersthe Pack design on the Pack contextpassed2.35 ms
lists the decisions a member names, unresolved when the target is no Specthe Pack design on the Pack contextpassed5.17 ms
carries each realizing and referencing unit with its component on the member and on the Spec contextthe Pack design on the Pack contextpassed4.46 ms
counts verifiers and verifying examples with how many are enabledthe Pack design on the Pack contextpassed3.5 ms
counts a verifying Spec of another kind as a verifier, never as an examplethe Pack design on the Pack contextpassed0.7 ms
lists the boundary both ways, rows by id and members in authored orderthe Pack design on the Pack contextpassed1.42 ms
keeps verification and supersession outside restedOnBy, ignoring anchored verifiersthe Pack design on the Pack contextpassed2.13 ms
marks an outside Spec that carries the implementation factthe Pack design on the Pack contextpassed1.44 ms
keeps an unresolved member's existing row and nothing morethe Pack design on the Pack contextpassed0.91 ms
carries each Spec's location rows on its Spec context, sorted by entrythe Pack design on the Pack contextpassed1.61 ms
is a pure function of the graph: two reads of one graph are equalthe Pack design on the Pack contextpassed3.34 ms
joins many members to one outside Spec in one step each, members in authored orderthe Pack design on the Pack contextpassed936.04 ms

External run evidence from test/package-smoke.test.ts

Test anchors: test:protocol.shipped-protocol-corpus. Specs verified by those bindings: spec:consumers.adopter-on-ramp, spec:consumers.shipped-protocol-corpus.

NameSuiteResultDuration
packing leaves every repository dist file's inode, size and mtime untouchedpublished package surfacepassed874.76 ms
packs the same files and bytes as npm 11 selects from the built repositorypublished package surfacepassed13214.67 ms
dist/adapters/vitest.js keeps Vitest runner code outside the packagepublished package surfacepassed2.26 ms
dist/index.cjs keeps Vitest runner code outside the packagepublished package surfacepassed2.7 ms
registers and passes one bindExample test with the installed consumer's Vitestpublished package surfacepassed3009.76 ms
proves the installed tarball lists import, dry-runs conversion without writes, and exposes the barrelpublished package surfacepassed6409 ms

External run evidence from test/reach-examples.test.ts

Test anchors: test:protocol.consumers.agent-surface.address-and-cycle-recipes.chain-reports-nothing, test:protocol.consumers.agent-surface.address-and-cycle-recipes.cycle-fails-a-rules-run, test:protocol.consumers.agent-surface.address-and-cycle-recipes.unresolved-address-fails-a-rules-run, test:protocol.consumers.agent-surface.evaluation-sink.exported-evaluator, test:protocol.consumers.agent-surface.evaluation-sink.recipe-call, test:protocol.consumers.agent-surface.evaluation-sink.unknown-recipe, test:protocol.validation.corpus-rules.params-edit-starts-a-cycle, test:protocol.validation.corpus-rules.rules-edit-starts-a-cycle, test:protocol.validation.corpus-rules.unreadable-params-fail-one-file. Specs verified by those bindings: spec:consumers.agent-surface.address-and-cycle-recipes, spec:consumers.agent-surface.address-and-cycle-recipes.chain-reports-nothing, spec:consumers.agent-surface.address-and-cycle-recipes.cycle-fails-a-rules-run, spec:consumers.agent-surface.address-and-cycle-recipes.unresolved-address-fails-a-rules-run, spec:consumers.agent-surface.evaluation-sink, spec:consumers.agent-surface.evaluation-sink.exported-evaluator, spec:consumers.agent-surface.evaluation-sink.recipe-call, spec:consumers.agent-surface.evaluation-sink.unknown-recipe, spec:validation.corpus-rules, spec:validation.corpus-rules.params-edit-starts-a-cycle, spec:validation.corpus-rules.rules-edit-starts-a-cycle, spec:validation.corpus-rules.unreadable-params-fail-one-file.

NameSuiteResultDuration
gives every watch example the heavy-test timeoutnot recordedpassed2.43 ms
leaves non-watch corpus-rule points and incomplete points unspecifiednot recordedpassed0.36 ms
leaves address points outside the oracle's bound probes unspecifiednot recordedpassed0.17 ms
executes the bound example against a fresh worldA body calls a shipped recipe and returns its answer unchanged (spec:consumers.agent-surface.evaluation-sink.recipe-call)passed21.85 ms
executes the bound example against a fresh worldA call to a recipe the catalog does not hold fails the body (spec:consumers.agent-surface.evaluation-sink.unknown-recipe)passed3.48 ms
executes the bound example against a fresh worldA script holding a graph runs a shipped recipe through the exported evaluator (spec:consumers.agent-surface.evaluation-sink.exported-evaluator)passed3.89 ms
executes the bound example against a fresh worldA dependency chain with no cycle yields no finding (spec:consumers.agent-surface.address-and-cycle-recipes.chain-reports-nothing)passed3.1 ms
executes the bound example against a fresh worldThe shipped dependency-cycles file fails a rules run on a cycle (spec:consumers.agent-surface.address-and-cycle-recipes.cycle-fails-a-rules-run)passed5.52 ms
executes the bound example against a fresh worldThe shipped address-resolution file fails a rules run on an address that names no entry (spec:consumers.agent-surface.address-and-cycle-recipes.unresolved-address-fails-a-rules-run)passed3.86 ms
executes the bound example against a fresh worldRewriting a rules file under node_modules starts a cycle that runs the new body (spec:validation.corpus-rules.rules-edit-starts-a-cycle)passed16.19 ms
executes the bound example against a fresh worldEditing a parameter file starts a cycle that reads the new parameters (spec:validation.corpus-rules.params-edit-starts-a-cycle)passed46.21 ms
executes the bound example against a fresh worldA parameter file that stops being JSON fails only its own rules file, and the watcher runs on (spec:validation.corpus-rules.unreadable-params-fail-one-file)passed103.81 ms

External run evidence from test/reader.test.ts

Test anchors: test:protocol.projections-model.reader. Specs verified by those bindings: spec:consumers.projections-model.

NameSuiteResultDuration
exposes authored open-section and model-term order in a Spec contextthe reader — the thin typed loader behind the agent surface > flat accessorspassed10.95 ms
carries owned prose in spec summaries and contextsthe reader — the thin typed loader behind the agent surface > flat accessorspassed1.61 ms
summarizes every spec with the decode done once: display label, recomputed facts, packs, derived readinessthe reader — the thin typed loader behind the agent surface > flat accessorspassed5.61 ms
summarizes packs and exposes the full findings — the holes beside the assertions (JS-E2)the reader — the thin typed loader behind the agent surface > flat accessorspassed3.09 ms
finds narrative and owned section descriptionsthe reader — the thin typed loader behind the agent surface > findByConcept — the grep→graph bridge from a stringpassed1.85 ms
matches ids first, then titles/labels, then section prose — deterministic, never fuzzythe reader — the thin typed loader behind the agent surface > findByConcept — the grep→graph bridge from a stringpassed2.01 ms
reaches the domain vocabulary: a model term key is content, not structurethe reader — the thin typed loader behind the agent surface > findByConcept — the grep→graph bridge from a stringpassed1.11 ms
matches an anchor label, case-insensitively — label tier before prose tierthe reader — the thin typed loader behind the agent surface > findByConcept — the grep→graph bridge from a stringpassed1.28 ms
never matches section structure keys: a query naming a shape key finds only contentthe reader — the thin typed loader behind the agent surface > findByConcept — the grep→graph bridge from a stringpassed1.13 ms
returns nothing for an empty querythe reader — the thin typed loader behind the agent surface > findByConcept — the grep→graph bridge from a stringpassed0.77 ms
maps a spec file to the spec authored therethe reader — the thin typed loader behind the agent surface > byFile — the grep→graph bridge from a filepassed1 ms
maps a source file through its bindings to the specs they satisfy (./-prefix normalized)the reader — the thin typed loader behind the agent surface > byFile — the grep→graph bridge from a filepassed0.73 ms
maps the oracle's file through its models binding to the spec it models — no blind spotthe reader — the thin typed loader behind the agent surface > byFile — the grep→graph bridge from a filepassed0.68 ms
maps a test file through its anchor to the example it verifiesthe reader — the thin typed loader behind the agent surface > byFile — the grep→graph bridge from a filepassed0.83 ms
answers honestly for a file the graph records nothing atthe reader — the thin typed loader behind the agent surface > byFile — the grep→graph bridge from a filepassed0.75 ms
reaches the bound spec and its one-hop neighborhood with the connecting edges namedthe reader — the thin typed loader behind the agent surface > blastRadius — file-level impact, coverage-unknown honest (`06` §2)passed1.51 ms
treats a changed spec file as direct impact (no binding in the reason)the reader — the thin typed loader behind the agent surface > blastRadius — file-level impact, coverage-unknown honest (`06` §2)passed0.75 ms
treats a changed pack manifest as pack impact with the members at risk via belongsTothe reader — the thin typed loader behind the agent surface > blastRadius — file-level impact, coverage-unknown honest (`06` §2)passed1.2 ms
surfaces an unanchored changed file as coverage-unknown, never silently droppedthe reader — the thin typed loader behind the agent surface > blastRadius — file-level impact, coverage-unknown honest (`06` §2)passed1.1 ms
normalizes, dedupes, and sorts the changed-file listthe reader — the thin typed loader behind the agent surface > blastRadius — file-level impact, coverage-unknown honest (`06` §2)passed1.04 ms
joins relations, bindings, recomputed facts, and the spec's findings in one answerthe reader — the thin typed loader behind the agent surface > specContext — the irreducible per-spec joinpassed1.18 ms
decodes a test anchor as an enabled verifier binding with its source locationthe reader — the thin typed loader behind the agent surface > specContext — the irreducible per-spec joinpassed6.38 ms
decodes the oracle binding — existence with its source location, never contentthe reader — the thin typed loader behind the agent surface > specContext — the irreducible per-spec joinpassed3.61 ms
decodes a rule-kind oracle through the shared example-space predicatethe reader — the thin typed loader behind the agent surface > specContext — the irreducible per-spec joinpassed0.68 ms
fails closed on off-contract or competing oracle edgesthe reader — the thin typed loader behind the agent surface > specContext — the irreducible per-spec joinpassed2.85 ms
carries the oracle's file into blast radius through the models bindingthe reader — the thin typed loader behind the agent surface > specContext — the irreducible per-spec joinpassed0.97 ms
returns undefined for an id the graph does not holdthe reader — the thin typed loader behind the agent surface > specContext — the irreducible per-spec joinpassed0.61 ms
names the scoped dependency of a Spec stating defined at the next rung, readythe reader — the thin typed loader behind the agent surface > nextRungFailures — the unmet clauses of the rung above the floor reachedpassed2.5 ms
has no next-rung failure when the same dependency states defined and ready derivesthe reader — the thin typed loader behind the agent surface > nextRungFailures — the unmet clauses of the rung above the floor reachedpassed0.44 ms
reads the rung above the floor reached, not the rung above the stated onethe reader — the thin typed loader behind the agent surface > nextRungFailures — the unmet clauses of the rung above the floor reachedpassed0.48 ms
reads idea as the next rung when no rung derives, and nothing for an unratified kindthe reader — the thin typed loader behind the agent surface > nextRungFailures — the unmet clauses of the rung above the floor reachedpassed0.63 ms
lists members with their decode and the verifier gaps, ready ones as the priority slicethe reader — the thin typed loader behind the agent surface > packContext — the pack reviewed as a unit (JS-E4, JS-G4)passed2.41 ms
excludes ready and below-ready decisions from gaps while preserving non-decision orderthe reader — the thin typed loader behind the agent surface > packContext — the pack reviewed as a unit (JS-E4, JS-G4)passed0.96 ms
flags a ready member without a verifier as the priority gapthe reader — the thin typed loader behind the agent surface > packContext — the pack reviewed as a unit (JS-E4, JS-G4)passed0.54 ms
answers membership the same from the list and from the belongsTo edges, and the validator names a graph where they disagreethe reader — the thin typed loader behind the agent surface > packContext — the pack reviewed as a unit (JS-E4, JS-G4)passed1.15 ms
returns undefined for a non-pack idthe reader — the thin typed loader behind the agent surface > packContext — the pack reviewed as a unit (JS-E4, JS-G4)passed0.8 ms
exposes recomputed delivery facts, never stated ones — the divergence stays a findingthe reader — the thin typed loader behind the agent surface > honesty over foreign producerspassed0.45 ms
never decodes an anchored verifies edge from a non-Anchor source as the enabling test bindingthe reader — the thin typed loader behind the agent surface > honesty over foreign producerspassed0.69 ms
never decodes an off-contract verifies edge from an anchor-bound example as enabledthe reader — the thin typed loader behind the agent surface > honesty over foreign producerspassed0.59 ms
never confers has-verifier from an anchor-bound non-example verifier — the kind gate of the shared enabled-example rulethe reader — the thin typed loader behind the agent surface > honesty over foreign producerspassed0.54 ms
keys the verifier by first carrier on a duplicate-id graph — decode and derived facts agreethe reader — the thin typed loader behind the agent surface > honesty over foreign producerspassed1.8 ms
carries the claim through impact answers — machine-derived reach is marked, never promotedthe reader — the thin typed loader behind the agent surface > honesty over foreign producerspassed0.55 ms
lists the units that reference a Spec beside its implementations, with role and locationthe reader — the thin typed loader behind the agent surface > the binding grain: references and unlinked code unitspassed0.85 ms
never confers a delivery fact through referencesthe reader — the thin typed loader behind the agent surface > the binding grain: references and unlinked code unitspassed0.52 ms
carries layer and context on a component's binding rowthe reader — the thin typed loader behind the agent surface > the binding grain: references and unlinked code unitspassed0.36 ms
reaches a referenced Spec from a source filethe reader — the thin typed loader behind the agent surface > the binding grain: references and unlinked code unitspassed0.39 ms
returns an identity-only unit with an empty Spec listthe reader — the thin typed loader behind the agent surface > the binding grain: references and unlinked code unitspassed0.33 ms
traverses references as a binding, naming the edge type and its claimthe reader — the thin typed loader behind the agent surface > the binding grain: references and unlinked code unitspassed0.43 ms
lists changed units with no Spec linkage as unlinked, never coverage-unknown or droppedthe reader — the thin typed loader behind the agent surface > the binding grain: references and unlinked code unitspassed0.43 ms
keeps a file holding only an identity-only unit out of coverage-unknown and out of impactthe reader — the thin typed loader behind the agent surface > the binding grain: references and unlinked code unitspassed0.27 ms
reports nothing unlinked when every changed unit has a Spec linkagethe reader — the thin typed loader behind the agent surface > the binding grain: references and unlinked code unitspassed1.41 ms
never mutates the graph and answers identically across fresh readersthe reader — the thin typed loader behind the agent surface > purity and determinismpassed2.61 ms

External run evidence from test/readiness.test.ts

Test anchors: test:protocol.readiness-floor. Specs verified by those bindings: spec:validation.readiness-floor.

NameSuiteResultDuration
exports the canonical validator families and severitiesreadiness and validation contractspassed1.86 ms
defines the kind-blind structural clauses as one table (MD-13), clause ids defined exactly oncereadiness and validation contractspassed0.65 ms
evaluates every clause — the ready clauses included — over the one graph (one validation path, MD-14)readiness and validation contractspassed1.27 ms
covers every kind in the evidence table; workflow and contract ride the behavior row (MD-12)readiness and validation contractspassed0.37 ms
keeps a workflow with flows below defined until it carries a rulereadiness and validation contractspassed0.6 ms
counts promoted children as evidence — promotion never costs an earned rung (MD-10/MD-12)readiness and validation contractspassed0.65 ms
keeps the constraint floor monotonic: an untargeted entry clears scoped, not defined (MD-12)readiness and validation contractspassed0.39 ms
keeps every kind's evidence row monotonic: defined evidence implies scoped evidence (MD-12)readiness and validation contractspassed1.73 ms
requires a structured GWT entry for a defined example; prose clears scoped only (MD-10)readiness and validation contractspassed0.44 ms
derives the highest cumulatively-cleared rung, independent of the stated onereadiness and validation contracts > derived readiness (the stated-vs-derived split, `spec:validation.readiness-floor`)passed0.41 ms
derives below the stated rung exactly where the floor check fails (the divergence)readiness and validation contracts > derived readiness (the stated-vs-derived split, `spec:validation.readiness-floor`)passed0.31 ms
derives undefined when even the idea clauses failreadiness and validation contracts > derived readiness (the stated-vs-derived split, `spec:validation.readiness-floor`)passed0.21 ms
stays total over an unratified kind: no rung derives, the conformance error owns itreadiness and validation contracts > derived readiness (the stated-vs-derived split, `spec:validation.readiness-floor`)passed0.23 ms
holds a fully bound example at defined — the clause flips on the binding alonethe concreteness law — an example is a bound point (the plan-12 ratification)passed0.66 ms
caps a fully bound example below defined when a parent example space no longer owns its stepthe concreteness law — an example is a bound point (the plan-12 ratification)passed0.67 ms
caps an example with a bare unbound slot in a used step below definedthe concreteness law — an example is a bound point (the plan-12 ratification)passed0.27 ms
caps a declaration-form slot in a used step the same way ({n:number} is not a binding)the concreteness law — an example is a bound point (the plan-12 ratification)passed0.22 ms
keeps a partial point honest: an unused step binds nothing and fails nothingthe concreteness law — an example is a bound point (the plan-12 ratification)passed0.18 ms
derives the honest rung: the unbound-slot example structurally reaches scoped, never definedthe concreteness law — an example is a bound point (the plan-12 ratification)passed0.14 ms
names the scoped dependency at a target rung of ready on a Spec stating definedthe floor for a target rung and the targets a dependency failure namespassed0.44 ms
finds nothing at ready when the same dependency states definedthe floor for a target rung and the targets a dependency failure namespassed0.2 ms
evaluates the target rung, not the stated one, in both directionsthe floor for a target rung and the targets a dependency failure namespassed0.28 ms
evaluates the cumulative clauses of every rung up to the targetthe floor for a target rung and the targets a dependency failure namespassed0.23 ms
yields no failure for an unratified kind or an unratified target rungthe floor for a target rung and the targets a dependency failure namespassed0.31 ms
names every distinct breaking target, sorted by relation type and then by idthe floor for a target rung and the targets a dependency failure namespassed0.5 ms
keeps the readiness-floor finding message free of targetsthe floor for a target rung and the targets a dependency failure namespassed2.65 ms
sets a targets reader on the typed-dependency clause alonethe floor for a target rung and the targets a dependency failure namespassed0.22 ms

External run evidence from test/recipes.test.ts

Test anchors: test:protocol.address-and-cycle-recipes, test:protocol.answer-shape-recipes, test:protocol.authoring-grammar-recipes, test:protocol.authoring-recipes, test:protocol.capability-epics, test:protocol.capability-map, test:protocol.design-recipes, test:protocol.recipe-parameters, test:protocol.register-recipes. Specs verified by those bindings: spec:consumers.agent-surface.address-and-cycle-recipes, spec:consumers.agent-surface.answer-shapes, spec:consumers.agent-surface.authoring-recipes, spec:consumers.agent-surface.design-recipes, spec:consumers.agent-surface.recipe-parameters, spec:consumers.agent-surface.register-recipes, spec:consumers.capability-map, spec:extraction.contract-declarations, spec:model.open-question-fields, spec:model.relation-reasons, spec:model.rule-keys, spec:protocol.capability-epics.

NameSuiteResultDuration
cites each recipe that a Spec names by number and heading under the catalog's numberthe agent-surface recipe corpuspassed213.54 ms
pairs every documented recipe with exactly one fenced bodythe agent-surface recipe corpuspassed0.81 ms
keeps self-hosting and adopter invocation forms distinctthe agent-surface recipe corpuspassed4.35 ms
teaches parameters as data and keeps the on-ramps naming the CLI verbs and recipesthe agent-surface recipe corpuspassed3.84 ms
keeps every body plain JavaScript with a returnthe agent-surface recipe corpuspassed5.18 ms
runs every body through the front door without throwingthe agent-surface recipe corpuspassed4864.59 ms
returns the non-example build backlog and audits excluded example evidencethe agent-surface recipe corpuspassed74.13 ms
returns a drift alarm of code-bound specs below ready, with the floor namedthe agent-surface recipe corpuspassed63.42 ms
returns one spec's guarantees with its relations and verifier bindingsthe agent-surface recipe corpuspassed26.84 ms
keeps hostile changed filenames as inert JSON datathe agent-surface recipe corpuspassed40.2 ms
returns the complete diff-to-at-risk bridgethe agent-surface recipe corpuspassed52.87 ms
names a changed identity-only unit as unlinked, never coverage-unknown or droppedthe agent-surface recipe corpuspassed74.55 ms
returns a pack's review backbone with its verifier gapsthe agent-surface recipe corpuspassed53.36 ms
returns concept matches carrying the fields that matchedthe agent-surface recipe corpuspassed97.83 ms
returns readiness divergence as an array, where empty is lawfulthe agent-surface recipe corpuspassed128.59 ms
returns the warn-level signals as data rather than as a gatethe agent-surface recipe corpuspassed73.52 ms
returns promotion preflight without conferring a readiness editthe agent-surface recipe corpuspassed32.89 ms
names the next rung's unmet clause and the dependency that breaks it on a probethe agent-surface recipe corpuspassed3.63 ms
keeps declared examples distinct from enabled verifier bindingsthe agent-surface recipe corpuspassed243.11 ms
returns the complete non-ready ladder grouped by familythe agent-surface recipe corpuspassed85.21 ms
distinguishes a passing current floor from a blocked or clear stated next rungthe agent-surface recipe corpuspassed1.73 ms
returns every committed structural component with non-empty membershipthe agent-surface recipe corpuspassed57.07 ms
returns exact component uses fan-in and fan-out from the structural oraclethe agent-surface recipe corpuspassed36.72 ms
returns a component structural neighborhood and an exact absent shapethe agent-surface recipe corpuspassed57.12 ms
reports census structural coverage from graph and report ground truththe agent-surface recipe corpuspassed32.63 ms
reports graph-side upper bounds for every shipped projection rootthe agent-surface recipe corpuspassed35.68 ms
returns the architecture map of every live component with recomputed fan-in and fan-outthe agent-surface recipe corpuspassed66.26 ms
explains the shared policy and adapter collaborations from graph intent and binding claimsthe agent-surface recipe corpuspassed71.08 ms
retains local uses and their claims without counting a component as its own dependencythe agent-surface recipe corpuspassed108.03 ms
preserves an unresolved responsibility without inventing its designthe agent-surface recipe corpuspassed104.03 ms
keeps a dangling component row and surfaces unresolved uses edgesthe agent-surface recipe corpuspassed94.74 ms
preserves an unresolved architecture-map member when memberOf outlives the nodethe agent-surface recipe corpuspassed126.1 ms
returns the decision map ranked by live shaping fan-inthe agent-surface recipe corpuspassed66.23 ms
returns a planning-slice neighborhood and an exact absent shapethe agent-surface recipe corpuspassed109.75 ms
returns non-empty bidirectional dependencies for the binding-grain planning slicethe agent-surface recipe corpuspassed50.88 ms
returns planning-slice implementations, never abstractionsthe agent-surface recipe corpuspassed48.26 ms
preserves an unresolved component row when memberOf outlives the nodethe agent-surface recipe corpuspassed115.85 ms
reports derived design columns beside the existing backlog fieldsthe agent-surface recipe corpuspassed0.91 ms
groups backlog rows under lawful Object.prototype path segmentsthe agent-surface recipe corpuspassed65.08 ms
groups lower-ladder rows under lawful Object.prototype path segmentsthe agent-surface recipe corpuspassed50.37 ms
groups decided subjects under lawful Object.prototype path segmentsthe agent-surface recipe corpuspassed44.22 ms
lists key families across the corpus in key, Spec and section order with the documented sampleregister recipe semanticspassed91.93 ms
lists Design and UI key families without a row cap, preserving values, lines and overlapping prefixesregister recipe semanticspassed9.14 ms
diagnoses an unresolved Pack member without returning a partial registerregister recipe semanticspassed2.01 ms
diagnoses malformed key-family parameters without a register: {"prefixes":[]}register recipe semanticspassed40.51 ms
diagnoses malformed key-family parameters without a register: {"prefixes":[""]}register recipe semanticspassed39.18 ms
diagnoses malformed key-family parameters without a register: {"prefixes":["a","a"]}register recipe semanticspassed57.21 ms
diagnoses malformed key-family parameters without a register: {"prefixes":"limit"}register recipe semanticspassed44.46 ms
diagnoses malformed key-family parameters without a register: {"pack":"pack:absent"}register recipe semanticspassed37.73 ms
diagnoses malformed key-family parameters without a register: {"specs":["spec:absent"]}register recipe semanticspassed54.73 ms
diagnoses malformed key-family parameters without a register: {"specs":"bad"}register recipe semanticspassed45.75 ms
diagnoses malformed key-family parameters without a register: {"pack":"pack:self-hosting-v1","specs":[]}register recipe semanticspassed69.9 ms
runs recipe 20 as written in default outputregister recipe semanticspassed102.17 ms
runs recipe 21 as written in default outputregister recipe semanticspassed55.05 ms
runs recipe 22 as written in default outputregister recipe semanticspassed91.83 ms
runs recipe 23 as written in default outputregister recipe semanticspassed111.17 ms
runs recipe 24 as written in default outputregister recipe semanticspassed78.19 ms
runs recipe 25 as written in default outputregister recipe semanticspassed39.83 ms
runs recipe 26 as written in default outputregister recipe semanticspassed35.69 ms
runs recipe 27 as written in default outputregister recipe semanticspassed40.73 ms
runs recipe 28 as written in default outputregister recipe semanticspassed28.53 ms
runs recipe 29 as written in default outputregister recipe semanticspassed28.55 ms
runs recipe 30 as written in default outputregister recipe semanticspassed113.58 ms
runs recipe 31 as written in default outputregister recipe semanticspassed39.91 ms
runs recipe 32 as written in default outputregister recipe semanticspassed27.27 ms
renders long JSON values with the same default text bound as stringsregister recipe semanticspassed7.28 ms
registers an omitted blocking flag through a TypeScript carrierregister recipe semanticspassed3.03 ms
searches coined keys of every value shape through a TypeScript carrierregister recipe semanticspassed2.71 ms
searches strings inside a matching coined list or object keyregister recipe semanticspassed2.2 ms
searches a null coined-key value in the reader graphregister recipe semanticspassed1.75 ms
keeps register counts under totals and top-level plural nouns as arraysregister recipe semanticspassed821.5 ms
pins whole-token matching for 'retry' in 'entry' / 'retry'register recipe semanticspassed1.24 ms
pins whole-token matching for 'retry' in 'entry' / 'retryable'register recipe semanticspassed0.4 ms
pins whole-token matching for 'retry' in 'entry' / 'retry-worker'register recipe semanticspassed0.35 ms
pins whole-token matching for 'retry' in 'retryWorker' / 'unrelated'register recipe semanticspassed0.32 ms
pins whole-token matching for 'Retry' in 'entry' / 'RETRY.'register recipe semanticspassed0.32 ms
pins whole-token matching for 'retry worker' in 'retryWorker' / 'retry-worker'register recipe semanticspassed0.33 ms
pins whole-token matching for 'retry worker' in 'entry' / 'worker retry'register recipe semanticspassed0.36 ms
pins whole-token matching for 'retry worker' in 'entry' / 'retry the worker'register recipe semanticspassed0.29 ms
pins whole-token matching for 'server' in 'entry' / 'HTTPServer'register recipe semanticspassed0.43 ms
pins whole-token matching for 'v' in 'entry' / 'v2'register recipe semanticspassed0.33 ms
registers every authored question, blocking Specs firstregister recipe semanticspassed81.67 ms
reports one-hop footing of all four types, including unresolved targetsregister recipe semanticspassed116.61 ms
audits mention pairs, skips fences, and preserves full ids and directionregister recipe semanticspassed1.37 ms
resolves entry mentions and retains every token and pair location through a probe rootregister recipe semanticspassed8.35 ms
reads the whole mention token through an underscore as malformed, never the existing prefixregister recipe semanticspassed0.8 ms
reads the whole mention token through a slash as malformed, never the existing prefixregister recipe semanticspassed0.5 ms
reads the whole mention token through a comma as malformed, never the existing prefixregister recipe semanticspassed9.19 ms
reads the whole mention token through an underscore and a letter as malformed, never the existing prefixregister recipe semanticspassed0.75 ms
reads the whole mention token through a slash and a letter as malformed, never the existing prefixregister recipe semanticspassed0.49 ms
reads the whole mention token through a comma and a letter as malformed, never the existing prefixregister recipe semanticspassed0.48 ms
reads the whole mention token through a letter outside ASCII as malformed, never the existing prefixregister recipe semanticspassed0.48 ms
reads the whole mention token through an escaped underscore as malformed, never the existing prefixregister recipe semanticspassed3.54 ms
reads the whole mention token through a combining mark as malformed, never the existing prefixregister recipe semanticspassed0.6 ms
reads the whole mention token through a combining mark after an entry key as malformed, never the existing prefixregister recipe semanticspassed0.54 ms
reads the whole mention token through a zero-width space as malformed, never the existing prefixregister recipe semanticspassed0.45 ms
reads the whole mention token through fullwidth connector punctuation as malformed, never the existing prefixregister recipe semanticspassed0.45 ms
reads the whole mention token through a NUL as malformed, never the existing prefixregister recipe semanticspassed0.42 ms
reads the whole mention token through an escape character as malformed, never the existing prefixregister recipe semanticspassed3.48 ms
reads the whole mention token through a delete character as malformed, never the existing prefixregister recipe semanticspassed0.57 ms
reads the whole mention token through a C1 control character as malformed, never the existing prefixregister recipe semanticspassed0.47 ms
reads the whole mention token through a hyphenated entry key as malformed, never the existing prefixregister recipe semanticspassed0.44 ms
reads the whole mention token through an entry suffix with no key as malformed, never the existing prefixregister recipe semanticspassed0.47 ms
reads the whole mention token through an entry suffix outside design and ui as malformed, never the existing prefixregister recipe semanticspassed0.44 ms
reads the clean id through Markdown punctuation: a sentence dotregister recipe semanticspassed3.84 ms
reads the clean id through Markdown punctuation: a commaregister recipe semanticspassed0.64 ms
reads the clean id through Markdown punctuation: a colonregister recipe semanticspassed0.49 ms
reads the clean id through Markdown punctuation: a closing parenthesisregister recipe semanticspassed0.51 ms
reads the clean id through Markdown punctuation: boldregister recipe semanticspassed0.49 ms
reads the clean id through Markdown punctuation: emphasisregister recipe semanticspassed0.46 ms
reads the clean id through Markdown punctuation: strikethroughregister recipe semanticspassed0.43 ms
reads the clean id through Markdown punctuation: backticksregister recipe semanticspassed0.41 ms
reads the clean id through Markdown punctuation: ASCII double quotesregister recipe semanticspassed0.45 ms
reads the clean id through Markdown punctuation: ASCII single quotesregister recipe semanticspassed0.41 ms
reads the clean id through Markdown punctuation: typographic double quotesregister recipe semanticspassed0.83 ms
reads the clean id through Markdown punctuation: typographic single quotesregister recipe semanticspassed0.44 ms
reads the clean id through Markdown punctuation: an em dashregister recipe semanticspassed0.38 ms
reads the clean id through Markdown punctuation: an en dashregister recipe semanticspassed0.36 ms
reads the clean id through Markdown punctuation: an ellipsisregister recipe semanticspassed0.41 ms
reads the clean id through Markdown punctuation: an escaped starregister recipe semanticspassed0.45 ms
reads the clean id through Markdown punctuation: an escaped exclamation markregister recipe semanticspassed0.47 ms
reads the clean id through Markdown punctuation: U+0085register recipe semanticspassed0.42 ms
reads the clean id through Markdown punctuation: a no-break spaceregister recipe semanticspassed0.44 ms
reads the clean id through Markdown punctuation: a tabregister recipe semanticspassed0.45 ms
reads the clean id through Markdown punctuation: an arrowregister recipe semanticspassed0.48 ms
reads a placeholder or a bare prefix as prose, not a mentionregister recipe semanticspassed0.45 ms
scans nested arrays in examples while skipping object fences by positionregister recipe semanticspassed3.07 ms
addresses only lawful Design and UI entry keys in search resultsregister recipe semanticspassed1.09 ms
scopes mentions by the mentioning Spec onlyregister recipe semanticspassed3.21 ms
reports malformed open questions without counting them: "one question"register recipe semanticspassed2.52 ms
reports malformed open questions without counting them: {}register recipe semanticspassed0.29 ms
reports malformed open questions without counting them: 42register recipe semanticspassed0.26 ms
reports malformed open questions without counting them: {"blocking":true}register recipe semanticspassed0.26 ms
reports malformed open questions without counting them: nullregister recipe semanticspassed0.21 ms
reports malformed open questions without counting them: ""register recipe semanticspassed0.23 ms
reports malformed open questions without counting them: {"question":"valid","blocking":"yes"}register recipe semanticspassed0.22 ms
reports malformed open questions without counting them: {"question":"valid","blocking":null}register recipe semanticspassed0.28 ms
reports malformed open questions without counting them: {"question":"valid"}register recipe semanticspassed0.34 ms
reports an off-grammar question key as malformed: {"question":"valid","key":"AggregateReach"}register recipe semanticspassed0.5 ms
reports an off-grammar question key as malformed: {"question":"valid","key":"aggregate-reach"}register recipe semanticspassed0.3 ms
reports an off-grammar question key as malformed: {"question":"valid","key":""}register recipe semanticspassed0.29 ms
reports an off-grammar question key as malformed: {"question":"valid","key":7}register recipe semanticspassed0.26 ms
reports an off-grammar question key as malformed: {"question":"valid","key":null}register recipe semanticspassed0.29 ms
reports an off-grammar question key as malformed: {"question":"valid","blocking":true}register recipe semanticspassed0.29 ms
searches whole tokens, coined keys, narrative and fence stepsregister recipe semanticspassed9.63 ms
lists every pinned declaration this corpus holdsregister recipe semanticspassed212.89 ms
reads spans of any run length and skips every entry that pins nothingregister recipe semanticspassed7.15 ms
resolves the catalog's addresses on this corpus as writtenaddress resolution and dependency cyclespassed75.33 ms
reports this corpus's dependency cycles as an independent reachability check finds themaddress resolution and dependency cyclespassed82.92 ms
reports the probe's one set and one self-dependent Spec, and nothing for a Spec that only reaches a setaddress resolution and dependency cyclespassed6.38 ms
reports a self-loop inside a larger set only with that setaddress resolution and dependency cyclespassed3.61 ms
walks targets in code-unit order, so of two tied shortest cycles the first target's is reportedaddress resolution and dependency cyclespassed2.43 ms
walks a chain of 10,000 Specs and one cycle of 5,000 without recursingaddress resolution and dependency cyclespassed211.99 ms
resolves an inherited property name only where the Spec authors it as a keyaddress resolution and dependency cyclespassed4.43 ms
resolves the design's probe addresses with one row and one reason eachaddress resolution and dependency cyclespassed3.17 ms
resolves a keyed question, refuses description in Design and UI, and keeps repeatsaddress resolution and dependency cyclespassed9.75 ms
registers a keyed question with its key and an unkeyed one with a null keyaddress resolution and dependency cyclespassed3.09 ms
audits a question address against the target's open question keysaddress resolution and dependency cyclespassed2.01 ms
addresses a keyed question's text and matches its key, never the key as a rowaddress resolution and dependency cyclespassed6.51 ms
returns one row per Studio member with four independent factsdesign references and the architecture taxonomypassed151.01 ms
lists a referencing unit beside the realizing units without conferring implementeddesign references and the architecture taxonomypassed177.28 ms
lists the reader beside each Studio member that depends on it, with its realizing unitsdesign references and the architecture taxonomypassed58.06 ms
derives builds-on from the member's relations without conferring a fact on itdesign references and the architecture taxonomypassed184.39 ms
returns the role, layer, and context taxonomy from the code units alonedesign references and the architecture taxonomypassed41.05 ms
counts references as edges apart from the units that carry themdesign references and the architecture taxonomypassed86.84 ms
creates each taxonomy bucket once, however many units share the valuedesign references and the architecture taxonomypassed76.57 ms
declares and checks only its indexed parameter names first: 1recipe parameters and the shipped recipe filespassed0.79 ms
declares and checks only its indexed parameter names first: 2recipe parameters and the shipped recipe filespassed0.48 ms
declares and checks only its indexed parameter names first: 3recipe parameters and the shipped recipe filespassed0.45 ms
declares and checks only its indexed parameter names first: 4recipe parameters and the shipped recipe filespassed0.46 ms
declares and checks only its indexed parameter names first: 5recipe parameters and the shipped recipe filespassed0.42 ms
declares and checks only its indexed parameter names first: 6recipe parameters and the shipped recipe filespassed0.4 ms
declares and checks only its indexed parameter names first: 7recipe parameters and the shipped recipe filespassed0.42 ms
declares and checks only its indexed parameter names first: 8recipe parameters and the shipped recipe filespassed0.41 ms
declares and checks only its indexed parameter names first: 9recipe parameters and the shipped recipe filespassed0.48 ms
declares and checks only its indexed parameter names first: 10recipe parameters and the shipped recipe filespassed0.37 ms
declares and checks only its indexed parameter names first: 11recipe parameters and the shipped recipe filespassed0.34 ms
declares and checks only its indexed parameter names first: 12recipe parameters and the shipped recipe filespassed0.44 ms
declares and checks only its indexed parameter names first: 13recipe parameters and the shipped recipe filespassed0.39 ms
declares and checks only its indexed parameter names first: 14recipe parameters and the shipped recipe filespassed0.42 ms
declares and checks only its indexed parameter names first: 15recipe parameters and the shipped recipe filespassed0.37 ms
declares and checks only its indexed parameter names first: 16recipe parameters and the shipped recipe filespassed0.37 ms
declares and checks only its indexed parameter names first: 17recipe parameters and the shipped recipe filespassed0.39 ms
declares and checks only its indexed parameter names first: 18recipe parameters and the shipped recipe filespassed0.34 ms
declares and checks only its indexed parameter names first: 19recipe parameters and the shipped recipe filespassed0.38 ms
declares and checks only its indexed parameter names first: 20recipe parameters and the shipped recipe filespassed0.35 ms
declares and checks only its indexed parameter names first: 21recipe parameters and the shipped recipe filespassed0.34 ms
declares and checks only its indexed parameter names first: 22recipe parameters and the shipped recipe filespassed0.39 ms
declares and checks only its indexed parameter names first: 23recipe parameters and the shipped recipe filespassed0.39 ms
declares and checks only its indexed parameter names first: 24recipe parameters and the shipped recipe filespassed0.39 ms
declares and checks only its indexed parameter names first: 25recipe parameters and the shipped recipe filespassed0.42 ms
declares and checks only its indexed parameter names first: 26recipe parameters and the shipped recipe filespassed0.4 ms
declares and checks only its indexed parameter names first: 27recipe parameters and the shipped recipe filespassed0.44 ms
declares and checks only its indexed parameter names first: 28recipe parameters and the shipped recipe filespassed0.4 ms
declares and checks only its indexed parameter names first: 29recipe parameters and the shipped recipe filespassed0.43 ms
declares and checks only its indexed parameter names first: 30recipe parameters and the shipped recipe filespassed0.4 ms
declares and checks only its indexed parameter names first: 31recipe parameters and the shipped recipe filespassed0.38 ms
declares and checks only its indexed parameter names first: 32recipe parameters and the shipped recipe filespassed0.39 ms
declares and checks only its indexed parameter names first: 33recipe parameters and the shipped recipe filespassed0.39 ms
declares and checks only its indexed parameter names first: 34recipe parameters and the shipped recipe filespassed0.42 ms
declares and checks only its indexed parameter names first: 35recipe parameters and the shipped recipe filespassed0.41 ms
declares and checks only its indexed parameter names first: 36recipe parameters and the shipped recipe filespassed0.41 ms
declares and checks only its indexed parameter names first: 37recipe parameters and the shipped recipe filespassed0.41 ms
declares and checks only its indexed parameter names first: 38recipe parameters and the shipped recipe filespassed0.42 ms
declares and checks only its indexed parameter names first: 39recipe parameters and the shipped recipe filespassed0.42 ms
declares and checks only its indexed parameter names first: 40recipe parameters and the shipped recipe filespassed0.42 ms
declares and checks only its indexed parameter names first: 41recipe parameters and the shipped recipe filespassed0.44 ms
declares and checks only its indexed parameter names first: 42recipe parameters and the shipped recipe filespassed0.54 ms
declares and checks only its indexed parameter names first: 43recipe parameters and the shipped recipe filespassed0.37 ms
declares and checks only its indexed parameter names first: 44recipe parameters and the shipped recipe filespassed0.44 ms
declares and checks only its indexed parameter names first: 45recipe parameters and the shipped recipe filespassed0.42 ms
declares and checks only its indexed parameter names first: 46recipe parameters and the shipped recipe filespassed0.44 ms
declares and checks only its indexed parameter names first: 47recipe parameters and the shipped recipe filespassed0.38 ms
declares and checks only its indexed parameter names first: 48recipe parameters and the shipped recipe filespassed0.41 ms
declares and checks only its indexed parameter names first: 49recipe parameters and the shipped recipe filespassed0.39 ms
declares and checks only its indexed parameter names first: 50recipe parameters and the shipped recipe filespassed0.39 ms
declares and checks only its indexed parameter names first: 51recipe parameters and the shipped recipe filespassed0.41 ms
declares and checks only its indexed parameter names first: 52recipe parameters and the shipped recipe filespassed0.4 ms
declares and checks only its indexed parameter names first: 53recipe parameters and the shipped recipe filespassed0.41 ms
declares and checks only its indexed parameter names first: 54recipe parameters and the shipped recipe filespassed0.47 ms
declares and checks only its indexed parameter names first: 55recipe parameters and the shipped recipe filespassed0.42 ms
returns only the unknown-name answer before reading recipe inputs: 1recipe parameters and the shipped recipe filespassed51.01 ms
returns only the unknown-name answer before reading recipe inputs: 2recipe parameters and the shipped recipe filespassed52.58 ms
returns only the unknown-name answer before reading recipe inputs: 3recipe parameters and the shipped recipe filespassed100.63 ms
returns only the unknown-name answer before reading recipe inputs: 4recipe parameters and the shipped recipe filespassed91.08 ms
returns only the unknown-name answer before reading recipe inputs: 5recipe parameters and the shipped recipe filespassed47.65 ms
returns only the unknown-name answer before reading recipe inputs: 6recipe parameters and the shipped recipe filespassed43.57 ms
returns only the unknown-name answer before reading recipe inputs: 7recipe parameters and the shipped recipe filespassed58.12 ms
returns only the unknown-name answer before reading recipe inputs: 8recipe parameters and the shipped recipe filespassed51.43 ms
returns only the unknown-name answer before reading recipe inputs: 9recipe parameters and the shipped recipe filespassed39.48 ms
returns only the unknown-name answer before reading recipe inputs: 10recipe parameters and the shipped recipe filespassed39.28 ms
returns only the unknown-name answer before reading recipe inputs: 11recipe parameters and the shipped recipe filespassed38.46 ms
returns only the unknown-name answer before reading recipe inputs: 12recipe parameters and the shipped recipe filespassed35.14 ms
returns only the unknown-name answer before reading recipe inputs: 13recipe parameters and the shipped recipe filespassed30.1 ms
returns only the unknown-name answer before reading recipe inputs: 14recipe parameters and the shipped recipe filespassed24.97 ms
returns only the unknown-name answer before reading recipe inputs: 15recipe parameters and the shipped recipe filespassed49.06 ms
returns only the unknown-name answer before reading recipe inputs: 16recipe parameters and the shipped recipe filespassed34.98 ms
returns only the unknown-name answer before reading recipe inputs: 17recipe parameters and the shipped recipe filespassed40.63 ms
returns only the unknown-name answer before reading recipe inputs: 18recipe parameters and the shipped recipe filespassed47.48 ms
returns only the unknown-name answer before reading recipe inputs: 19recipe parameters and the shipped recipe filespassed32.12 ms
returns only the unknown-name answer before reading recipe inputs: 20recipe parameters and the shipped recipe filespassed29.38 ms
returns only the unknown-name answer before reading recipe inputs: 21recipe parameters and the shipped recipe filespassed35.4 ms
returns only the unknown-name answer before reading recipe inputs: 22recipe parameters and the shipped recipe filespassed35.22 ms
returns only the unknown-name answer before reading recipe inputs: 23recipe parameters and the shipped recipe filespassed30.44 ms
returns only the unknown-name answer before reading recipe inputs: 24recipe parameters and the shipped recipe filespassed44.73 ms
returns only the unknown-name answer before reading recipe inputs: 25recipe parameters and the shipped recipe filespassed35.84 ms
returns only the unknown-name answer before reading recipe inputs: 26recipe parameters and the shipped recipe filespassed35.92 ms
returns only the unknown-name answer before reading recipe inputs: 27recipe parameters and the shipped recipe filespassed37.36 ms
returns only the unknown-name answer before reading recipe inputs: 28recipe parameters and the shipped recipe filespassed34.43 ms
returns only the unknown-name answer before reading recipe inputs: 29recipe parameters and the shipped recipe filespassed37.29 ms
returns only the unknown-name answer before reading recipe inputs: 30recipe parameters and the shipped recipe filespassed34.53 ms
returns only the unknown-name answer before reading recipe inputs: 31recipe parameters and the shipped recipe filespassed37.03 ms
returns only the unknown-name answer before reading recipe inputs: 32recipe parameters and the shipped recipe filespassed36.83 ms
returns only the unknown-name answer before reading recipe inputs: 33recipe parameters and the shipped recipe filespassed32.3 ms
returns only the unknown-name answer before reading recipe inputs: 34recipe parameters and the shipped recipe filespassed35.47 ms
returns only the unknown-name answer before reading recipe inputs: 35recipe parameters and the shipped recipe filespassed29.61 ms
returns only the unknown-name answer before reading recipe inputs: 36recipe parameters and the shipped recipe filespassed24.05 ms
returns only the unknown-name answer before reading recipe inputs: 37recipe parameters and the shipped recipe filespassed26.88 ms
returns only the unknown-name answer before reading recipe inputs: 38recipe parameters and the shipped recipe filespassed27.56 ms
returns only the unknown-name answer before reading recipe inputs: 39recipe parameters and the shipped recipe filespassed36.86 ms
returns only the unknown-name answer before reading recipe inputs: 40recipe parameters and the shipped recipe filespassed35.16 ms
returns only the unknown-name answer before reading recipe inputs: 41recipe parameters and the shipped recipe filespassed37.01 ms
returns only the unknown-name answer before reading recipe inputs: 42recipe parameters and the shipped recipe filespassed35.48 ms
returns only the unknown-name answer before reading recipe inputs: 43recipe parameters and the shipped recipe filespassed37.25 ms
returns only the unknown-name answer before reading recipe inputs: 44recipe parameters and the shipped recipe filespassed33.94 ms
returns only the unknown-name answer before reading recipe inputs: 45recipe parameters and the shipped recipe filespassed36.1 ms
returns only the unknown-name answer before reading recipe inputs: 46recipe parameters and the shipped recipe filespassed35.61 ms
returns only the unknown-name answer before reading recipe inputs: 47recipe parameters and the shipped recipe filespassed36.31 ms
returns only the unknown-name answer before reading recipe inputs: 48recipe parameters and the shipped recipe filespassed37.58 ms
returns only the unknown-name answer before reading recipe inputs: 49recipe parameters and the shipped recipe filespassed35.48 ms
returns only the unknown-name answer before reading recipe inputs: 50recipe parameters and the shipped recipe filespassed53.29 ms
returns only the unknown-name answer before reading recipe inputs: 51recipe parameters and the shipped recipe filespassed27.25 ms
returns only the unknown-name answer before reading recipe inputs: 52recipe parameters and the shipped recipe filespassed36.52 ms
returns only the unknown-name answer before reading recipe inputs: 53recipe parameters and the shipped recipe filespassed38.97 ms
returns only the unknown-name answer before reading recipe inputs: 54recipe parameters and the shipped recipe filespassed36.76 ms
returns only the unknown-name answer before reading recipe inputs: 55recipe parameters and the shipped recipe filespassed36.94 ms
diagnoses wrong subject names, mixed known names and ordered unknown names through shipped bodiesrecipe parameters and the shipped recipe filespassed104.45 ms
reads and names each parameter, with a fallback only when the contract supplies onerecipe parameters and the shipped recipe filespassed8.38 ms
ships every catalog body as dist/recipes/NN-slug.js, byte for byterecipe parameters and the shipped recipe filespassed8.03 ms
runs every shipped file, read whole, to the answer its catalog body givesrecipe parameters and the shipped recipe filespassed6717.44 ms
refuses a catalog whose bodies and headings do not pair, rather than guess a file namerecipe parameters and the shipped recipe filespassed1.71 ms
reads a CRLF catalog as its LF bodies, and refuses a catalog with no recipe before publishingrecipe parameters and the shipped recipe filespassed17.69 ms
removes only completed recipe files the catalog no longer owes, never another run's temporary filerecipe parameters and the shipped recipe filespassed0.66 ms
passes recipe 4 its changed files from a file named with @PATHrecipe parameters and the shipped recipe filespassed44.98 ms
resolves the addresses recipe 25 receives as datarecipe parameters and the shipped recipe filespassed58.78 ms
reads the Pack the Pack recipes review from params.packrecipe parameters and the shipped recipe filespassed205.22 ms
returns the Pack design of every corpus Pack as the raw graph states itdesign recipespassed749.92 ms
returns the probe Pack's design exactly, member by memberdesign recipespassed9.73 ms
reaches every Spec resting on the corpus sample, by a shortest path of real edgesdesign recipespassed342.59 ms
walks a dependency chain inbound only, once per Spec, and keeps a reference apartdesign recipespassed1.76 ms
registers every corpus decision with its supersession, subjects and keyed questionsdesign recipespassed71.82 ms
registers a supersedes pair both ways and a decision that shapes nothingdesign recipespassed1.4 ms
carries a relation's reason beside the relation in recipes 3, 19, 21 and 31design recipespassed1.56 ms
registers narrowing decisions both ways and excludes refinement by other kindsdesign recipespassed0.55 ms
keeps the decoder in reader without adding crossings against the lawful notation alternativedesign recipespassed125.17 ms
reports the corpus's architecture crossings as the raw edges state themdesign recipespassed70.26 ms
names a crossing of two contexts and of two layers, and skips what cannot crossdesign recipespassed0.79 ms
resolves every keyed corpus entry to its value and the line the location table recordsentry lines in entry search and address resolutionpassed179.39 ms
gives each corpus entry-search row the line of a located entry and null otherwiseentry lines in entry search and address resolutionpassed173.89 ms
never gives a nested entry the line of a literal top-level key its path spellsentry lines in entry search and address resolutionpassed3.85 ms
counts a verifying Spec of another kind as a verifier, never as an example, in the Pack designentry lines in entry search and address resolutionpassed2.27 ms
gives a string-form open question the line its question[n] row records, as the object formentry lines in entry search and address resolutionpassed2.46 ms
counts equal layers and contexts between distinct components even without crossingsanswers that fitpassed0.36 ms
returns guarantee entries and complete unit and verifier locations from contextanswers that fitpassed4.73 ms
reports directions relative to an impacted Packanswers that fitpassed0.74 ms
indexes exactly the present recipes with names, parameters and usesanswers that fitpassed3.7 ms
runs a shipped body wrapped inside a caller's filteranswers that fitpassed98.75 ms
keeps impact totals and puts both edge directions in the summaryanswers that fitpassed2.43 ms
keeps the reader's Pack value in summary, full and selected-member answersanswers that fitpassed11.46 ms
reports both next rungs when the stated rung is below the flooranswers that fitpassed0.56 ms
reports no next rung at readyanswers that fitpassed37.39 ms
reports gap exemptions and every omitted warning beyond the first 25answers that fitpassed1.41 ms
lists only defined unimplemented designs and keeps exclusions and referencesanswers that fitpassed0.88 ms
registers fields and counts deferrals apart from design holdsauthoring grammar recipespassed3.39 ms
lists intended mentions apart and preserves the validator's warningsauthoring grammar recipespassed8.29 ms
matches rule keys beside their text without searching the derived mapauthoring grammar recipespassed2.45 ms
locates unkeyed rule text and question field textauthoring grammar recipespassed3.44 ms
resolves rule addresses and preserves every parsed part of a missauthoring grammar recipespassed2.85 ms
counts rule coverage from bound examples and reports unbound intent beside itauthoring grammar recipespassed4.82 ms
reports missing rule-coverage scopes and accepts a scope with no rulesauthoring grammar recipespassed2.94 ms
runs the catalog body in the evaluator without a module loaderentry citations recipepassed0.74 ms
orders a declaration's citing files and lines independently of input orderentry citations recipepassed0.54 ms
joins declarations and other cited entries, including uncited declarationsentry citations recipepassed0.69 ms
includes absent Specs and malformed tokens only in the corpus unresolved listentry citations recipepassed1.07 ms
returns diagnostics without findings for {"pack":"pack:missing"}entry citations recipepassed0.69 ms
returns diagnostics without findings for {"specs":["spec:missing"]}entry citations recipepassed0.42 ms
returns diagnostics without findings for {"specs":"spec:probe.cited"}entry citations recipepassed0.32 ms
returns diagnostics without findings for {"pack":"pack:probe.citations","specs":[]}entry citations recipepassed0.36 ms
returns diagnostics without findings for {"severity":"fatal"}entry citations recipepassed0.34 ms
returns diagnostics without findings for {"severity":null}entry citations recipepassed0.75 ms
reads an absent table as empty, and accepts an empty Spec scopeentry citations recipepassed0.64 ms
adds recorded component fields, references, member roles and exact crossing-use countsStudio architecture and example-space recipe additionspassed97.49 ms
runs shipped recipe 44 over every decoded space and refuses bad scopesStudio architecture and example-space recipe additionspassed407.84 ms
runs recipe 45 as shipped and reports missing and malformed CTRF metadatanot recordedpassed535.5 ms
recipe 49 renders the panel memo from its catalog body and refuses a malformed documentnot recordedpassed69.85 ms
reports text-preserving rule and flow key changes apart from rewordingnot recordedpassed6.76 ms
preserves a removed keyed rule address beside new unkeyed textnot recordedpassed1.93 ms
preserves a removed keyed flow address beside new unkeyed textnot recordedpassed1.67 ms
distinguishes removed unkeyed rule base positions from head positionsnot recordedpassed2.38 ms
distinguishes removed unkeyed flow base positions from head positionsnot recordedpassed1.8 ms
retains every diamond edge and intermediate node while counting each descendant oncethe capability map recipepassed0.87 ms
returns summary/full parity with explicit omissions for scope {}the capability map recipepassed1.4 ms
returns summary/full parity with explicit omissions for scope {"epic":"spec:probe.epic"}the capability map recipepassed1 ms
normalizes prose and unflagged questions while preserving authored indicesthe capability map recipepassed0.35 ms
retains null titles in serialized node and epic rows when a title degradesthe capability map recipepassed0.6 ms
reports a self-refining epic as a cycle without making it its own parent epicthe capability map recipepassed0.3 ms
uses the outside unreached parent as root rather than its child cycle groupthe capability map recipepassed0.42 ms
selects an epic of kind behavior without changing its kindthe capability map recipepassed0.4 ms
selects an epic of kind workflow without changing its kindthe capability map recipepassed0.24 ms
selects an epic of kind example without changing its kindthe capability map recipepassed0.22 ms
selects an epic of kind rule without changing its kindthe capability map recipepassed0.2 ms
selects an epic of kind constraint without changing its kindthe capability map recipepassed0.18 ms
selects an epic of kind model without changing its kindthe capability map recipepassed0.18 ms
selects an epic of kind decision without changing its kindthe capability map recipepassed0.19 ms
selects an epic of kind contract without changing its kindthe capability map recipepassed0.2 ms
reads node evidence and ordered questions directly, including examples and decisions as parentsthe capability map recipepassed0.66 ms
represents a missing floor as none and keeps the epic's evidence outside its rollupthe capability map recipepassed0.42 ms
counts stated rungs separately from reached floors without lending a bound example's facts to its epicthe capability map recipepassed0.89 ms
keeps nested and overlapping memberships and outside parents when selecting one epicthe capability map recipepassed1.07 ms
traverses only declared refinement and never infers ancestry from other graph structurethe capability map recipepassed0.56 ms
reports cycles, self-links and unresolved or non-Spec endpoints separately from parameter failuresthe capability map recipepassed0.65 ms
limits damage to edges touching a selected epic scope and terminates reached cyclesthe capability map recipepassed0.44 ms
keeps overlapping unreached root scopes unique and exposes an empty corpusthe capability map recipepassed0.52 ms
refuses invalid parameters without a map: { epic: null }the capability map recipepassed0.24 ms
refuses invalid parameters without a map: { epic: 1 }the capability map recipepassed0.14 ms
refuses invalid parameters without a map: { epic: [] }the capability map recipepassed0.1 ms
refuses invalid parameters without a map: { epic: 'spec:probe.absent' }the capability map recipepassed0.09 ms
refuses invalid parameters without a map: { epic: 'spec:probe.plain' }the capability map recipepassed0.09 ms
refuses invalid parameters without a map: { epic: 'impl:probe.non-spec' }the capability map recipepassed0.11 ms
refuses invalid parameters without a map: { detail: 'true' }the capability map recipepassed0.09 ms
refuses invalid parameters without a map: { detail: 1 }the capability map recipepassed0.09 ms
refuses invalid parameters without a map: { detail: null }the capability map recipepassed0.09 ms
refuses invalid parameters without a map: { epic: 1, detail: 'x' }the capability map recipepassed0.16 ms
checks unknown names before known valuesthe capability map recipepassed0.15 ms
answers deterministically in code-unit id order even when graph arrays are reversedthe capability map recipepassed1.41 ms
reaches every Spec from the intended epic owners while preserving kinds and overlapping refinementthe Protocol's capability epicspassed196.63 ms
keeps refinement and dependency from spec:extraction.build-pipeline to spec:extraction.derive-graphthe Protocol's capability epicspassed3.01 ms
keeps refinement and dependency from spec:validation.corpus-rules to spec:consumers.agent-surfacethe Protocol's capability epicspassed4.22 ms
keeps refinement and dependency from spec:validation.architecture-constraints to spec:validation.corpus-rulesthe Protocol's capability epicspassed3.84 ms
keeps refinement and dependency from spec:validation.external-registers to spec:validation.corpus-rulesthe Protocol's capability epicspassed1.69 ms
keeps every ready statement at the ready floor and leaves the drift alarm emptythe Protocol's capability epicspassed63.69 ms
runs the catalog body over the arc Pack through the CLI and keeps its summary totalsthe shipped design slicepassed322.71 ms
runs the roadmap and its memo from the catalog over a named Packnot recordedpassed372.97 ms
pins the adopter roadmap and its forward memo over the worked examplenot recordedpassed38.84 ms

External run evidence from test/roadmap-examples.test.ts

Test anchors: test:protocol.roadmap.blocking-part, test:protocol.roadmap.buildable-part, test:protocol.roadmap.built-work, test:protocol.roadmap.design-part, test:protocol.roadmap.drifting-part, test:protocol.roadmap.missing-evidence, test:protocol.roadmap.outside-parent, test:protocol.roadmap.statement-order, test:protocol.roadmap.statement-part. Specs verified by those bindings: spec:consumers.roadmap, 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.

NameSuiteResultDuration
rejects a statement-order point with a different bound statenot recordedpassed2.77 ms
checks the bound work against the observed scopenot recordedpassed48.37 ms
executes the bound example against a fresh worldBuilt work stays on the roadmap (spec:consumers.roadmap.built-work)passed10.74 ms
executes the bound example against a fresh worldA ready unbound part needs building (spec:consumers.roadmap.buildable-part)passed7.21 ms
executes the bound example against a fresh worldA complete part waits for a statement (spec:consumers.roadmap.statement-part)passed9.23 ms
executes the bound example against a fresh worldAn unfinished part needs design (spec:consumers.roadmap.design-part)passed9.36 ms
executes the bound example against a fresh worldA binding below ready remains drift (spec:consumers.roadmap.drifting-part)passed13.88 ms
executes the bound example against a fresh worldA descendant without evidence names its holding clause (spec:consumers.roadmap.missing-evidence)passed8.83 ms
executes the bound example against a fresh worldA descendant question holds the entry for design (spec:consumers.roadmap.blocking-part)passed6.21 ms
executes the bound example against a fresh worldA descendant names its outside parent (spec:consumers.roadmap.outside-parent)passed9.88 ms
executes the bound example against a fresh worldWaiting statements keep dependency order against roadmap places (spec:consumers.roadmap.statement-order)passed4.79 ms

External run evidence from test/roadmap-priority.test.ts

Test anchors: test:protocol.roadmap-priority. Specs verified by those bindings: spec:carrier.markdown-pack-authoring, spec:consumers.design-diff, spec:consumers.spec-studio.diff-page, spec:consumers.spec-studio.pack-page, spec:extraction.pack-member-order, spec:model.pack-aggregate.

NameSuiteResultDuration
derives equal Markdown and TypeScript Pack nodes and edges, serializes order last, and exposes it through the readerroadmap priority manifestpassed47.3 ms
refuses the invalid Markdown value readingroadmap priority manifestpassed1.58 ms
refuses the invalid Markdown value arbitraryroadmap priority manifestpassed1.33 ms
refuses the invalid Markdown value trueroadmap priority manifestpassed1.28 ms
refuses the invalid Markdown value nullroadmap priority manifestpassed1.65 ms
refuses the invalid Markdown value []roadmap priority manifestpassed1.21 ms
refuses the invalid Markdown value {}roadmap priority manifestpassed1.24 ms
refuses the invalid TypeScript value "reading"roadmap priority manifestpassed3.6 ms
refuses the invalid TypeScript value "arbitrary"roadmap priority manifestpassed2.76 ms
refuses the invalid TypeScript value trueroadmap priority manifestpassed3.43 ms
refuses the invalid TypeScript value nullroadmap priority manifestpassed3.5 ms
refuses the invalid TypeScript value []roadmap priority manifestpassed2.87 ms
refuses the invalid TypeScript value {}roadmap priority manifestpassed3.83 ms
refuses the invalid TypeScript value undefinedroadmap priority manifestpassed2.78 ms
refuses the invalid TypeScript value chosenOrderroadmap priority manifestpassed3.35 ms
names a removed Pack by its order meaning (priority true)roadmap priority design diffpassed14.29 ms
names a removed Pack by its order meaning (priority false)roadmap priority design diffpassed12.82 ms
names an added roadmap and preserves manifest order in its member deltaroadmap priority design diffpassed17.33 ms
labels Pack membership by its order meaning (priority true)roadmap priority design diffpassed8.11 ms
labels Pack membership by its order meaning (priority false)roadmap priority design diffpassed5.46 ms
states order values when a change is not a known roadmap transitionroadmap priority design diffpassed4.7 ms
documents the order comparison fields, default and diagnostic in the recipe contractroadmap priority design diffpassed1.09 ms
compares a priority transition to true without a membership editroadmap priority design diffpassed3.05 ms
compares a priority transition to false without a membership editroadmap priority design diffpassed2.22 ms
reads an absent order as reading order in a base schema that predates the fieldroadmap priority design diffpassed7.31 ms
marks the absent side of an added or removed roadmap as null (true)roadmap priority design diffpassed2.44 ms
marks the absent side of an added or removed roadmap as null (false)roadmap priority design diffpassed2.06 ms
diagnoses an unknown order at the base without reporting an order changeroadmap priority design diffpassed1.69 ms
diagnoses an unknown order at the head without reporting an order changeroadmap priority design diffpassed1.71 ms
still compares membership and member order when the base order is unknownroadmap priority design diffpassed2.58 ms
still compares membership and member order when the head order is unknownroadmap priority design diffpassed6.34 ms
keeps an order-only change in the selected Pack's comparison scoperoadmap priority design diffpassed3.01 ms
shows no roadmap transition for a membership-only change (priority true)roadmap priority design diffpassed7.93 ms
shows no roadmap transition for a membership-only change (priority false)roadmap priority design diffpassed6.63 ms
shows the roadmap transition to true on the diff and Pack pagesroadmap priority design diffpassed8.43 ms
shows the roadmap transition to false on the diff and Pack pagesroadmap priority design diffpassed6.96 ms

External run evidence from test/roadmap.test.ts

Test anchors: test:protocol.roadmap-memo-recipe, test:protocol.roadmap-recipe. Specs verified by those bindings: spec:consumers.roadmap, spec:consumers.roadmap.memo.

NameSuiteResultDuration
keeps manifest places and reports an unresolved middle memberthe roadmap recipespassed45.8 ms
escapes HTML outside code spans in memo titles and framingthe roadmap recipespassed5.87 ms
reads the work's need: 'is ready and implemented throughout'the roadmap recipespassed30.41 ms
reads the work's need: 'has one part ready and not implemented'the roadmap recipespassed6.44 ms
reads the work's need: 'has one part below ready whose floor …'the roadmap recipespassed6.38 ms
reads the work's need: 'has one part below ready whose floor …'the roadmap recipespassed13.02 ms
reads the work's need: 'has one part implemented below ready'the roadmap recipespassed7.11 ms
reads the work's need: 'has a ready root and one descendant w…'the roadmap recipespassed5.8 ms
reads the work's need: 'has a ready root and one descendant h…'the roadmap recipespassed7.15 ms
reads the work's need: 'has one descendant that also refines …'the roadmap recipespassed5.43 ms
selects priority Packs in id order and reads an explicitly named ordinary Packthe roadmap recipespassed20.83 ms
names holding parts and a descendant's outside parentthe roadmap recipespassed24.23 ms
renders each unbuilt dependency once when two relations reach itthe roadmap recipespassed10.94 ms
lists sorted incoming relations, Pack memberships and dependency placesthe roadmap recipespassed10.09 ms
includes keyed and unkeyed blocking questions on shaping decisionsthe roadmap recipespassed5.85 ms
finds earlier statements through a shaping decision's own waiting statementthe roadmap recipespassed5.01 ms
ends the intent line with a full stop: A purpose?the roadmap recipespassed4.1 ms
ends the intent line with a full stop: A purpose!the roadmap recipespassed3.66 ms
ends the intent line with a full stop: A purposethe roadmap recipespassed3.37 ms
ends the intent line with a full stop: A purpose.the roadmap recipespassed3.38 ms
keeps queue order across places, including earlier statements inside, elsewhere and outsidethe roadmap recipespassed10.27 ms
deduplicates shared descendants, preserves places, and lists decision entries apartthe roadmap recipespassed5.85 ms
lists every unassigned question apart, including unkeyed and shared shaping decisionsthe roadmap recipespassed11.4 ms
pins memo bytes, intent fallback, line breaks and table escapingthe roadmap recipespassed12.07 ms
pins every populated memo section byte for bytethe roadmap recipespassed34.44 ms
pins empty design and build sections byte for bytethe roadmap recipespassed3.37 ms
reads purpose from intent and counts distinct waiting Specs and buildable partsthe roadmap recipespassed20.6 ms

External run evidence from test/self-hosting-bundle-parts.test.ts

Test anchors: test:protocol.context-bundle.oversized-member-named, test:protocol.context-bundle.parts-cover-the-pack. Specs verified by those bindings: spec:consumers.context-bundle, spec:consumers.context-bundle.oversized-member-named, spec:consumers.context-bundle.parts-cover-the-pack.

NameSuiteResultDuration
executes the bound example against a fresh worldA Pack too large for one bundle reads whole in parts (spec:consumers.context-bundle.parts-cover-the-pack)passed42.45 ms
executes the bound example against a fresh worldA member larger than the budget is named, and no part is returned (spec:consumers.context-bundle.oversized-member-named)passed10.24 ms
diagnoses invalid part 0bundle part budgetspassed4.27 ms
diagnoses invalid part -1bundle part budgetspassed3.8 ms
diagnoses invalid part 1.5bundle part budgetspassed5.68 ms
diagnoses invalid part nullbundle part budgetspassed2.44 ms
diagnoses invalid part "1"bundle part budgetspassed5.6 ms
diagnoses invalid part truebundle part budgetspassed2.24 ms
diagnoses a part beyond the final countbundle part budgetspassed3.51 ms
accepts an exact whole-part budget and cuts only when that item cannot fitbundle part budgetspassed13.29 ms
measures two-digit part counts and takes the longest whole run at every boundarybundle part budgetspassed67.34 ms
repartitions at the first common cut stage instead of mixing cut and whole membersbundle part budgetspassed5.73 ms
preserves pinned declarations until addresses are allowed, and never returns a partial partbundle part budgetspassed9.62 ms
gives an empty scope one complete part when it fitsbundle part budgetspassed3.68 ms
names only the part header when the repeated Pack framing alone exceeds the budgetbundle part budgetspassed8.47 ms
names an oversized boundary when its outside neighbour ids exceed the budget after every cutbundle part budgetspassed34.08 ms

External run evidence from test/self-hosting-carrier-gherkin.test.ts

Test anchors: test:protocol.gherkin-authoring.authored-fact-refused, test:protocol.gherkin-authoring.contract-parity, test:protocol.gherkin-authoring.description-location-refused, test:protocol.gherkin-authoring.duplicate-surface-refused, test:protocol.gherkin-authoring.example-space-extraction, test:protocol.gherkin-authoring.malformed-relation-refused, test:protocol.gherkin-authoring.missing-id-refused, test:protocol.gherkin-authoring.multi-finding-bounded, test:protocol.gherkin-authoring.parent-child-extraction, test:protocol.gherkin-authoring.step-less-scenario-refused, test:protocol.gherkin-authoring.unbound-ready-refused, test:protocol.gherkin-authoring.unknown-tag-refused, test:protocol.gherkin-authoring.unsupported-construct-refused. Specs verified by those bindings: spec:carrier.gherkin-authoring, spec:carrier.gherkin-authoring.authored-fact-refused, spec:carrier.gherkin-authoring.contract-parity, spec:carrier.gherkin-authoring.description-location-refused, spec:carrier.gherkin-authoring.duplicate-surface-refused, spec:carrier.gherkin-authoring.example-space-extraction, spec:carrier.gherkin-authoring.malformed-relation-refused, spec:carrier.gherkin-authoring.missing-id-refused, spec:carrier.gherkin-authoring.multi-finding-bounded, spec:carrier.gherkin-authoring.parent-child-extraction, spec:carrier.gherkin-authoring.step-less-scenario-refused, spec:carrier.gherkin-authoring.unbound-ready-refused, spec:carrier.gherkin-authoring.unknown-tag-refused, spec:carrier.gherkin-authoring.unsupported-construct-refused, spec:validation.kind-evidence.

NameSuiteResultDuration
executes the bound example against a fresh worldAn authored delivery fact lookalike is refused (spec:carrier.gherkin-authoring.authored-fact-refused)passed8.77 ms
executes the bound example against a fresh worldMarkdown and Gherkin twins derive equal graphs and contracts (spec:carrier.gherkin-authoring.contract-parity)passed25.13 ms
executes the bound example against a fresh worldDuplicate Markdown and Gherkin surfaces are both excluded (spec:carrier.gherkin-authoring.duplicate-surface-refused)passed2.76 ms
executes the bound example against a fresh worldThe pseudo-scenario supplies example space without a node (spec:carrier.gherkin-authoring.example-space-extraction)passed1.66 ms
executes the bound example against a fresh worldA malformed relation target is refused (spec:carrier.gherkin-authoring.malformed-relation-refused)passed1.32 ms
executes the bound example against a fresh worldA Feature without identity is refused (spec:carrier.gherkin-authoring.missing-id-refused)passed1.16 ms
executes the bound example against a fresh worldA Feature and Scenario enter the graph as parent and child (spec:carrier.gherkin-authoring.parent-child-extraction)passed1.84 ms
executes the bound example against a fresh worldA Gherkin example with an unbound used slot fails its stated readiness floor (spec:carrier.gherkin-authoring.unbound-ready-refused)passed5.39 ms
executes the bound example against a fresh worldA graph-aware tag near miss is refused (spec:carrier.gherkin-authoring.unknown-tag-refused)passed2 ms
executes the bound example against a fresh worldA Scenario Outline is refused (spec:carrier.gherkin-authoring.unsupported-construct-refused)passed1.89 ms
executes the bound example against a fresh worldA bad description key reports its physical source line (spec:carrier.gherkin-authoring.description-location-refused)passed1.28 ms
executes the bound example against a fresh worldA step-less Scenario is refused at its Scenario line (spec:carrier.gherkin-authoring.step-less-scenario-refused)passed1.05 ms
executes the bound example against a fresh worldMultiple findings exclude one carrier and keep a healthy sibling (spec:carrier.gherkin-authoring.multi-finding-bounded)passed2.56 ms

External run evidence from test/self-hosting-carrier.test.ts

Test anchors: test:protocol.markdown-parser.bounded-parity, test:protocol.open-question-fields.dropped-list-warns, test:protocol.slot-notation.one-literal-binding, test:protocol.slot-notation.refused-guess, test:protocol.slot-notation.typed-declaration. Specs verified by those bindings: spec:carrier.markdown-parser, spec:carrier.markdown-parser.bounded-parity, spec:carrier.slot-notation, spec:carrier.slot-notation.one-literal-binding, spec:carrier.slot-notation.refused-guess, spec:carrier.slot-notation.typed-declaration, spec:model.open-question-fields, spec:model.open-question-fields.dropped-list-warns.

NameSuiteResultDuration
executes the bound example against a fresh worldOne finding class is shared while the carriers' outcomes stay their own (spec:carrier.markdown-parser.bounded-parity)passed43.71 ms
executes the bound example against a fresh worldA typed declaration normalizes to the skeleton its binding shares (spec:carrier.slot-notation.typed-declaration)passed1.52 ms
executes the bound example against a fresh worldA stray brace stays prose while an unusable group stays a named slot (spec:carrier.slot-notation.refused-guess)passed0.45 ms
executes the bound example against a fresh worldA one-literal group in a vocabulary is a binding that declares nothing (spec:carrier.slot-notation.one-literal-binding)passed2.74 ms
executes the bound example against a fresh worldA TypeScript question list that cannot be read drops whole with a warning (spec:model.open-question-fields.dropped-list-warns)passed11.66 ms
drops the whole question list for a non-static question textnot recordedpassed6.04 ms
drops the whole question list for a non-static blocking flagnot recordedpassed6.76 ms
drops the whole question list for a spread in the listnot recordedpassed8.19 ms

External run evidence from test/self-hosting-command-line.test.ts

Test anchors: test:protocol.command-line.generate-check-failure, test:protocol.command-line.generate-writes-every-root, test:protocol.command-line.verb-help-touches-nothing. Specs verified by those bindings: spec:consumers.command-line, spec:consumers.command-line.generate-check-failure, spec:consumers.command-line.generate-writes-every-root, spec:consumers.command-line.verb-help-touches-nothing.

NameSuiteResultDuration
executes the bound example against a fresh worldOne run of sdp generate leaves all five roots current (spec:consumers.command-line.generate-writes-every-root)passed101.27 ms
executes the bound example against a fresh worldA root that fails its check is removed while sdp generate writes the others (spec:consumers.command-line.generate-check-failure)passed68 ms
executes the bound example against a fresh worldA publisher's --help prints its help and touches no root (spec:consumers.command-line.verb-help-touches-nothing)passed1.61 ms

External run evidence from test/self-hosting-consumers.test.ts

Test anchors: test:protocol.agent-surface.demand-map-entries, test:protocol.agent-surface.scripted-context-body, test:protocol.reader.changeset-entry, test:protocol.reader.concept-entry, test:protocol.reader.file-entry. Specs verified by those bindings: spec:consumers.agent-surface, spec:consumers.agent-surface.demand-map-entries, spec:consumers.agent-surface.scripted-context-body, spec:consumers.reader, spec:consumers.reader.changeset-entry, spec:consumers.reader.concept-entry, spec:consumers.reader.file-entry.

NameSuiteResultDuration
executes the bound example against a fresh worldA scripted body returns claim-decoded context, pre-shaped by the body (spec:consumers.agent-surface.scripted-context-body)passed55.03 ms
executes the bound example against a fresh worldOne body reaches every entry point the demand map names, and no symbol entry (spec:consumers.agent-surface.demand-map-entries)passed23.29 ms
executes the bound example against a fresh worldA concept recorded only inside a Spec's sections is still reached, and the field is named (spec:consumers.reader.concept-entry)passed12.65 ms
executes the bound example against a fresh worldA source file reaches the Spec its binding names, and a carrier reaches its own Spec (spec:consumers.reader.file-entry)passed11.95 ms
executes the bound example against a fresh worldA changeset names what it reaches, why, and what it cannot see (spec:consumers.reader.changeset-entry)passed18.11 ms

External run evidence from test/self-hosting-corpus-checks.test.ts

Test anchors: test:protocol.model.planned-architecture.differing-layer-and-uses, test:protocol.model.planned-architecture.matching-design, test:protocol.model.planned-architecture.unrealized-design, test:protocol.validation.architecture-constraints.forbidden-layer-pair, test:protocol.validation.architecture-constraints.isolated-context-as-rule, test:protocol.validation.architecture-constraints.unstated-layer-unclassified, test:protocol.validation.corpus-rules.copies-contain-changes, test:protocol.validation.corpus-rules.error-finding-fails, test:protocol.validation.corpus-rules.malformed-finding-fails, test:protocol.validation.corpus-rules.warning-finding-informs. Specs verified by those bindings: spec:model.planned-architecture, spec:model.planned-architecture.differing-layer-and-uses, spec:model.planned-architecture.matching-design, spec:model.planned-architecture.unrealized-design, spec:validation.architecture-constraints, spec:validation.architecture-constraints.forbidden-layer-pair, spec:validation.architecture-constraints.isolated-context-as-rule, spec:validation.architecture-constraints.unstated-layer-unclassified, spec:validation.corpus-rules, spec:validation.corpus-rules.copies-contain-changes, spec:validation.corpus-rules.error-finding-fails, spec:validation.corpus-rules.malformed-finding-fails, spec:validation.corpus-rules.warning-finding-informs.

NameSuiteResultDuration
executes the bound example against a fresh worldA rules file that empties its graph leaves the next file's graph whole (spec:validation.corpus-rules.copies-contain-changes)passed21.24 ms
executes the bound example against a fresh worldAn error from a corpus rule fails validation and leaves the Protocol's line alone (spec:validation.corpus-rules.error-finding-fails)passed4.29 ms
executes the bound example against a fresh worldA finding with no subject fails its rules file (spec:validation.corpus-rules.malformed-finding-fails)passed3.72 ms
executes the bound example against a fresh worldA warning from a corpus rule informs and passes (spec:validation.corpus-rules.warning-finding-informs)passed3.36 ms
executes the bound example against a fresh worldA domain member that uses an infrastructure member breaks a forbidden pair (spec:validation.architecture-constraints.forbidden-layer-pair)passed16.29 ms
executes the bound example against a fresh worldThe walk named as a rules file fails validation on an isolation breach (spec:validation.architecture-constraints.isolated-context-as-rule)passed3.85 ms
executes the bound example against a fresh worldA component with no layer leaves its edge unclassified (spec:validation.architecture-constraints.unstated-layer-unclassified)passed3.28 ms
executes the bound example against a fresh worldA realized component that differs from its design gives one row per field (spec:model.planned-architecture.differing-layer-and-uses)passed10.85 ms
executes the bound example against a fresh worldA realized component that matches its design gives no row (spec:model.planned-architecture.matching-design)passed5.28 ms
executes the bound example against a fresh worldA component design no anchor satisfies is listed as unrealized (spec:model.planned-architecture.unrealized-design)passed4.57 ms

External run evidence from test/self-hosting-design-slice.test.ts

Test anchors: test:protocol.design-slice, test:protocol.design-slice.chain, test:protocol.design-slice.component-absent, test:protocol.design-slice.component-differing, test:protocol.design-slice.component-matching, test:protocol.design-slice.component-unreadable, test:protocol.design-slice.component-unrelated, test:protocol.design-slice.decision-backlink, test:protocol.design-slice.dependency-cycle, test:protocol.design-slice.folded-example, test:protocol.design-slice.independent-example, test:protocol.design-slice.outside-components, test:protocol.design-slice.outside-holding, test:protocol.design-slice.outside-satisfied, test:protocol.design-slice.outside-unbound. Specs verified by those bindings: spec:consumers.design-slice, 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.

NameSuiteResultDuration
keeps authored order while assigning depth and composing whole-Pack boundarydesign slicepassed39.39 ms
keeps summary totals, selected full members and explicit omissionsdesign slicepassed44.72 ms
reads an ordered Spec list and a narrowed Pack, marking excluded Pack membersdesign slicepassed9.41 ms
only suppresses a refinement the target answers with dependsOndesign slicepassed8.71 ms
only suppresses a refinement the target answers with constrainedBydesign slicepassed8.55 ms
only suppresses a refinement the target answers with decidedBydesign slicepassed8.75 ms
lists cycles at the depth after their deepest outside prerequisitedesign slicepassed4.89 ms
does not fold an example with another refines in either direction or across the boundarydesign slicepassed8.49 ms
does not fold an example with another dependsOn in either direction or across the boundarydesign slicepassed8.5 ms
does not fold an example with another constrainedBy in either direction or across the boundarydesign slicepassed10.23 ms
does not fold an example with another decidedBy in either direction or across the boundarydesign slicepassed12.47 ms
accumulates diagnostics in contract order and skips dependent checksdesign slicepassed37.58 ms
pins the component Design grammar and totals to recipe 43design slicepassed35.05 ms
executes the bound example against a fresh worldOutside components stop at the touched components' neighbors (spec:consumers.design-slice.outside-components)passed8 ms
executes the bound example against a fresh worldMembers rest on a chain (spec:consumers.design-slice.chain)passed4.92 ms
executes the bound example against a fresh worldA shaping decision comes before its member (spec:consumers.design-slice.decision-backlink)passed5.45 ms
executes the bound example against a fresh worldA cycle shares a depth (spec:consumers.design-slice.dependency-cycle)passed5.25 ms
executes the bound example against a fresh worldAn example folds without lending its readiness (spec:consumers.design-slice.folded-example)passed5.84 ms
executes the bound example against a fresh worldAn example with its own dependency stays unfolded (spec:consumers.design-slice.independent-example)passed4.45 ms
executes the bound example against a fresh worldAn unanchored component design stays visible (spec:consumers.design-slice.component-absent)passed5.03 ms
executes the bound example against a fresh worldAn anchor alone does not realize a component design (spec:consumers.design-slice.component-unrelated)passed8.67 ms
executes the bound example against a fresh worldA realized component matches its declared values (spec:consumers.design-slice.component-matching)passed5.56 ms
executes the bound example against a fresh worldA realized component keeps its differing layer and uses apart (spec:consumers.design-slice.component-differing)passed8.95 ms
executes the bound example against a fresh worldAn unreadable declared layer stays visible (spec:consumers.design-slice.component-unreadable)passed7.73 ms
executes the bound example against a fresh worldA prerequisite reaches its satisfying component (spec:consumers.design-slice.outside-satisfied)passed5.09 ms
executes the bound example against a fresh worldAn unbound prerequisite invents no component (spec:consumers.design-slice.outside-unbound)passed4.3 ms
executes the bound example against a fresh worldAn outside prerequisite names the member it holds (spec:consumers.design-slice.outside-holding)passed11.09 ms
keeps unresolved targets and boundary relation reasons in the recipe answerdesign slice compositionpassed4.71 ms
keeps bindings to unresolved components unplaced rather than touching an invented componentdesign slice compositionpassed6.08 ms
pins every full and summary row shape to the carrying Design entriesdesign slice compositionpassed49 ms
reports outside holds, waiting statements, decision replacements and own-Spec question holdsdesign slice compositionpassed15.3 ms
the executable order observation rejects rest on each other in a chain with setDepth[index] = 1;design slice compositionpassed6.85 ms
the executable order observation rejects include a decision that refines the member it shapes with setDepth[index] = 1;design slice compositionpassed9.01 ms
the executable order observation rejects include a decision that refines the member it shapes with edge.orders = true;design slice compositionpassed7 ms
the executable assertions reject missing rest on each other in a chain evidence for scopedesign slice compositionpassed5.75 ms
the executable assertions reject missing rest on each other in a chain evidence for memberColumnsdesign slice compositionpassed4.62 ms
the executable assertions reject missing include a decision that refines the member it shapes evidence for decisionsInScopedesign slice compositionpassed5.86 ms
the executable assertions reject missing include an example that refines a member and depends on an outside Spec evidence for boundarydesign slice compositionpassed4.84 ms
the executable assertions reject missing include two members that depend on each other evidence for depthdesign slice compositionpassed6.08 ms
counts only example-kind declared verifiers as examples, keeping all verifiersdesign slice compositionpassed6.92 ms
names the hold detail and decision shape lists the summary omitsdesign slice compositionpassed3.75 ms
summarizes component and design rows without losing totalsdesign slice compositionpassed8.77 ms
keeps all binding paths, unplaced units, pair counts and planned uses apartdesign slice compositionpassed14.7 ms
reads outside decisions and orders their questions before non-blocking member questionsdesign slice compositionpassed11.18 ms
reads declared values with the realization comparison grammar: {"layer":"`domain` explanation","context":"``probe`` explanation","role":"service","uses":"`none` explanation"}design slice compositionpassed4.16 ms
reads declared values with the realization comparison grammar: {"layer":"Domain","context":"Bad","role":"bad_role","uses":"component:probe.bad, invalid"}design slice compositionpassed6.17 ms
reads declared values with the realization comparison grammar: {"uses":"component:probe.z, component:probe.a, component:probe.z"}design slice compositionpassed7.39 ms
reads declared values with the realization comparison grammar: {}design slice compositionpassed6 ms

External run evidence from test/self-hosting-duplicate-ids.test.ts

Test anchors: test:protocol.duplicate-ids.dual-carrier. Specs verified by those bindings: spec:validation.duplicate-ids, spec:validation.duplicate-ids.dual-carrier.

NameSuiteResultDuration
names self-hosting generation before collecting its filtered tracergenerated contract preflightpassed47.15 ms
names checkout generation before collecting its filtered examplegenerated contract preflightpassed41.75 ms
names both generations when an unfiltered suite lacks both contract treesgenerated contract preflightpassed52.17 ms
matches a Vitest substring filter before collecting the self-hosting tracergenerated contract preflightpassed42.03 ms
matches a ./-prefixed filter before collecting the self-hosting tracergenerated contract preflightpassed55.66 ms
matches an absolute-path filter before collecting the self-hosting tracergenerated contract preflightpassed55.97 ms
does not require contracts for an unrelated Vitest filtergenerated contract preflightpassed94.09 ms
proceeds for the unfiltered invocation once both contract trees are generatedgenerated contract preflightpassed129.27 ms
fails a pooled run that mutates repository-root generated statepooled root generated-state sentinelpassed83.33 ms
passes a pooled run that leaves repository-root generated state untouchedpooled root generated-state sentinelpassed83.32 ms
derives the duplicate-ID verifier facts from the bound executable examplenot recordedpassed5140.53 ms
executes the bound example against a fresh worldTypeScript and Markdown duplicates are both refused (spec:validation.duplicate-ids.dual-carrier)passed8.19 ms

External run evidence from test/self-hosting-external-registers.test.ts

Test anchors: test:protocol.external-registers.uncited-on-request, test:protocol.external-registers.unknown-and-retired. Specs verified by those bindings: spec:validation.external-registers, spec:validation.external-registers.uncited-on-request, spec:validation.external-registers.unknown-and-retired.

NameSuiteResultDuration
executes the bound example against a fresh worldA cited token the register lacks or retires fails a rules run (spec:validation.external-registers.unknown-and-retired)passed25.88 ms
executes the bound example against a fresh worldA held token no Spec cites fails a rules run only when the caller asks (spec:validation.external-registers.uncited-on-request)passed5.61 ms

External run evidence from test/self-hosting-extraction.test.ts

Test anchors: test:protocol.build-pipeline.same-invocation, test:protocol.example-runner.red-step-naming, test:protocol.example-runner.step-order, test:protocol.excludes.refused-path, test:protocol.excludes.segment-boundary, test:protocol.executable-contracts.case-colliding-path, test:protocol.executable-contracts.concreteness-refusal, test:protocol.executable-contracts.multi-entry-example, test:protocol.schema-versioning.declared-version. Specs verified by those bindings: spec:extraction.build-pipeline, spec:extraction.build-pipeline.same-invocation, spec:extraction.example-runner, spec:extraction.example-runner.red-step-naming, spec:extraction.example-runner.step-order, spec:extraction.excludes, spec:extraction.excludes.refused-path, spec:extraction.excludes.segment-boundary, spec:extraction.executable-contracts, spec:extraction.executable-contracts.case-colliding-path, spec:extraction.executable-contracts.concreteness-refusal, spec:extraction.executable-contracts.multi-entry-example, spec:extraction.schema-versioning, spec:extraction.schema-versioning.declared-version.

NameSuiteResultDuration
executes the bound example against a fresh worldOne query invocation shares its extracted graph and validation result (spec:extraction.build-pipeline.same-invocation)passed13.53 ms
executes the bound example against a fresh worldA prefix excludes its own tree and leaves a similar sibling standing (spec:extraction.excludes.segment-boundary)passed1.19 ms
executes the bound example against a fresh worldA Windows-drive absolute path is refused rather than normalized (spec:extraction.excludes.refused-path)passed0.66 ms
executes the bound example against a fresh worldA derived payload carries a schema version its consumer can read (spec:extraction.schema-versioning.declared-version)passed0.42 ms
executes the bound example against a fresh worldAn unbound slot in a used step earns no step contract (spec:extraction.executable-contracts.concreteness-refusal)passed1.07 ms
executes the bound example against a fresh worldA second structured entry is named, never left silently inert (spec:extraction.executable-contracts.multi-entry-example)passed1.8 ms
executes the bound example against a fresh worldA case-only path collision withholds the whole contracts tree (spec:extraction.executable-contracts.case-colliding-path)passed0.7 ms
executes the bound example against a fresh worldA repeated step runs its one handler at each occurrence, in contract order (spec:extraction.example-runner.step-order)passed0.32 ms
executes the bound example against a fresh worldA red step names itself before the assertion detail (spec:extraction.example-runner.red-step-naming)passed0.33 ms

External run evidence from test/self-hosting-graph.test.ts

Test anchors: test:protocol.self-hosting, test:protocol.structural-self-binding. Specs verified by those bindings: spec:model.structural-patterns, spec:protocol.self-hosting, spec:protocol.significant-units-review, spec:protocol.structural-self-binding.

NameSuiteResultDuration
traces changes to 'test/self-hosting-oracle/structural-e…' through its realizing anchorthe self-hosting corpuspassed80.98 ms
traces changes to 'test/helpers/validator-probes.ts' through its realizing anchorthe self-hosting corpuspassed47.73 ms
reifies the root corpus without an extraction findingthe self-hosting corpuspassed0.46 ms
reports exactly the retained verifier gaps and no unbacked prose mentionthe self-hosting corpuspassed41.83 ms
holds the frozen corpus totalsthe self-hosting corpuspassed1.84 ms
permits a named second diagram view in the authored element-id contractthe self-hosting corpuspassed47.7 ms
states the owner queue's reader lookup by Spec and question keythe self-hosting corpuspassed39.89 ms
names vault and stamp beside every other help verb in the authored contractthe self-hosting corpuspassed35.48 ms
rosters exactly the authored Spec, Pack, and anchor node idsthe self-hosting corpuspassed1.78 ms
carries the authored descriptors of the carrier familythe self-hosting corpuspassed3.09 ms
carries the authored descriptors of the protocol familythe self-hosting corpuspassed0.63 ms
carries the authored descriptors of the extraction familythe self-hosting corpuspassed1.44 ms
carries the authored descriptors of the validation familythe self-hosting corpuspassed3.3 ms
carries the authored descriptors of the model familythe self-hosting corpuspassed1.61 ms
carries the authored descriptors of the observation familythe self-hosting corpuspassed0.44 ms
carries the authored descriptors of the consumers familythe self-hosting corpuspassed9.85 ms
carries the authored descriptors of the decisions familythe self-hosting corpuspassed1.35 ms
leaves no authored Spec outside the familiesthe self-hosting corpuspassed0.73 ms
derives exactly the authored declared relationsthe self-hosting corpuspassed11.91 ms
holds the frozen stated-readiness distributionthe self-hosting corpuspassed0.38 ms
derives the Pack membership edges from the manifest, in manifest orderthe self-hosting corpuspassed1.51 ms
carries the Pack aggregate nodes exactly as authoredthe self-hosting corpuspassed0.26 ms
derives the independent zero-to-many binding edge rosterthe self-hosting corpuspassed6.62 ms
rosters exactly the accepted component setthe self-hosting corpuspassed0.22 ms
gives every owned impl/api CodeNode exactly one componentthe self-hosting corpuspassed18.95 ms
derives exactly the sparse authored component uses edgesthe self-hosting corpuspassed1.6 ms
covers every accepted architecturally significant unitthe self-hosting corpuspassed929.96 ms
gives every accepted unit a readable responsibility labelthe self-hosting corpuspassed13.58 ms
detects a missing accepted member independently of the sourcethe self-hosting corpuspassed7.56 ms
detects extra unrostered membership independently of the sourcethe self-hosting corpuspassed45.81 ms
finds every converted comment anchor at its block's first linethe self-hosting corpuspassed17.2 ms
projects every anchor and code node at the line its declaration occupiesthe self-hosting corpuspassed97.45 ms
rejects comment-only and string activation sites and accepts executable callsthe self-hosting corpuspassed1.2 ms
keeps every anchor beside the site it bindsthe self-hosting corpuspassed1381.89 ms
derives the duplicate-ids delivery facts from the bindings, never from authoringthe self-hosting corpuspassed1.28 ms
derives sdp-import realization from its direct code and child verifier bindingsthe self-hosting corpuspassed0.32 ms

External run evidence from test/self-hosting-inline-code.test.ts

Test anchors: test:protocol.inline-code-spans.description, test:protocol.inline-code-spans.list, test:protocol.inline-code-spans.narrative, test:protocol.inline-code-spans.pack. Specs verified by those bindings: spec:carrier.inline-code-spans, spec:carrier.inline-code-spans.description, spec:carrier.inline-code-spans.list, spec:carrier.inline-code-spans.narrative, spec:carrier.inline-code-spans.pack.

NameSuiteResultDuration
executes the bound example against a fresh worldCode spans in a Spec narrative are literal (spec:carrier.inline-code-spans.narrative)passed63.42 ms
executes the bound example against a fresh worldCode spans in section descriptions are literal (spec:carrier.inline-code-spans.description)passed21.18 ms
executes the bound example against a fresh worldCode spans in list entries are literal (spec:carrier.inline-code-spans.list)passed31.9 ms
executes the bound example against a fresh worldCode spans in Pack framing are literal (spec:carrier.inline-code-spans.pack)passed20.55 ms

External run evidence from test/self-hosting-markdown-grammar.test.ts

Test anchors: test:protocol.markdown-body-grammar.continuation-line-refused, test:protocol.markdown-body-grammar.foreign-fence-refused, test:protocol.markdown-body-grammar.h3-refused, test:protocol.markdown-body-grammar.integer-term-refused, test:protocol.markdown-body-grammar.keyed-bullet-refused, test:protocol.markdown-body-grammar.ordered-list-refused, test:protocol.markdown-body-grammar.plain-bullet-refused, test:protocol.markdown-body-grammar.raw-html-refused, test:protocol.markdown-body-grammar.repeated-field-refused, test:protocol.markdown-body-grammar.second-primary-owner-refused, test:protocol.markdown-body-grammar.shared-description-refused, test:protocol.markdown-body-grammar.table-refused, test:protocol.markdown-body-grammar.trailing-prose-refused, test:protocol.markdown-body-grammar.unrecognized-heading-refused. Specs verified by those bindings: spec:carrier.markdown-body-grammar, spec:carrier.markdown-body-grammar.continuation-line-refused, spec:carrier.markdown-body-grammar.foreign-fence-refused, spec:carrier.markdown-body-grammar.h3-refused, spec:carrier.markdown-body-grammar.integer-term-refused, spec:carrier.markdown-body-grammar.keyed-bullet-refused, spec:carrier.markdown-body-grammar.ordered-list-refused, spec:carrier.markdown-body-grammar.plain-bullet-refused, spec:carrier.markdown-body-grammar.raw-html-refused, spec:carrier.markdown-body-grammar.repeated-field-refused, spec:carrier.markdown-body-grammar.second-primary-owner-refused, spec:carrier.markdown-body-grammar.shared-description-refused, spec:carrier.markdown-body-grammar.table-refused, spec:carrier.markdown-body-grammar.trailing-prose-refused, spec:carrier.markdown-body-grammar.unrecognized-heading-refused.

NameSuiteResultDuration
executes the bound example against a fresh worldA table under a section is refused (spec:carrier.markdown-body-grammar.table-refused)passed18.95 ms
executes the bound example against a fresh worldA bullet wrapped onto a second line is refused (spec:carrier.markdown-body-grammar.continuation-line-refused)passed3.89 ms
executes the bound example against a fresh worldAn ordered list is refused (spec:carrier.markdown-body-grammar.ordered-list-refused)passed2.85 ms
executes the bound example against a fresh worldA fence other than gwt or gwt-vocabulary is refused (spec:carrier.markdown-body-grammar.foreign-fence-refused)passed2.72 ms
executes the bound example against a fresh worldAn H3 under Design is refused (spec:carrier.markdown-body-grammar.h3-refused)passed5.54 ms
executes the bound example against a fresh worldA plain bullet under an open section is refused (spec:carrier.markdown-body-grammar.plain-bullet-refused)passed2.46 ms
executes the bound example against a fresh worldA keyed bullet under a plain-bullet owner is refused (spec:carrier.markdown-body-grammar.keyed-bullet-refused)passed2.19 ms
executes the bound example against a fresh worldProse after structured content is refused (spec:carrier.markdown-body-grammar.trailing-prose-refused)passed1.9 ms
executes the bound example against a fresh worldA repeated single-valued field is refused (spec:carrier.markdown-body-grammar.repeated-field-refused)passed2.37 ms
executes the bound example against a fresh worldAn unrecognized heading is refused with a suggestion (spec:carrier.markdown-body-grammar.unrecognized-heading-refused)passed6.39 ms
executes the bound example against a fresh worldA second primary owner is refused (spec:carrier.markdown-body-grammar.second-primary-owner-refused)passed5.58 ms
executes the bound example against a fresh worldRaw HTML outside a code span is refused (spec:carrier.markdown-body-grammar.raw-html-refused)passed2.05 ms
executes the bound example against a fresh worldA second description across Behavior and Example space is refused (spec:carrier.markdown-body-grammar.shared-description-refused)passed2.2 ms
executes the bound example against a fresh worldAn integer-like Model term is refused (spec:carrier.markdown-body-grammar.integer-term-refused)passed2.57 ms

External run evidence from test/self-hosting-model.test.ts

Test anchors: test:protocol.anchors.lookalike-refusal, test:protocol.anchors.physical-identity, test:protocol.stable-ids.malformed-refusal, test:protocol.stable-ids.namespaced-round-trip, test:protocol.stable-ids.unsectioned-address-refused. Specs verified by those bindings: spec:model.anchors, spec:model.anchors.lookalike-refusal, spec:model.anchors.physical-identity, spec:model.stable-ids, spec:model.stable-ids.malformed-refusal, spec:model.stable-ids.namespaced-round-trip, spec:model.stable-ids.unsectioned-address-refused.

NameSuiteResultDuration
executes the bound example against a fresh worldA namespaced dotted path with a sub-part survives parsing unchanged (spec:model.stable-ids.namespaced-round-trip)passed3.45 ms
executes the bound example against a fresh worldAn uppercase namespace is refused with its reason named (spec:model.stable-ids.malformed-refusal)passed0.43 ms
executes the bound example against a fresh worldA `#` sub-part without its section is refused with its reason named (spec:model.stable-ids.unsectioned-address-refused)passed0.31 ms
executes the bound example against a fresh worldA consumer-local lookalike builder mints no anchor and no finding (spec:model.anchors.lookalike-refusal)passed20.56 ms
executes the bound example against a fresh worldA deep relative import that resolves to the Protocol builders is trusted (spec:model.anchors.physical-identity)passed7.87 ms

External run evidence from test/self-hosting-next-rung-floor.test.ts

Test anchors: test:protocol.next-rung-floor.blocking-question, test:protocol.next-rung-floor.typed-dependency-targets. Specs verified by those bindings: spec:validation.next-rung-floor, spec:validation.next-rung-floor.blocking-question, spec:validation.next-rung-floor.typed-dependency-targets.

NameSuiteResultDuration
executes the bound example against a fresh worldA defined Spec resting on a scoped dependency is told which one (spec:validation.next-rung-floor.typed-dependency-targets)passed7.51 ms
executes the bound example against a fresh worldA scoped Spec held by a blocking question is told the clause (spec:validation.next-rung-floor.blocking-question)passed1.05 ms

External run evidence from test/self-hosting-open-question-keys.test.ts

Test anchors: test:protocol.open-question-keys.keyed-question-resolves, test:protocol.open-question-keys.renamed-key-breaks, test:protocol.open-question-keys.repeated-key-refused. Specs verified by those bindings: spec:model.open-question-keys, spec:model.open-question-keys.keyed-question-resolves, spec:model.open-question-keys.renamed-key-breaks, spec:model.open-question-keys.repeated-key-refused.

NameSuiteResultDuration
executes the bound example against a fresh worldA keyed question is reified and its address resolves (spec:model.open-question-keys.keyed-question-resolves)passed25.4 ms
executes the bound example against a fresh worldA renamed question key fails the mention that addresses it (spec:model.open-question-keys.renamed-key-breaks)passed4.02 ms
executes the bound example against a fresh worldA repeated question key refuses its carrier (spec:model.open-question-keys.repeated-key-refused)passed2.97 ms

External run evidence from test/self-hosting-pack-markdown.test.ts

Test anchors: test:protocol.markdown-pack-authoring.markdown-ts-parity, test:protocol.markdown-pack-authoring.spec-envelope-refused. Specs verified by those bindings: spec:carrier.markdown-pack-authoring, spec:carrier.markdown-pack-authoring.markdown-ts-parity, spec:carrier.markdown-pack-authoring.spec-envelope-refused.

NameSuiteResultDuration
executes the bound example against a fresh worldA Markdown Pack twin matches its TypeScript manifest (spec:carrier.markdown-pack-authoring.markdown-ts-parity)passed26.45 ms
executes the bound example against a fresh worldA Spec key on a Pack envelope is refused (spec:carrier.markdown-pack-authoring.spec-envelope-refused)passed1.61 ms

External run evidence from test/self-hosting-pack-member-order.test.ts

Test anchors: test:protocol.pack-member-order. Specs verified by those bindings: spec:extraction.pack-member-order, spec:extraction.pack-member-order.manifest-order-kept.

NameSuiteResultDuration
executes the bound example against a fresh worldA manifest's member order survives into the graph and the reader (spec:extraction.pack-member-order.manifest-order-kept)passed25.09 ms
keeps repeated members in the graph, reader, member table and gap listPack member orderpassed32.45 ms
carries an empty members list for an empty manifestPack member orderpassed2.94 ms
derives empty members when specs is undefinedPack member orderpassed0.39 ms
derives empty members when specs is not an arrayPack member orderpassed0.32 ms
serializes framing, file, members and modelRefs in the ruled field orderPack member orderpassed0.28 ms

External run evidence from test/self-hosting-projections.test.ts

Test anchors: test:protocol.binding-language-views.bound-spec-page, test:protocol.binding-language-views.pack-member-table, test:protocol.derived-readiness-banner.dishonest-divergence, test:protocol.derived-readiness-banner.honest-headroom, test:protocol.derived-readiness-banner.idea-floor-unmet, test:protocol.design-review.pure-projection, test:protocol.diagnostic-rendering.composed-location, test:protocol.diagnostic-rendering.table-cell-location, test:protocol.wholesale-view-rewrite.build-invalidates-view, test:protocol.wholesale-view-rewrite.failed-run-view-removed, test:protocol.wholesale-view-rewrite.late-stale-page, test:protocol.wholesale-view-rewrite.stale-page-removed. Specs verified by those bindings: spec:consumers.binding-language-views, spec:consumers.binding-language-views.bound-spec-page, spec:consumers.binding-language-views.pack-member-table, spec:consumers.derived-readiness-banner, spec:consumers.derived-readiness-banner.dishonest-divergence, spec:consumers.derived-readiness-banner.honest-headroom, spec:consumers.design-review, spec:consumers.design-review.pure-projection, spec:consumers.wholesale-view-rewrite, spec:consumers.wholesale-view-rewrite.build-invalidates-view, spec:consumers.wholesale-view-rewrite.failed-run-view-removed, spec:consumers.wholesale-view-rewrite.late-stale-page, spec:consumers.wholesale-view-rewrite.stale-page-removed, spec:validation.diagnostic-rendering, spec:validation.diagnostic-rendering.composed-location, spec:validation.diagnostic-rendering.table-cell-location.

NameSuiteResultDuration
executes the bound example against a fresh worldThe view is the graph read twice, and the corpus is untouched by reading it (spec:consumers.design-review.pure-projection)passed101.88 ms
executes the bound example against a fresh worldAn overstated rung raises the banner and names the clause that refused (spec:consumers.derived-readiness-banner.dishonest-divergence)passed2.27 ms
executes the bound example against a fresh worldA rung the structure overshoots renders as information, not as a banner (spec:consumers.derived-readiness-banner.honest-headroom)passed1.1 ms
renders a Spec whose idea floor is unmet with no rung and a below-idea bannernot recordedpassed0.71 ms
executes the bound example against a fresh worldA fully bound Spec renders binding language on the page and in the index (spec:consumers.binding-language-views.bound-spec-page)passed1.66 ms
executes the bound example against a fresh worldThe Pack member table speaks the page's binding language, not a shorthand (spec:consumers.binding-language-views.pack-member-table)passed1.74 ms
executes the bound example against a fresh worldA page from an earlier run does not survive the next one (spec:consumers.wholesale-view-rewrite.stale-page-removed)passed10.06 ms
executes the bound example against a fresh worldA page the build's invalidation never saw still does not survive the swap (spec:consumers.wholesale-view-rewrite.late-stale-page)passed3.7 ms
executes the bound example against a fresh worldA run that cannot produce a current view leaves no view at all (spec:consumers.wholesale-view-rewrite.failed-run-view-removed)passed2.69 ms
executes the bound example against a fresh worldA build that never renders still takes the old view down (spec:consumers.wholesale-view-rewrite.build-invalidates-view)passed2.62 ms
executes the bound example against a fresh worldOne finding, three location shapes, one composition rule (spec:validation.diagnostic-rendering.composed-location)passed0.73 ms
executes the bound example against a fresh worldThe same three location shapes, rendered as table cells (spec:validation.diagnostic-rendering.table-cell-location)passed0.57 ms

External run evidence from test/self-hosting-readiness-planner.test.ts

Test anchors: test:protocol.readiness-planner.cycle-shares-a-round, test:protocol.readiness-planner.decision-first, test:protocol.readiness-planner.dependency-order, test:protocol.readiness-planner.owner-question-holds. Specs verified by those bindings: spec:consumers.readiness-planner, 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.

NameSuiteResultDuration
executes the bound example against a fresh worldThe Spec another rests on comes first in the queue (spec:consumers.readiness-planner.dependency-order)passed16.93 ms
executes the bound example against a fresh worldA waiting decision comes before the Spec it shapes (spec:consumers.readiness-planner.decision-first)passed3.53 ms
executes the bound example against a fresh worldWaiting Specs that rest on each other share a round and report a cycle (spec:consumers.readiness-planner.cycle-shares-a-round)passed2.58 ms
executes the bound example against a fresh worldAn owner's blocking question lists the Specs it holds (spec:consumers.readiness-planner.owner-question-holds)passed2.85 ms
diagnoses invalid decider nullstatement queue detailspassed5.3 ms
diagnoses invalid decider falsestatement queue detailspassed2.91 ms
diagnoses invalid decider 1statement queue detailspassed2.79 ms
diagnoses invalid decider ""statement queue detailspassed2.7 ms
diagnoses invalid decider "Owner"statement queue detailspassed5.63 ms
diagnoses invalid decider "two words"statement queue detailspassed2.82 ms
diagnoses invalid decider "with_underscore"statement queue detailspassed3 ms
orders SCCs by longest dependency chain, ignores non-ordering and self edges, and sorts ids by code unitstatement queue detailspassed6.48 ms
yields refines to the reverse dependsOn relationstatement queue detailspassed1.71 ms
yields refines to the reverse constrainedBy relationstatement queue detailspassed2.39 ms
yields refines to the reverse decidedBy relationstatement queue detailspassed1.68 ms
chooses a shortest cycle path before breaking ties by target idstatement queue detailspassed3.3 ms
selects every higher floor, ignores lower or equal floors, and orders only direct waiting linksstatement queue detailspassed3.23 ms
selects questions, counts undecided ones, and holds direct typed dependents by stated rungstatement queue detailspassed4.57 ms

External run evidence from test/self-hosting-sdp-import.test.ts

Test anchors: test:protocol.sdp-import.round-trip. Specs verified by those bindings: spec:carrier.sdp-import, spec:carrier.sdp-import.round-trip.

NameSuiteResultDuration
executes the bound example against a fresh worldA TypeScript carrier survives import as an equal Markdown graph (spec:carrier.sdp-import.round-trip)passed48 ms

External run evidence from test/self-hosting-step-keys.test.ts

Test anchors: test:protocol.step-keys.conflicting-example-key-withheld, test:protocol.step-keys.gherkin-keyed-step-stays-bound, test:protocol.step-keys.key-equal-to-a-skeleton-withheld, test:protocol.step-keys.malformed-marker-refused, test:protocol.step-keys.renamed-key-breaks, test:protocol.step-keys.repeated-key-refused, test:protocol.step-keys.reworded-keyed-step-stays-bound, test:protocol.step-keys.reworded-unkeyed-step-breaks, test:protocol.step-keys.two-keys-on-one-step-refused, test:protocol.step-keys.typescript-keyed-step-imports-keyed. Specs verified by those bindings: spec:carrier.step-keys, spec:carrier.step-keys.conflicting-example-key-withheld, spec:carrier.step-keys.gherkin-keyed-step-stays-bound, spec:carrier.step-keys.key-equal-to-a-skeleton-withheld, spec:carrier.step-keys.malformed-marker-refused, spec:carrier.step-keys.renamed-key-breaks, spec:carrier.step-keys.repeated-key-refused, spec:carrier.step-keys.reworded-keyed-step-stays-bound, spec:carrier.step-keys.reworded-unkeyed-step-breaks, spec:carrier.step-keys.two-keys-on-one-step-refused, spec:carrier.step-keys.typescript-keyed-step-imports-keyed, spec:extraction.executable-contracts.

NameSuiteResultDuration
executes the bound example against a fresh worldAn example marker that disagrees with its vocabulary withholds the contract (spec:carrier.step-keys.conflicting-example-key-withheld)passed19.75 ms
executes the bound example against a fresh worldA keyed Gherkin step keeps its binding across a rewording (spec:carrier.step-keys.gherkin-keyed-step-stays-bound)passed1271.8 ms
executes the bound example against a fresh worldA step key equal to another step's skeleton withholds the contract (spec:carrier.step-keys.key-equal-to-a-skeleton-withheld)passed7.82 ms
executes the bound example against a fresh worldA step marker whose key is off the grammar refuses the carrier (spec:carrier.step-keys.malformed-marker-refused)passed825.08 ms
executes the bound example against a fresh worldRenaming a step key breaks the binding (spec:carrier.step-keys.renamed-key-breaks)passed728.09 ms
executes the bound example against a fresh worldOne key on two vocabulary steps refuses the carrier (spec:carrier.step-keys.repeated-key-refused)passed668.87 ms
executes the bound example against a fresh worldA keyed step reworded in its vocabulary and its example keeps its binding (spec:carrier.step-keys.reworded-keyed-step-stays-bound)passed717.55 ms
executes the bound example against a fresh worldThe same rewording without a key breaks the binding (spec:carrier.step-keys.reworded-unkeyed-step-breaks)passed719.37 ms
executes the bound example against a fresh worldTwo keys on one step refuse the carrier (spec:carrier.step-keys.two-keys-on-one-step-refused)passed862.64 ms
executes the bound example against a fresh worldA keyed TypeScript step keeps its key through import to Markdown (spec:carrier.step-keys.typescript-keyed-step-imports-keyed)passed701.64 ms

External run evidence from test/self-hosting-term-addresses.test.ts

Test anchors: test:protocol.term-addresses.keyed-term-resolves, test:protocol.term-addresses.malformed-term-marker-refused, test:protocol.term-addresses.repeated-term-key-refused, test:protocol.term-addresses.typescript-term-imports-keyed, test:protocol.term-addresses.unknown-term-key-refused. Specs verified by those bindings: spec:model.term-addresses, spec:model.term-addresses.keyed-term-resolves, spec:model.term-addresses.malformed-term-marker-refused, spec:model.term-addresses.repeated-term-key-refused, spec:model.term-addresses.typescript-term-imports-keyed, spec:model.term-addresses.unknown-term-key-refused.

NameSuiteResultDuration
executes the bound example against a fresh worldA keyed term is reified and its address resolves (spec:model.term-addresses.keyed-term-resolves)passed30.53 ms
executes the bound example against a fresh worldA term marker whose key is off the grammar refuses its carrier (spec:model.term-addresses.malformed-term-marker-refused)passed8.46 ms
executes the bound example against a fresh worldA term key repeated in one Spec refuses its carrier (spec:model.term-addresses.repeated-term-key-refused)passed5.37 ms
executes the bound example against a fresh worldA keyed TypeScript term keeps its address through import to Markdown (spec:model.term-addresses.typescript-term-imports-keyed)passed38.98 ms
executes the bound example against a fresh worldAn address that names a term key no term carries is an error (spec:model.term-addresses.unknown-term-key-refused)passed4.33 ms

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

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

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

External run evidence from test/self-hosting-unbound-example.test.ts

Test anchors: test:protocol.unbound-example-posture.lower-rungs, test:protocol.unbound-example-posture.parent-traces, test:protocol.unbound-example-posture.warning-cases. Specs verified by those bindings: spec:validation.unbound-example-posture, spec:validation.unbound-example-posture.lower-rungs, spec:validation.unbound-example-posture.parent-traces, spec:validation.unbound-example-posture.warning-cases.

NameSuiteResultDuration
executes the bound example against a fresh worldBelow-ready examples keep declared verifier data (spec:validation.unbound-example-posture.lower-rungs)passed10.37 ms
executes the bound example against a fresh worldReady examples and non-example verifiers keep warnings (spec:validation.unbound-example-posture.warning-cases)passed15.25 ms
executes the bound example against a fresh worldParent gaps follow enabled bindings and preserve the decision exemption (spec:validation.unbound-example-posture.parent-traces)passed4.06 ms

External run evidence from test/self-hosting-validators.test.ts

Test anchors: test:protocol.authored-honesty.section-authored-fact, test:protocol.authored-honesty.unearned-stated-fact, test:protocol.claim-separation.collapsed-edge-claim, test:protocol.claim-separation.unratified-descriptor, test:protocol.kind-evidence.constraints-alone, test:protocol.kind-evidence.empty-promoted-child, test:protocol.kind-evidence.second-entry-untargeted, test:protocol.kind-evidence.untargeted-constraint, test:protocol.oracle-target-eligibility.missing-space-refused, test:protocol.oracle-target-eligibility.rule-space-accepted, test:protocol.pack-coherence.incoherent-aggregate, test:protocol.readiness-floor.blocking-open-question, test:protocol.readiness-floor.unrelated-scoped-spec, test:protocol.referential-integrity.dangling-target, test:protocol.referential-integrity.did-you-mean, test:protocol.superseded-decision-signal.branch-names-every-end, test:protocol.superseded-decision-signal.chain-end-named, test:protocol.superseded-decision-signal.closed-chain-named, test:protocol.superseded-decision-signal.dependency-unread, test:protocol.superseded-decision-signal.end-and-loop-named, test:protocol.superseded-decision-signal.live-replacement-warns, test:protocol.superseded-decision-signal.replaced-ruling-warns, test:protocol.superseded-decision-signal.replacement-below-ready-named, test:protocol.superseded-decision-signal.superseded-subject-silent, test:protocol.two-check-families.split-report, test:protocol.verification-linkage.unbound-example, test:protocol.verification-linkage.unresolved-oracle, test:protocol.warn-level-signals.orphan-signal, test:protocol.warn-level-signals.ready-gap-signal. Specs verified by those bindings: spec:carrier.markdown-body-grammar, spec:validation.authored-honesty, spec:validation.authored-honesty.section-authored-fact, spec:validation.authored-honesty.unearned-stated-fact, spec:validation.claim-separation, spec:validation.claim-separation.collapsed-edge-claim, spec:validation.claim-separation.unratified-descriptor, spec:validation.kind-evidence, spec:validation.kind-evidence.constraints-alone, spec:validation.kind-evidence.empty-promoted-child, spec:validation.kind-evidence.second-entry-untargeted, spec:validation.kind-evidence.untargeted-constraint, spec:validation.oracle-target-eligibility, spec:validation.oracle-target-eligibility.missing-space-refused, spec:validation.oracle-target-eligibility.rule-space-accepted, spec:validation.pack-coherence, spec:validation.pack-coherence.incoherent-aggregate, spec:validation.readiness-floor, spec:validation.readiness-floor.blocking-open-question, spec:validation.readiness-floor.unrelated-scoped-spec, spec:validation.referential-integrity, spec:validation.referential-integrity.dangling-target, spec:validation.referential-integrity.did-you-mean, spec:validation.superseded-decision-signal, spec:validation.superseded-decision-signal.branch-names-every-end, spec:validation.superseded-decision-signal.chain-end-named, spec:validation.superseded-decision-signal.closed-chain-named, spec:validation.superseded-decision-signal.dependency-unread, spec:validation.superseded-decision-signal.end-and-loop-named, spec:validation.superseded-decision-signal.live-replacement-warns, spec:validation.superseded-decision-signal.replaced-ruling-warns, spec:validation.superseded-decision-signal.replacement-below-ready-named, spec:validation.superseded-decision-signal.superseded-subject-silent, spec:validation.two-check-families, spec:validation.two-check-families.split-report, spec:validation.verification-linkage, spec:validation.verification-linkage.unbound-example, spec:validation.verification-linkage.unresolved-oracle, spec:validation.warn-level-signals, spec:validation.warn-level-signals.orphan-signal, spec:validation.warn-level-signals.ready-gap-signal.

NameSuiteResultDuration
executes the bound example against a fresh worldA scoped Spec with no relation names the relation clause (spec:validation.readiness-floor.unrelated-scoped-spec)passed6.49 ms
executes the bound example against a fresh worldA blocking open question holds a Spec below defined (spec:validation.readiness-floor.blocking-open-question)passed1.25 ms
executes the bound example against a fresh worldConstraints alone stop short of complete behavior evidence (spec:validation.kind-evidence.constraints-alone)passed1.16 ms
executes the bound example against a fresh worldA constraint without a machine-readable target is not complete (spec:validation.kind-evidence.untargeted-constraint)passed0.96 ms
executes the bound example against a fresh worldAn empty promoted child confers no evidence (spec:validation.kind-evidence.empty-promoted-child)passed0.8 ms
executes the bound example against a fresh worldA disconnected Spec warns and fails nothing (spec:validation.warn-level-signals.orphan-signal)passed1.82 ms
executes the bound example against a fresh worldA ready Spec without a verifier warns and fails nothing (spec:validation.warn-level-signals.ready-gap-signal)passed0.81 ms
executes the bound example against a fresh worldAn unrelated missing target is a bare conformance error (spec:validation.referential-integrity.dangling-target)passed0.8 ms
executes the bound example against a fresh worldA unique near miss earns a did-you-mean suggestion (spec:validation.referential-integrity.did-you-mean)passed0.71 ms
executes the bound example against a fresh worldA delivery fact smuggled into a section is refused (spec:validation.authored-honesty.section-authored-fact)passed0.8 ms
executes the bound example against a fresh worldA stated delivery fact no binding earns is refused (spec:validation.authored-honesty.unearned-stated-fact)passed0.73 ms
executes the bound example against a fresh worldA binding edge cannot borrow the declared claim (spec:validation.claim-separation.collapsed-edge-claim)passed0.92 ms
executes the bound example against a fresh worldAn unratified kind fails closed instead of reaching the floor (spec:validation.claim-separation.unratified-descriptor)passed0.49 ms
executes the bound example against a fresh worldA declared verifier no test binds confers nothing (spec:validation.verification-linkage.unbound-example)passed2.2 ms
executes the bound example against a fresh worldAn oracle targeting a Spec with no example space is refused (spec:validation.verification-linkage.unresolved-oracle)passed0.68 ms
executes the bound example against a fresh worldA rule owning an example space accepts an oracle (spec:validation.oracle-target-eligibility.rule-space-accepted)passed0.94 ms
executes the bound example against a fresh worldA target without an example space refuses an oracle (spec:validation.oracle-target-eligibility.missing-space-refused)passed0.42 ms
executes the bound example against a fresh worldA repeated member and a non-model modelRef are both named (spec:validation.pack-coherence.incoherent-aggregate)passed3.58 ms
executes the bound example against a fresh worldOne report carries both families and claims neither as its own (spec:validation.two-check-families.split-report)passed0.69 ms
executes the bound example against a fresh worldA Spec shaped by a replaced decision warns once and fails nothing (spec:validation.superseded-decision-signal.replaced-ruling-warns)passed1.73 ms
executes the bound example against a fresh worldThe warning names the decision at the end of a chain of replacements (spec:validation.superseded-decision-signal.chain-end-named)passed0.72 ms
executes the bound example against a fresh worldA replacement chain that branches names every end (spec:validation.superseded-decision-signal.branch-names-every-end)passed0.85 ms
executes the bound example against a fresh worldA chain of replacements that closes on itself is named and fails nothing (spec:validation.superseded-decision-signal.closed-chain-named)passed0.82 ms
executes the bound example against a fresh worldA dependency on a replaced decision raises no warning (spec:validation.superseded-decision-signal.dependency-unread)passed0.53 ms
executes the bound example against a fresh worldA superseded decision is not warned for the decision it names (spec:validation.superseded-decision-signal.superseded-subject-silent)passed0.63 ms
executes the bound example against a fresh worldA replacement still below ready is named as it stands (spec:validation.superseded-decision-signal.replacement-below-ready-named)passed0.73 ms
executes the bound example against a fresh worldA decision still decided by the record it replaces warns (spec:validation.superseded-decision-signal.live-replacement-warns)passed0.56 ms
executes the bound example against a fresh worldA chain of replacements that reaches an end and a loop names both (spec:validation.superseded-decision-signal.end-and-loop-named)passed0.72 ms
deduplicates stale pairs, names self loops and leaves absent locations absentnot recordedpassed0.9 ms
warns once for each stale decision and ignores unresolved and wrongly typed replacementsnot recordedpassed2.06 ms
locates each subject separately when two Specs name the same stale decisionnot recordedpassed0.51 ms
checks branch messages independently of the example idnot recordedpassed0.56 ms
checks the extracted 'message' Design entrynot recordedpassed1.74 ms
checks the extracted 'closedChainMessage' Design entrynot recordedpassed0.56 ms
checks the extracted 'mixedChainMessage' Design entrynot recordedpassed0.49 ms
executes the bound example against a fresh worldA constraint whose second entry has no target is not complete (spec:validation.kind-evidence.second-entry-untargeted)passed0.61 ms

External run evidence from test/skills.test.ts

Test anchors: test:protocol.adopter-on-ramp, test:protocol.authoring-on-ramp, test:protocol.delivery-session-on-ramp, test:protocol.graph-first-planning, test:protocol.reading-on-ramp, test:protocol.studio-on-ramp, test:protocol.vault-on-ramp. Specs verified by those bindings: spec:consumers.adopter-on-ramp, spec:consumers.authoring-on-ramp, spec:consumers.delivery-session-on-ramp, spec:consumers.graph-first-planning, spec:consumers.reading-on-ramp, spec:consumers.studio-on-ramp, spec:consumers.vault-on-ramp.

NameSuiteResultDuration
discovers the design slice's summary and detail parameternot recordedpassed7.03 ms
teaches the named-file exception to both carrier-watch descriptionsnot recordedpassed1.09 ms
teaches the optional priority field in the Pack manifest envelopenot recordedpassed0.8 ms
teaches design rounds and curates bindings by responsibilitynot recordedpassed3.5 ms
presents the Protocol engine roles and reviewed boundary as worked examples for adoptersnot recordedpassed1.21 ms
routes the next work and reviews through roadmap and proposal recipesnot recordedpassed3.96 ms
keeps planning truth in graph homes and session routing advisoryProtocol skill assetspassed1.33 ms
rejects missing planning guidance: An open question goesProtocol skill assetspassed2.15 ms
rejects missing planning guidance: A deferral isProtocol skill assetspassed1.08 ms
rejects missing planning guidance: An unsettled factProtocol skill assetspassed0.92 ms
rejects missing planning guidance: A ruling that awaitsProtocol skill assetspassed0.97 ms
rejects missing planning guidance: A statement a test checksProtocol skill assetspassed1.51 ms
rejects missing planning guidance: Derive a countProtocol skill assetspassed1.19 ms
rejects missing planning guidance: Group a body of workProtocol skill assetspassed1.21 ms
rejects missing planning guidance: Hold advisory priorityProtocol skill assetspassed2.68 ms
owns skills under .agents and exposes them to Claude through one relative symlinkProtocol skill assetspassed0.51 ms
ships every skill folder in the package and indexes it in the helpProtocol skill assetspassed1.18 ms
uses the repository's two-field single-file conventionProtocol skill assetspassed2.59 ms
keeps every skill graph-first and the authoring law linked to carrying SpecsProtocol skill assetspassed12.22 ms
names the complete closed graph schema in the shape sectionProtocol skill assetspassed0.97 ms
routes delivery sessions through the five advisory graph shapesProtocol skill assetspassed0.99 ms
documents only valid CLI verbs and keeps root-specific exclusions intactProtocol skill assetspassed3.16 ms
uses the local runtime or package runner instead of a colliding global binaryProtocol skill assetspassed1.56 ms
contains no contradictory shortcuts for readiness or verifier realizationProtocol skill assetspassed2.44 ms
states no recipe-catalog size in an on-rampProtocol skill assetspassed14.6 ms
maps a task to every catalog recipe in one sheetthe graph-reading on-ramppassed2.92 ms
links the Specs that own the graph contract, the claims and the sinkthe graph-reading on-ramppassed0.58 ms
teaches every Markdown section owner and links the carrying grammaradopter teachingpassed2.33 ms
teaches open-question homeadopter rule meaningspassed1.24 ms
teaches blocking flooradopter rule meaningspassed1.19 ms
teaches blocking deferraladopter rule meaningspassed1.36 ms
teaches deferral triggeradopter rule meaningspassed1.24 ms
teaches deferral preconditionadopter rule meaningspassed1.36 ms
teaches independent defined flooradopter rule meaningspassed1.62 ms
teaches complete example childrenadopter rule meaningspassed8.74 ms
teaches example vocabulary agreementadopter rule meaningspassed1.29 ms
teaches physical entry lineadopter rule meaningspassed1.34 ms
teaches one leading prose owneradopter rule meaningspassed1.09 ms
teaches Note is refusedadopter rule meaningspassed1.02 ms
teaches ready reads parentadopter rule meaningspassed1.1 ms
teaches ready waits for defined parentadopter rule meaningspassed1.14 ms
teaches unsettled constraint homeadopter rule meaningspassed1.13 ms
teaches unsettled blocking checkadopter rule meaningspassed1.11 ms
teaches bounded relationadopter rule meaningspassed1.15 ms
teaches bounded defined allowedadopter rule meaningspassed1.08 ms
teaches bounded ready waitsadopter rule meaningspassed1.12 ms
teaches pending decision below readyadopter rule meaningspassed1 ms
teaches shaping relationadopter rule meaningspassed1.54 ms
teaches owner states readyadopter rule meaningspassed1.41 ms
teaches checked statement homeadopter rule meaningspassed2.23 ms
teaches checking example relationadopter rule meaningspassed1.2 ms
teaches example test bindingadopter rule meaningspassed1.1 ms
teaches derived verifier factadopter rule meaningspassed1.14 ms
teaches verifier existence versus passingadopter rule meaningspassed4.17 ms
teaches CI owns outcomesadopter rule meaningspassed3.95 ms
teaches no authored checked statusadopter rule meaningspassed4.14 ms
teaches fresh derived counts registers scopeadopter rule meaningspassed1.07 ms
teaches census sourceadopter rule meaningspassed7.43 ms
teaches open-question register sourceadopter rule meaningspassed1.21 ms
teaches dependency register sourceadopter rule meaningspassed1.17 ms
teaches mention register sourceadopter rule meaningspassed1.48 ms
teaches delta scope sourceadopter rule meaningspassed1.12 ms
teaches no quoted countsadopter rule meaningspassed1.14 ms
teaches operator-selected policyadopter rule meaningspassed1.21 ms
teaches per-file policy parametersadopter rule meaningspassed2.29 ms
teaches separate policy findingsadopter rule meaningspassed1.14 ms
teaches policy failuresadopter rule meaningspassed1.03 ms
teaches watch policy rereadsadopter rule meaningspassed1.02 ms
teaches Constraints leading-prose exceptionadopter rule meaningspassed1.06 ms
teaches one primary owneradopter rule meaningspassed1.08 ms
rejects the opposite teaching for independent defined floor: defined floor does not read the parent's readinessadopter rule meaningspassed1.26 ms
rejects the opposite teaching for independent defined floor: defined floor does not read the parent's readinessadopter rule meaningspassed1.22 ms
rejects the opposite teaching for example vocabulary agreement: complete and match the parent's example vocabulary, when it has oneadopter rule meaningspassed1.15 ms
rejects the opposite teaching for ready reads parent: ready floor does read the parent's readinessadopter rule meaningspassed1.15 ms
rejects the opposite teaching for physical entry line: a wrapped or indented continuation is refusedadopter rule meaningspassed1.17 ms
rejects the opposite teaching for one leading prose owner: Leading prose may stand under that owner or under Example space, not bothadopter rule meaningspassed1.15 ms
rejects the opposite teaching for Note is refused: The parser reads - Note: x as a key and refuses itadopter rule meaningspassed1.15 ms
rejects the opposite teaching for open-question home: An open question goes under Intent's ### Open questions.adopter rule meaningspassed1.21 ms
accepts a harmless open-question instruction frameadopter rule meaningspassed1.7 ms
defined examples ignore parent readiness but read its vocabulary: matches=trueadopter rule meaningspassed3.78 ms
defined examples ignore parent readiness but read its vocabulary: matches=falseadopter rule meaningspassed0.45 ms
teaches the Intent grammar rowadopter rule meaningspassed0.66 ms
teaches the Intent grammar rowadopter rule meaningspassed0.57 ms
teaches the Behavior grammar rowadopter rule meaningspassed0.54 ms
teaches the Rule grammar rowadopter rule meaningspassed1.82 ms
teaches the Workflow grammar rowadopter rule meaningspassed0.56 ms
teaches the Workflow grammar rowadopter rule meaningspassed0.51 ms
teaches the Contract grammar rowadopter rule meaningspassed0.58 ms
teaches the Example space grammar rowadopter rule meaningspassed0.49 ms
teaches the Example space grammar rowadopter rule meaningspassed0.54 ms
teaches the Constraints grammar rowadopter rule meaningspassed0.56 ms
teaches the Constraints grammar rowadopter rule meaningspassed0.47 ms
teaches the Constraints grammar rowadopter rule meaningspassed0.47 ms
teaches the Model grammar rowadopter rule meaningspassed0.53 ms
teaches the Model grammar rowadopter rule meaningspassed0.64 ms
teaches the Design grammar rowadopter rule meaningspassed0.54 ms
teaches the Design grammar rowadopter rule meaningspassed0.53 ms
teaches the Decision grammar rowadopter rule meaningspassed0.55 ms
teaches the Decision grammar rowadopter rule meaningspassed0.51 ms
teaches the UI grammar rowadopter rule meaningspassed0.43 ms
teaches the Verification — <mode> grammar rowadopter rule meaningspassed0.46 ms
teaches the Verification — <mode> grammar rowadopter rule meaningspassed0.42 ms
teaches the Verification — <mode> grammar rowadopter rule meaningspassed0.44 ms
keeps graph-reader verifier teaching about existence and CI outcomesadopter rule meaningspassed0.79 ms
keeps session teaching advisory and separate from permissionadopter rule meaningspassed0.48 ms
the README teaches commit pinadopter install and upgrade guidancepassed0.3 ms
the README teaches npm script approvaladopter install and upgrade guidancepassed0.25 ms
the README teaches npm git approvaladopter install and upgrade guidancepassed0.21 ms
the README teaches pnpm repository approvaladopter install and upgrade guidancepassed0.21 ms
the README teaches pnpm 10 exact approvaladopter install and upgrade guidancepassed0.21 ms
the README teaches installed CLI checkadopter install and upgrade guidancepassed0.21 ms
the README teaches vitest subpath requirementadopter install and upgrade guidancepassed0.22 ms
the README teaches recipe subject as paramsadopter install and upgrade guidancepassed0.2 ms
refuses wrapped continuationtaught grammar agrees with parser behaviorpassed1.34 ms
refuses indented continuationtaught grammar agrees with parser behaviorpassed0.18 ms
allows leading prose under either owner and refuses it under bothtaught grammar agrees with parser behaviorpassed1.03 ms
refuses Note as a plain Rule entrytaught grammar agrees with parser behaviorpassed0.28 ms
refuses Note as a plain Workflow entrytaught grammar agrees with parser behaviorpassed0.13 ms
refuses Note as a plain Contract entrytaught grammar agrees with parser behaviorpassed0.09 ms
refuses Note as a plain Verification — manual entrytaught grammar agrees with parser behaviorpassed0.51 ms
refuses unique Model terms duplicatestaught grammar agrees with parser behaviorpassed0.52 ms
refuses unique Design keys duplicatestaught grammar agrees with parser behaviorpassed0.13 ms
refuses unique UI keys via Design form duplicatestaught grammar agrees with parser behaviorpassed0.09 ms
refuses single Intent actor duplicatestaught grammar agrees with parser behaviorpassed0.55 ms
refuses single Intent problem duplicatestaught grammar agrees with parser behaviorpassed0.15 ms
refuses single Intent outcome duplicatestaught grammar agrees with parser behaviorpassed0.1 ms
refuses single Intent value duplicatestaught grammar agrees with parser behaviorpassed0.1 ms
refuses single Constraints statement duplicatestaught grammar agrees with parser behaviorpassed0.28 ms
refuses single Constraints flavor duplicatestaught grammar agrees with parser behaviorpassed0.21 ms
refuses single Constraints target duplicatestaught grammar agrees with parser behaviorpassed0.13 ms
refuses single Constraints measurableBy duplicatestaught grammar agrees with parser behaviorpassed0.1 ms
refuses single Decision context duplicatestaught grammar agrees with parser behaviorpassed0.23 ms
refuses single Decision decision duplicatestaught grammar agrees with parser behaviorpassed0.12 ms
allows Behavior alone and refuses a second primary ownertaught grammar agrees with parser behaviorpassed0.52 ms
allows Rule alone and refuses a second primary ownertaught grammar agrees with parser behaviorpassed0.22 ms
allows Workflow alone and refuses a second primary ownertaught grammar agrees with parser behaviorpassed0.14 ms
allows Contract alone and refuses a second primary ownertaught grammar agrees with parser behaviorpassed0.2 ms
allows leading prose in Design and refuses it in Constraintstaught grammar agrees with parser behaviorpassed0.2 ms
allows the taught repeatable Intent entriestaught grammar agrees with parser behaviorpassed0.18 ms
allows the taught repeatable Decision entriestaught grammar agrees with parser behaviorpassed0.14 ms
extracts the key the skill's marker carries and resolves the address the skill gives itthe taught question markerpassed13.76 ms
leaves the address unresolved when the key stands outside the bracketsthe taught question markerpassed8.53 ms
creates the anchored suite before generating, and the build places the registrar beside itthe reviewed skill teachingpassed23.52 ms
keys a step in the vocabulary, as the step-key law and the contract generator agreethe reviewed skill teachingpassed8.43 ms
owns publishing in one reader section that agrees with each verb's flagsthe reviewed skill teachingpassed2.25 ms
names the vault's owned folder, the person's notes and the roots a vault run removesthe reviewed skill teachingpassed0.64 ms
teaches entry addresses, term addresses and anchored source citations as the engine derives themthe reviewed skill teachingpassed15.32 ms
states what an empty or ready answer establishes and no morethe reviewed skill teachingpassed1.27 ms
teaches a refused bundle as the end of pagination, as recipe 36 refusesthe reviewed skill teachingpassed9.72 ms
keeps corpus rules in one section whose composed rules file runs as taughtthe reviewed skill teachingpassed9.15 ms
points every skill at the installed upgrade guide and triggers authoring on upgrades and rulesthe reviewed skill teachingpassed1.5 ms
orders the reader as a task route and leaves recipe contracts to the catalogthe reviewed skill teachingpassed0.78 ms
states the graph's flat topology and which node types carry lines, as the graph doesthe reviewed skill teachingpassed14.53 ms
is its own shipped skill, which the reading skill points tothe Studio on-ramppassed1.1 ms
starts from what the agent holdsthe Studio on-ramppassed0.52 ms
teaches the publishing run as the studio and generate verbs take itthe Studio on-ramppassed2.39 ms
teaches stamping and the preview workflow as the workflow declares themthe Studio on-ramppassed6.91 ms
has the preview's run evidence checked against the stamp, never assumed to match itthe Studio on-ramppassed3.17 ms
maps each task to a page the Studio writes, and states what a page does notthe Studio on-ramppassed45.15 ms
receives the composing panel's hand-off through the proposal checkthe Studio on-ramppassed19.46 ms
cites resolving Studio Specs for law and leaves flags to each verb's helpthe Studio on-ramppassed700.44 ms
is its own shipped skill, which the reading skill points tothe vault on-ramppassed1.29 ms
places the vault where the command accepts itthe vault on-ramppassed3.7 ms
keeps the person's notes outside the folder the command ownsthe vault on-ramppassed0.51 ms
teaches synchronizing and watching as the verbs and the failed index state themthe vault on-ramppassed0.51 ms
names every refusal the guard prints and how to recover from itthe vault on-ramppassed0.81 ms
converts a note's links back to the addresses the vault wrote, then checks the proposalthe vault on-ramppassed14.49 ms
takes the proposal's base from the graph the person read, never from the latest synchronizationthe vault on-ramppassed4.12 ms
cites resolving vault Specs for law and leaves flags to the verb's helpthe vault on-ramppassed124.17 ms

External run evidence from test/studio-capabilities.test.ts

Test anchors: test:protocol.studio-capabilities. Specs verified by those bindings: spec:consumers.spec-studio.capability-map-page, spec:consumers.spec-studio.diagram-kinds.capability-tree.

NameSuiteResultDuration
folds whole sibling branches for 30 features with 1 storiesStudio capabilitiespassed43.76 ms
folds whole sibling branches for 45 features with 5 storiesStudio capabilitiespassed341.22 ms
folds whole sibling branches for 40 features with 40 storiesStudio capabilitiespassed1950.89 ms
keeps reached children out of the unreached drawing and complete rowsStudio capabilitiespassed23.26 ms
shows cycle diagnostics outside closed disclosuresStudio capabilitiespassed13.52 ms
exports every cycle member and exact edge with the Mermaid fallback reasonStudio capabilitiespassed1.79 ms
renders code-span titles as plain drawing words and questions as linked proseStudio capabilitiespassed5.4 ms
initializes epic filtering from the URL, intersects every control and resets native rowsStudio capabilitiespassed8.57 ms
reflows capability cards, caps deep indentation and opens complete text for printStudio capabilitiespassed36.15 ms
folds only a leaf remainder at the root, preserves first siblings and falls back for too many rootsStudio capabilitiespassed51.61 ms
condenses a cycle into a labelled group and retains its internal relations in wordsStudio capabilitiespassed4.43 ms
shares the detailed recipe answer and publishes a lens immediately after PacksStudio capabilitiespassed0.75 ms
labels nested epics, scopes distinct rollups and separates examples and decisionsStudio capabilitiespassed0.3 ms
keeps depth-first repeats, every relation and question links to real idsStudio capabilitiespassed0.5 ms
renders a repeat box with its own child-to-parent arrow and groups siblingsStudio capabilitiespassed1.58 ms
uses mindmap only for a strict tree and folds large branches without losing textStudio capabilitiespassed36.37 ms
keeps cycles finite, labelled and complete, and handles no epics or an empty corpusStudio capabilitiespassed10.01 ms
records all epic memberships on index rows and preserves Pack disclosuresStudio capabilitiespassed0.41 ms
intersects epic selection with every existing filter and treats no epic explicitlyStudio capabilitiespassed0.92 ms

External run evidence from test/studio-data.test.ts

Test anchors: test:protocol.studio-data. Specs verified by those bindings: spec:consumers.spec-studio.data, spec:consumers.spec-studio.publisher.

NameSuiteResultDuration
counts every Pack exactly as recipe 29Studio data over 'Protocol'passed555.49 ms
keeps one search record per node, fields unchanged and bindings decodedStudio data over 'Protocol'passed417.56 ms
matches recipe 23's exact rows for suffixStudio data over 'Protocol'passed439.94 ms
matches recipe 23's exact rows for ruleStudio data over 'Protocol'passed440.19 ms
matches recipe 23's exact rows for typeStudio data over 'Protocol'passed451.18 ms
matches recipe 23's exact rows for outcomeStudio data over 'Protocol'passed360.45 ms
matches recipe 23's exact rows for orderStudio data over 'Protocol'passed386.84 ms
matches recipe 23's exact rows for decisionStudio data over 'Protocol'passed459.59 ms
matches recipe 23's exact rows for graphOnlyStudio data over 'Protocol'passed460.52 ms
keeps rails in Pack-id and authored-member order, with severity and space ownershipStudio data over 'Protocol'passed384.07 ms
counts every Pack exactly as recipe 29Studio data over 'checkout'passed3.14 ms
keeps one search record per node, fields unchanged and bindings decodedStudio data over 'checkout'passed2.34 ms
matches recipe 23's exact rows for suffixStudio data over 'checkout'passed2.95 ms
matches recipe 23's exact rows for ruleStudio data over 'checkout'passed4.28 ms
matches recipe 23's exact rows for typeStudio data over 'checkout'passed4.34 ms
matches recipe 23's exact rows for outcomeStudio data over 'checkout'passed7.48 ms
matches recipe 23's exact rows for orderStudio data over 'checkout'passed4.54 ms
matches recipe 23's exact rows for decisionStudio data over 'checkout'passed4.2 ms
matches recipe 23's exact rows for graphOnlyStudio data over 'checkout'passed4.38 ms
keeps rails in Pack-id and authored-member order, with severity and space ownershipStudio data over 'checkout'passed3.52 ms
serializes embedded JSON with no literal less-than characternot recordedpassed0.34 ms
encodes uppercase ids without case-insensitive page collisionsnot recordedpassed0.32 ms
preserves coined non-string entries, question and rule addresses and their linesnot recordedpassed0.85 ms
keeps term addresses, keys and physical lines aligned with recipe 23not recordedpassed5.18 ms
shares only parameterless recipe answers within one Studio evaluationnot recordedpassed1.6 ms

External run evidence from test/studio-diagram-catalog.test.ts

Test anchors: test:protocol.studio-diagram-catalog. Specs verified by those bindings: spec:consumers.spec-studio.diagram-kinds.

NameSuiteResultDuration
keeps the complete drawn catalog and every other family deferred or refusedthe shipped diagram catalogpassed3.32 ms
renders the six promised readings from explicit graph values without adding other formsthe shipped diagram catalogpassed1.71 ms

External run evidence from test/studio-diagram-core.test.ts

Test anchors: test:protocol.studio-copy-source, test:protocol.studio-diagram-core. Specs verified by those bindings: spec:consumers.spec-studio.diagram-kinds.edge-routing, spec:consumers.spec-studio.diagram-kinds.legibility, spec:consumers.spec-studio.diagram-kinds.mermaid-source, spec:consumers.spec-studio.diagram-kinds.requirement-trace, spec:consumers.spec-studio.diagrams, spec:consumers.spec-studio.page-elements.

NameSuiteResultDuration
wraps by code point and shortens shared segments without collisionsshared diagram corepassed8.25 ms
wraps boxes within the width budget and writes an instruction only for final wide drawingsshared diagram corepassed6.1 ms
routes forward, backward and same-band edges with distinct ports and no shared segmentsshared diagram corepassed14.15 ms
fails closed when routing cannot fit, retaining complete text and no partial sourceshared diagram corepassed50.17 ms
serializes full identities, exact claims, reasons, counts and folds as inert Mermaid datashared diagram corepassed1.98 ms
copies the current value of the labelled textarea and selects that same area on clipboard failurenot recordedpassed55.84 ms
keeps the full box and edge bound routable with obstacles, separate lanes and edge labelsnot recordedpassed430.81 ms
offers deterministic Mermaid source for each existing drawing and pins the safe text syntaxnot recordedpassed5.63 ms
folds reason-bearing trace groups without attributing a member reason to the groupnot recordedpassed8.01 ms
uses the full band budget for a single context and routes adjacent bands inside itnot recordedpassed0.59 ms
prints exact short relation words and reserves keys for wording that cannot fitnot recordedpassed6.46 ms
names viewport and instruction ids for trace and secondary viewsnot recordedpassed3.43 ms
names the architecture syntax and serializes aliases in displayed box ordernot recordedpassed0.34 ms
routes the current Protocol architecture and recorded adopter architecture with distinct ports and segmentsnot recordedpassed74.94 ms
extends overflow rails past earlier labels on the adopter's dense tracesnot recordedpassed4.75 ms
keeps high-degree boxes inside their cells when contexts share a gridnot recordedpassed1.15 ms
folds nine refining verifiers with their tests within the band budget and keeps every text rownot recordedpassed2.68 ms
names folded declared refiners by their relation and claim without an internal subtitlenot recordedpassed2.03 ms
keeps examples apart from refiners when dense requirement groups foldnot recordedpassed1.09 ms
names refines folds in plain words and preserves directionnot recordedpassed1.31 ms
names satisfies folds in plain words and preserves directionnot recordedpassed1.09 ms
names verifies folds in plain words and preserves directionnot recordedpassed1.46 ms
keeps a short drawing unfolded even with many boxes and incident edgesnot recordedpassed1.77 ms
packs disjoint endpoint intervals into shared horizontal lanesnot recordedpassed0.89 ms
uses a legend key before spending overflow width on exact wordsnot recordedpassed1.18 ms

External run evidence from test/studio-elements.test.ts

Test anchors: test:protocol.studio-page-elements. Specs verified by those bindings: spec:consumers.spec-studio.page-elements, spec:consumers.spec-studio.search.

NameSuiteResultDuration
offers a prompt before searching and puts a real miss before the field listStudio page interactionspassed2.06 ms
writes singular counts, readable fields, code-span titles and linked entry keysStudio page interactionspassed3.05 ms
cuts long excerpts at word boundaries around the termStudio page interactionspassed0.42 ms
copies the requested text and reports successful clipboard writesStudio page interactionspassed0.81 ms
selects copy text when the clipboard is missing or rejects accessStudio page interactionspassed0.52 ms
decodes entry fragments literally and refuses malformed fragment escapesStudio page interactionspassed0.29 ms
filters all filters together and accepts space-separated row valuesStudio page interactionspassed0.35 ms
clears the filter when a link or fragment targets a row it hidesStudio page interactionspassed6.32 ms
round-trips term fragments including punctuation, spaces and UnicodeStudio page interactionspassed0.9 ms
matches entry tokens, and non-string values only by their coined keyStudio page interactionspassed0.86 ms
keeps a node whose only match is a tokenized coined entry keyStudio page interactionspassed0.59 ms
reads authored values at most twice per search, regardless of the entry countStudio page interactionspassed3.32 ms
links addressed hits to the entry and other hits to their section or narrativeStudio page interactionspassed0.5 ms
groups entries beneath each node and pages fifty nodes at a timeStudio page interactionspassed7.16 ms
renders node words, independent rungs, bindings, locations and escaped textStudio page interactionspassed2.57 ms
requests a stamp only over HTTP and HTTPS and shows only its text fieldsStudio page interactionspassed0.61 ms
loads the built classic bundle without imports and defines the page and view elementsStudio page interactionspassed1.95 ms
names a question copy control with the full entry address and updates itStudio page interactionspassed1.42 ms
uses the navigation search input, announces the empty prompt and reveals paging progressStudio page interactionspassed9.52 ms
enhances a diagram through its view box, preserves links on click and removes handlersnot recordedpassed2.61 ms

External run evidence from test/studio-pages.test.ts

Test anchors: test:protocol.studio-pages. Specs verified by those bindings: spec:consumers.spec-studio.index-page, spec:consumers.spec-studio.pack-page, spec:consumers.spec-studio.search, spec:consumers.spec-studio.shell, spec:consumers.spec-studio.spec-page.core.

NameSuiteResultDuration
rejects malformed page links: <div id="same"></div><div id="same"></div>not recordedpassed2.87 ms
rejects malformed page links: <a href="missing.html">Missing</a>not recordedpassed0.59 ms
rejects malformed page links: <a href="#missing">Missing</a>not recordedpassed0.4 ms
rejects malformed page links: <a href="https://example.com">Outside</a>not recordedpassed0.3 ms
renders Model definitions without exposing the derived term key mapStudio static pagespassed14.48 ms
frames every browsing page with a skip link, labelled search, rail, canvas, classic script and stampStudio static pagespassed2.55 ms
lists example-space owners only in Pack and Spec railsStudio static pagespassed0.42 ms
shows a keyed question once with a copy action naming its full addressStudio static pagespassed0.28 ms
opens the index with counts, four task routes, every filter and stable section idsStudio static pagespassed0.75 ms
gives each Spec row one rung badge and binding wordsStudio static pagespassed1 ms
puts Pack totals before framing and folds holds into that summaryStudio static pagespassed0.5 ms
leaves member names out when every member waits only for its authorStudio static pagespassed10.78 ms
agrees each boundary verb with its countStudio static pagespassed15.83 ms
shows only the Spec's own Packs in its rail and every Pack on the indexStudio static pagespassed22.98 ms
asserts every index summary sentence including fact-based verifier countsStudio static pagespassed6.98 ms
renders code spans in titles on every page and strips them in document titlesStudio static pagespassed13.13 ms
orders rung filters by the ladder and uses none everywhere for an unmet idea floorStudio static pagespassed11.49 ms
keeps navigation links outside Pack disclosure controlsStudio static pagespassed0.21 ms
labels next rungs, UI and finding links and avoids repeating absent bindingsStudio static pagespassed0.34 ms
renders Pack members in authored order, closed and with one colored badge per summaryStudio static pagespassed0.46 ms
renders the four Pack boundary sections and the verifier gap sentence onceStudio static pagespassed0.2 ms
shows the stated rung beside its floor and warns only in the dishonest directionStudio static pagespassed0.16 ms
renders every section in order and every addressable entry with its key and recorded lineStudio static pagespassed0.33 ms
names the first unmet clause and renders a missing idea floor as noneStudio static pagespassed3.23 ms
shows question fields, code location, component, bindings and relations both waysStudio static pagespassed0.57 ms
escapes authored text, reads only code spans and links resolving mentionsStudio static pagespassed0.24 ms
links validator-readable escaped mentions and preserves unequal code delimitersStudio static pagespassed0.19 ms
shows findings on the index and only links page-bearing subjectsStudio static pagespassed8.01 ms
embeds the index only on search and supplies its element and no-script explanationStudio static pagespassed0.65 ms
resolves all probe links including fragments in dynamic search resultsStudio static pagespassed6.99 ms
keeps unresolved component bindings as text and resolves every remaining linkStudio static pagespassed18.06 ms
renders deterministically with no time or commit metadataStudio static pagespassed7.9 ms
ships the native layout and focus stylesheet in the browser assetsStudio static pagespassed0.22 ms
resolves every page link and element fragmentProtocol Studio page setpassed1313.79 ms
contains the complete Spec prose without executing scriptProtocol Studio page setpassed77.84 ms

External run evidence from test/studio-panels.test.ts

Test 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.

NameSuiteResultDuration
orders both matrix axes by layer and id, links counts to supporting unit edges and keeps zeros compactarchitecture tables and registerpassed74.8 ms
groups unfamiliar and omitted roles in code-unit order, with source rows and separate binding listsarchitecture tables and registerpassed27.09 ms
draws equal categorical cells, exact counts and marks with ordered complete lists and unresolved members apartmaturity picturepassed38.78 ms
places the map inside the page's expander so a cell link opens its member listmaturity picturepassed21.01 ms
puts a uniform map behind a closed disclosure and uses solid fill above the mark boundmaturity picturepassed321.53 ms
selects the subject, refiners and verifying examples and keeps declared and anchored claims separaterequirement drawingpassed35.44 ms
keeps a refining verifier in the examples band and outside Specs apartrequirement drawingpassed11.64 ms
offers requirement syntax for the supported exact relation subsetrequirement drawingpassed10.84 ms
counts the subject example when reporting selected verifying examplesrequirement drawingpassed8.27 ms
folds the largest exact relation group deterministically and keeps every original binding in textnot recordedpassed6.82 ms
keeps a sparse large uses matrix readable with one visible zero legend and hidden cell wordsnot recordedpassed17.36 ms
contains the matrix's hidden cell words inside their scroll regionnot recordedpassed0.48 ms
does not assert missing bindings on a boundary Spec whose bindings are outside the selected setnot recordedpassed9.21 ms
lets full component ids wrap so every uses column fits the printed pagenot recordedpassed1.26 ms
keeps roles out of the pinned search record while preserving them on graph unitsnot recordedpassed3.1 ms
lists a unit whose recorded component is missing in No component and in unresolved structurenot recordedpassed4.23 ms
uses the singular member in a one-member Pack's uniform sentencenot recordedpassed8.51 ms
states each absent requirement band without implying that a populated drawing is missingnot recordedpassed5.53 ms
breaks equal requirement fold groups by 'kind' in lexical ordernot recordedpassed3.79 ms
breaks equal requirement fold groups by 'direction' in lexical ordernot recordedpassed1.83 ms
breaks equal requirement fold groups by 'claim' in lexical ordernot recordedpassed1.31 ms
offers only the active relation and member renderers after requirement replaces realizationnot recordedpassed0.25 ms
applies the closed-source print rule to both requirement and maturity drawingsnot recordedpassed0.3 ms

External run evidence from test/studio-publisher.test.ts

Test anchors: test:protocol.studio-publisher. Specs verified by those bindings: spec:consumers.spec-studio, spec:consumers.spec-studio.publisher.

NameSuiteResultDuration
validates once and passes the build report through the reader and recipe evaluationsStudio publicationpassed63.16 ms
publishes the layout, copies fixture assets and replaces stale pages and temporary siblingsStudio publicationpassed29.14 ms
writes byte-identical pages twice and opens every placeholder link inside the page setStudio publicationpassed50.97 ms
publishes validation findings and returns nonzero without withholding the pagesStudio publicationpassed17.66 ms
shows a finding with an anchor subject or no subject only on the indexStudio publicationpassed9.35 ms
leaves no root or temporary after an extraction failureStudio publicationpassed5.46 ms
build invalidates the Studio and its temporary siblingStudio publicationpassed3.24 ms
validate invalidates the Studio and its temporary siblingStudio publicationpassed2.84 ms
view invalidates the Studio and its temporary siblingStudio publicationpassed5.54 ms
census invalidates the Studio and its temporary siblingStudio publicationpassed4.17 ms
mermaid invalidates the Studio and its temporary siblingStudio publicationpassed3.82 ms
gherkin invalidates the Studio and its temporary siblingStudio publicationpassed4.73 ms
refuses extraction when invalidation cannot remove the StudioStudio publicationpassed0.64 ms
check-clean accepts clean pages and replaces them with identical bytesStudio publicationpassed28.74 ms
check-clean refuses missing output and removes itStudio publicationpassed18.89 ms
check-clean refuses drift output and removes itStudio publicationpassed40.87 ms
check-clean refuses stale output and removes itStudio publicationpassed22.5 ms
check-clean refuses independently divergent rendersStudio publicationpassed25.67 ms
removes output when an asset cannot be readStudio publicationpassed8.4 ms
refuses a renderer path that would overwrite authored sourceStudio publicationpassed6.22 ms
dispatches studio with shared exclusions and advertises only its ruled flagsStudio publicationpassed9.67 ms

External run evidence from test/studio-roadmap.test.ts

Test anchors: test:protocol.studio-roadmap-page. Specs verified by those bindings: spec:consumers.roadmap.memo, spec:consumers.spec-studio.navigation, spec:consumers.spec-studio.roadmap-page.

NameSuiteResultDuration
shows unresolved members with their original manifest placesStudio roadmap pagepassed47.39 ms
publishes the empty state and navigation even with no roadmapStudio roadmap pagepassed11.25 ms
renders the board, four need lists, numbered gaps, legend and entries listed apartStudio roadmap pagepassed1 ms
counts empty board columns and gives each empty need list its own sentenceStudio roadmap pagepassed36.36 ms
shows holding parts and their next-rung clauses: has one part implemented below readyStudio roadmap pagepassed37.12 ms
shows holding parts and their next-rung clauses: has a ready root and one descendant held by a blocking questionStudio roadmap pagepassed21.82 ms
shows holding parts and their next-rung clauses: has one descendant that also refines a Spec outside the roadmapStudio roadmap pagepassed36.47 ms
keeps waiting questions, provisional readings, unnamed deciders and statements in recipe orderStudio roadmap pagepassed4.13 ms
leaves out Earlier statements when no waiting statement precedes the entryStudio roadmap pagepassed23.81 ms
uses the correct statement count and verb for 0 waiting statementsStudio roadmap pagepassed17.28 ms
uses the correct statement count and verb for 1 waiting statementsStudio roadmap pagepassed30.27 ms
uses the correct statement count and verb for 2 waiting statementsStudio roadmap pagepassed33.01 ms
renders code spans and escapes authored titles consistently on the board and entryStudio roadmap pagepassed21.83 ms
shows decisions and their questions, dependency folds, incoming work and other PacksStudio roadmap pagepassed53.9 ms
labels an ordinary Pack answer as authored reading orderStudio roadmap pagepassed43.99 ms
uses each roadmap's escaped page name for every local entry link and copies recipe 55's exact bytesStudio roadmap pagepassed59.65 ms
shows every row without script and supplies the existing filter with need tokensStudio roadmap pagepassed1.39 ms
keeps heading, memo and entry ids distinct when roadmap names contain their suffixesStudio roadmap pagepassed25.08 ms
stacks the board at phone width using the Studio breakpointStudio roadmap pagepassed0.4 ms

External run evidence from test/studio-s1.test.ts

Test anchors: test:protocol.studio-architecture-planned-apart, test:protocol.studio-coverage-literal, test:protocol.studio-coverage-number, test:protocol.studio-diagram-folds-context, test:protocol.studio-diagram-folds-layer, test:protocol.studio-diagram-within-bound, test:protocol.studio-lenses, test:protocol.studio-tests-coverage-row. Specs verified by those bindings: spec:consumers.agent-surface.example-space-coverage, spec:consumers.agent-surface.example-space-coverage.number-not-enumerable, spec:consumers.agent-surface.example-space-coverage.uncovered-literal, spec:consumers.spec-studio.data.recipe-answers, spec:consumers.spec-studio.diagrams, spec:consumers.spec-studio.diagrams.folds-by-context, spec:consumers.spec-studio.diagrams.folds-by-layer, spec:consumers.spec-studio.diagrams.within-bound, spec:consumers.spec-studio.lenses, spec:consumers.spec-studio.lenses.architecture, spec:consumers.spec-studio.lenses.architecture.planned-apart, spec:consumers.spec-studio.lenses.evidence, spec:consumers.spec-studio.lenses.packs, spec:consumers.spec-studio.lenses.tests, spec:consumers.spec-studio.lenses.tests.coverage-row.

NameSuiteResultDuration
bounds and folds 12 componentsStudio diagramspassed21.4 ms
bounds and folds 45 componentsStudio diagramspassed4.18 ms
bounds and folds 50 componentsStudio diagramspassed10.57 ms
keeps every edge in an open text fallbackStudio diagramspassed1.76 ms
orders grid contexts and layers and wraps cells within the fixed width budgetStudio diagramspassed3.65 ms
draws planned-use edges dashed independently of planned box outlinesStudio diagramspassed0.48 ms
checks the edge bound even when boxes fitStudio diagramspassed0.41 ms
places folded contexts and layers in their own bands below the gridStudio diagramspassed3.19 ms
places outgoing relation bands above the subject and folds ties in relation orderStudio diagramspassed9.26 ms
folds trace relation groups and leaves member overflow as textStudio diagramspassed2.95 ms
keeps recipe and diagram edges in code-unit order under forced Czech collationStudio lensespassed116.83 ms
publishes all five ordered lenses and honest evidence without scriptStudio lensespassed33.06 ms
reads verifier binding from the delivery fact and gives absent coverage its own filter valueStudio lensespassed18.02 ms
labels a primitive-only space with no examples not measurable and hides it under coveredStudio lensespassed14.75 ms
classifies 'number' with points [ '1' ] and mixed=false as 'not-measurable'Studio lensespassed26.11 ms
classifies 'string' with points [ '"a"' ] and mixed=false as 'not-measurable'Studio lensespassed22.83 ms
classifies 'boolean' with points [ 'true' ] and mixed=false as 'not-measurable'Studio lensespassed11.69 ms
classifies '"a"|"b"' with points [] and mixed=false as 'uncovered'Studio lensespassed9.5 ms
classifies '"a"|"b"' with points [ '"a"' ] and mixed=false as 'uncovered'Studio lensespassed11.11 ms
classifies '"a"|"b"' with points [ '"a"', '"b"' ] and mixed=false as 'covered'Studio lensespassed15.58 ms
classifies '"a"|"b"' with points [ '"a"' ] and mixed=true as 'uncovered'Studio lensespassed16.25 ms
classifies '"a"|"b"' with points [ '"a"', '"b"' ] and mixed=true as 'covered'Studio lensespassed20.2 ms
renders member subjects, code spans, used-by counts, differences and empty componentsStudio lensespassed14.17 ms
describes evidence sources as not trackedStudio lensespassed2.87 ms
executes the bound example against a fresh worldAn architecture within the bound draws in one diagram, the same bytes twice (spec:consumers.spec-studio.diagrams.within-bound)passed13 ms
executes the bound example against a fresh worldAn architecture over the bound folds by context (spec:consumers.spec-studio.diagrams.folds-by-context)passed7.68 ms
executes the bound example against a fresh worldOne context over the bound folds by layer (spec:consumers.spec-studio.diagrams.folds-by-layer)passed8.85 ms
executes the bound example against a fresh worldA component design no anchor realizes draws planned beside the built one (spec:consumers.spec-studio.lenses.architecture.planned-apart)passed26.33 ms
executes the bound example against a fresh worldA Spec's row on the tests lens counts its exercised keyed rules (spec:consumers.spec-studio.lenses.tests.coverage-row)passed13.82 ms
executes the bound example against a fresh worldA literal no example binds is reported uncovered, and an unbound child is named (spec:consumers.agent-surface.example-space-coverage.uncovered-literal)passed4.85 ms
executes the bound example against a fresh worldA number slot is not enumerable and reports no uncovered value (spec:consumers.agent-surface.example-space-coverage.number-not-enumerable)passed3.01 ms
reuses the build's reader and validation findings during Studio recipe evaluationnot recordedpassed3.94 ms
documents the component and member fields recipe 17 addsnot recordedpassed1.22 ms
evaluates each shipped recipe once for its assigned parameters and shares Pack totals, with base falsenot recordedpassed14.63 ms
evaluates each shipped recipe once for its assigned parameters and shares Pack totals, with base truenot recordedpassed20.61 ms
keeps label lines bounded and orders member depths numerically with outside units lastnot recordedpassed2.32 ms
labels planned uses, reports unreadable designs and keeps unknown structure visiblenot recordedpassed8.33 ms
gives unstated context and layer folds addressable text descriptionsnot recordedpassed1.14 ms
names a single edge relation once in the legend and preserves its text equivalentnot recordedpassed1.75 ms
names solid and planned uses once without repeating edge labelsnot recordedpassed0.63 ms

External run evidence from test/studio-s2.test.ts

Test anchors: test:protocol.studio-cited-declaration, test:protocol.studio-panels, test:protocol.studio-rule-coverage. Specs verified by those bindings: spec:consumers.spec-studio.pack-page.maturity-map, spec:consumers.spec-studio.spec-page, spec:consumers.spec-studio.spec-page.cited-declaration, spec:consumers.spec-studio.verification-panels, spec:consumers.spec-studio.verification-panels.rule-coverage.

NameSuiteResultDuration
marks every displayed file and line across the Studio page set for source linksnot recordedpassed191.23 ms
renders citation labels consistently on Spec and declaration pagesnot recordedpassed84.44 ms
executes the bound example against a fresh worldA pinned declaration shows the test line that cites it (spec:consumers.spec-studio.spec-page.cited-declaration)passed9.52 ms
executes the bound example against a fresh worldEach keyed rule shows the examples that exercise it, or that none does (spec:consumers.spec-studio.verification-panels.rule-coverage)passed14.24 ms
renders the five open panels in order, the space, bound values, absent evidence, and empty composing slotsSpec panelspassed9.37 ms
gives keyed terms address ids, source lines, and citations while hiding termKeys metadataSpec panelspassed6.44 ms
places resolved Pack members in stated/floor cells in authored orderSpec panelspassed26.08 ms
keeps the maturity heading and axis explanations inside the embeddable elementSpec panelspassed24.34 ms
distinguishes test lines from citations by files with unrelated anchorsSpec panelspassed27.53 ms
renders composing slots beside unkeyed questions using the Spec scopeSpec panelspassed12.6 ms
keeps the unbound-verifier sentence to graph bindings without run inputSpec panelspassed16.48 ms
renders source locations, component links, decisions and transitive impact by distanceStructural panels and targetspassed42.86 ms
states absence on unwritten examples and unset constraint targetsStructural panels and targetspassed20.73 ms
labels a keyed rule's unbound example as not enabledStructural panels and targetspassed16.54 ms
renders structure from recipe answers and reader records without exposing raw graph dataStructural panels and targetspassed18.79 ms
renders verifying examples for a Model without Behavior and keeps short cards to their summarynot recordedpassed10.89 ms
keeps example steps and composing actions outside a short Spec cardnot recordedpassed17.12 ms
keeps trace and requirement description and arrow ids distinct for one Spec subjectnot recordedpassed11.12 ms

External run evidence from test/studio-s3.test.ts

Test anchors: test:protocol.studio-diff-changed-entry, test:protocol.studio-glossary-same-word-twice, test:protocol.studio-navigation, test:protocol.studio-queue-dependency-first, test:protocol.studio-registers-blocking-first. Specs verified by those bindings: spec:consumers.spec-studio.diff-page, spec:consumers.spec-studio.diff-page.changed-entry, spec:consumers.spec-studio.glossary-page, spec:consumers.spec-studio.glossary-page.same-word-twice, spec:consumers.spec-studio.navigation, spec:consumers.spec-studio.owner-queue, spec:consumers.spec-studio.owner-queue.dependency-first, spec:consumers.spec-studio.registers, spec:consumers.spec-studio.registers.blocking-first.

NameSuiteResultDuration
executes the bound example against a fresh worldThe questions page lists the Specs with a blocking question first (spec:consumers.spec-studio.registers.blocking-first)passed37.62 ms
executes the bound example against a fresh worldThe owner queue lists a waiting statement after the one it rests on (spec:consumers.spec-studio.owner-queue.dependency-first)passed24.75 ms
executes the bound example against a fresh worldThe diff page shows a changed entry's base and built values (spec:consumers.spec-studio.diff-page.changed-entry)passed22.28 ms
executes the bound example against a fresh worldA word two Specs define appears once per Spec on the glossary page (spec:consumers.spec-studio.glossary-page.same-word-twice)passed11.45 ms
renders declaration citations, decision reasons and design backlog from the shipped answersStudio register pagespassed39.22 ms
reaches each page in order, marks it current and omits every diff reference without a baseStudio register pagespassed6.54 ms
refuses malformed base flags and unreadable JSON before extractionStudio register pagespassed1.23 ms
refuses a base in generated output before writing through graphStudio base comparisonpassed15.97 ms
refuses a base in generated output before writing through nestedStudio base comparisonpassed28 ms
refuses a base in generated output before writing through file aliasStudio base comparisonpassed15.08 ms
refuses a base in generated output before writing through root aliasStudio base comparisonpassed6.55 ms
refuses a base in generated output before writing through input aliasStudio base comparisonpassed9.33 ms
renders only existing sides for added and removed entries and one value for moved entriesStudio base comparisonpassed12.09 ms
shows per-Pack diagnostics without no-change claims for invalid graphStudio base comparisonpassed18.4 ms
shows per-Pack diagnostics without no-change claims for different schemaStudio base comparisonpassed16.77 ms
keeps additions, removals, Pack order and anchor bindings apart and escapes compared valuesStudio base comparisonpassed30.65 ms
shows unreadable graph values as the recipe's diagnostics on the named diff pageStudio base comparisonpassed3.27 ms
leaves the base file unchanged and certifies repeat publication with the same inputStudio base comparisonpassed39.36 ms
keeps a cycle's round separate from statements that rest on nothing, and lists owner holdsStudio base comparisonpassed11.47 ms
sorts terms without locale collation and keeps non-letter headings addressableStudio base comparisonpassed5.22 ms
orders queue floor options by rung and carries the Pack and floor on each rowStudio base comparisonpassed19.62 ms
uses authored term keys and orders duplicate terms by Spec idStudio base comparisonpassed5.83 ms
reads each owner question's provisional reading from its reader Spec and keynot recordedpassed7.54 ms
renders a keying proposal as one line per keyed entry and readable changed rule textnot recordedpassed7.28 ms
lists keyed lines in head rule order with rendered text for added, renamed and removed keysnot recordedpassed15.17 ms
counts keyed rules apart from changed parts, mixed changes: falsenot recordedpassed6.13 ms
counts keyed rules apart from changed parts, mixed changes: truenot recordedpassed5.87 ms
names one keyed rule in the singularnot recordedpassed11.75 ms
marks only members with exclusively keyed changes as keyed onlynot recordedpassed16.34 ms
renders changed list values as lists instead of raw JSON arraysnot recordedpassed5.82 ms
retains the owning list when readable rule text moves to a flownot recordedpassed5.4 ms

External run evidence from test/studio-s4.test.ts

Test anchors: test:protocol.run-absolute, test:protocol.run-external, test:protocol.run-unjoined, test:protocol.studio-graph-only, test:protocol.studio-inputs-both-given, test:protocol.studio-stamp-apart. Specs verified by those bindings: spec:consumers.spec-studio.data.inputs, spec:consumers.spec-studio.data.inputs.both-given, spec:consumers.spec-studio.data.inputs.graph-only, spec:consumers.spec-studio.runs-page, spec:consumers.spec-studio.runs-page.external-evidence, spec:consumers.spec-studio.sharing, spec:consumers.spec-studio.sharing.stamp-written-apart, spec:observation.run-evidence, spec:observation.run-evidence.absolute-path-joins, spec:observation.run-evidence.unanchored-file-unjoined.

NameSuiteResultDuration
recipe 45 joins normalized paths, preserves records and graph facts, and diagnoses other inputsnot recordedpassed40.92 ms
renders external run evidence with result rows, metadata, diagnostics and conditional navigationnot recordedpassed67.13 ms
reads repeated --runs before extraction and leaves input bytes untouchednot recordedpassed77.06 ms
stamps apart, touches no page, refuses bad sources and removes the stamp on rebuildnot recordedpassed32.06 ms
executes the bound example against a fresh worldA test whose reporter wrote an absolute path joins its anchored file (spec:observation.run-evidence.absolute-path-joins)passed3.95 ms
executes the bound example against a fresh worldA test in a file with no test anchor is reported as unjoined (spec:observation.run-evidence.unanchored-file-unjoined)passed8.41 ms
executes the bound example against a fresh worldThe runs page shows a run as external evidence from a test file (spec:consumers.spec-studio.runs-page.external-evidence)passed12.66 ms
executes the bound example against a fresh worldWithout inputs the page set is the graph's alone (spec:consumers.spec-studio.data.inputs.graph-only)passed34.33 ms
executes the bound example against a fresh worldBoth inputs add their pages, named, and the same inputs write the same bytes (spec:consumers.spec-studio.data.inputs.both-given)passed96.39 ms
executes the bound example against a fresh worldThe stamp is written beside the page set, and a later build removes it (spec:consumers.spec-studio.sharing.stamp-written-apart)passed39.65 ms
the stamp links source locations only after an HTTP stamp loads, encoding path segmentsnot recordedpassed7.34 ms
recipe 45 picks the longest suffix and scopes through enabled examples at file grainnot recordedpassed11.36 ms
ships a reusable preview, disabled by default, and deploys its own pull requests with runs and diffnot recordedpassed14.97 ms
the tests lens counts file results once per Spec and names every run inputnot recordedpassed27.49 ms
the Pack sentence keeps the graph's binding limit and positively names external evidencenot recordedpassed16.99 ms
run metadata labels build and branch, and absent fields read not recordednot recordedpassed0.47 ms
unjoined records escape outside names and explain both reason codes in wordsnot recordedpassed11.52 ms
run files show the file alone, bindings and Suite, with one header per runnot recordedpassed15.6 ms
recipe 45 does not join a suffix inside a path segmentnot recordedpassed3.52 ms
stamp defaults to unknown and a stamped page set passes check-cleannot recordedpassed53.15 ms
every reusable preview job's permissions fit the CI caller's grantnot recordedpassed15.05 ms
PR checks and preview stamps name the same default merge checkoutnot recordedpassed8 ms
preview download is optional and cancelled or skipped checks do not call itnot recordedpassed5.14 ms
deploy checks the enabled Pages source before writing: gh-pagesnot recordedpassed19.63 ms
deploy checks the enabled Pages source before writing: mainnot recordedpassed30.39 ms
deploy checks the enabled Pages source before writing: disablednot recordedpassed17.67 ms
deploy succeeds only once Pages publishes the pushed commit: an unrelated errored build is newestnot recordedpassed140.26 ms
deploy succeeds only once Pages publishes the pushed commit: a retried build follows an errored onenot recordedpassed28.04 ms
deploy succeeds only once Pages publishes the pushed commit: the build errorsnot recordedpassed54.7 ms
deploy succeeds only once Pages publishes the pushed commit: the commit is never builtnot recordedpassed180.31 ms
deploy succeeds only once Pages publishes the pushed commit: the answer arrives after the waitnot recordedpassed1540.7 ms
preview still stamps and uploads rendered pages when evidence is absent and validation failsnot recordedpassed59.93 ms
places external file rows under their verifier and renders shared files oncenot recordedpassed35.82 ms
accepts the preview workflow's base and run flags togethernot recordedpassed18.01 ms
formats external run durations to at most two decimals on every pagenot recordedpassed10.89 ms

External run evidence from test/studio-s5.test.ts

Test anchors: test:protocol.studio-export-contained, test:protocol.studio-intent-handoff, test:protocol.studio-intents-refresh, test:protocol.studio-memo-shared, test:protocol.studio-watch-plain. Specs verified by those bindings: spec:consumers.edit-model, spec:consumers.intent-composition, spec:consumers.intent-composition.proposal.memo, spec:consumers.intent-composition.proposal.memo.shared, spec:consumers.spec-studio.components, spec:consumers.spec-studio.export, spec:consumers.spec-studio.export.self-contained, spec:consumers.spec-studio.intent-panel, spec:consumers.spec-studio.intent-panel.refresh-keeps-intents, spec:consumers.spec-studio.publisher.watch, spec:consumers.spec-studio.publisher.watch.matches-plain-run, spec:consumers.spec-studio.responsive.

NameSuiteResultDuration
executes the bound example against a fresh worldRefreshing a tab keeps every gathered intent (spec:consumers.spec-studio.intent-panel.refresh-keeps-intents)passed10.32 ms
executes the bound example against a fresh worldRecipe 49 and the composing panel write one memo for one proposal (spec:consumers.intent-composition.proposal.memo.shared)passed4.64 ms
executes the bound example against a fresh worldA Pack's export opens alone and keeps its links inside it (spec:consumers.spec-studio.export.self-contained)passed63.72 ms
executes the bound example against a fresh worldEach watch cycle writes the page set a plain run writes (spec:consumers.spec-studio.publisher.watch.matches-plain-run)passed133.79 ms
keeps unsupported intents apart and expands Pack members only against the stamped basenot recordedpassed2.36 ms
returns the same schema problems as recipe 38 and renders in any corpusnot recordedpassed8.22 ms
composes locally without changing source or requesting a network servicenot recordedpassed1.63 ms
keeps the last local intents when storage refuses writesnot recordedpassed0.28 ms
keeps unsaved local intents when storage remains readable but its quota refuses writesnot recordedpassed0.34 ms
rewrites SVG and accessibility references without changing subject attributes or authored textnot recordedpassed3.98 ms
opens disclosures for print and restores exactly their prior statenot recordedpassed1.63 ms
leaves Mermaid source closed for print unless the reader opened itnot recordedpassed1.13 ms
stops the actual Studio watch process with exit zero on SIGINTnot recordedpassed492.7 ms
removes a failed watch publication, keeps watching and recovers on the next carrier editnot recordedpassed38.33 ms
ships a phone layout and a print stylesheet for the whole canvasnot recordedpassed14.52 ms
keeps exports graph-only when the browsing pages receive a base and run recordsnot recordedpassed25.05 ms
starts no cycle for source or input-file eventsnot recordedpassed26.7 ms
merges concurrent panels before gathering or discarding and flags rejected storage recordsnot recordedpassed0.51 ms
refreshes the browser panel on storage and pageshow and removes those listeners on disconnectnot recordedpassed1.55 ms
prefills compose with the authored entry text including code spans and no rendered annotationsnot recordedpassed13.61 ms
omits blank exact text and reports whitespace requests in the compose dialognot recordedpassed2.32 ms
uses the stamp base, labels fields, orders actions and copies and saves the named documentsnot recordedpassed4.06 ms
copies distinct actions and recorded scopes for both Pack choices without a stampnot recordedpassed3.09 ms
keeps Pack framing changes apart and gathers scenario editor steps verbatimnot recordedpassed2.64 ms
matches the literal memo for the shared proposal, including the full relation and documentnot recordedpassed0.82 ms
keeps the last watch pages when an optional base becomes unreadable, just like a plain runnot recordedpassed1014.27 ms
inlines the selected stylesheet asset in exports and publishes those same style bytesnot recordedpassed22.14 ms
introduces studio before its watch option and gives recipe 49 a use casenot recordedpassed1.43 ms
renders edit scenario steps outside inert templates without scriptnot recordedpassed1.08 ms
renders propose scenario steps outside inert templates without scriptnot recordedpassed0.75 ms
writes both memo reasons as code spans: "<details>Review the design.</details>", "`Keep` the ``literal`` reason`"not recordedpassed0.71 ms
writes both memo reasons as code spans: "`Review` the ``design`` reason`", "<details>Keep the change.</details>"not recordedpassed0.44 ms
fences requests so their Markdown cannot alter the memo: "Fix a typo.\n<!--"not recordedpassed0.96 ms
fences requests so their Markdown cannot alter the memo: "Use this text.\n```\n## Forged heading\n``````\n<!--hidden-->"not recordedpassed0.81 ms
contains phone navigation, stamp and wide tables within the viewportnot recordedpassed12.93 ms
keeps the maturity caption readable and empty cells compact on a phonenot recordedpassed25.57 ms
aligns maturity cell counts with the empty cell dashesnot recordedpassed14.09 ms
keeps table headers and one-word cells intact while allowing word-boundary wrappingnot recordedpassed18.22 ms
keeps natural desktop diagram size and fits only on phonesnot recordedpassed10.27 ms
hides phone scroll advice and closed source in print while keeping opened source printablenot recordedpassed13.92 ms

External run evidence from test/studio-slice.test.ts

Test anchors: test:protocol.studio-slice-architecture, test:protocol.studio-slice-dependency, test:protocol.studio-slice-page. Specs verified by those bindings: spec:consumers.spec-studio.diagram-kinds.dependency, spec:consumers.spec-studio.diagram-kinds.scoped-architecture, spec:consumers.spec-studio.slice-page.

NameSuiteResultDuration
renders the complete answer in order, keeps held examples folded and independent examples separateslice pagepassed41.17 ms
keeps declared, unreadable and comparison words in their own design cellsslice pagepassed0.84 ms
writes the slice's Pack id as text in exports instead of a relative file pathslice pagepassed0.62 ms
names each manifest member that resolves to no Spec beside the summaryslice pagepassed10.28 ms
uses singular summary nouns and captions that add to the section headingsslice pagepassed50.67 ms
keeps every link inside the complete page set and gives every id one ownerslice pagepassed47.47 ms
names empty architecture and empty sections without inventing bindingsslice pagepassed0.69 ms
stacks the member's next rung before the labelled design and code runs on a phoneslice pagepassed8.77 ms
preserves single-member depths and opens complete text when no height-reducing fold fitsslice dependency drawingpassed1.47 ms
aggregates boundary arrows before testing the bound, retaining every original relation in textslice dependency drawingpassed3.37 ms
points from the Mermaid source disclosure to the full text equivalentslice dependency drawingpassed0.2 ms
uses supplied depths, folds its boundary even below the bound, and retains full text and nonordering arrowsslice dependency drawingpassed3.52 ms
folds largest complete bands first and opens text when protected boundary boxes exceed the boundslice dependency drawingpassed1.82 ms
gives repeated scopes distinct fold element ids through their drawing occurrenceslice dependency drawingpassed2.52 ms
keeps synthetic boundary identifiers out of the visible box identity lineslice dependency drawingpassed0.76 ms
gives context and layer folds distinct ids and preserves all original rowsscoped architecture drawingpassed6.08 ms
keeps planned and anchored identities apart, folds outside context and retains original unit edgesscoped architecture drawingpassed5.56 ms
names uses, planned uses and realization in the legend and labels links only when a realization is drawnscoped architecture drawingpassed5.33 ms
renders question fields as linked prose and dependency titles as plain textnot recordedpassed0.56 ms
combines relations on one ordered pair while retaining every original text rownot recordedpassed0.73 ms

External run evidence from test/testing.test.ts

Test anchors: test:protocol.runnable-modules. Specs verified by those bindings: spec:extraction.runnable-modules.

NameSuiteResultDuration
compares Spec Then params, oracle payload, and the observed outcome before assertionsgenerated registrar testing runtimepassed1.86 ms
invokes the scenario-level product call only once across repeated When stepsgenerated registrar testing runtimepassed0.86 ms
renders the matching contract step for a Spec/oracle payload mismatchgenerated registrar testing runtimepassed0.9 ms
stops before domain assertions when observation disagrees with the oraclegenerated registrar testing runtimepassed1.11 ms
emits a scenario diagnostic when the oracle selects no authored Thengenerated registrar testing runtimepassed0.33 ms
refuses incomplete-point comparison at Then without calling the oraclegenerated registrar testing runtimepassed0.47 ms

External run evidence from test/upgrade-kit.test.ts

Test anchors: test:protocol.capability-adoption.counts-a-corpus, test:protocol.rule-key-proposal.collision-and-unkeyable, test:protocol.rule-key-proposal.proposal-applies-clean, test:protocol.upgrade-guide. Specs verified by those bindings: spec:consumers.upgrade-kit, spec:consumers.upgrade-kit.capability-adoption, spec:consumers.upgrade-kit.capability-adoption.counts-a-corpus, spec:consumers.upgrade-kit.rule-key-proposal, spec:consumers.upgrade-kit.rule-key-proposal.collision-and-unkeyable, spec:consumers.upgrade-kit.rule-key-proposal.proposal-applies-clean.

NameSuiteResultDuration
applies unchanged scopes while sending only moved changes to a personupgrade kitpassed1.93 ms
names a carrying Spec in every guide sectionupgrade kitpassed0.58 ms
teaches the upgrade steps in the pinned orderupgrade kitpassed1.14 ms
teaches epic reparenting and advisory roadmap adoptionupgrade kitpassed0.48 ms
runs the guide's rules file on a clean corpus with no address parametersupgrade kitpassed26.18 ms
names the recipes' carrying Specs and teaches rule-key proposal as the rule-key actionupgrade kitpassed1.8 ms
ships the guide and names every reported capability's law and measurementupgrade kitpassed17.05 ms
counts rules, reasons and unknown external perspectivesupgrade kitpassed21.17 ms
coins collisions and lists an unkeyable entryupgrade kitpassed11.27 ms
executes the bound example against a fresh worldCapability adoption counts keyed rules and reasoned relations (spec:consumers.upgrade-kit.capability-adoption.counts-a-corpus)passed9.23 ms
executes the bound example against a fresh worldA rule-key proposal passes the proposal check and validates once applied (spec:consumers.upgrade-kit.rule-key-proposal.proposal-applies-clean)passed12.56 ms
executes the bound example against a fresh worldTwo rules that coin one key stay apart, and a rule with no ASCII word stays unkeyed (spec:consumers.upgrade-kit.rule-key-proposal.collision-and-unkeyable)passed13.93 ms
counts distinct step skeletons and vocabulary keys inherited through refinescapability adoption detailspassed15.36 ms
counts distinct step skeletons and vocabulary keys inherited through verifiescapability adoption detailspassed17.05 ms
counts repeated vocabulary and example steps once per skeleton within a Speccapability adoption detailspassed3.68 ms
counts all capabilities and deduplicates shared components and repeated Pack memberscapability adoption detailspassed20.68 ms
diagnoses detail nullcapability adoption detailspassed2.27 ms
diagnoses detail 1capability adoption detailspassed2.16 ms
diagnoses detail "all"capability adoption detailspassed2.08 ms
diagnoses detail {}capability adoption detailspassed2.06 ms
diagnoses detail "spec:missing"capability adoption detailspassed1.97 ms
diagnoses detail truecapability adoption detailspassed1.94 ms
drops possessives and apostrophes before coining keysrule-key proposal detailspassed2.38 ms
preserves scope and entry order and skips existing keys and tagsrule-key proposal detailspassed12.62 ms
diagnoses both scopes even when each resolvesrule-key proposal detailspassed2.4 ms
diagnoses invalid parameters {}rule-key proposal detailspassed2.06 ms
diagnoses invalid parameters {"commit":""}rule-key proposal detailspassed2.07 ms
diagnoses invalid parameters {"commit":1}rule-key proposal detailspassed1.99 ms
diagnoses invalid parameters {"commit":"abc","pack":"pack:missing"}rule-key proposal detailspassed1.73 ms
diagnoses invalid parameters {"commit":"abc","specs":["spec:missing"]}rule-key proposal detailspassed2.12 ms
diagnoses invalid parameters {"commit":"abc","specs":[],"pack":"pack:missing"}rule-key proposal detailspassed1.32 ms
diagnoses invalid parameters {"commit":"abc","specs":"all"}rule-key proposal detailspassed1.26 ms
drops leading digit words before checking word repeatsnot recordedpassed1.48 ms

External run evidence from test/validator-audit.test.ts

Test anchors: test:protocol.validator-self-testing.duplicate-pair-named, test:protocol.validator-self-testing.overeager-check-named, test:protocol.validator-self-testing.shipped-checks-paired, test:protocol.validator-self-testing.silent-check-named, test:protocol.validator-self-testing.unpaired-check-named, test:protocol.validator-self-testing.unregistered-id-named. Specs verified by those bindings: spec:validation.validator-self-testing, spec:validation.validator-self-testing.duplicate-pair-named, spec:validation.validator-self-testing.overeager-check-named, spec:validation.validator-self-testing.shipped-checks-paired, spec:validation.validator-self-testing.silent-check-named, spec:validation.validator-self-testing.unpaired-check-named, spec:validation.validator-self-testing.unregistered-id-named.

NameSuiteResultDuration
executes the bound example against a fresh worldEvery shipped check reports its refusing probe and leaves its near miss alone (spec:validation.validator-self-testing.shipped-checks-paired)passed116.59 ms
executes the bound example against a fresh worldA check that stops reporting is named silent (spec:validation.validator-self-testing.silent-check-named)passed53.95 ms
executes the bound example against a fresh worldA check that reports its near miss is named overeager (spec:validation.validator-self-testing.overeager-check-named)passed48.87 ms
executes the bound example against a fresh worldA registered check without a probe pair is named unpaired (spec:validation.validator-self-testing.unpaired-check-named)passed51.14 ms
executes the bound example against a fresh worldA check paired twice is named (spec:validation.validator-self-testing.duplicate-pair-named)passed73.99 ms
executes the bound example against a fresh worldA finding id the source writes outside every registry is named (spec:validation.validator-self-testing.unregistered-id-named)passed44.88 ms
reads all literal quote forms, ignores comments, and locates incomplete idsnot recordedpassed1.47 ms
names stray pairs, runtime-only ids and unresolved source locations, once and sortednot recordedpassed0.33 ms

External run evidence from test/validators.test.ts

Test anchors: test:protocol.prose-mentions. Specs verified by those bindings: spec:validation.prose-mentions.

NameSuiteResultDuration
reports referential integrity across relations, pack members, modelRefs, and bindingsgraph validatorspassed8.09 ms
offers a "did you mean" suggestion only when one nearest id is unambiguous (L2)graph validatorspassed1.15 ms
reports duplicate node ids — the graph backstop behind the extractor's per-site errorsgraph validatorspassed1.25 ms
keeps the claim taxonomy uncollapsed: a declared satisfies edge violates the edge contractgraph validatorspassed0.96 ms
admits no inferred edge on the ratified edge types: the claim ships designed-in and emptygraph validatorspassed1.09 ms
rejects a node claim its nodeType never carriesgraph validatorspassed0.6 ms
rejects wrong-kind endpoints on the kind-typed relations — constrainedBy, decidedBy, supersedesgraph validatorspassed1.42 ms
accepts the valid kind-typed relation shapes — rule/constraint bounds, a decision decider, decision supersedes decisiongraph validatorspassed0.84 ms
fails the anchors-resolve ready clause when a binding edge has no binding node behind itgraph validatorspassed0.9 ms
reports a readiness-floor failure with the spec id, stated rung, and failing clausegraph validatorspassed0.83 ms
surfaces the gap only while no verifier resolves — a derived fact silences it, a stated one never doesgraph validatorspassed2.67 ms
exempts decision-kind Specs from the gap signal while other kinds still warngraph validatorspassed0.62 ms
never lets an anchored verifies edge from a non-Anchor source enable an example — fail closedgraph validatorspassed4.46 ms
refuses an oracle Anchor as the test binding for a direct verifiergraph validatorspassed4 ms
refuses an oracle Anchor as the test binding for a example verifiergraph validatorspassed1.12 ms
confers satisfies only when the duplicate target's first node is a Primitivegraph validatorspassed1.23 ms
confers direct verifies only when the duplicate target's first node is a Primitivegraph validatorspassed2.01 ms
confers example verifies only when the duplicate target's first node is a Primitivegraph validatorspassed2.84 ms
rejects stated delivery facts the graph does not earn — derived, never authoredgraph validatorspassed0.38 ms
rejects an omitted delivery fact the graph's resolving bindings derivegraph validatorspassed0.4 ms
fails closed on unratified descriptor values — a conformance error, never a crash or a silent floor skipgraph validatorspassed0.42 ms
returns a valid empty aggregate report without throwinggraph validatorspassed0.23 ms
composes cleanly over a valid non-empty model with bindings, a pack, and a model-kind modelRefgraph validatorspassed0.67 ms
reports nothing when every listed member has its one edge and every edge is listedconformance/pack-coherence — the members list and the belongsTo edges agreepassed0.28 ms
names a listed member with no belongsTo edge into the packconformance/pack-coherence — the members list and the belongsTo edges agreepassed0.29 ms
names a belongsTo edge whose source the members do not listconformance/pack-coherence — the members list and the belongsTo edges agreepassed0.24 ms
names a listed member that is no Spec when no edge carries it, and defers to the edge contract when one doesconformance/pack-coherence — the members list and the belongsTo edges agreepassed0.64 ms
leaves an absent listed member whose edge dangles to referential integrityconformance/pack-coherence — the members list and the belongsTo edges agreepassed0.59 ms
leaves an unlisted belongsTo edge from an absent source to referential integrityconformance/pack-coherence — the members list and the belongsTo edges agreepassed0.39 ms
leaves an unlisted belongsTo edge from a CodeNode to the edge contractconformance/pack-coherence — the members list and the belongsTo edges agreepassed0.35 ms
names both membership counts when one listed member has two belongsTo edgesconformance/pack-coherence — the members list and the belongsTo edges agreepassed0.26 ms
keeps the duplicate rule: a repeated member is named once, in authored order, with its countconformance/pack-coherence — the members list and the belongsTo edges agreepassed0.33 ms
passes on its contract row (anchored, Anchor → Primitive) and confers no delivery factthe models edge — the oracle anchor's contract rowpassed0.4 ms
rejects a declared claim on a models edge — the claim taxonomy is never collapsedthe models edge — the oracle anchor's contract rowpassed0.32 ms
rejects an oracle target that does not own a behavior example spacethe models edge — the oracle anchor's contract rowpassed0.33 ms
rejects competing oracle anchors for one parent example spacethe models edge — the oracle anchor's contract rowpassed0.37 ms
rejects a models edge whose Anchor does not use the oracle namespacethe models edge — the oracle anchor's contract rowpassed0.37 ms
accepts a rule-kind oracle target when the rule owns an example spacethe models edge — the oracle anchor's contract rowpassed0.23 ms
rejects a models edge from a non-Anchor source — the endpoints are typedthe models edge — the oracle anchor's contract rowpassed0.25 ms
flags a dangling models target through referential integrity, like every edgethe models edge — the oracle anchor's contract rowpassed0.31 ms
refuses a malformed token with the id grammar's own reasonconformance/prose-mentions — prose mentions and their entry addressespassed0.7 ms
refuses a missing target and suggests the unique nearest idconformance/prose-mentions — prose mentions and their entry addressespassed0.52 ms
refuses a missing target without a suggestion on a tie, once per path and distinct tokenconformance/prose-mentions — prose mentions and their entry addressespassed0.95 ms
refuses an entry address whose key the target's section does not holdconformance/prose-mentions — prose mentions and their entry addressespassed3.76 ms
never resolves an address to a section's descriptionconformance/prose-mentions — prose mentions and their entry addressespassed0.47 ms
resolves to an open question that carries the key, beside unkeyed and prose questionsconformance/prose-mentions — prose mentions and their entry addresses > a question addresspassed0.4 ms
fails every mention of an old address once its key is renamedconformance/prose-mentions — prose mentions and their entry addresses > a question addresspassed0.38 ms
finds no entry on a Spec whose questions carry no key, or that has noneconformance/prose-mentions — prose mentions and their entry addresses > a question addresspassed0.43 ms
reads question keys only, never the Design or UI keys of the Specconformance/prose-mentions — prose mentions and their entry addresses > a question addresspassed0.33 ms
treats description as an ordinary question keyconformance/prose-mentions — prose mentions and their entry addresses > a question addresspassed0.37 ms
refuses a question address with a key off the grammar by the id grammar's reasonconformance/prose-mentions — prose mentions and their entry addresses > a question addresspassed0.78 ms
checks a self-address for its entry and never warns on itconformance/prose-mentions — prose mentions and their entry addressespassed0.35 ms
warns once for a pair across three locations, first in scan orderconformance/prose-mentions — prose mentions and their entry addressespassed8.1 ms
writes one location in the singularconformance/prose-mentions — prose mentions and their entry addressespassed0.34 ms
lets a declared relation in the reverse direction back the mentionconformance/prose-mentions — prose mentions and their entry addressespassed0.22 ms
counts an address mention toward its pair, resolved or notconformance/prose-mentions — prose mentions and their entry addressespassed0.33 ms
never scans the gwt and gwt-vocabulary fences, and skips them by position onlyconformance/prose-mentions — prose mentions and their entry addressespassed0.25 ms
keeps authored order inside an object nested in design, so a nested description is not read firstconformance/prose-mentions — prose mentions and their entry addressespassed0.25 ms
keeps authored order inside an object nested in ui, so a nested description is not read firstconformance/prose-mentions — prose mentions and their entry addressespassed0.19 ms
scans arrays nested in behavior examples, as the mention audit doesconformance/prose-mentions — prose mentions and their entry addressespassed0.45 ms
still warns on a pair joined only by an edge whose claim is anchoredconformance/prose-mentions — prose mentions and their entry addressespassed0.27 ms
still warns on a pair joined only by an edge whose claim is inferredconformance/prose-mentions — prose mentions and their entry addressespassed0.17 ms
resolves an address only to an own key, never an inherited oneconformance/prose-mentions — prose mentions and their entry addressespassed0.24 ms
puts the pair warning's first path in authored entry order, with description firstconformance/prose-mentions — prose mentions and their entry addressespassed0.35 ms
puts the pair warning's first path in a description authored after another mentioning entry, with description firstconformance/prose-mentions — prose mentions and their entry addressespassed0.19 ms
suggests the nearest Spec id for a missing target written as an addressconformance/prose-mentions — prose mentions and their entry addressespassed0.23 ms
reads the whole token through an underscore and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.3 ms
reads the whole token through an underscore and a letter and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.21 ms
reads the whole token through a slash and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.18 ms
reads the whole token through a slash and a letter and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.18 ms
reads the whole token through a comma and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.18 ms
reads the whole token through a comma and a letter and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.18 ms
reads the whole token through a letter outside ASCII and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.32 ms
reads the whole token through an escaped underscore and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.23 ms
reads the whole token through a combining mark and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.76 ms
reads the whole token through a combining mark after an entry key and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.29 ms
reads the whole token through a zero-width space and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.22 ms
reads the whole token through fullwidth connector punctuation and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.2 ms
reads the whole token through a NUL and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.21 ms
reads the whole token through an escape character and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.19 ms
reads the whole token through a delete character and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.21 ms
reads the whole token through a C1 control character and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.19 ms
reads the whole token through a hyphenated entry key and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.2 ms
reads the whole token through an entry suffix with no key and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.18 ms
reads the whole token through an entry suffix outside design, ui, question, and rule and refuses it, never the existing prefixconformance/prose-mentions — prose mentions and their entry addressespassed0.18 ms
reads the clean id through Markdown punctuation: a sentence dotconformance/prose-mentions — prose mentions and their entry addressespassed0.23 ms
reads the clean id through Markdown punctuation: a commaconformance/prose-mentions — prose mentions and their entry addressespassed0.18 ms
reads the clean id through Markdown punctuation: a colonconformance/prose-mentions — prose mentions and their entry addressespassed0.26 ms
reads the clean id through Markdown punctuation: a closing parenthesisconformance/prose-mentions — prose mentions and their entry addressespassed0.22 ms
reads the clean id through Markdown punctuation: boldconformance/prose-mentions — prose mentions and their entry addressespassed0.18 ms
reads the clean id through Markdown punctuation: emphasisconformance/prose-mentions — prose mentions and their entry addressespassed0.19 ms
reads the clean id through Markdown punctuation: strikethroughconformance/prose-mentions — prose mentions and their entry addressespassed0.17 ms
reads the clean id through Markdown punctuation: backticksconformance/prose-mentions — prose mentions and their entry addressespassed0.17 ms
reads the clean id through Markdown punctuation: ASCII double quotesconformance/prose-mentions — prose mentions and their entry addressespassed0.15 ms
reads the clean id through Markdown punctuation: ASCII single quotesconformance/prose-mentions — prose mentions and their entry addressespassed0.15 ms
reads the clean id through Markdown punctuation: typographic double quotesconformance/prose-mentions — prose mentions and their entry addressespassed0.16 ms
reads the clean id through Markdown punctuation: typographic single quotesconformance/prose-mentions — prose mentions and their entry addressespassed0.14 ms
reads the clean id through Markdown punctuation: an em dashconformance/prose-mentions — prose mentions and their entry addressespassed0.14 ms
reads the clean id through Markdown punctuation: an en dashconformance/prose-mentions — prose mentions and their entry addressespassed0.13 ms
reads the clean id through Markdown punctuation: an ellipsisconformance/prose-mentions — prose mentions and their entry addressespassed0.16 ms
reads the clean id through Markdown punctuation: an escaped starconformance/prose-mentions — prose mentions and their entry addressespassed0.14 ms
reads the clean id through Markdown punctuation: an escaped exclamation markconformance/prose-mentions — prose mentions and their entry addressespassed0.13 ms
reads the clean id through Markdown punctuation: U+0085conformance/prose-mentions — prose mentions and their entry addressespassed0.13 ms
reads the clean id through Markdown punctuation: a no-break spaceconformance/prose-mentions — prose mentions and their entry addressespassed0.12 ms
reads the clean id through Markdown punctuation: a tabconformance/prose-mentions — prose mentions and their entry addressespassed0.13 ms
reads the clean id through Markdown punctuation: an arrowconformance/prose-mentions — prose mentions and their entry addressespassed0.13 ms
reads a placeholder or a bare prefix as prose, not a mentionconformance/prose-mentions — prose mentions and their entry addressespassed0.19 ms
strips a sentence-final dot from a tokenconformance/prose-mentions — prose mentions and their entry addressespassed0.23 ms

External run evidence from test/vault-examples.test.ts

Test anchors: test:protocol.consumers.obsidian-vault.bases.views-match-sources, test:protocol.consumers.obsidian-vault.changed-note-refused, test:protocol.consumers.obsidian-vault.failed-extraction-keeps-notes, test:protocol.consumers.obsidian-vault.failed-extraction-recovered, test:protocol.consumers.obsidian-vault.fresh-vault, test:protocol.consumers.obsidian-vault.hidden-file-refused, test:protocol.consumers.obsidian-vault.interrupted-run-recovered, test:protocol.consumers.obsidian-vault.iteration.watch-rewrites-changed-notes, test:protocol.consumers.obsidian-vault.iteration.watch-source-anchor, test:protocol.consumers.obsidian-vault.notes.case-collision-refused, test:protocol.consumers.obsidian-vault.notes.entry-address-link, test:protocol.consumers.obsidian-vault.notes.term-address-link, test:protocol.consumers.obsidian-vault.notes.unresolved-mention-stays, test:protocol.consumers.obsidian-vault.person-notes-survive, test:protocol.consumers.obsidian-vault.unknown-note-refused, test:protocol.consumers.obsidian-vault.vault-in-build-path-refused. Specs verified by those bindings: spec:consumers.obsidian-vault, spec:consumers.obsidian-vault.bases, spec:consumers.obsidian-vault.bases.views-match-sources, spec:consumers.obsidian-vault.changed-note-refused, spec:consumers.obsidian-vault.failed-extraction-keeps-notes, spec:consumers.obsidian-vault.failed-extraction-recovered, spec:consumers.obsidian-vault.fresh-vault, spec:consumers.obsidian-vault.hidden-file-refused, spec:consumers.obsidian-vault.interrupted-run-recovered, spec:consumers.obsidian-vault.iteration, spec:consumers.obsidian-vault.iteration.watch-rewrites-changed-notes, spec:consumers.obsidian-vault.iteration.watch-source-anchor, spec:consumers.obsidian-vault.notes, spec:consumers.obsidian-vault.notes.case-collision-refused, spec:consumers.obsidian-vault.notes.entry-address-link, spec:consumers.obsidian-vault.notes.term-address-link, spec:consumers.obsidian-vault.notes.unresolved-mention-stays, spec:consumers.obsidian-vault.person-notes-survive, spec:consumers.obsidian-vault.unknown-note-refused, spec:consumers.obsidian-vault.vault-in-build-path-refused.

NameSuiteResultDuration
keeps incomplete oracle points unspecifiednot recordedpassed1.89 ms
executes the bound example against a fresh worldA fresh vault is written the same way twice and every link resolves (spec:consumers.obsidian-vault.fresh-vault)passed39.02 ms
executes the bound example against a fresh worldA regeneration removes a note that left the graph and keeps a person's notes (spec:consumers.obsidian-vault.person-notes-survive)passed20.74 ms
executes the bound example against a fresh worldA note a person wrote inside the generated folder refuses the regeneration (spec:consumers.obsidian-vault.unknown-note-refused)passed5.75 ms
executes the bound example against a fresh worldA generated note a person changed refuses the regeneration and keeps the edit (spec:consumers.obsidian-vault.changed-note-refused)passed4.83 ms
executes the bound example against a fresh worldA person's file under a temporary's name refuses the regeneration (spec:consumers.obsidian-vault.hidden-file-refused)passed6.02 ms
executes the bound example against a fresh worldA vault directory the build removes refuses the run and keeps a person's notes (spec:consumers.obsidian-vault.vault-in-build-path-refused)passed1.15 ms
executes the bound example against a fresh worldA run after a stopped synchronization finishes it (spec:consumers.obsidian-vault.interrupted-run-recovered)passed33.58 ms
executes the bound example against a fresh worldA failed extraction keeps the notes and says so on the index (spec:consumers.obsidian-vault.failed-extraction-keeps-notes)passed10.21 ms
executes the bound example against a fresh worldThe run after a failed extraction passes the guard and restores the index (spec:consumers.obsidian-vault.failed-extraction-recovered)passed20.42 ms
executes the bound example against a fresh worldAn entry address in prose opens the entry's block in its Spec's note (spec:consumers.obsidian-vault.notes.entry-address-link)passed15.36 ms
executes the bound example against a fresh worldA mention of an entry that does not exist stays as written (spec:consumers.obsidian-vault.notes.unresolved-mention-stays)passed9.95 ms
executes the bound example against a fresh worldA keyed Model term gets a note, and its address in prose opens the term's block (spec:consumers.obsidian-vault.notes.term-address-link)passed14.06 ms
executes the bound example against a fresh worldTwo Specs whose notes differ only in case refuse the run (spec:consumers.obsidian-vault.notes.case-collision-refused)passed2.55 ms
executes the bound example against a fresh worldEach standing view selects what its source selects (spec:consumers.obsidian-vault.bases.views-match-sources)passed24.64 ms
executes the bound example against a fresh worldA carrier edit under watch rewrites only the notes it changes (spec:consumers.obsidian-vault.iteration.watch-rewrites-changed-notes)passed446.54 ms
executes the bound example against a fresh worldAn anchor added in a source file under watch rewrites the Spec's note (spec:consumers.obsidian-vault.iteration.watch-source-anchor)passed516.04 ms

External run evidence from test/vault.test.ts

Test anchors: test:protocol.vault-priority. Specs verified by those bindings: spec:consumers.obsidian-vault.notes.

NameSuiteResultDuration
writes a fresh vault from the CLInot recordedpassed20.11 ms
changes the Pack note's meaning when only advisory priority changesnot recordedpassed8.45 ms
refuses vault placement generated/graph.json before the build changes anythingnot recordedpassed2.01 ms
refuses vault placement generated/graph.json.tmp before the build changes anythingnot recordedpassed1.16 ms
refuses vault placement generated/contracts before the build changes anythingnot recordedpassed1.16 ms
refuses vault placement generated/contracts.tmp before the build changes anythingnot recordedpassed1.06 ms
refuses vault placement generated/registrars.json before the build changes anythingnot recordedpassed1 ms
refuses vault placement generated/registrars.json.tmp before the build changes anythingnot recordedpassed1.04 ms
refuses vault placement generated/imports.json before the build changes anythingnot recordedpassed1.16 ms
refuses vault placement generated/imports.json.tmp before the build changes anythingnot recordedpassed1.09 ms
refuses vault placement generated/design-review before the build changes anythingnot recordedpassed1.18 ms
refuses vault placement generated/design-review.tmp before the build changes anythingnot recordedpassed4.25 ms
refuses vault placement generated/census before the build changes anythingnot recordedpassed1.12 ms
refuses vault placement generated/census.tmp before the build changes anythingnot recordedpassed1.87 ms
refuses vault placement generated/mermaid before the build changes anythingnot recordedpassed1.1 ms
refuses vault placement generated/mermaid.tmp before the build changes anythingnot recordedpassed1.13 ms
refuses vault placement generated/gherkin before the build changes anythingnot recordedpassed0.86 ms
refuses vault placement generated/gherkin.tmp before the build changes anythingnot recordedpassed4.68 ms
refuses vault placement generated/spec-studio before the build changes anythingnot recordedpassed1.09 ms
refuses vault placement generated/spec-studio.tmp before the build changes anythingnot recordedpassed1.53 ms
refuses vault placement generated/Design-Review before the build changes anythingnot recordedpassed0.76 ms
refuses vault placement generated/CONTRACTS/new before the build changes anythingnot recordedpassed0.84 ms
refuses vault placement generated before the build changes anythingnot recordedpassed0.71 ms
refuses vault placement . before the build changes anythingnot recordedpassed0.76 ms
refuses discoverable notes before the buildnot recordedpassed0.98 ms
refuses discoverable src/vault before the buildnot recordedpassed0.89 ms
accepts an explicitly excluded vault and a vault outside the extraction rootnot recordedpassed12.34 ms
refuses invalid vault options "--root"not recordedpassed0.2 ms
refuses invalid vault options "--out"not recordedpassed0.07 ms
refuses invalid vault options "--root"not recordedpassed0.05 ms
refuses invalid vault options "--out"not recordedpassed0.05 ms
refuses invalid vault options "--root"not recordedpassed0.05 ms
refuses invalid vault options "--out"not recordedpassed0.24 ms
refuses invalid vault options "."not recordedpassed0.07 ms
refuses invalid vault options "--root"not recordedpassed0.05 ms
refuses invalid vault options "--check-clean"not recordedpassed0.05 ms
refuses invalid vault options "--vault"not recordedpassed0.04 ms
refuses invalid vault options "--wat"not recordedpassed0.04 ms
rejects malformed lists, including duplicate and reordered pathsnot recordedpassed1.5 ms
guards hidden unknowns, changed notes, links and special files without cleanupnot recordedpassed12.78 ms
refuses a symlink as the generated foldernot recordedpassed0.35 ms
recognizes a complete interrupted note and refuses a truncated temporarynot recordedpassed3.63 ms
escapes Obsidian constructs and preserves other code spansnot recordedpassed3.61 ms
renders unresolved relation ends and missing exercised rules as codenot recordedpassed5.03 ms
puts subject findings on notes and every other finding on the indexnot recordedpassed2.73 ms
keeps build outputs untouched on a case collisionnot recordedpassed2.83 ms
makes generate refuse an edited vault before invalidating any rootnot recordedpassed14.86 ms
uses --vault for generate and leaves it alone in check modenot recordedpassed97.8 ms
preserves literal backslashes before escaped Obsidian constructsnot recordedpassed0.56 ms
orders integer-looking file-list paths by code unitsnot recordedpassed0.37 ms
vault preserves a note saved during extractionnot recordedpassed13.75 ms
generate preserves a note saved during extractionnot recordedpassed8.76 ms
vault preserves a note saved during failed extractionnot recordedpassed9.9 ms
generate preserves a note saved during failed extractionnot recordedpassed14.19 ms
rejects stale synchronization state before writing a transitional listnot recordedpassed1.01 ms
keeps rule block ids separate from example-space prosenot recordedpassed3.14 ms
rejects links whose target block id has a lazy paragraph continuationnot recordedpassed1.15 ms
refuses case collisions in family directories before changing any filenot recordedpassed2.09 ms
vault renders only extraction errors in the failed indexnot recordedpassed3.43 ms
generate renders only extraction errors in the failed indexnot recordedpassed2.9 ms
prunes every empty directory under sdp after removing stale notesnot recordedpassed1.32 ms
refuses a vault holding a prior registrar sibling before the buildnot recordedpassed1.76 ms
wraps the generate help paragraph within the established widthnot recordedpassed0.18 ms

External run evidence from test/vitest-adapter.test.ts

Test anchors: test:protocol.example-runner-cleanup. Specs verified by those bindings: spec:extraction.example-runner.

NameSuiteResultDuration
awaits cleanup after a failing step, cleanup also fails: falsenot recordedpassed2.57 ms
awaits cleanup after a failing step, cleanup also fails: truenot recordedpassed0.39 ms
fails with cleanup's error when the steps passnot recordedpassed0.28 ms
awaits cleanup after passing stepsnot recordedpassed0.59 ms
preserves a factory failure without invoking cleanupnot recordedpassed0.74 ms

Unjoined records

  • annotation-forms: a comment-form file that imports nothing and a constant-form file on the anchors subpath derive one clean graph · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-corpora.test.ts · passed · no test anchor in that file
  • annotation-refusals: every refusal of the two forms reports once and withholds its anchor · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-corpora.test.ts · passed · no test anchor in that file
  • reifies the constant form with plural targets through the anchors subpath · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-forms.test.ts · passed · no test anchor in that file
  • reifies the comment form from a file that imports nothing, at the block's first line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-forms.test.ts · passed · no test anchor in that file
  • gives identical graph data to identical content in either form · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-forms.test.ts · passed · no test anchor in that file
  • reads every top-level /** block: above an import, several before one statement, after the last, alone in a file · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-forms.test.ts · passed · no test anchor in that file
  • refuses a reserved tag in a nested position and never reads a non-doc comment · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-forms.test.ts · passed · no test anchor in that file
  • refuses a reserved tag in a JSX expression and reads nothing from JSX text · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-forms.test.ts · passed · no test anchor in that file
  • refuses a misspelled reserved tag rather than reading it as prose · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-forms.test.ts · passed · no test anchor in that file
  • reports the same duplicate id across the two forms · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-forms.test.ts · passed · no test anchor in that file
  • ignores consumer-local modules whose relative names resemble Protocol builders · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-trust.test.ts · passed · no test anchor in that file
  • recognizes deep relative imports only when they resolve to the Protocol builder modules · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-trust.test.ts · passed · no test anchor in that file
  • trusts the zero-dependency anchors subpath exactly as the bare specifier · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-trust.test.ts · passed · no test anchor in that file
  • continues to recognize package imports in consumer repositories · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchor-trust.test.ts · passed · no test anchor in that file
  • builds to a module whose import closure is relative only: no node: specifier, no ts-morph, no dependency · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchors-subpath.test.ts · passed · no test anchor in that file
  • is published as an ESM subpath with its own types · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchors-subpath.test.ts · passed · no test anchor in that file
  • lists side-effect, transitive, and named external imports that the relative-only predicate rejects · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchors-subpath.test.ts · passed · no test anchor in that file
  • reads a spaced, commented, or attributed form, and never a call spelled in a string · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/anchors-subpath.test.ts · passed · no test anchor in that file
  • diagnoses malformed parameters {} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • diagnoses malformed parameters {"forbidden":[{"from":"wrong","to":"domain"}]} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • diagnoses malformed parameters {"isolated":["Bad"]} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • diagnoses malformed parameters {"isolated":[],"severity":"info"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • diagnoses malformed parameters {"forbidden":false} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • diagnoses malformed parameters {"isolated":"platform"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • diagnoses malformed parameters {"forbidden":null} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • diagnoses malformed parameters {"isolated":null} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • diagnoses malformed parameters {"isolated":[],"severity":null} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • answers unknown names before checking values · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • resolves members, deduplicates rules and sorts both breaches · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • sorts findings and unclassified edges independently of insertion order · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • reports missing components and attributes apart, ignoring same-component uses · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • reads matching 2-backtick opening spans for every component design value · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • reads matching 3-backtick opening spans for every component design value · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • refuses any parameter name · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • compares opening spans, role, context and the uses set · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • sorts differing fields and unrealized designs independently of insertion order · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • deduplicates padded uses and skips unstated fields · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • does not count unreadable realized designs as matching · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • lists an existing but unbound anchor and preserves unstated uses · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • recognizes component IDs with the stable-ID path grammar · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/architecture-recipes.test.ts · passed · no test anchor in that file
  • resolves the package name through the Vitest alias · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/bootstrap.test.ts · passed · no test anchor in that file
  • keeps the expected package.json bootstrap shape · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/bootstrap.test.ts · passed · no test anchor in that file
  • reifies a TypeScript carrier and derives a graph through the public root · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/bootstrap.test.ts · passed · no test anchor in that file
  • returns a syntax finding while a healthy TypeScript sibling remains usable · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/bootstrap.test.ts · passed · no test anchor in that file
  • returns a finding for unsupported Markdown carrier content · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/bootstrap.test.ts · passed · no test anchor in that file
  • fails for banned content in a nonignored untracked file · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • does not scan ignored generated output · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • accepts an in-repository directory symlink when its canonical files are tracked · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • fails closed when a tracked symlink escapes the repository · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • keeps each explicit temporal genre exclusion · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • exempts tracked orchestration genres under .omo drafts, plans, and evidence · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • still fails for a tracked .omo boulder containing a banned token · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • fails closed when file enumeration fails · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • fails closed when an enumerated file cannot be read · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • allows only the one byte-exact self-pattern line in the guard · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • fails when the self-pattern line has leading whitespace · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • fails when the self-pattern line has trailing whitespace · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • fails when the exact self-pattern line appears in another file · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • fails when the guard contains two exact self-pattern lines · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • fails when adjacent content shares the self-pattern line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/check-temporal.test.ts · passed · no test anchor in that file
  • teaches readers to derive roadmap needs each time · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/checkout-v1.test.ts · passed · no test anchor in that file
  • extracts the example with zero findings · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/checkout-v1.test.ts · passed · no test anchor in that file
  • keeps the below-ready unbound verifier as data with no finding · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/checkout-v1.test.ts · passed · no test anchor in that file
  • drops no sections: the example survives static extraction whole · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/checkout-v1.test.ts · passed · no test anchor in that file
  • golden correctness oracle: the extractor produces the right graph, byte-for-byte · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/checkout-v1.test.ts · passed · no test anchor in that file
  • carries the checkout manifest order through serialized members and reader context · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/checkout-v1.test.ts · passed · no test anchor in that file
  • keeps every authored reference target inside the checkout-v1 example graph · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/checkout-v1.test.ts · passed · no test anchor in that file
  • extracts both Packs and the five anchors (the anchored layer) · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/checkout-v1.test.ts · passed · no test anchor in that file
  • derives the delivery facts honestly: bound specs only, never the unenabled verifier · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/checkout-v1.test.ts · passed · no test anchor in that file
  • skips tooling and dot directories without following directory symlinks · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • collects every source refusal and publishes nothing · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • collects a canonicalization failure and still plans healthy siblings · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • deduplicates physical sources before dry-run and publication · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • reports an explicit non-carrier operand and withholds valid siblings · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • reports the publish error and every rollback survivor without throwing · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • does not overwrite a target created during publication · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • preserves a pre-existing temporary path that this invocation did not create · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • treats operands after -- as paths · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • deduplicates hardlink operands by physical identity during dry-run · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • deduplicates case-alias operands before dry-run and publication · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · skipped · no test anchor in that file
  • plans distinct physical operands independently during dry-run · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • publishes valid sources when an empty directory produces only a warning · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • fails an empty directory because it produces no import plan · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • withholds valid sources when an explicit non-carrier operand is an error · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • withholds valid sources when an operand cannot be stat'ed · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • keeps a published target when its temporary cleanup fails · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • reports unavailable hard-link support and rolls back publication · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • documents the hard-link requirement in import help · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import-review-08.test.ts · passed · no test anchor in that file
  • documents the import verb · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import.test.ts · passed · no test anchor in that file
  • prints would-be Markdown without writing when dry-run is requested · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import.test.ts · passed · no test anchor in that file
  • writes an imported document beside its TypeScript source · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import.test.ts · passed · no test anchor in that file
  • refuses an existing Markdown target without overwriting it · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import.test.ts · passed · no test anchor in that file
  • leaves every target absent when one carrier is refused · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import.test.ts · passed · no test anchor in that file
  • rejects an unknown import flag by name · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import.test.ts · passed · no test anchor in that file
  • refuses a requested path with no TypeScript carriers · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import.test.ts · passed · no test anchor in that file
  • renders refusal findings and exits 1 · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import.test.ts · passed · no test anchor in that file
  • renders an injected write failure as one operational error line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-import.test.ts · passed · no test anchor in that file
  • leaves help to the command dispatcher and parses only scaffold arguments · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • documents the scaffolder on the public help surface · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • prints focused help for sdp new spec --help · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • emits exact idea-rung bytes for kind behavior with a bare Behavior heading · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • emits exact idea-rung bytes for kind workflow with a bare Workflow heading · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • emits exact idea-rung bytes for kind rule with a bare Rule heading · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • emits exact idea-rung bytes for kind model with a bare Model heading · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • emits exact idea-rung bytes for kind decision with a bare Decision heading · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • emits exact idea-rung bytes for kind contract with a bare Contract heading · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • emits exact idea-rung bytes for kind example with a bare Behavior heading · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • emits the no-twin constraint scaffold: envelope, title, and Intent only · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • places the carrier at the cwd-relative PATH, creating parent directories · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • accepts a .pack.sdp.md path when the envelope names a Spec · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses to overwrite an existing target and leaves its bytes unchanged · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses a second write to the same PATH and keeps the first scaffold intact · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses an unknown kind and writes no bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses an invalid spec id and writes no bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses an invalid altitude and writes no bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses a missing title and writes no bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses a multiline title and writes no bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses a missing outcome and writes no bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses a multiline outcome and writes no bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses a path that escapes cwd and writes no bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses an absolute path and writes no bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses a non-markdown path and writes no bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses missing required flags before creating a file · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • extracts and validates every scaffolded kind with readiness staying idea · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • validates a cwd-relative scaffold through the real validate verb with 0 errors · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • rejects an existing parent symlink that escapes cwd before any outside write · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • rejects an escaping closest-existing ancestor before creating nested parents · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • cannot use an in-cwd parent symlink to bypass containment · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • rechecks the created parent boundary after mkdir and refuses a swapped outside parent · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • holds the parent through the write so a post-check symlink swap cannot escape cwd · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses extractor-rejected raw HTML outcome text before creating a file · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses other extractor-rejected outcome text and still writes no file · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • accepts lawful Markdown and plain-text outcomes that the extractor already accepts · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • does not treat new as an unknown top-level command · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-new-spec.test.ts · passed · no test anchor in that file
  • refuses an ignored registrar imported by tracked test/authored.ts · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-preflight.test.ts · passed · no test anchor in that file
  • refuses an ignored registrar imported by tracked test/authored.mts · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-preflight.test.ts · passed · no test anchor in that file
  • refuses an ignored registrar imported by tracked src/authored.mjs · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-preflight.test.ts · passed · no test anchor in that file
  • refuses an ignored registrar imported by tracked test/authored.tsx · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-preflight.test.ts · passed · no test anchor in that file
  • refuses an ignored registrar imported by tracked test/authored.cts · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-preflight.test.ts · passed · no test anchor in that file
  • refuses an ignored registrar imported by tracked test/authored.js · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-preflight.test.ts · passed · no test anchor in that file
  • refuses an ignored registrar imported by tracked test/authored.cjs · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-preflight.test.ts · passed · no test anchor in that file
  • accepts a tracked registrar and ignores imports in comments and strings · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-preflight.test.ts · passed · no test anchor in that file
  • ignores adoption imports inside generated registrars · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/cli-preflight.test.ts · passed · no test anchor in that file
  • exports the canonical kind literals · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/descriptors.test.ts · passed · no test anchor in that file
  • exports the canonical altitude literals · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/descriptors.test.ts · passed · no test anchor in that file
  • exports the canonical readiness literals · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/descriptors.test.ts · passed · no test anchor in that file
  • exports the canonical kind display labels · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/descriptors.test.ts · passed · no test anchor in that file
  • exports the optional section names · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/descriptors.test.ts · passed · no test anchor in that file
  • opens a keyed question with its key as inline code and leaves an unkeyed one as before · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/design-review-question-keys.test.ts · passed · no test anchor in that file
  • escapes the question's text after the key as it escapes an unkeyed question · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/design-review-question-keys.test.ts · passed · no test anchor in that file
  • shows description as an ordinary key · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/design-review-question-keys.test.ts · passed · no test anchor in that file
  • renders a TypeScript question whose key the carrier dropped as an unkeyed one · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/design-review-question-keys.test.ts · passed · no test anchor in that file
  • preserves authored boundary spaces inside inline code · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/design-review-review-08.test.ts · passed · no test anchor in that file
  • renders design values as authored list bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/design-review-review-08.test.ts · passed · no test anchor in that file
  • renders ui values as authored list bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/design-review-review-08.test.ts · passed · no test anchor in that file
  • preserves literal finding locations inside delimiter-safe table code spans · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/design-review-review-08.test.ts · passed · no test anchor in that file
  • loads and reports parse errors without the CLI component · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/evaluate-body-library.test.ts · passed · no test anchor in that file
  • rejects a Windows drive-letter absolute path instead of accepting an unmatched prefix · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/exclude-diagnostics.test.ts · passed · no test anchor in that file
  • keeps the library diagnostic distinct from CLI flag wording · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/exclude-diagnostics.test.ts · passed · no test anchor in that file
  • excludes only an exact prefix or a path-segment descendant · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/exclude-diagnostics.test.ts · passed · no test anchor in that file
  • discovers the Gherkin carrier suffix beside the existing carriers · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/exclude-diagnostics.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {"register":{"tokens":["E-1"]}} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {"register":{"tokens":["E-1"]},"pattern":"\\bE-\\d+\\b","severity":"fatal"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {"register":{"tokens":["E-1"]},"pattern":"\\bE-\\d+\\b","severity":null} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {"register":{"tokens":["E-1"]},"pattern":"\\bE-\\d+\\b","uncited":1} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {"register":{"tokens":["E-1"]},"pattern":"\\bE-\\d+\\b","uncited":null} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {"register":[],"pattern":"\\bE-\\d+\\b"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {"register":{"tokens":[""]},"pattern":"\\bE-\\d+\\b"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {"register":{"tokens":[{"token":"E-1","retired":"yes"}]},"pattern":"\\bE-\\d+\\b"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {"register":{"tokens":["E-1",{"token":"E-1","retired":true}]},"pattern":"\\bE-\\d+\\b"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {"register":{"tokens":["E-1"]},"pattern":"["} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {"register":{"tokens":["E-1"]},"pattern":"x*"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • diagnoses malformed input without a findings array: {"register":{"tokens":["E-1"]},"pattern":"E"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • reads text, authored keys and reasons while leaving identities, Packs and source alone · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • orders uncited findings by the register and never reports retired uncited tokens · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • orders cited findings by Spec id and then token in code-unit order · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • defaults token objects to held and keeps held and retired rows distinct · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • reports lines only for located top-level Design and UI text and keys · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • reports one diagnostic when a pattern matches empty only inside text · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • gives the external-register task a catalog on-ramp · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/external-registers.test.ts · passed · no test anchor in that file
  • records { id: 'parse-error', typeScriptFinding: 'extract/parse-error', markdownFinding: 'extract/invalid-frontmatter', typeScriptReifier: 'carrier', outcome: 'named-non-claim', rationale: 'YAML/frontmatter parsing has no TypeScript parser-diagnostic analogue.' } · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/extract-parity.test.ts · passed · no test anchor in that file
  • records { id: 'non-static-envelope', typeScriptFinding: 'extract/non-static-envelope', markdownFinding: 'extract/non-static-envelope', typeScriptReifier: 'carrier', outcome: 'same-class' } · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/extract-parity.test.ts · passed · no test anchor in that file
  • records { id: 'invalid-id', typeScriptFinding: 'extract/invalid-id', markdownFinding: 'extract/invalid-id', typeScriptReifier: 'carrier', outcome: 'same-class' } · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/extract-parity.test.ts · passed · no test anchor in that file
  • records { id: 'duplicate-id', typeScriptFinding: 'extract/duplicate-id', markdownFinding: 'extract/duplicate-id', typeScriptReifier: 'carrier', outcome: 'same-class' } · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/extract-parity.test.ts · passed · no test anchor in that file
  • records { id: 'reserved-property', typeScriptFinding: 'extract/reserved-property', markdownFinding: 'extract/reserved-property', typeScriptReifier: 'carrier', outcome: 'same-class' } · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/extract-parity.test.ts · passed · no test anchor in that file
  • records { id: 'non-static-section', typeScriptFinding: 'extract/non-static-section', markdownFinding: 'extract/invalid-markdown-structure', typeScriptReifier: 'carrier', outcome: 'named-non-claim', rationale: 'TS degrades optional section properties while Markdown deliberately refuses malformed documents whole.' } · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/extract-parity.test.ts · passed · no test anchor in that file
  • records { id: 'unowned-prose', typeScriptFinding: 'extract/unowned-prose', markdownFinding: 'extract/unowned-prose', typeScriptReifier: 'carrier', outcome: 'same-class' } · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/extract-parity.test.ts · passed · no test anchor in that file
  • records { id: 'unrecognized-statement', typeScriptFinding: 'extract/unrecognized-statement', markdownFinding: 'extract/invalid-markdown-structure', typeScriptReifier: 'carrier', outcome: 'named-non-claim', rationale: 'Markdown owns prose and structures, not TypeScript statement recognition.' } · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/extract-parity.test.ts · passed · no test anchor in that file
  • records { id: 'unrecognized-property', typeScriptFinding: 'extract/unrecognized-property', markdownFinding: 'extract/unrecognized-property', typeScriptReifier: 'carrier', outcome: 'same-class' } · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/extract-parity.test.ts · passed · no test anchor in that file
  • records { id: 'misplaced-authoring', typeScriptFinding: 'extract/misplaced-authoring', markdownFinding: 'extract/invalid-markdown-structure', typeScriptReifier: 'anchor', outcome: 'named-non-claim', rationale: 'Markdown has no executable authoring-call surface; equivalent placement is document structure.' } · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/extract-parity.test.ts · passed · no test anchor in that file
  • records finding-class parity without claiming equal severity or extraction outcome · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/extract-parity.test.ts · passed · no test anchor in that file
  • compares the nodes and edges of accepted Design entries · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/extract-parity.test.ts · passed · no test anchor in that file
  • valid-minimal-idea-spec · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • invalid-duplicate-id · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • invalid-scoped-without-relation · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • invalid-defined-constraint-without-target · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • invalid-ready-with-blocking-question · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • valid-defined-with-non-blocking-question · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • valid-defined-model-on-natural-evidence · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • valid-defined-decision-on-natural-evidence · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • invalid-scoped-model-without-terms · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • invalid-scoped-decision-without-section · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • invalid-defined-decision-without-written-choice · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • invalid-hand-authored-delivery-fact-in-section · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • invalid-hand-authored-delivery-fact-in-array-entry · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • invalid-defined-behavior-with-empty-promoted-child · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • invalid-scoped-behavior-with-non-constraint-constrained-by · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/fixtures.test.ts · passed · no test anchor in that file
  • wraps the generate help paragraph without short interior lines · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers build --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers validate --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers view --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers census --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers mermaid --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers gherkin --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers studio --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers vault --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers stamp --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers generate --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers import --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers new --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • answers q --help without reading any other argument or touching files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • gives new and new spec the same shared help followed by the scaffold paragraph · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • extracts once, validates once, and synchronizes the selected vault before publishing · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • publishes every root despite validation errors and follows validation's exit · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • removes stale roots and publishes none when extraction fails · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • publishes no root when vault synchronization refuses · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • publishes no root when vault synchronization throws · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • checks prior roots before invalidation, leaving the vault untouched in check mode · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • applies the Design Review repeat-render check without requiring prior view bytes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • removes only census when its prior tree is absent · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • removes only mermaid when its prior tree is absent · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • removes only gherkin when its prior tree is absent · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • removes only spec-studio when its prior tree is absent · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • refuses malformed vault arguments before building: "--vault" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • refuses malformed vault arguments before building: "--vault" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • refuses malformed vault arguments before building: "--vault" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • refuses malformed vault arguments before building: "--vault" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/generate-cli.test.ts · passed · no test anchor in that file
  • serializes the Markdown and Gherkin twins identically modulo carrier files · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-parity.test.ts · passed · no test anchor in that file
  • repeats extraction and contract generation byte-identically · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-parity.test.ts · passed · no test anchor in that file
  • excludes both cross-carrier duplicate sites and every duplicate-sourced edge · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-parity.test.ts · passed · no test anchor in that file
  • excludes a semantically invalid carrier whole while a healthy sibling survives · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-parity.test.ts · passed · no test anchor in that file
  • repeats invalid carrier derivation deterministically · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-parity.test.ts · passed · no test anchor in that file
  • reifies the closed accepted grammar into carrier-neutral Spec data · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • defaults each missing nesting relation independently · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • feeds Gherkin and Markdown relations through the same validation path · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • keeps harmless distance-two short-head decoration tags graph-inert · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @implemented at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @IMPLEMENTED at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @implemented.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @IMPLEMENTED.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @implemented-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @IMPLEMENTED-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @has-verifier at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @HAS-VERIFIER at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @has-verifier.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @HAS-VERIFIER.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @has-verifier-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @HAS-VERIFIER-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @hasVerifier at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @HASVERIFIER at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @hasVerifier.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @HASVERIFIER.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @hasVerifier-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @HASVERIFIER-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @observed at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @OBSERVED at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @observed.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @OBSERVED.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @observed-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @OBSERVED-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @claim at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @CLAIM at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @claim.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @CLAIM.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @claim-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @CLAIM-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @status at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @STATUS at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @status.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @STATUS.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @status-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @STATUS-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @lifecycle at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @LIFECYCLE at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @lifecycle.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @LIFECYCLE.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @lifecycle-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @LIFECYCLE-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @workflow at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @WORKFLOW at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @workflow.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @WORKFLOW.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @workflow-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @WORKFLOW-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @architect at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @ARCHITECT at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @architect.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @ARCHITECT.ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @architect-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses reserved head @ARCHITECT-ready at its tag line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • keeps nonmatching decoration @wip graph-inert · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • keeps nonmatching decoration @smoke graph-inert · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • keeps nonmatching decoration @implementedness graph-inert · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • keeps nonmatching decoration @has-verifiers graph-inert · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • keeps nonmatching decoration @hasVerifierExtra graph-inert · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • keeps nonmatching decoration @observedness graph-inert · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • keeps nonmatching decoration @claimant graph-inert · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • keeps nonmatching decoration @statusready graph-inert · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • keeps nonmatching decoration @lifecycleReady graph-inert · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • keeps nonmatching decoration @workflowing graph-inert · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • keeps nonmatching decoration @architecture graph-inert · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • suggests exactly one unique reserved head for a length ≤5 one-edit near miss · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • suggests lawful long reserved head for one-edit near-miss @constrained-bi.spec:probe.constraint · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • suggests lawful long reserved head for one-edit near-miss @decided-bi.spec:probe.decision · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • suggests lawful long reserved head for one-edit near-miss @constraind-by.spec:probe.constraint · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses an example-space near miss without suggesting invalid decoration syntax · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • suggests a unique long reserved head for a length >5 two-edit near miss · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses one-edit short-head decoration @king.dom without recommending illegal metadata · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses one-edit short-head decoration @packs.nightly without recommending illegal metadata · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses step-less an ordinary Scenario at its Scenario line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses step-less an @example-space pseudo-scenario at its Scenario line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • accepts a Feature with zero Scenarios · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • accepts an ordinary Scenario with one Given step · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • classifies keyed bullets and non-heading colon lines exactly · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • collects four independent semantic findings in physical source order · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • caps semantic findings at one hundred with a final suppression finding · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a missing Feature identity · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a duplicate Feature identity · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a missing Scenario identity · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a duplicate altitude · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a readiness outside the descriptor set · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a kind tag · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a refused-kind tag · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a Pack tag · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a supersedes tag · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses an implemented lookalike · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a claim lookalike · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a lifecycle lookalike · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses an architect lookalike · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a graph-aware near miss · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses an unknown description key · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a heading-shaped description line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a duplicate singular description key · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a Rule with children · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a Rule description · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a tagged Rule · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses two example-space pseudo-scenarios · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses graph-aware metadata on example-space · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a Scenario Outline · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a Background · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a doc string · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a data table · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a star step · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a leading And · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a malformed identity · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a malformed relation target · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses an entry address in an identity tag · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses an entry address in a relation tag · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses an entry address in a Scenario identity tag below a lawful Feature · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses an entry address in a Scenario relation tag below a lawful Feature · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • refuses a non-English language header at its source line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • normalizes the first parser diagnostic as Gherkin syntax and excludes the file · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • reports a Feature bad description key after leading blanks and comments at physical line 6 · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • reports a Feature bad description key after an interior comment at physical line 5 · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • reports a Scenario bad description key after leading blanks and comments at physical line 9 · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • reports a Scenario bad description key after an interior comment at physical line 9 · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • reports a Rule description after a blank line at physical line 6 · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • reports an @example-space description after a blank line at physical line 7 · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • reports Feature and Scenario bad description keys at the same physical lines under CRLF · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • extracts defused description-location fixtures at physical one-based lines · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/gherkin-reifier.test.ts · passed · no test anchor in that file
  • round-trips spec:orders.create-order · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • round-trips spec:orders.create-order#design.validCart · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • round-trips spec:orders.create-order#question.aggregateReach · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • round-trips spec:orders.create-order#question.description · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • round-trips spec:orders.create-order#rule.validCart · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • round-trips pack:checkout-v1 · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • round-trips impl:orders.create-order-use-case · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • round-trips test:orders.create-order.valid-cart · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • preserves the branded spec reference string · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • brands the required helper namespaces · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • brands the impl namespace through anchorId · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • brands the api namespace through anchorId · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • brands the component namespace through anchorId · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • brands the test namespace through anchorId · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • brands the oracle namespace through anchorId · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses spec:probe.x as a generic anchor id · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses spec:probe.x#design.key as a generic anchor id · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses pack:probe.x as a generic anchor id · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses doc:probe.x as a generic anchor id · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses custom:probe.x as a generic anchor id · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses test:probe.x#design.key as a generic anchor id · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • brands every implementation-flavored code namespace through the one codeAnchorId (MD-8) · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • rejects malformed IDs: orders.create-order · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • rejects malformed IDs: spec:orders..create-order · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • rejects malformed IDs: spec:orders.create order · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • rejects malformed IDs: Spec:orders.create-order · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • rejects malformed IDs: spec:orders.create-order# · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • rejects malformed IDs: spec:orders.create-order#valid-cart · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • rejects malformed IDs: spec:orders.create-order#valid.cart · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address impl:x#design.k with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address pack:x# with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x# with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#a#b with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#foo with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#model.foo with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#design with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#question with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#questions.k with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#openQuestions.k with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:orders.create-order#valid-cart with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#design.1 with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#design.Foo with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#design.a-b with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#design.a.b with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#design. with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#design.éclair with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#design.café with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#question.AggregateReach with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#question.aggregate-reach with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses the entry address spec:x#question. with its reason · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • parses an entry address with its sub-part verbatim · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • names the five sections an entry address may carry · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • parses a question address with its key verbatim · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses a question address where a Spec id is required · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • refuses an entry address where a Spec id is required · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • rejects wrong namespaces in helper branding · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/ids.test.ts · passed · no test anchor in that file
  • exports the pure emit and import surface · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-barrel.test.ts · passed · no test anchor in that file
  • preserves TypeScript 'behavior' rule-key order through Markdown import · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • preserves TypeScript 'workflow' rule-key order through Markdown import · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • preserves unkeyed list order around keyed entries from both lists · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • refuses a Markdown twin that only reorders rule keys · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • emits a bare typed heading in scaffold mode without inventing content · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • emits the empty envelope and maps title to the H1 · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • round trips envelope data and narrative through the Markdown carrier · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • emits Intent prose, fields, repeated entries, and owned open questions · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • writes a keyed question's key after its flag and leaves an unkeyed marker as it was · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • emits the Behavior form in ruled list syntax · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • emits the Rule form in ruled list syntax · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • emits the Workflow form in ruled list syntax · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • emits the Contract form in ruled list syntax · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • emits example-space vocabulary and one immediately-owned example GWT fence · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • emits the one-entry Constraints form and preserves parser refusal without its statement · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • emits Model, Design, UI, Decision, and Verification owners in authored order · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • round trips all eleven migrated checkout Specs through the emitter · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • groups relation records in ruled key order and emits multiple targets as a sequence · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • is refused when a valid emitted relation key is hand-corrupted · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-emit-markdown.test.ts · passed · no test anchor in that file
  • refuses a title-less Spec with a precise authored path · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-review-08.test.ts · passed · no test anchor in that file
  • names the first divergent intent path · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-review-08.test.ts · passed · no test anchor in that file
  • names the first divergent design path · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-review-08.test.ts · passed · no test anchor in that file
  • refuses duplicate relation targets before Markdown emission · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-review-08.test.ts · passed · no test anchor in that file
  • refuses a mixed Spec and Pack carrier with an actionable error · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-review-08.test.ts · passed · no test anchor in that file
  • retains the Pack finding beside a multi-Spec refusal · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-review-08.test.ts · passed · no test anchor in that file
  • exports the typed emission error beside the public emitter · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import-review-08.test.ts · passed · no test anchor in that file
  • emits one sibling Markdown document for a healthy TypeScript Spec · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • refuses a TypeScript carrier with reification errors and names its file · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • returns reifier findings unchanged when a carrier is refused · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • reports a Pack-only module as unsupported without emitting Markdown · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • reports an empty module without emitting Markdown · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • refuses a mixed Spec and Pack module before publishing a duplicate carrier · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • refuses a module that reifies more than one Spec · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • refuses multiple constraints when Markdown cannot preserve its authored data · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • refuses a prose open question when Markdown cannot preserve its authored data · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • refuses multiple example actions when Markdown cannot preserve its authored data · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • refuses a structural title when Markdown cannot preserve its authored data · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • imports a keyed TypeScript question into a keyed Markdown marker · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • imports a keyed question whose blocking flag is omitted as a non-blocking marker · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • refuses an import whose question key the reifier drops · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • refuses a path that cannot produce a Markdown sibling · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/import.test.ts · passed · no test anchor in that file
  • evaluates S3's recipe 46 and S2's recipe 51 in the shared Studio build · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/integration-review.test.ts · passed · no test anchor in that file
  • records future measurement commands as run and provides portable commands separately · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/integration-review.test.ts · passed · no test anchor in that file
  • classifies the YAML 1.2 plain scalar 1e3 as a non-string scalar · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • classifies the YAML 1.2 plain scalar 0x1F as a non-string scalar · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • classifies the YAML 1.2 plain scalar -.inf as a non-string scalar · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • rebases YAML-native diagnostic line text with the structured finding line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • refuses a YAML document-end marker before the required frontmatter closer · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • preserves accumulated YAML findings when the frontmatter root is not a mapping · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • reports each frontmatter resource-limit breach once · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • reports each frontmatter resource-limit breach once · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • item f refuses an example GWT fence before the end of its Intent content · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • item f accepts trailing ASCII whitespace on the Open questions heading · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • item f treats a terminal hash as literal H1 title text · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • item f routes a terminal hash in H2 text through owner recognition · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • item g reports a duplicate When step exactly once · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • item h converts an unexpected body-parser throw into a finding · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-grammar-hardening.test.ts · passed · no test anchor in that file
  • classifies frontmatter delivery fact implemented as reserved · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-review-08.test.ts · passed · no test anchor in that file
  • classifies frontmatter delivery fact has-verifier as reserved · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-review-08.test.ts · passed · no test anchor in that file
  • classifies frontmatter delivery fact hasVerifier as reserved · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-review-08.test.ts · passed · no test anchor in that file
  • classifies frontmatter delivery fact observed as reserved · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-review-08.test.ts · passed · no test anchor in that file
  • keeps a frontmatter finding id on the finding-cap summary · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-review-08.test.ts · passed · no test anchor in that file
  • points a non-leading YAML directive at the directive line · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-review-08.test.ts · passed · no test anchor in that file
  • accepts inherited object names as first authored Design keys and Model terms · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-review-08.test.ts · passed · no test anchor in that file
  • retains __proto__ as an authored Model term · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-review-08.test.ts · passed · no test anchor in that file
  • reports duplicate __proto__ Model terms · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-review-08.test.ts · passed · no test anchor in that file
  • refuses an integer-like Model term and drops the carrier · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-review-08.test.ts · passed · no test anchor in that file
  • refuses the integer-like Model term 0 and drops the carrier · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-review-08.test.ts · passed · no test anchor in that file
  • refuses the integer-like Model term 10 and drops the carrier · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/markdown-review-08.test.ts · passed · no test anchor in that file
  • surfaces the explicit command in help and names Mermaid on bad input · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/mermaid-cli.test.ts · passed · no test anchor in that file
  • publishes only generated/mermaid wholesale and regenerates byte-identically without tmp residue · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/mermaid-cli.test.ts · passed · no test anchor in that file
  • passes --check-clean only when twin renders and the published bytes agree · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/mermaid-cli.test.ts · passed · no test anchor in that file
  • refuses perturbed published bytes and removes both live and temporary roots · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/mermaid-cli.test.ts · passed · no test anchor in that file
  • refuses divergent --check-clean twins and removes both publication roots · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/mermaid-cli.test.ts · passed · no test anchor in that file
  • removes planted stale live and tmp output when the authored corpus fails · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/mermaid-cli.test.ts · passed · no test anchor in that file
  • publishes diagnostic output for validation errors and returns the validation exit code · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/mermaid-cli.test.ts · passed · no test anchor in that file
  • publishes in-bound diagrams and a named refusal when one Pack overflows · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/mermaid-cli.test.ts · passed · no test anchor in that file
  • does not alter census or Design Review bytes while publishing Mermaid · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/mermaid-cli.test.ts · passed · no test anchor in that file
  • parses the three slot forms: bare, typed (declaration), bound (binding) · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/notation.test.ts · passed · no test anchor in that file
  • parses closed unions as enum declarations, and a single quoted literal as a binding · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/notation.test.ts · passed · no test anchor in that file
  • parses scalar bindings: negative and decimal numbers, booleans · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/notation.test.ts · passed · no test anchor in that file
  • treats a non-identifier brace group as prose, and an unparsable rhs as a malformed slot · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/notation.test.ts · passed · no test anchor in that file
  • rejects __proto__ as a slot name — a generated object literal would set the prototype, not a property · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/notation.test.ts · passed · no test anchor in that file
  • honors quotes during scanning: a brace inside a quoted literal does not close the group · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/notation.test.ts · passed · no test anchor in that file
  • keeps lexical degradation local: a stray brace or quote never swallows a later binding · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/notation.test.ts · passed · no test anchor in that file
  • normalizes every slot form to the {name} skeleton — the step's identity · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/notation.test.ts · passed · no test anchor in that file
  • renders natural reading: bound slots read as their value, unbound keep the {name} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/notation.test.ts · passed · no test anchor in that file
  • collects bound values first-wins and detects unbound slots · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/notation.test.ts · passed · no test anchor in that file
  • names tracked registrar drift independently in the worktree and Git index · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/preflight-registrar.test.ts · passed · no test anchor in that file
  • calls the shipped cycle recipe through q · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • runs the shipped address recipe unchanged as a rules file · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • calls recipes from a rules file and fails on a dependency cycle · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • combines two external registers in one rules file through the shipped recipe binding · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • compiles each shipped recipe once per evaluator context · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • returns fresh reader arrays and contexts through repeated recipe calls in one evaluation · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • keeps recipe answers unchanged after mutating reader results through evaluator · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • keeps recipe answers unchanged after mutating reader results through q · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • keeps recipe answers unchanged after mutating reader results through rules · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • quotes whitespace-only address subjects so recipe 25 remains a lawful rules file · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • lets a called recipe call recipes itself with the same rules-file bindings · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • reports a parameter reread cause without a nested CLI diagnostic · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • keeps watching when an optional ancestor refuses EACCES · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • keeps watching when an optional ancestor refuses EPERM · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • reports EACCES when the named file's immediate parent cannot be watched · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • reports EPERM when the named file's immediate parent cannot be watched · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • reports EIO when the named file's immediate parent cannot be watched · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • watches and rereads rules outside discovery · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • watches and rereads params outside discovery · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • watches and rereads keyed outside discovery · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • watches and rereads unreadable outside discovery · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • exports one evaluator from the source, ESM and CommonJS main entries · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • refuses non-object parameters null before running · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • refuses non-object parameters undefined before running · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • refuses non-object parameters "text" before running · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • refuses non-object parameters 3 before running · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • refuses non-object parameters true before running · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • refuses non-object parameters "2026-10-22T17:41:04.912Z" before running · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • rejects an unknown recipe number 99 by name · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • rejects an unknown recipe number 0 by name · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • rejects an unknown recipe number -1 by name · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • rejects a non-integer recipe number {"number":25.5,"value":"25.5"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • rejects a non-integer recipe number {"number":"26","value":"26"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • rejects a non-integer recipe number {"number":null,"value":"null"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • rejects a non-integer recipe number {"number":true,"value":"true"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • rejects a non-integer recipe number {"number":[],"value":""} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • rejects a non-integer recipe number {"number":{},"value":"[object Object]"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • rejects a non-integer recipe number {"number":null,"value":"NaN"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • rejects a non-integer recipe number {"number":null,"value":"Infinity"} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • shares the given report with the body and reader findings · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • locates a multi-character parse token in evaluateBody: return 1; foo bar · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • locates a multi-character parse token in evaluateBody: let x = 'a' 'bcdef'; · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • preserves recipe diagnostics and errors and shares the parse error across CLI paths · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • names five bindings in help without deriving: "--help" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • names five bindings in help without deriving: "q" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • watches named parents through delete and atomic replacement, including symlinks: false · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • watches named parents through delete and atomic replacement, including symlinks: true · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • pins findings text, subjects, locations and input order beside the unchanged recipe answers · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • locates three-member cycles and self-loops at the relation to the path's second id · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/reach-core.test.ts · passed · no test anchor in that file
  • refuses non-POSIX or rooted generated path "..\\outside.test.generated.ts" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/registrar-path-confinement.test.ts · passed · no test anchor in that file
  • refuses non-POSIX or rooted generated path "/tmp/outside.test.generated.ts" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/registrar-path-confinement.test.ts · passed · no test anchor in that file
  • refuses non-POSIX or rooted generated path "C:outside.test.generated.ts" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/registrar-path-confinement.test.ts · passed · no test anchor in that file
  • refuses non-POSIX or rooted generated path "C:/outside.test.generated.ts" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/registrar-path-confinement.test.ts · passed · no test anchor in that file
  • refuses non-POSIX or rooted generated path "C:\\outside.test.generated.ts" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/registrar-path-confinement.test.ts · passed · no test anchor in that file
  • refuses non-POSIX or rooted generated path "\\\\server\\share\\outside.test.generated.ts" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/registrar-path-confinement.test.ts · passed · no test anchor in that file
  • refuses non-POSIX or rooted generated path "//server/share/outside.test.generated.ts" · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/registrar-path-confinement.test.ts · passed · no test anchor in that file
  • refuses publication through an in-root parent symlink to outside · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/registrar-path-confinement.test.ts · passed · no test anchor in that file
  • does not delete a manifest-owned registrar through a parent symlink to outside · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/registrar-path-confinement.test.ts · passed · no test anchor in that file
  • refuses publication after the registrar parent is swapped for an outside symlink · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/registrar-path-confinement.test.ts · passed · no test anchor in that file
  • publishes valid POSIX registrar paths with sorted deterministic manifest ownership · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/registrar-path-confinement.test.ts · passed · no test anchor in that file
  • plans in contract order; duplicate step text dedupes to ONE handler that runs per occurrence · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/runner.test.ts · passed · no test anchor in that file
  • renders the natural reading: kind casing, bound values inlined, unknown params left visible · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/runner.test.ts · passed · no test anchor in that file
  • prefixes a failing step with its natural reading — the failure speaks the spec's language · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/runner.test.ts · passed · no test anchor in that file
  • keeps the failure law over a frozen error (falls back to a wrapper carrying cause) and a non-Error throw · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/runner.test.ts · passed · no test anchor in that file
  • executes against exactly the world the caller hands in — the lifecycle is the adapter's (settlement 6) · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/runner.test.ts · passed · no test anchor in that file
  • contributes the one outcome no spec ever states · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/runner.test.ts · passed · no test anchor in that file
  • assigns every generated reader witness the outcome its contract's Then step records · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/self-hosting-consumers-oracle.test.ts · passed · no test anchor in that file
  • carries the exact duplicate-ID example-space vocabulary · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/self-hosting-contracts.test.ts · passed · no test anchor in that file
  • binds one ready point with distinct refines and verifies relations · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/self-hosting-contracts.test.ts · passed · no test anchor in that file
  • derives the bound space and step contracts · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/self-hosting-contracts.test.ts · passed · no test anchor in that file
  • assigns both generated points the outcome their contract's Then step records · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/self-hosting-validators-oracle.test.ts · passed · no test anchor in that file
  • derives anchored memberOf and uses edges while accepting a multi-node uses cycle · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • rejects duplicate structural ownership · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • enforces one-level membership namespaces · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • requires structural edges to resolve between CodeNode endpoints · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • reports a missing component target without stripping the anchor or its delivery fact · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • rejects an invalid uses namespace as a malformed anchor field · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • reports a missing uses target while retaining the graph-validly reified anchor · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • reports self-use at graph validation without excluding the anchor · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • rejects an empty uses array and excludes the whole anchor · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • rejects duplicate uses targets and excludes the whole anchor · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • treats a non-static uses field as a whole-anchor envelope failure · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • rejects a Spec named in both satisfies and references of one anchor · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • requires a CodeNode source and a Spec target · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • rejects the same references edge authored twice · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • reports a dangling references target through referential integrity and confers nothing · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • refuses an empty references array at reification · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • refuses a repeated references target and the satisfies overlap at reification · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-anchors.test.ts · passed · no test anchor in that file
  • checks actual consumption of a shared type: import type { Result } from "./unit.js"; export function parse(): Result { return { ok: true }; } · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks actual consumption of a shared type: import { type Result as Parsed } from "./unit.js"; export const result: Parsed = { ok: true }; · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks actual consumption of a shared type: import type * as T from "./unit.js"; export const result: T.Result = { ok: true }; · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks actual consumption of a shared type: import type { Result } from "./unit.js"; export interface Parsed extends Result {} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks actual consumption of a shared type: import type * as T from "./unit.js"; export interface Parsed extends T.Result {} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks actual consumption of a shared type: import type * as T from "./unit.js"; export const result = true; · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks actual consumption of a shared type: import type * as T from "./other.js"; export const result: T.Result = { ok: true }; · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks actual consumption of a shared type: import type { Result } from "./unit.js"; export const result = true; · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks actual consumption of a shared type: type Result = { ok: boolean }; export const result: Result = { ok: true }; · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks actual consumption of a shared type: import type { Result } from "./other.js"; export const result: Result = { ok: true }; · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks shared class consumption in heritage and type queries: import { Result } from "./unit.js"; export type Constructor = typeof Result; · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks shared class consumption in heritage and type queries: import * as T from "./unit.js"; export type Constructor = typeof T.Result; · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks shared class consumption in heritage and type queries: import { Result } from "./unit.js"; export class Parsed extends Result {} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks shared class consumption in heritage and type queries: import * as T from "./unit.js"; export class Parsed extends T.Result {} · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks shared class consumption in heritage and type queries: import * as T from "./other.js"; export type Constructor = typeof T.Result; · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • checks shared class consumption in heritage and type queries: import { Result } from "./unit.js"; export function local() { class Result {} type Constructor = typeof Result; } · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • reports a missing shared type independently of its consumer · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • reports a missing runtime export when the named unit is absent · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • reports missing consumption when the covering source removes the import · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • reports missing consumption when a named value import is unused · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • accepts an aliased named import used as a runtime call · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • accepts a runtime call imported through a barrel re-export · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • rejects diagnostics-clean named type-only exports · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • rejects diagnostics-clean star type-only exports · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • rejects attempted value use through named type-only exports · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • rejects attempted value use through star type-only exports · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • accepts 'a direct declaration' · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • accepts 'an aliased named export' · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • accepts 'nested acyclic value stars' · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • accepts 'a diamond to one origin' · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • rejects two distinct acyclic value candidates · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • rejects every cyclic-star entry and traversal order with cycle first · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • rejects every cyclic-star entry and traversal order with origin first · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • accepts an explicit named export that shadows unrelated cyclic stars · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • rejects a type-only import and type-only reference · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • reports malformed unit reference "unit.ts" as a missing export · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • reports malformed unit reference "#helper" as a missing export · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • reports malformed unit reference "unit.ts#" as a missing export · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • reports malformed unit reference "unit.ts#helper#extra" as a missing export · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • reports malformed unit reference "" as a missing export · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/structural-coverage.test.ts · passed · no test anchor in that file
  • never traverses or subscribes through a newly created directory symlink, including a loop · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • removing a watched directory with carriers causes exactly one rerun and removes stale artifacts · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • reconciles a filename-less deletion event: unwatches the removed subtree and reruns once · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • reconciles a filename-less change on an intact directory: rescans subtrees and reruns · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • prunes a dead descendant watcher on reconciliation so a recreated directory rewatches · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • replaces a watcher whose directory was recreated before the filename-less reconciliation · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • fails typed when the watch root vanishes before reconciliation · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • fails typed when the watch root vanishes between reconciliation and re-subscription · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • treats a basename beginning with '..cache' as contained while rejecting real parent escapes · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • treats ENOTDIR as deletion and schedules one carrier-tree rerun · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • routes EACCES through the typed failure path, closes once, and exits 1 · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • routes EMFILE through the typed failure path, closes once, and exits 1 · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • routes EIO through the typed failure path, closes once, and exits 1 · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/validate-watch.test.ts · passed · no test anchor in that file
  • accepts a separate vault with Windows path separators · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/vault-windows.test.ts · passed · no test anchor in that file
  • leaves unchanged registrar bytes, inode and temporary path untouched · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • idles with a bound example and preserves a Studio written beside the watched vault · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • keeps a note after a case-only rename of spec:probe.Member, Finder file: false · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · skipped · no test anchor in that file
  • keeps a note after a case-only rename of spec:probe.Member, Finder file: true · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · skipped · no test anchor in that file
  • keeps a note after a case-only rename of spec:Probe.member, Finder file: false · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · skipped · no test anchor in that file
  • keeps a note after a case-only rename of spec:Probe.member, Finder file: true · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · skipped · no test anchor in that file
  • refuses the same rules file under a case alias · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · skipped · no test anchor in that file
  • refuses a case alias of build output for --base · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · skipped · no test anchor in that file
  • refuses a case alias of build output for --runs · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · skipped · no test anchor in that file
  • refuses direct and symbolic build-owned --base inputs without changing a file · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses direct and symbolic build-owned --runs inputs without changing a file · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses a build-owned --runs input before starting the Studio watcher · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses a missing --runs input before starting the Studio watcher · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses a invalid JSON --runs input before starting the Studio watcher · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • keeps a changed Base with a warning and regenerates it only after deletion · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • ignores Finder's .DS_Store under the owned folder · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/graph.json · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/graph.json.tmp · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/contracts · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/contracts.tmp · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/registrars.json · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/registrars.json.tmp · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/imports.json · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/imports.json.tmp · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/design-review · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/design-review.tmp · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/census · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/census.tmp · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/mermaid · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/mermaid.tmp · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/gherkin · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/gherkin.tmp · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/spec-studio · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses an input beneath build-owned generated/spec-studio.tmp · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • refuses a future registrar input before extraction · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • states the working-directory resolution of generate --vault in help · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • keeps the vault watcher alive after a malformed registrar manifest refusal · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-cli.test.ts · passed · no test anchor in that file
  • retains the linked SVG box geometry and label when its target leaves the export · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-studio.test.ts · passed · no test anchor in that file
  • renders export member pages from the graph alone with meaningful base and run inputs · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-studio.test.ts · passed · no test anchor in that file
  • draws no edge to an undrawn planned-use target · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-studio.test.ts · passed · no test anchor in that file
  • targets each folded context box at its detailed drawing · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-studio.test.ts · passed · no test anchor in that file
  • puts the resolved rendered members on the Pack page composing action · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-studio.test.ts · passed · no test anchor in that file
  • keeps a Pack request with an unresolved member as scoped intent text · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-studio.test.ts · passed · no test anchor in that file
  • keys and names each design planning the same unanchored component · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-studio.test.ts · passed · no test anchor in that file
  • draws planned uses to every design of the named component and names the component in text · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-studio.test.ts · passed · no test anchor in that file
  • prints a diagram whole and restores its zoom after printing · /home/runner/work/software-delivery-protocol/software-delivery-protocol/test/x2b-studio.test.ts · passed · no test anchor in that file
  • executes the bound example against a fresh world · /home/runner/work/software-delivery-protocol/software-delivery-protocol/examples/checkout-v1/test/orders/create-order.valid-cart.test.ts · passed · no test anchor in that file

Run 2: external run evidence from vitest 4.1.10

Build: CI 380 · Branch: feature/roadmap-and-slices-v0 · Commit: 34909918bf0be0e849959644401797191cae379f · Start: 2026-10-22T17:42:16.533Z · Stop: 2026-10-22T17:42:27.785Z

100 passed, 0 failed, 0 skipped, 0 pending, 0 other.

External run evidence from test/cli.test.ts

Test anchors: test:protocol.engine-provenance, test:protocol.extraction-determinism, test:protocol.projections-model.publication, test:protocol.regenerability, test:protocol.validate-watch. Specs verified by those bindings: spec:consumers.engine-provenance, spec:consumers.projections-model, spec:consumers.validate-watch, spec:extraction.determinism, spec:extraction.regenerability.

NameSuiteResultDuration
prints the exact help text for no argssdp clipassed1.39 ms
points operators to the shipped on-ramps and Protocol corpussdp clipassed1.4 ms
describes both anchor forms and non-failing warnings in helpsdp clipassed0.33 ms
prints the exact help text for --helpsdp clipassed0.14 ms
builds the checkout-v1 example: writes graph, contracts, and registrar manifest atomicallysdp clipassed92.85 ms
invalidates an existing Design Review when build replaces its source graphsdp clipassed51.1 ms
views the self-hosting corpus from the default repository rootsdp clipassed8406.8 ms
renders contracts warnings through the one formatter and counts them in the summarysdp clipassed6.91 ms
withholds case-colliding contract paths with a warning: graph kept, nothing gatessdp clipassed3.45 ms
passes --check-clean on the example (determinism self-check through the CLI)sdp clipassed28.36 ms
end-to-end determinism self-check: delete generated/, rebuild, byte-identicalsdp clipassed106.14 ms
fails clean on a root that is not a directory: one line, exit 1, never a stack tracesdp clipassed0.32 ms
rejects an unknown option: one line, exit 1, nothing runssdp clipassed0.1 ms
accepts repeatable --exclude paths for buildsdp clipassed3.25 ms
accepts repeatable --exclude paths for validatesdp clipassed3.57 ms
accepts repeatable --exclude paths for viewsdp clipassed4.61 ms
uses the identical normalized exclusions in both --check-clean extractionssdp clipassed4.99 ms
refuses invalid --exclude path "" before build writessdp clipassed0.75 ms
refuses invalid --exclude path "." before build writessdp clipassed0.21 ms
refuses invalid --exclude path "./explorations" before build writessdp clipassed0.27 ms
refuses invalid --exclude path "explorations/" before build writessdp clipassed0.16 ms
refuses invalid --exclude path "/explorations" before build writessdp clipassed0.19 ms
refuses invalid --exclude path "../x" before build writessdp clipassed0.18 ms
refuses invalid --exclude path "a/../b" before build writessdp clipassed0.13 ms
refuses invalid --exclude path "a//b" before build writessdp clipassed0.12 ms
refuses invalid --exclude path "a\\b" before build writessdp clipassed0.21 ms
refuses a missing --exclude operand before build writessdp clipassed0.28 ms
names a flag supplied as an --exclude operand before build writessdp clipassed0.19 ms
documents repeatable --exclude paths in helpsdp clipassed0.06 ms
rejects a second root argument: one line, exit 1, nothing runssdp clipassed0.16 ms
notes an empty authored model: zero spec files still builds and exits 0, but says where it lookedsdp clipassed0.59 ms
renders a finding's location exactly once, from the structured fields: file:line — [severity]sdp clipassed2.19 ms
renders a Gherkin parser failure through the public CLIsdp clipassed1.24 ms
exits 1, writes nothing, and removes a stale graph.json on a hard-error corpussdp clipassed1.87 ms
fails build on an integer-like design key holding a static valuesdp clipassed1.25 ms
fails build on an integer-like design key holding a non-static valuesdp clipassed1.05 ms
fails build on an integer-like design key holding a methodsdp clipassed1.09 ms
fails build on an integer-like design key holding an accessorsdp clipassed1.22 ms
fails --check-clean on a diverging second extraction: exit 1, the stale graph.json removedsdp clipassed7.21 ms
fails --check-clean on a diverging second contract generation: exit 1, no artifact survivessdp clipassed18.15 ms
owns the contracts tree wholesale: with nothing to generate, a stale contracts dir is removedsdp clipassed2.71 ms
reconciles a registrar sibling that a later generation no longer owessdp clipassed19.57 ms
fails --check-clean on registrar-byte drift and removes the uncertified known setsdp clipassed26.76 ms
passes --check-clean without a prior manifest when no registrars are owedsdp clipassed3.91 ms
fails --check-clean on registrar manifest whitespace driftsdp clipassed26 ms
fails --check-clean on registrar manifest ignored property driftsdp clipassed26.54 ms
removes graph, contracts, manifest, and registrar siblings after a staged write failuresdp clipassed19.02 ms
fails clean when extraction throws past discovery: one line, exit 1, the stale graph.json removedsdp clipassed0.6 ms
fails clean when generated exists as a file: one line each for build and view, never a stack tracesdp clipassed5.38 ms
names the survivor when a recovery-path removal is denied: a stale artifact never silently reads as currentsdp clipassed0.56 ms
stops a build when an existing Design Review cannot be invalidatedsdp clipassed1.62 ms
fails clean when the checks throw: one line, exit 1, the built graph.json stayssdp clipassed2.52 ms
suppresses the empty-model note when spec files were found but none reified — a failed file is not an absent onesdp clipassed1.52 ms
treats a root of only ordinary .feature files as an empty authored model, not a missing-identity errorsdp clipassed0.65 ms
suppresses the empty-model note when a failed .sdp.gherkin finding.file matches the carrier suffix predicatesdp clipassed1.01 ms
builds a mixed root with one .sdp.gherkin carrier and ignores the ordinary .feature siblingsdp clipassed0.88 ms
removes the temp twin on a failed build and a failed view — no partial .tmp artifact survivessdp clipassed8.95 ms
recognizes the published-bin path: a .bin-style symlink resolves to the entry modulesdp clipassed0.43 ms
exits 0 quietly on a stdout EPIPE and stays fatal for any other stream errorsdp clipassed0.53 ms
validates the example: exit 0, the artifact written, and no warningsdp clipassed28.78 ms
gates on the checks, not the build: a clean-building broken link validates to exit 1 with the artifact keptsdp clipassed2.67 ms
short-circuits the checks on extraction hard errors: validate keeps build semanticssdp clipassed1.64 ms
prints help plus an unknown-command errorsdp clipassed0.13 ms
views the example: validate + the Design Review written, with no warningsdp clipassed33.87 ms
owns the view directory wholesale: a stale page does not survive a re-rendersdp clipassed15.8 ms
regenerates the view byte-identically: delete generated/, re-view, same bytessdp clipassed24.79 ms
writes the view even when checks fail: findings render in it, the exit code is validate'ssdp clipassed2.06 ms
keeps build semantics on extraction hard errors: no graph, no view, stale view removedsdp clipassed1.87 ms
fails view --check-clean on a diverging second render: exit 1, the stale view removedsdp clipassed6.53 ms
fails clean when the render throws: one line on stderr, exit 1, the stale view removedsdp clipassed2.71 ms
closes the compiled watch process with exit 0 after operator SIGINTsdp validate --watchpassed299.82 ms
documents --watch as a validate-only authoring loopsdp validate --watchpassed0.19 ms
rejects --watch on build with a named error and no watchersdp validate --watchpassed0.18 ms
rejects --watch on view with a named error and no watchersdp validate --watchpassed0.06 ms
rejects --watch on census with a named error and no watchersdp validate --watchpassed0.05 ms
rejects --watch on mermaid with a named error and no watchersdp validate --watchpassed0.05 ms
rejects --watch on gherkin with a named error and no watchersdp validate --watchpassed0.04 ms
rejects --watch on import with a named error and no watchersdp validate --watchpassed0.17 ms
rejects --watch on new with a named error and no watchersdp validate --watchpassed0.2 ms
rejects --watch on q with a named error and no watchersdp validate --watchpassed0.18 ms
rejects --watch --check-clean with a named error and no watchersdp validate --watchpassed0.12 ms
installs the watcher before the first validation cyclesdp validate --watchpassed4.45 ms
catches an edit during the first cycle with exactly one coalesced rerunsdp validate --watchpassed5.23 ms
coalesces a burst during an active cycle into exactly one rerunsdp validate --watchpassed4.92 ms
prints validation findings and keeps watching until abort exits 0sdp validate --watchpassed2.68 ms
ignores generated, dist, node_modules, coverage, dot directories, and configured excludessdp validate --watchpassed5.24 ms
coalesces production-shaped events from later turns into one pending rerunsdp validate --watchpassed7.83 ms
does not natively subscribe to excluded or generated subtreessdp validate --watchpassed69.25 ms
routes a native watcher error through a typed channel and closes oncesdp validate --watchpassed3.1 ms
clean-repo determinism: the full pipeline at a different absolute path is byte-identicalnot recordedpassed67.67 ms
prints one line naming the package version and the recorded commit, and exits 0sdp --versionpassed0.49 ms
names the commit unknown when the build recorded none or recorded something elsesdp --versionpassed0.33 ms
reads the version from the package manifest two directories above the CLI modulesdp --versionpassed0.38 ms
documents --version and --params in the usage textsdp --versionpassed0.14 ms
records the checked-out commit at build time, or unknown when git cannot name onesdp --versionpassed11.15 ms
publishes the commit the build step reads from git beside the CLIsdp --versionpassed0.9 ms
builds commit metadata from a substituted git archive extracted without .gitsdp --versionpassed64.59 ms
uses only a full archive commit when git gives none, keeping git firstsdp --versionpassed0.68 ms
answers from the compiled CLI with the commit its build recorded beside itsdp --versionpassed327.1 ms
runs recipe 4 as shipped, its changed files passed with --params @PATHa shipped recipe file through the compiled CLIpassed363.4 ms

Unjoined records

None.

Input diagnostics

None.

Composing (0)

Composing needs the script.