# Substrate surface: the detail the board routes to. One writer, many readers. # Copy to `//..md`, fill the header, delete the example records. # Every record here is addressable as `-` and is cited from the board and from other surfaces. # Model: `models/coordination.model.md`, for nodes, edges and derived states. ═══════════════════ HEADER (permanent) ═══════════════════ Type: Owner: Key: -`> Parent: ═══════════════════ PROTOCOL (permanent) ═══════════════════ ## Surface contract (strict) - Current truth only. Records are overwritten in place, with no appending, no archaeology and no DONE, SUPERSEDED or ACK markers. - Each record carries exactly the schema below and nothing else, as normalized records rather than prose. - `Key` is fixed for the life of the surface. Moving the file does not change it, so every id already issued survives the move. - Nothing is raised without a destination. `Kind` selects the destination, and the destination is derived, never chosen. - Absorbed is a transition, never a state: extract to `_changelogs.txt`, then delete the record in the same change. There is one history home, and a changelog inside a workspace is a second place history may live. - No state is written. Open, blocked and absorbed are queries over the edges. ## Fixed record schema Item -: Subject: Kind: Acknowledger: Satisfied-by: Evidence: Edges: ## Kind, destination and closing | kind | home | closes when | | ------- | ------------------------------------ | ------------------------------ | | round | this surface | its acknowledger closes it | | claim | the plan row it claims against | the row retires | | finding | the durable-record surface | never, since it is referenced | | ruling | the surface owning the axis it binds | never, since it is cited by id | | repair | the tree it fixes | the change is on disk | ## Gate - `Kind` is in the closed set, `Acknowledger` is present exactly when the kind is a judgment, and `Satisfied-by` is present exactly when an artifact satisfies it. - `Key` is unique across the workspace, `-` is unique within it, and a duplicate `Subject` is a finding. - Every edge resolves. A citation to nothing is a finding, and a cycle is a finding. - An item unacknowledged past `N` rounds is a finding, escalating to the board and then the owner. ═══════════════════ RECORDS ═══════════════════ Item -1: Subject: <—> Kind: <—> Acknowledger: — Satisfied-by: <—> Evidence: <—> Edges: — Item -2: Subject: <—> Kind: <—> Acknowledger: <—> Satisfied-by: — Evidence: <—> Edges: — ═══════════════════ OPEN (unresolved only) ═══════════════════ - (none)