|
| 1 | +// SPDX-License-Identifier: MPL-2.0 |
| 2 | +// SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk> |
| 3 | += QuandleDB / KRL — Normative Scope (Must / Intend / Wish) |
| 4 | +:toc: preamble |
| 5 | +:revdate: 2026-06-19 |
| 6 | + |
| 7 | +[abstract] |
| 8 | +Normative scope record for the QuandleDB and KRL halves of the KRL stack, |
| 9 | +grouped Must / Intend / Wish, with the shared (both) requirement highlighted at |
| 10 | +each level. Captured 2026-06-19. `◇` marks proposals not yet canonical. |
| 11 | + |
| 12 | +== Levels |
| 13 | + |
| 14 | +* *MUST* — required to be what it is (RFC 2119 normative). |
| 15 | +* *INTEND* — committed direction. |
| 16 | +* *WISH* — aspirational. |
| 17 | + |
| 18 | +The middle column is the shared requirement — what is *commonly required for |
| 19 | +both* components at that level. |
| 20 | + |
| 21 | +== Table |
| 22 | + |
| 23 | +[cols="1,3,3,3", options="header"] |
| 24 | +|=== |
| 25 | +| Level | QuandleDB (own) | ⊕ Both — shared requirement | KRL (own) |
| 26 | + |
| 27 | +| *MUST* |
| 28 | +| Durable store: presentations, invariants, fingerprints, equivalence classes, |
| 29 | + witnesses; extract quandle from TangleIR; serve invariant + |
| 30 | + colouring/fingerprint; read-only server (writes via Skein) |
| 31 | +| Rest on TangleIR / Tangle type-safety (extend, never redefine); |
| 32 | + *equivalence-integrity = the `a = a` idem core*; estate governance |
| 33 | + (MPL-2.0, SCM-only-in-`.machine_readable`, CI green); honest KRL-stack |
| 34 | + grounding (no op↔component category error) |
| 35 | +| Be the resolution DSL — Construct / Transform / Resolve / Retrieve; lower to |
| 36 | + TangleIR; run on the QuandleDB+Skein substrate (no 1:1 op↔component); |
| 37 | + *not merely a query language* |
| 38 | + |
| 39 | +| *INTEND* |
| 40 | +| Canonical persistence + equivalence face; host the server-side KRL parser |
| 41 | + (`server/krl/`); stable API + AffineScript TEA frontend |
| 42 | +| Serve resolution-relevant artefacts + witnesses + provenance/explanations |
| 43 | + (KRL names them → QuandleDB supplies); feed Verisim's identity / consonance |
| 44 | + layer |
| 45 | +| Retrieve = resolution artefacts, not arbitrary query; finish the rsr-template |
| 46 | + instantiation; keep polynomial/colouring compute in the engine, invoked not |
| 47 | + language-level ◇ |
| 48 | + |
| 49 | +| *WISH* |
| 50 | +| "maths analogue of a graph database" ◇; re-ground the withdrawn |
| 51 | + knot-relation edge layer / schema v5 |
| 52 | +| Verisim federation node — map↔territory anchoring, anti-drift; generic query |
| 53 | + access (deferred — krl ADR 0002) |
| 54 | +| A language family: KRL (resolution) + quandle-algebra (object-level |
| 55 | + set/relations) + narrative-projection (Lithoglyph) ◇; KRL dialects |
| 56 | +|=== |
| 57 | + |
| 58 | +== Spine |
| 59 | + |
| 60 | +The ⊕ MUST cell is load-bearing: *equivalence-integrity*. The `a = a` problem |
| 61 | +is the single thing both components are unconditionally bound to, from opposite |
| 62 | +ends — QuandleDB *computes and stores* it; KRL *resolves with* it. This is the |
| 63 | +idem axis of the identity fabric; see `../../AFFIRMATION.adoc` for the |
| 64 | +equivalence / narrative / consonance framing (Conway·Fichte / Bruner / |
| 65 | +Ricoeur). |
0 commit comments