DWSD.md

DWSD DSL — Syntax Reference

The authoritative, field-by-field syntax references for the DWSD family of DSLs. When the prose and the code disagree, the code wins — but these pages are kept in sync with the parser.

Each DSL is plain YAML, tolerant-parsed (unknown or malformed input yields a *.* diagnostic and a clamp/skip, never a throw), and shares one document header (title: + tags:) and one cross-DSL locator grammar.

Per-DSL references

DSLReferenceExamples gallery
BoardBoard DSL — columns, splits, lanes, groups, the status palette, anchors/agreements/interactions, themes, and the board.* diagnostics.(inline, on the topic pages)
Work-Systems TopologyTopology DSL — mode/around/radius, work-systems, contributes-to, its diagnostics, and the design notes.Topology examples
Flight RouteFlight Route DSL — path edges, bands, binding, anchors, and the route.* diagnostics.Flight Route examples
Org ChartOrg Chart DSL — the formal line organization: individuals over reports-to, mode/around/radius, leaf stacking, the person drawer, and the orgchart.* diagnostics.(inline, three numbered examples on the page)
UnitsUnits DSL — structural units over member-of, layout: nested | tree, one chip per unit-type, the +/− collapse, the unit drawer, and the units.* diagnostics.(inline, three numbered examples on the page)
Change Trail (preview)Change Trail — the change network over derived-from, from signals to agreements and where they land; around / show / radius, modes and drafts (mode, entries), open ends, Open ends and Recently decided.(inline, three numbered examples on the page)

Shared topics

These pages are cross-DSL — one page serves all five DSLs, never duplicated per-DSL:

  • The document header — the title: + tags: header shared by board, topology, route, units and org chart, the missing-value convention, the retired type-named keys — and which views paint it.
  • Locator grammar — the locator string family (head forms incl. the [[individuals/Name]] / [[units/Name]] path form, typed-path segments, the bare [[Name]] entity wikilink resolved by the target’s type and the for-domain: [[Role]] bridge, the ::before|in|after side, value-polymorphic keys, the container-table convention, and the Outcome channel).
  • The check — dwsd-dsl check and the library call behind it: what it reads (the six DSL file kinds and the DSL fences in Markdown), the report (envelope and diagnostic keys, 1-based positions, the 0-based fix ranges), what it lists under skipped instead of letting it pass, the exit codes and the known limits.

Entity references

Vendored, in-repo source-of-truth pages for the anchorable annotation entity families (mirrored from the external dwsd-markdown convention spec):

  • Change entities — the category page for the five types that work on the system: the full chain signal → insight → driver → proposal → ODR → agreement(s), the two D-MADE phases it spans, and derived-from as the shared emergence key.

    • In-flux types — the signal / insight / driver / proposal pins that make the design conversation visible (the rungs of the Ladder of Inference).
    • Organizational Decision Record — the ODR that records the decision one step past proposal.
  • Mandates — the 17th entity type: what a holder must or may do. What the package reads (the four optional headings, the Name | Mandate of table, mandate files with for-domain / delegator / mandate-of), what the views draw where (the key chip on boards and routes, the marker on org chart, units and topology boxes, the Mandates filter layer), how a unit’s mandates read, and the seven mandate.* findings the editor reports.

Like what you see? → Start — build your own org folder in ~2 min

index.md
# DWSD DSL — Syntax Reference
The authoritative, field-by-field syntax references for the **DWSD** family of
DSLs. When the prose and the code disagree, **the code wins** — but these pages
are kept in sync with the parser.
Each DSL is plain **YAML**, tolerant-parsed (unknown or malformed input yields a
`*.*` diagnostic and a clamp/skip, never a throw), and shares one document header
(`title:` + `tags:`) and one cross-DSL locator grammar.
## Per-DSL references
| DSL | Reference | Examples gallery |
|-----|-----------|------------------|
| **Board** | [Board DSL](./board/index.md) — columns, splits, lanes, groups, the status palette, anchors/agreements/interactions, themes, and the `board.*` diagnostics. | (inline, on the topic pages) |
| **Work-Systems Topology** | [Topology DSL](./topology/index.md) — mode/around/radius, work-systems, contributes-to, its diagnostics, and the design notes. | [Topology examples](./topology/topology-examples.md) |
| **Flight Route** | [Flight Route DSL](./route/index.md) — path edges, bands, binding, anchors, and the `route.*` diagnostics. | [Flight Route examples](./route/route-examples.md) |
| **Org Chart** | [Org Chart DSL](./orgchart/index.md) — the formal line organization: `individuals` over `reports-to`, mode/around/radius, leaf stacking, the person drawer, and the `orgchart.*` diagnostics. | (inline, three numbered examples on the page) |
| **Units** | [Units DSL](./units/index.md) — structural units over `member-of`, `layout: nested \| tree`, one chip per `unit-type`, the +/− collapse, the unit drawer, and the `units.*` diagnostics. | (inline, three numbered examples on the page) |
| **Change Trail** (preview) | [Change Trail](./change-trail/index.md) — the change network over `derived-from`, from signals to agreements and where they land; `around` / `show` / `radius`, modes and drafts (`mode`, `entries`), open ends, Open ends and Recently decided. | (inline, three numbered examples on the page) |
## Shared topics
These pages are cross-DSL — one page serves all five DSLs, never duplicated
per-DSL:
- [The document header](./document-header.md) — the `title:` + `tags:` header
shared by board, topology, route, units and org chart, the missing-value
convention, the retired type-named keys — and which views paint it.
- [Locator grammar](./locator-grammar.md) — the locator string family (head
forms incl. the `[[individuals/Name]]` / `[[units/Name]]` path form, typed-path
segments, the bare `[[Name]]` entity wikilink resolved by the target's type
and the `for-domain: [[Role]]` bridge, the `::before|in|after` side,
value-polymorphic keys, the container-table convention, and the Outcome
channel).
- [The check](./check.md) — `dwsd-dsl check` and the library call behind it: what
it reads (the six DSL file kinds and the DSL fences in Markdown), the report
(envelope and diagnostic keys, 1-based positions, the 0-based `fix` ranges),
what it lists under `skipped` instead of letting it pass, the exit codes and
the known limits.
## Entity references
Vendored, in-repo source-of-truth pages for the anchorable annotation entity
families (mirrored from the external `dwsd-markdown` convention spec):
- [Change entities](./change/README.md) — the category page for the five types that
work *on* the system: the full chain `signal → insight → driver → proposal → ODR →
agreement(s)`, the two D-MADE phases it spans, and `derived-from` as the shared
emergence key.
- [In-flux types](./change/in-flux.md) — the `signal` / `insight` / `driver` /
`proposal` pins that make the design conversation visible (the rungs of the
Ladder of Inference).
- [Organizational Decision Record](./change/organizational-decision-record.md) —
the ODR that records the decision one step past `proposal`.
- [Mandates](./mandates.md) — the 17th entity type: what a holder must or may do. What
the package reads (the four optional headings, the `Name | Mandate of` table, mandate
files with `for-domain` / `delegator` / `mandate-of`), what the views draw where (the
key chip on boards and routes, the marker on org chart, units and topology boxes, the
`Mandates` filter layer), how a unit's mandates read, and the seven `mandate.*`
findings the editor reports.