meta.anchors
22 anchors
| Anchor | Implementation | Tests |
|---|---|---|
| meta.anchors (22) | 22 Implemented | 21 Implemented12 TODO |
anchor_pages | Implemented | ImplementedTODO |
Every specification anchor has a stable page identifying the rule and showing its definition, context, implementation entries, and tests/evidence. The page includes Rust excerpts and access to surrounding source, and exposes each entry’s placeholder status and explanation. Multiple sites remain individually inspectable rather than being reduced to a single coverage badge. | ||
book_explorer | Implemented | ImplementedTODO |
The book build includes the architecture explorer and its model and Rust
source snapshots. An explorer chapter embeds the browser and offers a full-page
view. The handwritten Crates landing page links to | ||
canonical_sources | Implemented | ImplementedTODO |
A specification rule can be defined in a Markdown or | ||
| meta.anchors.content (7) | 7 Implemented | 7 Implemented |
blocks | Implemented | Implemented |
An anchor’s content starts after its definition marker and includes every subsequent Markdown block until the first applicable closing boundary. Blank lines do not end the content: paragraphs, lists, tables, and code blocks within that extent belong to the same anchor. | ||
explicit_end | Implemented | Implemented |
A standalone line containing exactly | ||
heading | Implemented | Implemented |
A Markdown section heading ends the active anchor’s content immediately before the heading, regardless of heading level. Both hash-prefixed and underline-style headings are boundaries. Prose following the heading remains outside an anchor until another definition begins. | ||
literal_syntax | Implemented | Implemented |
Boundary-looking text inside fenced or indented code blocks, inline code, or escaped text does not open or close an anchor. Raw HTML examples do not supply anchor definitions, section headings, or end markers. A standalone end comment acts as a boundary only outside these literal contexts and enclosing HTML blocks. | ||
next_anchor | Implemented | Implemented |
A new anchor definition ends the preceding anchor’s content immediately before the new marker. The new definition belongs to its own anchor; content extents do not overlap. | ||
source_end | Implemented | Implemented |
An anchor’s content ends at the end of its containing Markdown document or
| ||
unmatched_end | Implemented | Implemented |
An explicit end marker with no active anchor is a validation error. Another end marker after an explicit or implicit end, without an intervening definition, is therefore also an error. An anchor ending at another definition, a heading, or its source boundary does not require an explicit end marker. | ||
context_navigation | Implemented | ImplementedTODO |
Clicking an anchor badge opens its anchor page. The page’s context link returns
to the defining Markdown paragraph or | ||
evidence_status | Implemented | ImplementedTODO |
An implementation or test entry establishes a declared association, not proof that the rule is satisfied. Source inventories retain cfg conditions without claiming that a site was compiled or a test executed. Anchor pages distinguish test source, recorded run results, and other evidence such as traces. A passing structural check or a passing dummy test must not present a TODO or Not applicable entry as established behavioral evidence. | ||
explorer_navigation | Implemented | TODO |
The explorer’s selected Sage entity or specification anchor is reflected in the enclosing chapter’s URL. Opening that URL restores the selection, and browser back/forward navigation keeps the chapter and explorer in agreement. Sharing a selection preserves the book’s navigation as well as the selected context. Every entity is directly addressable under the entity-link rule; these links are also available to references from other documentation. | ||
implementation_coverage | Implemented | ImplementedTODO |
Every specification anchor has at least one explicitly declared Rust
implementation entry. An anchor without one is an error. A test annotation or
| ||
implementation_references | Implemented | ImplementedTODO |
A Rust implementation entry is introduced by a
<code>// {anchor}`meta.language.calls.declared`</code> comment, optionally followed
immediately by | ||
placeholder_status | Implemented | ImplementedTODO |
Implementation references and test annotations inside a Rust module named
The example’s | ||
point_excerpts | Implemented | ImplementedTODO |
A point reference has no
| ||
region_balance | Implemented | Implemented |
A region opener without a closing delimiter, or a closing delimiter without an open region, is an error. Delimiters in string literals do not open or close regions. Region boundaries are determined from source comments, independently of the five-line previews used for point references. The existing | ||
region_excerpts | Implemented | ImplementedTODO |
A reference ending in
| ||
test_coverage | Implemented | Implemented |
Every specification anchor must have at least one annotated Rust test. An anchor without a test is an error, independently of its implementation coverage. A placeholder test counts as an entry with its explicit status; an implementation placeholder alone cannot satisfy the test requirement. | ||
test_references | Implemented | Implemented |
Every One test can cover several rules and a rule can have several tests. Unlike
| ||
unique_names | Implemented | ImplementedTODO |
Every specification anchor has a well-formed full name and exactly one definition in the Design chapter inventory. Malformed markers and duplicate full names are errors. Names are derived from the defining chapter; moves between chapter namespaces rename the rule and require updating its references. Resolved names are dot-separated ASCII identifiers and describe independently
testable behavior. A Markdown definition uses a chapter-local name with the
custom MyST-style inline-role syntax. For example, in
The marker and the opening prose form one paragraph: do not leave a blank
line between them. Later blocks can continue the same claim under the
content rules. The example resolves to
| ||