Pure producers for the reflective MCP resources (BOU-99).
A resource's content is derived from a snapshot of the running project — never hardcoded, so it cannot drift from reality (the answer to version skew). Producers are pure functions of the snapshot; the shell (boundary.mcp.shell.system-source) builds the snapshot by reflecting the live system / project (in-process now; nREPL bridge later, ADR-033).
Resources that reflect live runtime state (schema-registry, routes, workflows, lib/{name}) return an :unavailable placeholder until the snapshot carries that data, so the wiring is complete and adding reflection later is purely a shell concern.
Pure producers for the reflective MCP resources (BOU-99).
A resource's content is derived from a *snapshot* of the running project —
never hardcoded, so it cannot drift from reality (the answer to version
skew). Producers are pure functions of the snapshot; the shell
(boundary.mcp.shell.system-source) builds the snapshot by reflecting the
live system / project (in-process now; nREPL bridge later, ADR-033).
Resources that reflect live runtime state (schema-registry, routes,
workflows, lib/{name}) return an :unavailable placeholder until the snapshot
carries that data, so the wiring is complete and adding reflection later is
purely a shell concern.(force-val v)A snapshot view may be a delay (the in-process adapter builds views lazily
so reading one resource never pays to build the others). Force it; plain
values pass through unchanged.
A snapshot view may be a `delay` (the in-process adapter builds views lazily so reading one resource never pays to build the others). Force it; plain values pass through unchanged.
(mime-type _uri)MIME type for a resource uri. All reflective resources are JSON.
MIME type for a resource uri. All reflective resources are JSON.
(read-resource snapshot uri)Produce the data for uri from a project snapshot. Returns the resource
data (a Clojure value to be serialized by the shell), or nil if uri is not
a known resource. Live-state resources yield an :unavailable placeholder
until the snapshot carries their data. Only the requested view is forced.
Produce the data for `uri` from a project `snapshot`. Returns the resource data (a Clojure value to be serialized by the shell), or nil if `uri` is not a known resource. Live-state resources yield an :unavailable placeholder until the snapshot carries their data. Only the requested view is forced.
Reading any reflective resource is a Tier 0 (:read) operation.
Reading any reflective resource is a Tier 0 (:read) operation.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |