--- id: SCH-41 family: GR-SCHEMA level: core profiles: [storage-api, editor-client] posture: normative-target added: "1.0" changed: "1.0" source: https://flowdrop.io/spec/rules/gr-schema/sch-41 specification: FlowDrop Workflow Specification 1.0-draft licence: CC BY 4.0 --- # SCH-41 — The lane vocabulary is the served payload, not the shipped set *GR-SCHEMA (Part I) · level: core · profiles: storage-api, editor-client · added in 1.0* What a port may declare and what an implementation ships are different questions. Answering the first with the second is how a site could add a lane it could never use. ## The rule > **Normative.** This is the rule. > > 1. The declarable lane vocabulary is the served port configuration: the shipped lanes, the port-shape registry (code-declared shapes first, then site-declared ones), and the site's stored overlay, composed in that precedence order. > > 2. Whether a port may declare a lane is asked of that payload, never of the shipped set alone: otherwise a site can add a lane, colour it and write rules for it while no port is able to declare it, the declaration being silently replaced by the schema-derived lane with a wrongly coloured handle as the only symptom. > > 3. A lane the payload does not declare is still refused, because such a port would be compatible with nothing, not even with another port of its own lane. ## Related rules - Names: SCH-10, SCH-10.a, SCH-36, SCH-42 - Referenced by: SCH-10, SCH-10.a, SCH-36, SCH-42, SCH-44 --- Rule identifiers are permanent and are never renumbered. This specification carries no implementation status: each implementation publishes its own standing against these rules. Licensed CC BY 4.0.