From e6e2a3e53c1eb0ada24cc6b7c04c1f9174fb16d5 Mon Sep 17 00:00:00 2001 From: "Jonathan D.A. Jewell" <6759885+hyperpolymath@users.noreply.github.com> Date: Mon, 7 Sep 2026 02:45:43 +0100 Subject: [PATCH 1/4] docs: clarify database language identities and implementation boundaries --- .machine_readable/6a2/STATE.a2ml | 58 ---- .../{6a2 => descriptiles}/AGENTIC.a2ml | 0 .../{6a2 => descriptiles}/ECOSYSTEM.a2ml | 0 .../{6a2 => descriptiles}/META.a2ml | 0 .../{6a2 => descriptiles}/NEUROSYM.a2ml | 0 .../{6a2 => descriptiles}/PLAYBOOK.a2ml | 0 .machine_readable/descriptiles/STATE.a2ml | 38 +++ 0-AI-MANIFEST.a2ml | 30 +- CLAUDE.md | 12 +- EXPLAINME.adoc | 317 +++++------------- README.adoc | 163 +++------ REGISTRY.adoc | 93 +++-- ROADMAP.adoc | 78 +++-- TOPOLOGY.adoc | 129 ++----- 14 files changed, 301 insertions(+), 617 deletions(-) delete mode 100644 .machine_readable/6a2/STATE.a2ml rename .machine_readable/{6a2 => descriptiles}/AGENTIC.a2ml (100%) rename .machine_readable/{6a2 => descriptiles}/ECOSYSTEM.a2ml (100%) rename .machine_readable/{6a2 => descriptiles}/META.a2ml (100%) rename .machine_readable/{6a2 => descriptiles}/NEUROSYM.a2ml (100%) rename .machine_readable/{6a2 => descriptiles}/PLAYBOOK.a2ml (100%) create mode 100644 .machine_readable/descriptiles/STATE.a2ml diff --git a/.machine_readable/6a2/STATE.a2ml b/.machine_readable/6a2/STATE.a2ml deleted file mode 100644 index 12247fb5..00000000 --- a/.machine_readable/6a2/STATE.a2ml +++ /dev/null @@ -1,58 +0,0 @@ -# SPDX-License-Identifier: MPL-2.0 -# STATE.a2ml — Project state checkpoint -# Converted from STATE.scm on 2026-03-15 -# Updated: 2026-04-11 — bellman_ford CLOSED; Tropical_Determinants.thy + ProofOptimalAssignment DONE - -[metadata] -project = "nextgen-databases" -version = "0.1.0" -last-updated = "2026-04-13" -status = "active" - -[project-context] -name = "nextgen-databases" -completion-percentage = 68 -phase = "Phase 5 — Tropical Consonance + KRL Integration (P2 + P3 + RIII DONE)" - -[current-position] -milestone = "verisim-modular-experiment tropical bridge v0.3 + bellman_ford proved + P3 API fixes + RIII live" -last-session = "2026-04-13" -last-action = "RIII: r3_simplify implemented in KnotTheory.jl (triangle detection + cyclic relabeling + R2 check); _riii_neighbors wired in TangleGraph.jl; TangleGraph v0.3 (RI+RII+RIII all live)" - -[tropical-bridge] -status = "v0.3 — RI + RII + RIII all live (KnotTheory.jl r3_simplify implemented 2026-04-13)" -isabelle-sorry-tropical-matrices = "NONE — all closed (bellman_ford CLOSED 2026-04-11)" -isabelle-sorry-other = "cycle_shortcutting CLOSED; floyd_warshall CLOSED; tropm_mat_pow_eq_sum_walks CLOSED; Tropical_Determinants CLOSED 2026-04-11" -julia-mirror = "TropicalMatrix.jl + TangleGraph.jl (v0.3 RIII live) + TropicalDeterminant.jl (verisim-modular-experiment/impl/tropical/)" -vcl-clauses = "ProofIntegrity, ProofConsistency, ProofFreshness, ProofConsonance, ProofOptimalAssignment — all live" - -[pending-tropical] -# All three Reidemeister moves live as of 2026-04-13. - -[test-coverage] -unit-tests = "~40 (Elixir consensus + federation adapters)" -integration-tests = "~12 (federation adapter integration)" -e2e-tests = "18 (e2e_verisimdb_test.exs — lifecycle, VCL, schema, error handling)" -p2p-property-tests = "5 properties + 1 unit (kraft_property_test.exs)" -aspect-security = "10 tests (aspect/security_test.exs)" -aspect-concurrency = "14 tests (aspect/concurrency_test.exs)" -smoke-tests = "Gleam smoke test for lithoglyph BEAM (lith_beam_smoke_test.gleam)" -benchmarks = "2 Rust files (modality_benchmarks.rs + throughput_benchmarks.rs)" -total-new-tests = "43 new tests + 5 properties (2026-04-04)" - -[test-status] -mix-test-failures = "1 pre-existing (KRaft remove_server timeout)" -new-test-failures = "0" -cargo-bench-compile = "PASS (throughput_benchmarks.rs — no errors, no warnings in bench file)" -gleam-smoke = "Written; requires compiled lith_nif.so to run connection/lifecycle tests" - -[blockers] -# No active blockers. - -[route-to-mvp] -next = "Promote verisim-modular-experiment impl/ to shippable verisim-core package" -then = "Zig FFI port of VerisimCore (consumer target TBD with user)" - -[critical-next-actions] -1 = "Promote impl/ to shippable verisim-core package" -2 = "Zig FFI port of VerisimCore per hyperpolymath standard (target consumer to discuss)" diff --git a/.machine_readable/6a2/AGENTIC.a2ml b/.machine_readable/descriptiles/AGENTIC.a2ml similarity index 100% rename from .machine_readable/6a2/AGENTIC.a2ml rename to .machine_readable/descriptiles/AGENTIC.a2ml diff --git a/.machine_readable/6a2/ECOSYSTEM.a2ml b/.machine_readable/descriptiles/ECOSYSTEM.a2ml similarity index 100% rename from .machine_readable/6a2/ECOSYSTEM.a2ml rename to .machine_readable/descriptiles/ECOSYSTEM.a2ml diff --git a/.machine_readable/6a2/META.a2ml b/.machine_readable/descriptiles/META.a2ml similarity index 100% rename from .machine_readable/6a2/META.a2ml rename to .machine_readable/descriptiles/META.a2ml diff --git a/.machine_readable/6a2/NEUROSYM.a2ml b/.machine_readable/descriptiles/NEUROSYM.a2ml similarity index 100% rename from .machine_readable/6a2/NEUROSYM.a2ml rename to .machine_readable/descriptiles/NEUROSYM.a2ml diff --git a/.machine_readable/6a2/PLAYBOOK.a2ml b/.machine_readable/descriptiles/PLAYBOOK.a2ml similarity index 100% rename from .machine_readable/6a2/PLAYBOOK.a2ml rename to .machine_readable/descriptiles/PLAYBOOK.a2ml diff --git a/.machine_readable/descriptiles/STATE.a2ml b/.machine_readable/descriptiles/STATE.a2ml new file mode 100644 index 00000000..222dc4a2 --- /dev/null +++ b/.machine_readable/descriptiles/STATE.a2ml @@ -0,0 +1,38 @@ +# SPDX-License-Identifier: MPL-2.0 +# SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell +# Coordination checkpoint; per-project implementation belongs in owning repos. + +[metadata] +project = "nextgen-databases" +version = "0.1.0" +last-updated = "2026-09-07" +status = "active" + +[project-context] +purpose = "Coordinate four database/language families and their integration evidence" +phase = "Establish and connect honest executable boundaries" +registry = "REGISTRY.adoc" +public-languages = ["VCL-UT", "GNPL", "KRL", "Hermeneia"] + +[observation] +horizon = "Local canonical checkouts and focused commands on 2026-09-07; no remote CI, deployment or whole-estate correctness claim" +evidence-ledger = "EXPLAINME.adoc" +priorities = "ROADMAP.adoc" + +[family-boundaries] +verisimdb = "Standalone VCL-UT parser/admissibility/wire tests pass; mandatory gate coverage across advertised VeriSimDB operations still needs integration evidence" +lithoglyph = "Unimplemented builtin proof verifiers refuse success; registered callback plumbing has positive and rejection controls" +gnpl = "Independent direct-evidence narration kernel and CLI now run; five Lean suites pass, including 35 narration checks. Withdrawal/order properties have an audited [propext] footprint. Live Lithoglyph adapter and Glyphbase path remain work." +quandledb = "KRL draft and implemented fragment are distinct contracts; bucket candidates cannot satisfy stronger resolution assurance requests" +vocarium = "Hermeneia and Vocarium have tested invoke slices using distinct store implementations; shared durable warrant/withdrawal contract remains work" + +[knot-project-boundaries] +independent-libraries = "Skein.jl and other Julia knot libraries have their own purposes; use by QuandleDB does not make them KRL or imply database-specific origins" +tangle = "Independent Turing-complete knot-mathematics language; no KRL-to-Tangle compilation dependency or inherited proof guarantees" +krl = "Knot resolution language associated with QuandleDB; no retired query-language identity" + +[next-actions] +actions = ["GNPL: connect the imported evidence contract to a consistent real Lithoglyph journal snapshot and test withdrawal across revisions", "QuandleDB/KRL: implement and check an explicit resolution witness", "VeriSimDB/VCL-UT: test mandatory admissibility coverage", "Vocarium/Hermeneia: test one shared storage and warrant-withdrawal contract"] + +[history] +note = "Earlier tropical-bridge and extraction checkpoints remain in Git history. Their counts, completion estimates and CI status are not reasserted by this checkpoint. Preserve split-history tags and _split_* branches." diff --git a/0-AI-MANIFEST.a2ml b/0-AI-MANIFEST.a2ml index 24f93473..945be538 100644 --- a/0-AI-MANIFEST.a2ml +++ b/0-AI-MANIFEST.a2ml @@ -14,12 +14,12 @@ This is the AI manifest for **nextgen-databases**. It declares: ### Machine-Readable Metadata: `.machine_readable/` ONLY These 6 SCM files MUST exist in `.machine_readable/` directory ONLY: -1. **.machine_readable/6a2/STATE.a2ml** - Project state, progress, blockers -2. **.machine_readable/6a2/META.a2ml** - Architecture decisions, governance -3. **.machine_readable/6a2/ECOSYSTEM.a2ml** - Position in ecosystem, relationships -4. **.machine_readable/6a2/AGENTIC.a2ml** - AI agent interaction patterns -5. **.machine_readable/6a2/NEUROSYM.a2ml** - Neurosymbolic integration config -6. **.machine_readable/6a2/PLAYBOOK.a2ml** - Operational runbook +1. **.machine_readable/descriptiles/STATE.a2ml** - Project state, progress, blockers +2. **.machine_readable/descriptiles/META.a2ml** - Architecture decisions, governance +3. **.machine_readable/descriptiles/ECOSYSTEM.a2ml** - Position in ecosystem, relationships +4. **.machine_readable/descriptiles/AGENTIC.a2ml** - AI agent interaction patterns +5. **.machine_readable/descriptiles/NEUROSYM.a2ml** - Neurosymbolic integration config +6. **.machine_readable/descriptiles/PLAYBOOK.a2ml** - Operational runbook **CRITICAL:** If ANY of these files exist in the root directory, this is an ERROR. @@ -41,10 +41,10 @@ Bot-specific instructions for: ## CORE INVARIANTS 1. **Coordination only — no implementation** - This repo coordinates a portfolio of - databases. Per-database source, schemas, migrations, query-language implementations, + databases. Per-database source, schemas, migrations, database-language implementations, and per-database docs MUST live in that database's own repo (see `REGISTRY.adoc`). Adding per-database implementation content here is an ERROR. -2. **No SCM duplication** - Root must NOT contain .machine_readable/6a2/STATE.a2ml, .machine_readable/6a2/META.a2ml, etc. +2. **No SCM duplication** - Root must NOT contain .machine_readable/descriptiles/STATE.a2ml, .machine_readable/descriptiles/META.a2ml, etc. 3. **Single source of truth** - `.machine_readable/` is authoritative 4. **No stale metadata** - If root SCMs exist, they are OUT OF DATE 5. **License consistency** - All code PMPL-1.0-or-later unless platform requires MPL-2.0 @@ -57,9 +57,9 @@ This is a **coordination repo**. Intended (target) contents: ``` nextgen-databases/ ├── 0-AI-MANIFEST.a2ml # THIS FILE (start here) -├── CLAUDE.md / AGENTS.md # Agent guardrails (coordination-only) +├── CLAUDE.md / AGENTS.adoc # Agent guardrails (coordination-only) ├── REGISTRY.adoc # Authoritative map: database/language -> its own repo -├── README.adoc / EXPLAINME.adoc / TOPOLOGY.md / ROADMAP.adoc # Portfolio docs +├── README.adoc / EXPLAINME.adoc / TOPOLOGY.adoc / ROADMAP.adoc # Portfolio docs ├── tests/ # CROSS-database integration tests only ├── docs/ # Coordination docs (incl. migration runbooks) ├── .machine_readable/ # Canonical SCM metadata @@ -76,7 +76,7 @@ LEGACY (being extracted to their own repos — see This is a **parent/tracking (coordination) repository** — no implementation code. Satellite repos (authoritative list in `REGISTRY.adoc`): verisimdb, lithoglyph, -glyphbase, quandledb, gnpl, vcl-ut, krl, nqc. +glyphbase, quandledb, gnpl, vcl-ut, krl, vocarium, hermeneia, nqc. ## SESSION STARTUP CHECKLIST @@ -84,8 +84,8 @@ glyphbase, quandledb, gnpl, vcl-ut, krl, nqc. ✅ Understand canonical locations (.machine_readable/, .bot_directives/) ✅ Know the invariants (no SCM duplication, etc.) ✅ Check for MCP enforcement (if applicable) -✅ Read `.machine_readable/6a2/STATE.a2ml` for current status -✅ Read `.machine_readable/6a2/AGENTIC.a2ml` for interaction patterns +✅ Read `.machine_readable/descriptiles/STATE.a2ml` for current status +✅ Read `.machine_readable/descriptiles/AGENTIC.a2ml` for interaction patterns ## LIFECYCLE HOOKS @@ -97,7 +97,7 @@ When starting a new session: 2. Log session start (optional but recommended) - Format: `[YYYY-MM-DD HH:MM:SS] Session started: [agent-name]` - Location: `.machine_readable/session-log.txt` -3. Read `.machine_readable/6a2/STATE.a2ml` +3. Read `.machine_readable/descriptiles/STATE.a2ml` 4. Check for blockers 5. State understanding of canonical locations @@ -105,7 +105,7 @@ When starting a new session: When ending a session: -1. Update `.machine_readable/6a2/STATE.a2ml` if changes made +1. Update `.machine_readable/descriptiles/STATE.a2ml` if changes made 2. Log session end (optional but recommended) - Format: `[YYYY-MM-DD HH:MM:SS] Session ended: [summary]` - Location: `.machine_readable/session-log.txt` diff --git a/CLAUDE.md b/CLAUDE.md index f1690df7..e64db0e7 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -4,7 +4,7 @@ ## CRITICAL: This is a coordination repo. No database implementation lives here. (Read First) `nextgen-databases` **coordinates** a portfolio of database projects. It does **not** -hold their implementations. Each database and each query language has its **own repo** +hold their implementations. Each database and each database language has its **own repo** (see `REGISTRY.adoc`). **Before you create or edit a file here, STOP and ask: is this coordination, or is it @@ -14,7 +14,7 @@ own repo. ### NEVER (in this repo) 1. **NEVER** add per-database source code, schemas, migrations, storage engines, or - query-language implementations here. + database-language implementations here. 2. **NEVER** add per-database design docs, whitepapers, benchmarks, or datasets here. 3. **NEVER** create a new top-level directory for a database or language — create or extend its own repo instead (`REGISTRY.adoc`). @@ -23,19 +23,19 @@ own repo. ### ALWAYS (what DOES belong here) -1. **Portfolio coordination**: `README.adoc`, `TOPOLOGY.md`, `ROADMAP.adoc`, +1. **Portfolio coordination**: `README.adoc`, `TOPOLOGY.adoc`, `ROADMAP.adoc`, `EXPLAINME.adoc`. 2. **The registry** of databases/languages → their repos: `REGISTRY.adoc`. 3. **Cross-database** integration tests (`tests/`) and shared infrastructure (`flake.nix`, `Justfile`, `stapeln.toml`, `opsm.toml`). 4. **Governance & metadata**: `.github/`, `.machine_readable/`, `.well-known/`, - `LICENSES/`, `CONTRIBUTING.md`, `SECURITY.md`, `0-AI-MANIFEST.a2ml`. + `LICENSES/`, `CONTRIBUTING.adoc`, `SECURITY.adoc`, `0-AI-MANIFEST.a2ml`. ### Where database content goes See **`REGISTRY.adoc`** for the authoritative map. Examples: VeriSimDB → `hyperpolymath/verisimdb`; Lithoglyph → `hyperpolymath/lithoglyph`; Glyphbase → -`hyperpolymath/glyphbase`; the Glyph query language → `hyperpolymath/gnpl`; NQC → +`hyperpolymath/glyphbase`; GNPL, the narration/projection language → `hyperpolymath/gnpl`; NQC → `hyperpolymath/nqc`. ### Transitional note @@ -60,4 +60,4 @@ content being extracted** to their own repos — see directories is blocked, because it belongs in that database's own repo. --- -*Also read `0-AI-MANIFEST.a2ml` (universal AI entry point) and `AGENTS.md`.* +*Also read `0-AI-MANIFEST.a2ml` (universal AI entry point) and `AGENTS.adoc`.* diff --git a/EXPLAINME.adoc b/EXPLAINME.adoc index 0d0c384a..ce5d4a76 100644 --- a/EXPLAINME.adoc +++ b/EXPLAINME.adoc @@ -1,238 +1,95 @@ // SPDX-License-Identifier: CC-BY-SA-4.0 // Copyright (c) 2026 Jonathan D.A. Jewell -= Next-Gen Databases — Show Me The Receipts -:toc: -:toclevels: 3 -:icons: font -:author: Jonathan D.A. Jewell += Implementation evidence +:revdate: 2026-09-07 -The README makes claims. This file backs them up with architectural context, -code paths for the primary database, and honest priority rankings so an -external reviewer can distinguish active engineering from research exploration. +Observation horizon: local canonical checkouts inspected for the four families +on 2026-09-07, with the focused commands below. This ledger does not establish +remote CI status, deployed behaviour, whole-repository correctness or the state +of every historical copy. See link:REGISTRY.adoc[repository ownership]. -IMPORTANT: This is a *parent tracking repository* — no implementation code -lives here. All databases are in subdirectories (`verisimdb/`, `quandledb/`, -`lithoglyph/`) which are also mirrored as standalone canonical repos. +== Executable boundaries -== Claim 1: "Coordinated effort to build specialised databases, each with its own query language, storage engine, and web interface" - -[quote, README] -____ -This repository serves as the central tracking hub for the Next-Gen Databases -initiative — a coordinated effort to build specialised database applications -across different domains, each with its own query language, storage engine, -and web interface. -____ - -=== How it works - -The architecture shared across all three databases follows a layered stack: - -[source] ----- - Query Language (DSL) - ↓ - Database Engine (storage, indexing, computation) - ↓ - HTTP API Server (JSON endpoints) - ↓ - Web Frontend (ReScript SPA) ----- - -Each layer is domain-specific. VeriSimDB uses VCL over a Rust/Elixir engine. -QuandleDB uses KQL over a Julia (Skein.jl) engine. LithoGlyph uses GQL over -a Forth/Factor/Zig engine with Idris2 proofs. - -=== The primary path: VeriSimDB drift detection - -VeriSimDB is the primary engineering focus. Each entity exists across up to -8 simultaneous representations (the *octad*): Graph, Vector, Tensor, Semantic, -Document, Temporal, Provenance, Spatial. - -The drift detection demo entry point is: - -[source,bash] ----- -cd verisimdb/elixir-orchestration && mix run ../demos/drift-detection/run_demo.exs ----- - -This demo creates 1000 entities, corrupts 50, and verifies that the drift -detector identifies all 50 with zero false positives (in the sample output). -The Elixir orchestration layer (`verisimdb/elixir-orchestration/`) coordinates -the Rust core (`verisimdb/src/`) and the VCL parser (`verisimdb/src/vcl/`). - -The ABI layer at `verisimdb/src/abi/` (Idris2: `Types.idr`, `Layout.idr`, -`Foreign.idr`) provides machine-checked memory layout proofs for the C-ABI -bridge between Rust and Elixir. The capability registry at -`verisimdb/src/registry/` tracks which modalities are active per entity. - -=== Honest caveat - -VeriSimDB is at beta. The drift detection loop works (demo is live). The VCL -query language is approximately 40% complete — basic entity CRUD and -cross-modal consistency queries work; advanced dependent-type queries (VCL-UT) -are planned. The "formally verified queries" claim in the README refers to -the Idris2 ABI proofs, not end-to-end query verification (which is roadmap). - -== Claim 2: "VeriSimDB detects drift before it causes damage; QuandleDB and LithoGlyph cover specialist domains" - -[quote, README] -____ -Project priorities: VeriSimDB is the primary database engineering project. -LithoGlyph is working towards production for specialist use in journalism and -narrative arts. QuandleDB is a research exploration — a thought experiment made -concrete. -____ - -=== Priority breakdown - -[cols="1,1,3"] -|=== -| Database | Priority | Honest Status - -| *VeriSimDB* -| PRIMARY — active development -| Beta. Drift detection, octad entity model, Elixir orchestration, VCL parser -(~40% complete), Idris2 ABI proofs. Deployed with per-project instances -(per VeriSimDB policy: one instance per consumer repo, never shared). - -| *LithoGlyph* -| Secondary — on backburner -| Active development paused while VeriSimDB matures. Architecture is defined: -Forth storage engine, Zig bridge, Factor for GQL, Idris2 proofs, Lean 4 -normaliser. The reversibility design (GQL operations have machine-checked -inverses) will benefit from MAA Framework lessons. - -| *QuandleDB* -| Exploratory — research only -| Not intended as a production tool. Wraps Skein.jl (Julia knot database) -as a web app. 36 knots from the Rolfsen table, Jones polynomial display. -Thought experiment in applying knot theory to database design. +[cols="1,2,2",options=header] |=== - -=== How VeriSimDB's cross-modal consistency actually works - -When an entity's vector embedding is stored, VeriSimDB also records a -content hash of the source document used to generate it. On each read -(configurable: also on write), the engine recomputes the content hash, -compares it to the stored hash, and flags divergence as `VectorDocumentDrift`. -If the spatial coordinates stored for an entity no longer appear in its text -representation, that is `SpatialSemanticDrift`. The drift type taxonomy in -`verisimdb/src/` determines the repair strategy: re-embed, re-index, or -escalate to human review. - -=== Honest caveat on QuandleDB - -The README is explicit: QuandleDB is not production-ready. An external -reviewer should not treat it as evidence of a production knot-theory database. -It is a proof-of-concept that knot-theoretic invariants can be stored and -queried as first-class database attributes. If you need a production database, -use VeriSimDB. - -== Dogfooded Across The Account - -[cols="1,2,2"] +| Boundary | Evidence | Limit +| Lithoglyph proof registry +| Pinned Zig 0.15.2: `core-zig`'s `zig build test` passes 27 test executions. + Three new regression cases first failed, then passed after the verifier fix. +| No builtin mathematical verifier is implemented. Registration remains available; + its positive control checks callback plumbing, not theorem validity. +| GNPL narration and private typed substrate +| Lean 4.15.0: `lake build` succeeds; `lake test` passes five suites, including + 35 narration checks and 26 private-substrate checks. Real CLI runs construct + accounts and check focalization and hypothetical withdrawal. Lean checks + withdrawal exclusion and preservation of requested claims/order; a default + build audits their transitive axiom footprint and that of `narrate` as `propext`. +| Narration uses imported snapshots and direct-evidence warrants. The live + Lithoglyph/Glyphbase path, general derivation chains and confidence composition + remain unimplemented. The private substrate still refuses persistent execution, + complete IR wire interchange and attached-proof checking; its separate proof + assumptions remain. +| KRL / QuandleDB fragment +| Julia 1.12.6: the specification's fragment corpus passes 11 checks against + the local QuandleDB parser; QuandleDB's integration suite passes 112 checks and + its new resolution-boundary suite passes 8. +| Provider-based integration tests use fixtures. Stronger resolution assurance + is refused; heuristic bucket candidates are not checked isotopy witnesses. +| VCL-UT parsing/admissibility/wire boundary +| The standalone Rust parser workspace passes 36 tests with + `RUST_MIN_STACK=16777216`, including conformance, rejection and wire tests. +| Default test-thread stack overflowed in the property-test harness. The existing + Parse Gate workflow already sets 32 MiB. These tests do not demonstrate that + every VeriSimDB operation invokes the external gate. +| Hermeneia invoke slice +| 39 default Rust tests and 7 end-to-end slice tests passed, the latter against + the real `tropecheck-rs` binary. The Slice workflow runs this boundary. +| Uses Hermeneia's own JSONL store. This is not a demonstrated connection to + Vocarium's store; declared grades are inputs to sufficiency checking. +| Vocarium invoke slice +| Six Zig tests passed. Invoking the same stored trope under casual-note and + critical-paraphrase produced checker exits 0 and 1 respectively; the latter + named witness `e_paraphrase`. An unwarranted edge was refused with exit 2. +| Demonstrates the invoke/checker boundary, not all planned language operations + or a completed warrant-withdrawal lifecycle. Vocarium CI's invoke-slice gate + already checks both verdicts and the warrant refusal. |=== -| Technology | Role in Next-Gen Databases | Also Used In - -| *Rust* (VeriSimDB core) -| Storage engine, VCL parser, drift detection algorithms -| ephapax, gitbot-fleet, protocol-squisher - -| *Elixir* (VeriSimDB orchestration) -| Distributed coordination, Phoenix API, BEAM fault tolerance -| burble (voice platform), gossamer (service discovery target) - -| *ReScript* (all frontends) -| VCL query UI, QuandleDB frontend, planned LithoGlyph frontend -| idaptik, panll, gossamer-powered SPAs - -| *Idris2 ABI* (VeriSimDB + planned LithoGlyph) -| Machine-checked memory layout proofs for cross-language FFI -| Gossamer, Groove, Stapeln — every repo with Idris2 ABI layer - -| *Zig FFI* (LithoGlyph bridge, VeriSimDB FFI) -| C-compatible bridge between storage engine and query layer -| game-server-admin, Stapeln, Gossamer - -| *Julia* (Skein.jl, QuandleDB engine) -| Knot invariant computation; Julia batch scripting convention -| developer-ecosystem, data processing scripts - -| *VeriSimDB itself* -| Per-project instances deployed across every significant hyperpolymath -repo for cross-modal entity consistency -| Mandatory everywhere per VeriSimDB policy - -| *Stapeln containers* -| `stapeln.toml` for all three databases -| All containerised services in the account - -| *Hypatia scanning* -| `.hypatia/` CI workflows -| Every RSR repo in the account -|=== - -== File Map - -[cols="1,3"] -|=== -| Path | What It Proves - -| `verisimdb/` -| Primary database. `src/` — Rust core (storage, drift detection, VCL parser). -`src/abi/` — Idris2 ABI proofs (Types.idr, Layout.idr, Foreign.idr). -`src/registry/` — modality capability registry. -`src/vcl/` — VCL query language parser and evaluator. -`elixir-orchestration/` — Elixir/Phoenix distributed coordinator. -`api/` — JSON HTTP API surface. -`demos/` — drift-detection demo (the live proof that octad consistency works). -`connectors/` — adapters for PostgreSQL, ArangoDB, Elasticsearch federation. -`debugger/` — query debugger and drift inspector. -`admin/` — admin tooling. - -| `verisimdb/src/abi/` -| Machine-checked proofs of memory layout correctness for the Rust/Elixir -ABI boundary. Types.idr, Layout.idr, Foreign.idr. - -| `quandledb/` -| Knot-theory database (exploratory). `frontend/` — ReScript web app. -`public/` — static assets. `docs/` — design documents. Wraps the external -Skein.jl library rather than implementing knot algorithms directly. - -| `lithoglyph/` -| Narrative-first reversible database (backburner). Architecture defined: -Forth storage, Zig bridge, Factor GQL, Idris2 proofs, Lean 4 normaliser. -Current state: skeleton structure and architectural documentation. - -| `nqc/` -| NQC — experimental TypeQL-adjacent query language research, tracked here -as part of the database query language ecosystem. - -| `typeql-experimental/` -| Experimental TypeQL integration work. - -| `tests/` -| Cross-database integration tests. - -| `.machine_readable/` -| A2ML checkpoint files. Canonical AI session state. - -| `TOPOLOGY.md` -| Visual architecture map and completion dashboard for all three databases. - -| `TOOLING-STATUS.adoc` -| Current tooling readiness — which query languages have parsers, which have -evaluators, which are stub-only. - -| `stapeln.toml` -| Stapeln container configuration (notably large: 19K — covers multi-database -deployment configurations). -|=== - -== Questions? -For the primary project, start with `verisimdb/README.adoc` and run the drift -detection demo. For the full ecosystem picture, see `TOPOLOGY.md`. For -LithoGlyph architecture intent (even though implementation is on backburner), -see `lithoglyph/ARCHITECTURE.adoc`. +== Reproduce at the owning repository + +Use each repository's pinned toolchain and its own build instructions. + +* Lithoglyph: from `core-zig/`, `zig build test --summary all` with Zig 0.15.2. + See `docs/proof-verification-boundary.adoc`. +* GNPL: `lake build`, then `lake test`. + See `docs/narration-slice.adoc`, `docs/executable-boundary.adoc`, + `test/NarrationTest.lean` and `test/SubstrateTest.lean`. +* KRL: `julia --startup-file=no tests/conformance/retrieval_fragment.jl /path/to/quandledb`. + See `spec/SURFACES.adoc`; this is fragment conformance. +* QuandleDB: `julia --startup-file=no server/krl/test/seam_test.jl` and + `julia --startup-file=no server/krl/test/resolution_boundary_test.jl`. +* VCL-UT: `RUST_MIN_STACK=33554432 cargo test --manifest-path src/interface/parse/Cargo.toml --locked`. +* Hermeneia: `cargo test --workspace`, then provide the real checker through + `HERMENEIA_TROPECHECK` and run + `cargo test -p hermeneia-cli --features e2e --test slice`. +* Vocarium: `tests/e2e/invoke_slice.sh`; it pins Zig and a checker revision, and + accepts an explicitly supplied `TROPECHECK_BIN` for an existing checker build. + +The KRL fragment conformance workflow and the added QuandleDB/GNPL checks are local +changes in this pass. Their tests were run locally; no remote run is claimed. + +== Design implications + +VeriSimDB has real storage, drift and selected regeneration paths; its documented +regeneration coverage must stay explicit. A configured optional gate is not a +mandatory checked boundary. Glyphbase's inspected routes still include demo +responses; they do not establish a durable GNPL account workflow. + +QuandleDB's Julia semantic tests could not be run in the selected server project +during this review because its KnotTheory dependency was unresolved. The passing +base-Julia fragment tests do not substitute for those mathematical tests. + +Each family needs evidence appropriate to its own semantic contract. A passing +lookup does not prove consonance, a local refinement does not warrant an account, +an invariant match does not resolve isotopy, and a declared grade does not prove +that a linguistic transformation deserves that grade. diff --git a/README.adoc b/README.adoc index 4f2ea834..97fe1a94 100644 --- a/README.adoc +++ b/README.adoc @@ -1,118 +1,45 @@ -= Next-Generation Databases — Research Overview - -== Overview - -This repository contains experimental database systems built on mathematical foundations that go beyond traditional relational or document models. - -The shared goal is: - -*to treat semantic identity as primary, rather than raw data equality.* - -These systems store and operate on structured objects where identity is determined by equivalence under transformation. - -== Core Idea - -Traditional databases treat identity as: - -* equality of rows -* equality of documents -* equality of keys - -In contrast, these systems treat identity as: - -*equivalence classes of structured objects.* - -This enables: - -* deduplication based on structure, not representation -* queries over equivalence classes -* indexing by invariants rather than raw values -* explicit tracking of transformation history - -== Projects - -=== QuandleDB - -An algebraic database using *quandle structures* as a semantic identity layer. - -* Objects are indexed by algebraic invariants derived from their structure -* Designed for equivalence detection under transformation (e.g. knot isotopy) - -Status: early-stage; core extraction and fingerprinting in progress. - ---- - -=== Skein.jl - -A persistence and indexing layer for topological objects. - -* Stores canonical representations (e.g. TangleIR) -* Maintains invariant caches -* Tracks rewrite history and provenance - -Status: active, undergoing refactoring. - ---- - -=== VeriSimDB / VanguardDB - -A self-normalising multimodal database with formal verification goals. - -* Rust core with Elixir/OTP orchestration -* Focus on correctness and reliability guarantees - -Status: design phase. - ---- - -=== Lithoglyph / Glyphbase / GPL - -A narrative-first database system aimed at documentary and structured storytelling. - -* GPL (Glyph Projection Language) provides the query layer -* Dependent-type extensions planned - -Status: specified. - -== Common Principles - -Across these systems: - -* Structured objects are primary, not rows or documents -* Equivalence is a first-class concept -* Invariants are used for indexing and identity -* Provenance and transformation history are explicitly stored -* Query systems operate over equivalence classes -* Minimal typed calculi can provide small, inspectable test cases for identity, provenance, derivation history, and equivalence-aware indexing - -== Relationship to Languages - -These databases are designed to pair with languages in `nextgen-languages`: - -* KRL → QuandleDB / Skein (topological objects) -* Other languages → domain-specific storage and verification systems - -The broader goal is a unified ecosystem where: - -* languages define construction and transformation -* databases define identity and retrieval - -TypeFix Zero is a calibration calculus — TF0 exists to make the minimal typed/Turing-complete boundary explicit. It is intentionally smaller than TypeLL and should not inherit TypeLL’s open-ended production obligations. Its one non-total primitive, fix, is the designated source of Turing completeness. - -== Status - -This repository represents ongoing research work. - -Components vary in maturity: - -* some systems are partially implemented -* others are specified but not yet built -* formal obligations are documented but not fully discharged - -See proof and specification documents for current guarantees and gaps. - -== Suggested Entry Points - -* QuandleDB proof obligations — mathematical and systems requirements for equivalence -* Skein.jl documentation — persistence and indexing design -* KRL integration — example of language ↔ database interaction +// SPDX-License-Identifier: CC-BY-SA-4.0 += Next-Generation Databases + +This is the coordination repository for four database/language families. Canonical +implementations live in their own repositories; link:REGISTRY.adoc[the registry] +maps ownership. Remaining per-project directories here are extraction remnants. + +== Four distinct purposes + +[cols="1,1,3",options=header] +|=== +| Database | Language | Semantic purpose +| VeriSimDB | VCL-UT | Express consonance, admissible transitions and the evidence/usage conditions under which representations may change. +| Lithoglyph, with Glyphbase as an application surface | GNPL | Construct accounts from evidence, with explicit stances, warrants and rival interpretations. +| QuandleDB | KRL | Construct and transform knot structures, resolve identity/equivalence questions, and retrieve resolution-relevant evidence. +| Vocarium | Hermeneia | Work with situated meaning, warranted transformations and sufficiency relative to a declared use. +|=== + +These are not interchangeable record-selection syntaxes. Their value depends on +what an operation means, what evidence authorises it, and what remains unresolved +when that evidence is missing. Retrieval, filtering and storage remain useful +supporting operations. They do not determine the public language designs, and no +additional public reporting language is precommitted. + +== Engineering evidence + +link:EXPLAINME.adoc[The evidence ledger] distinguishes implemented components, +executable tests, formal obligations and integration gaps. It reports concrete +boundaries instead of whole-project completion percentages. + +Current hardening includes rejection of unimplemented Lithoglyph proof verifiers, +a runnable private typed substrate for GNPL, and KRL controls preventing index +candidates from being advertised as checked equivalence results. These changes +do not constitute full narration execution or a complete knot resolution engine. + +== Independent knot projects + +Skein.jl and KnotTheory.jl are independent Julia libraries with their own storage +and mathematical purposes. QuandleDB uses them. Tangle is a separate +Turing-complete language for knot mathematics. Shared knot theory creates no +KRL-to-Tangle compilation pipeline and transfers no proof guarantees. + +See link:TOPOLOGY.adoc[the relationship map] and link:ROADMAP.adoc[the engineering +priorities]. Cross-family integration should preserve each family's semantic +contract, including uncertainty, refusal and provenance. diff --git a/REGISTRY.adoc b/REGISTRY.adoc index 2bb74f22..7e392b08 100644 --- a/REGISTRY.adoc +++ b/REGISTRY.adoc @@ -1,67 +1,56 @@ // SPDX-License-Identifier: CC-BY-SA-4.0 // Copyright (c) 2026 Jonathan D.A. Jewell -= Database & Query-Language Registry — where each thing lives += Database and Language Registry :toc: -This is the *authoritative map* of the Next-Gen Databases portfolio to the standalone -repositories that own each database and each query language. `nextgen-databases` is a -*coordination repo*: implementation content belongs in the repos below, *not* here. +This is the authoritative ownership map for the portfolio. It records semantic +pairings, not a claim that every language-to-database path is implemented or +proved. `nextgen-databases` coordinates; implementation belongs to the owners below. -Registered in the estate clade registry: https://github.com/hyperpolymath/gv-clade-index -(see `.machine_readable/CLADE.a2ml`). +== Families -Resite: decisions finalised; execution per -`docs/migration/RESITE-DATABASES-TO-OWN-REPOS.adoc` (plan) and -`docs/migration/RESITE-CODEX-HANDOFF.adoc` (step-by-step agent command sheet). - -== Databases - -[cols="1,2,1,2",options=header] +[cols="1,2,2",options=header] |=== -| Database | Repository | Status | Query language (repo) -| VeriSimDB (cross-modal consistency) | hyperpolymath/verisimdb | exists (canonical) | VCL — nested in verisimdb -| Lithoglyph (narrative-first) | hyperpolymath/lithoglyph | exists (canonical) | GNPL (narration/projection, over GQLdt) — hyperpolymath/gnpl (exists) -| Glyphbase (Airtable-mode delivery) | hyperpolymath/glyphbase | exists (canonical) | — -| QuandleDB (knot-theory) | hyperpolymath/quandledb | exists (canonical) | KRL — hyperpolymath/krl +| Family | Canonical repositories | Language purpose +| VeriSimDB / VCL-UT +| https://github.com/hyperpolymath/verisimdb[verisimdb], https://github.com/hyperpolymath/vcl-ut[vcl-ut] +| Consonance and admissible transitions, including evidence and usage conditions. +| Lithoglyph / Glyphbase / GNPL +| https://github.com/hyperpolymath/lithoglyph[lithoglyph], https://github.com/hyperpolymath/glyphbase[glyphbase], https://github.com/hyperpolymath/gnpl[gnpl] +| Narration/projection: accounts, stances, warrants and rival interpretations. +| QuandleDB / KRL +| https://github.com/hyperpolymath/quandledb[quandledb], https://github.com/hyperpolymath/krl[krl] +| Knot construction, transformation, resolution and retrieval of relevant evidence. +| Vocarium / Hermeneia +| https://github.com/hyperpolymath/vocarium[vocarium], https://github.com/hyperpolymath/hermeneia[hermeneia] +| Situated meaning and sufficiency under a declared use model. |=== -== Query languages +GNPL's existing typed selection/storage machinery is private implementation code. +Historical source namespaces are compatibility identifiers, not separate public +languages or a fixed narration-lowering contract. VCL-UT and KRL likewise retain +their semantic identity even where an implemented fragment uses familiar access +syntax. No additional public language is precommitted for generic reporting. + +== Independent knot projects -[cols="1,2,1,2",options=header] +[cols="1,3",options=header] |=== -| Language | Repository | Status | Notes -| VCL (Verified Consonance Language) | (in hyperpolymath/verisimdb) | exists | Production; stays nested in verisimdb -| VCL-UT (usage-tracked extension) | hyperpolymath/vcl-ut | exists (canonical) | Maps to `typeql-experimental/`; reconcile + delete copy -| GQLdt (dependently-typed Glyph query language) | (in hyperpolymath/gnpl) | exists (canonical) | Extracted from `lithoglyph/gql-dt/`; `lake build` green. Stays nested in `gnpl` as GNPL's lowering target -| GNPL (narration/projection language) | hyperpolymath/gnpl | exists (canonical) | *Not* a query language — see note below -| KRL (Knot query language) | hyperpolymath/krl | exists (canonical) | No KRL content in this monorepo -| NQC (Nested Query Calculus) | hyperpolymath/nqc | to create | Already standalone in `nqc/` (Gleam) +| Project | Role and relationship +| https://github.com/hyperpolymath/Skein.jl[Skein.jl] +| Independent Julia knot storage/indexing and invariant library, used by QuandleDB. +| https://github.com/hyperpolymath/KnotTheory.jl[KnotTheory.jl] +| Independent Julia mathematical toolkit for diagrams, braids, invariants and transformations, used by QuandleDB. +| https://github.com/hyperpolymath/tangle[Tangle] +| Separate Turing-complete language for knot mathematics. Shared subject matter; + no KRL compilation dependency or inherited proof guarantee. |=== -[NOTE] -==== -*GNPL was re-scoped, 2026-07-21.* This registry previously recorded it as -"GNPL / GQL (Glyph query language)" — i.e. a rename of GQL/GQL-dt, sourced from -`lithoglyph/gql-dt/` *plus* `lithoglyph/core-factor/gql/`. That reading is superseded. - -GNPL is a *narration/projection* language: it answers "what account does this evidence -support, told from whose stance, with what warrant", not "what is true in the store". -It is being built as a layer *on top of* GQLdt in the `gnpl` repo and lowers to it: - - GNPL --lowers to--> GQLdt --FFI--> Lithoglyph - -Consequences for this registry: +== Supporting research -* `lithoglyph/gql-dt/` was extracted to `gnpl` and is no longer canonical here. -* `lithoglyph/core-factor/gql/` (5 Factor files) was *never* migrated and will not be. - It was the runtime/dynamic counterpart to GQLdt's compile-time proofs, and a typed - narration layer lowering to GQLdt supersedes it. It stays here as legacy. -* `docs/migration/RESITE-DATABASES-TO-OWN-REPOS.adoc` is amended accordingly; see - `lithoglyph/MOVED.md`. - -Rationale: https://github.com/hyperpolymath/gnpl/blob/main/docs/THEORY.adoc (the general -case) and `docs/LITHOGLYPH.adoc` (what it gives Lithoglyph specifically). -==== +NQC remains separately tracked calculus research. Its historical directory is +not evidence of an additional language required by each family. Extraction +status remains governed by the migration documents below. == VeriSim satellites @@ -89,12 +78,12 @@ were removed once each extraction completed (2026-07-27 and 2026-08-03). == What belongs in *this* (coordination) repo -* Portfolio docs: `README.adoc`, `TOPOLOGY.md`, `ROADMAP.adoc`, `EXPLAINME.adoc` +* Portfolio docs: `README.adoc`, `TOPOLOGY.adoc`, `ROADMAP.adoc`, `EXPLAINME.adoc` * This registry (`REGISTRY.adoc`) * Cross-database integration tests (`tests/`) * Shared infra & environment (`flake.nix`, `guix.scm`, `Justfile`, `stapeln.toml`, `opsm.toml`) * Governance & metadata (`.github/`, `.machine_readable/`, `.well-known/`, `LICENSES/`, - `CONTRIBUTING.md`, `SECURITY.md`, `0-AI-MANIFEST.a2ml`) + `CONTRIBUTING.adoc`, `SECURITY.adoc`, `0-AI-MANIFEST.a2ml`) [NOTE] ==== diff --git a/ROADMAP.adoc b/ROADMAP.adoc index 901bd7b4..0215bbf4 100644 --- a/ROADMAP.adoc +++ b/ROADMAP.adoc @@ -1,41 +1,39 @@ // SPDX-License-Identifier: CC-BY-SA-4.0 -// Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) - -= Next-Gen Databases Roadmap -:author: Jonathan D.A. Jewell -:email: j.d.a.jewell@open.ac.uk -:revdate: 2026-02-13 - -== Current Status - -Portfolio established with four database projects. - -== Database Status - -=== QuandleDB -* [x] Skein.jl engine (36 knots, schema v3) -* [x] Julia HTTP server with JSON API -* [x] ReScript web frontend -* [ ] KQL query language -* [ ] Knot diagram visualisation - -=== VeriSimDB -* [x] Rust core engine -* [x] VCL parser (ReScript) -* [ ] VCL executor (Elixir) -* [ ] Web frontend - -=== Lithoglyph -* [x] Core repository -* [ ] Glyph storage engine -* [ ] Search and classification API - -=== Glyphbase -* [x] Repository created -* [ ] Web frontend for Lithoglyph - -== Future Directions - -* Cross-database federation -* Shared query language infrastructure -* Common web UI component library +// Copyright (c) 2026 Jonathan D.A. Jewell += Engineering priorities +:revdate: 2026-09-07 + +== Establish honest executable boundaries + +* Lithoglyph must verify actual certificates before reporting them valid. + Unimplemented builtin verifiers now refuse success; real verifier integration remains. +* GNPL now has a runnable direct-evidence narration fragment: accounts, + focalization, warrants, a limited rival relation and hypothetical withdrawal. + Connect its imported-snapshot contract to Lithoglyph next, then extend warrant + derivations and temporal semantics with their own proof obligations. +* KRL's draft and implemented fragment now have separate surface contracts and + an executable conformance corpus. Resolve their syntax deliberately before + claiming a unified four-operation implementation. +* QuandleDB must distinguish candidates from checked equivalence. Stronger + assurance requests now fail when only bucket membership is available. + +== Complete the family integrations + +* VeriSimDB / VCL-UT: establish a mandatory, tested admissibility boundary for + every operation advertised as checked, including mutations and transitions. +* Lithoglyph / GNPL / Glyphbase: connect a real account operation and warrant + failure through durable storage and the application surface. +* QuandleDB / KRL: implement and check an explicit resolution witness; keep + unresolved results and incomplete searches visible. +* Vocarium / Hermeneia: agree and test one shared storage/warrant contract, + including invalidation or withdrawal. Existing invoke/checker slices use + distinct store implementations and do not prove this integration. + +== Keep claims tied to evidence + +Maintain an acceptance example and a meaningful rejection/uncertainty example +for every implemented boundary. Run them in the owning repositories' CI. Report +local test results separately from remote CI, formal proof and deployment. + +The public vocabulary is VCL-UT, GNPL, KRL and Hermeneia. Selection, filtering and +reporting remain supporting capabilities; no extra public language is assumed. diff --git a/TOPOLOGY.adoc b/TOPOLOGY.adoc index 1cd36533..14eea3d7 100644 --- a/TOPOLOGY.adoc +++ b/TOPOLOGY.adoc @@ -1,98 +1,31 @@ -== Next-Gen Databases — Project Topology - -=== System Architecture - -.... - ┌─────────────────────────────────────────┐ - │ DB ANALYST / USER │ - │ (KQL, VCL, Web Dashboards) │ - └───────────────────┬─────────────────────┘ - │ - ▼ - ┌─────────────────────────────────────────┐ - │ NEXT-GEN DATABASES HUB │ - │ │ - │ ┌───────────┐ ┌───────────────────┐ │ - │ │ QuandleDB │ │ VeriSimDB │ │ - │ │ (Knot Thy)│ │ (Verification) │ │ - │ └─────┬─────┘ └────────┬──────────┘ │ - │ │ │ │ - │ ┌─────▼─────┐ ┌────────▼──────────┐ │ - │ │ Lithoglyph│ │ FormDB │ │ - │ │ (Glyphs) │ │ (Audit-grade) │ │ - │ └─────┬─────┘ └───────────────────┘ │ - └────────│────────────────────────────────┘ - │ - ▼ - ┌─────────────────────────────────────────┐ - │ SATELLITE REPOSITORIES │ - │ ┌───────────┐ ┌───────────┐ ┌───────┐│ - │ │ Skein.jl │ │ VCL Parser│ │ FBQL- ││ - │ │ (Engine) │ │ (ReScript)│ │ DT ││ - │ └───────────┘ └───────────┘ └───────┘│ - │ ┌───────────┐ ┌───────────┐ ┌───────┐│ - │ │ glyphbase │ │ verisim- │ │ quandle││ - │ │ (Web UI) │ │ data │ │ kql ││ - │ └───────────┘ └───────────┘ └───────┘│ - └───────────────────┬─────────────────────┘ - │ - ▼ - ┌─────────────────────────────────────────┐ - │ UPSTREAM STANDARDS │ - │ (RSR Compliance, PMPL License) │ - └─────────────────────────────────────────┘ - - ┌─────────────────────────────────────────┐ - │ REPO INFRASTRUCTURE │ - │ Parent Tracking Only .machine_readable/│ - │ No Local Code 0-AI-MANIFEST.a2ml│ - │ Groove Discovery nqc/.well-known/ │ - └─────────────────────────────────────────┘ -.... - -=== Completion Dashboard - -.... -COMPONENT STATUS NOTES -───────────────────────────────── ────────────────── ───────────────────────────────── -DATABASE PORTFOLIO - QuandleDB (Knot Theory) ██████████ 100% Skein.jl engine stable - VeriSimDB (Verification) ██████████ 100% Multimodal schema stable - LithoglyphDB (Glyphs) ██████████ 100% Provenance tracking verified - FormDB (Audit-grade) ████████░░ 80% Narrative-first state active - -QUERY LANGUAGES - KQL (Knot Query) ██████░░░░ 60% Topology invariants active - VCL (Verification) ████░░░░░░ 40% Compiler in progress - FBQL-DT (Dependently Typed) █████░░░░░ 50% Compile-time proofs active - -REPO INFRASTRUCTURE - Parent Coordination ██████████ 100% Portfolio mapping verified - .machine_readable/ ██████████ 100% STATE tracking active - 0-AI-MANIFEST.a2ml ██████████ 100% AI entry point verified - -───────────────────────────────────────────────────────────────────────────── -OVERALL: ██████████ 100% Portfolio Architected & Indexed -.... - -=== Key Dependencies - -.... -Database Engine ──────► Query DSL ────────► HTTP API ─────────► Web UI - │ │ │ │ - ▼ ▼ ▼ ▼ -Julia / Rust ──────► ReScript Parser ────► JSON Endpoints ──► React SPA -.... - -=== Update Protocol - -This file is maintained by both humans and AI agents. When updating: - -[arabic] -. *After completing a component*: Change its bar and percentage -. *After adding a component*: Add a new row in the appropriate section -. *After architectural changes*: Update the ASCII diagram -. *Date*: Update the `+Last updated+` comment at the top of this file - -Progress bars use: `+█+` (filled) and `+░+` (empty), 10 characters wide. -Percentages: 0%, 10%, 20%, … 100% (in 10% increments). +// SPDX-License-Identifier: CC-BY-SA-4.0 +// SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell +== Portfolio relationships + +Lines labelled “semantic pairing” describe design relationships; they do not +assert a working integration or transferred proof guarantee. + +[source,mermaid] +---- +flowchart LR + V[VeriSimDB] ---|semantic pairing| VCL[VCL-UT] + L[Lithoglyph] ---|semantic pairing| G[GNPL] + B[Glyphbase] ---|application surface| L + Q[QuandleDB] ---|semantic pairing| K[KRL] + VO[Vocarium] ---|semantic pairing| H[Hermeneia] + S[Skein.jl] -->|library used by| Q + KT[KnotTheory.jl] -->|library used by| Q + T[Tangle: independent Turing-complete language] +---- + +The four languages express different obligations: consonance/admissibility, +narration/warrants, knot resolution, and use-relative sufficiency. Shared storage +or retrieval mechanisms do not make their semantics interchangeable. + +Skein.jl, KnotTheory.jl and Tangle have independent purposes. Their common knot +subject matter does not turn them into successive compiler stages or assign each +a single KRL operation. + +link:REGISTRY.adoc[Registry] identifies canonical repositories. +link:EXPLAINME.adoc[Evidence ledger] states tested boundaries and remaining gaps. +link:ROADMAP.adoc[Roadmap] identifies the next substantive implementation work. From 0fa5379bb243b5cf5f9a553dac04746a6cc747ab Mon Sep 17 00:00:00 2001 From: "Jonathan D.A. Jewell" <6759885+hyperpolymath@users.noreply.github.com> Date: Mon, 7 Sep 2026 03:42:59 +0100 Subject: [PATCH 2/4] fix(ci): enforce blocking scans and repair verification workflows --- .github/workflows/boj-build.yml | 3 ++- .github/workflows/casket-pages.yml | 15 ++++++++------- .github/workflows/codeql.yml | 7 ++++--- .github/workflows/dogfood-gate.yml | 11 ++++++----- .github/workflows/governance.yml | 3 ++- .github/workflows/hypatia-scan.yml | 5 ++++- .github/workflows/label-triage.yml | 1 + .github/workflows/labels.yml | 1 + .github/workflows/mirror.yml | 1 + .github/workflows/placement-guard.yml | 3 ++- .github/workflows/push-email-notify.yml | 3 ++- .github/workflows/scorecard.yml | 1 + .github/workflows/secret-scanner.yml | 3 ++- .github/workflows/verify-tlaplus.yml | 9 +++++---- 14 files changed, 41 insertions(+), 25 deletions(-) diff --git a/.github/workflows/boj-build.yml b/.github/workflows/boj-build.yml index adf2467b..c5566281 100644 --- a/.github/workflows/boj-build.yml +++ b/.github/workflows/boj-build.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. # This workflow is managed by gh actions-lock. @@ -36,7 +37,7 @@ jobs: # it actually is one instead of failing the run. steps: - name: Checkout - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Trigger BoJ Server (Casket/ssg-mcp) env: diff --git a/.github/workflows/casket-pages.yml b/.github/workflows/casket-pages.yml index f9a7efa3..4153b922 100644 --- a/.github/workflows/casket-pages.yml +++ b/.github/workflows/casket-pages.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. # This workflow is managed by gh actions-lock. @@ -22,22 +23,22 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Checkout casket-ssg - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: repository: hyperpolymath/casket-ssg path: .casket-ssg - name: Setup GHCup - uses: haskell-actions/setup@v2.12.0 + uses: haskell-actions/setup@6037f33647c3f17758a2356c80fc4a53d7e0685d # v2.12.0 with: ghc-version: '9.8.2' cabal-version: '3.10' - name: Cache Cabal - uses: actions/cache@v6.1.0 + uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 with: path: | ~/.cabal/packages @@ -103,10 +104,10 @@ jobs: touch ../_site/.nojekyll - name: Setup Pages - uses: actions/configure-pages@v6.0.0 + uses: actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d # v6.0.0 - name: Upload artifact - uses: actions/upload-pages-artifact@v5.0.0 + uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5.0.0 with: path: '_site' @@ -119,4 +120,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@v5.0.0 + uses: actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128 # v5.0.0 diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 6fce4308..2c5b18d4 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. # This workflow is managed by gh actions-lock. @@ -37,15 +38,15 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Initialize CodeQL - uses: github/codeql-action/init@v4.37.7 + uses: github/codeql-action/init@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7 with: languages: ${{ matrix.language }} build-mode: ${{ matrix.build-mode }} - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v4.37.7 + uses: github/codeql-action/analyze@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7 with: category: "/language:${{ matrix.language }}" diff --git a/.github/workflows/dogfood-gate.yml b/.github/workflows/dogfood-gate.yml index b0af39ba..f361cb6c 100644 --- a/.github/workflows/dogfood-gate.yml +++ b/.github/workflows/dogfood-gate.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. # This workflow is managed by gh actions-lock. @@ -27,7 +28,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Check for A2ML files id: detect @@ -76,7 +77,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Check for K9 files id: detect @@ -126,7 +127,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Scan for invisible characters id: lint @@ -190,7 +191,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Check for Groove manifest id: groove @@ -250,7 +251,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Generate dogfooding scorecard run: | diff --git a/.github/workflows/governance.yml b/.github/workflows/governance.yml index da1190b3..39edad31 100644 --- a/.github/workflows/governance.yml +++ b/.github/workflows/governance.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. # This workflow is managed by gh actions-lock. @@ -34,4 +35,4 @@ permissions: jobs: governance: - uses: hyperpolymath/standards/.github/workflows/governance-reusable.yml@84355587cb2a1f86e6882de83514a32db2646e7a + uses: hyperpolymath/standards/.github/workflows/governance-reusable.yml@fcb566cfb8a86cea2d3666bf65a4f177a49b1313 diff --git a/.github/workflows/hypatia-scan.yml b/.github/workflows/hypatia-scan.yml index 40ddc3a1..c56c84d7 100644 --- a/.github/workflows/hypatia-scan.yml +++ b/.github/workflows/hypatia-scan.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. # This workflow is managed by gh actions-lock. @@ -28,5 +29,7 @@ permissions: jobs: hypatia: - uses: hyperpolymath/standards/.github/workflows/hypatia-scan-reusable.yml@84355587cb2a1f86e6882de83514a32db2646e7a + uses: hyperpolymath/standards/.github/workflows/hypatia-scan-reusable.yml@fcb566cfb8a86cea2d3666bf65a4f177a49b1313 + with: + block-on-high: true secrets: inherit diff --git a/.github/workflows/label-triage.yml b/.github/workflows/label-triage.yml index 9886e920..814a1924 100644 --- a/.github/workflows/label-triage.yml +++ b/.github/workflows/label-triage.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 name: Label Triage diff --git a/.github/workflows/labels.yml b/.github/workflows/labels.yml index c80b676c..83ab941a 100644 --- a/.github/workflows/labels.yml +++ b/.github/workflows/labels.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 name: Labels diff --git a/.github/workflows/mirror.yml b/.github/workflows/mirror.yml index c2ba7778..b95ea109 100644 --- a/.github/workflows/mirror.yml +++ b/.github/workflows/mirror.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. # This workflow is managed by gh actions-lock. diff --git a/.github/workflows/placement-guard.yml b/.github/workflows/placement-guard.yml index ea9099bf..72422746 100644 --- a/.github/workflows/placement-guard.yml +++ b/.github/workflows/placement-guard.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. # This workflow is managed by gh actions-lock. @@ -26,7 +27,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 0 diff --git a/.github/workflows/push-email-notify.yml b/.github/workflows/push-email-notify.yml index 9e133d7c..8d877a7c 100644 --- a/.github/workflows/push-email-notify.yml +++ b/.github/workflows/push-email-notify.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. # Dormant push-email notification. ARMED by setting the repo variable @@ -40,7 +41,7 @@ jobs: timeout-minutes: 5 steps: - name: Send push notification email - uses: hyperpolymath/smtp-notify-action@v0.2.0 # NOSONAR — pin authority is actions.lock (sha1-ede1191ef6ff3ac02c4f4d9efdf837ee517e11d7) + uses: hyperpolymath/smtp-notify-action@ede1191ef6ff3ac02c4f4d9efdf837ee517e11d7 # v0.2.0 # NOSONAR — pin authority is actions.lock (sha1-ede1191ef6ff3ac02c4f4d9efdf837ee517e11d7) with: server_address: ${{ secrets.SMTP_HOST }} server_port: ${{ secrets.SMTP_PORT }} diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml index 956be32f..620ea77c 100644 --- a/.github/workflows/scorecard.yml +++ b/.github/workflows/scorecard.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. # This workflow is managed by gh actions-lock. diff --git a/.github/workflows/secret-scanner.yml b/.github/workflows/secret-scanner.yml index 3b1c5df3..1dbaa2c3 100644 --- a/.github/workflows/secret-scanner.yml +++ b/.github/workflows/secret-scanner.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. # This workflow is managed by gh actions-lock. @@ -20,5 +21,5 @@ jobs: scan: permissions: contents: read - uses: hyperpolymath/standards/.github/workflows/secret-scanner-reusable.yml@84355587cb2a1f86e6882de83514a32db2646e7a + uses: hyperpolymath/standards/.github/workflows/secret-scanner-reusable.yml@fcb566cfb8a86cea2d3666bf65a4f177a49b1313 secrets: inherit diff --git a/.github/workflows/verify-tlaplus.yml b/.github/workflows/verify-tlaplus.yml index 9c24c4fd..cf3a6299 100644 --- a/.github/workflows/verify-tlaplus.yml +++ b/.github/workflows/verify-tlaplus.yml @@ -1,3 +1,4 @@ +# This workflow is managed by gh actions-lock. # SPDX-License-Identifier: MPL-2.0 # This workflow is managed by gh actions-lock. # This workflow is managed by gh actions-lock. @@ -40,17 +41,17 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v7.0.1 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Set up Eclipse Temurin 21 JRE - uses: actions/setup-java@v5.7.0 + uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5.7.0 with: distribution: temurin java-version: '21' - name: Cache tla2tools.jar id: cache-tla - uses: actions/cache@v6.1.0 + uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 with: path: ~/.local/share/tla2tools.jar key: tla2tools-v1.8.0 @@ -91,7 +92,7 @@ jobs: - name: Upload TLC logs on failure if: failure() - uses: actions/upload-artifact@v7.0.1 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: tlc-logs path: verisimdb/verification/proofs/tlaplus/*.log From 5176d9e17c7647b551aedf2237c4607c5bd87205 Mon Sep 17 00:00:00 2001 From: "Jonathan D.A. Jewell" <6759885+hyperpolymath@users.noreply.github.com> Date: Mon, 7 Sep 2026 08:48:07 +0100 Subject: [PATCH 3/4] fix(ci): recover native action locks and correct portfolio documentation --- .github/workflows/boj-build.yml | 2 +- .github/workflows/casket-pages.yml | 14 +++++++------- .github/workflows/codeql.yml | 6 +++--- .github/workflows/dogfood-gate.yml | 10 +++++----- .github/workflows/placement-guard.yml | 2 +- .github/workflows/push-email-notify.yml | 2 +- .github/workflows/verify-tlaplus.yml | 8 ++++---- 0-AI-MANIFEST.a2ml | 2 +- CONTRIBUTING.adoc | 2 +- EXPLAINME.adoc | 6 +++--- SECURITY.adoc | 2 +- docs/migration/RESITE-CODEX-HANDOFF.adoc | 2 +- 12 files changed, 29 insertions(+), 29 deletions(-) diff --git a/.github/workflows/boj-build.yml b/.github/workflows/boj-build.yml index c5566281..e661c79f 100644 --- a/.github/workflows/boj-build.yml +++ b/.github/workflows/boj-build.yml @@ -37,7 +37,7 @@ jobs: # it actually is one instead of failing the run. steps: - name: Checkout - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + uses: actions/checkout@v7.0.1 - name: Trigger BoJ Server (Casket/ssg-mcp) env: diff --git a/.github/workflows/casket-pages.yml b/.github/workflows/casket-pages.yml index 4153b922..b38348c8 100644 --- a/.github/workflows/casket-pages.yml +++ b/.github/workflows/casket-pages.yml @@ -23,22 +23,22 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + uses: actions/checkout@v7.0.1 - name: Checkout casket-ssg - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + uses: actions/checkout@v7.0.1 with: repository: hyperpolymath/casket-ssg path: .casket-ssg - name: Setup GHCup - uses: haskell-actions/setup@6037f33647c3f17758a2356c80fc4a53d7e0685d # v2.12.0 + uses: haskell-actions/setup@v2.12.0 with: ghc-version: '9.8.2' cabal-version: '3.10' - name: Cache Cabal - uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 + uses: actions/cache@v6.1.0 with: path: | ~/.cabal/packages @@ -104,10 +104,10 @@ jobs: touch ../_site/.nojekyll - name: Setup Pages - uses: actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d # v6.0.0 + uses: actions/configure-pages@v6.0.0 - name: Upload artifact - uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5.0.0 + uses: actions/upload-pages-artifact@v5.0.0 with: path: '_site' @@ -120,4 +120,4 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128 # v5.0.0 + uses: actions/deploy-pages@v5.0.0 diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 2c5b18d4..35a5e59c 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -38,15 +38,15 @@ jobs: steps: - name: Checkout - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + uses: actions/checkout@v7.0.1 - name: Initialize CodeQL - uses: github/codeql-action/init@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7 + uses: github/codeql-action/init@v4.37.7 with: languages: ${{ matrix.language }} build-mode: ${{ matrix.build-mode }} - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7 + uses: github/codeql-action/analyze@v4.37.7 with: category: "/language:${{ matrix.language }}" diff --git a/.github/workflows/dogfood-gate.yml b/.github/workflows/dogfood-gate.yml index f361cb6c..9c38a135 100644 --- a/.github/workflows/dogfood-gate.yml +++ b/.github/workflows/dogfood-gate.yml @@ -28,7 +28,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + uses: actions/checkout@v7.0.1 - name: Check for A2ML files id: detect @@ -77,7 +77,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + uses: actions/checkout@v7.0.1 - name: Check for K9 files id: detect @@ -127,7 +127,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + uses: actions/checkout@v7.0.1 - name: Scan for invisible characters id: lint @@ -191,7 +191,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + uses: actions/checkout@v7.0.1 - name: Check for Groove manifest id: groove @@ -251,7 +251,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + uses: actions/checkout@v7.0.1 - name: Generate dogfooding scorecard run: | diff --git a/.github/workflows/placement-guard.yml b/.github/workflows/placement-guard.yml index 72422746..43c9f0c3 100644 --- a/.github/workflows/placement-guard.yml +++ b/.github/workflows/placement-guard.yml @@ -27,7 +27,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + uses: actions/checkout@v7.0.1 with: fetch-depth: 0 diff --git a/.github/workflows/push-email-notify.yml b/.github/workflows/push-email-notify.yml index 8d877a7c..579479c8 100644 --- a/.github/workflows/push-email-notify.yml +++ b/.github/workflows/push-email-notify.yml @@ -41,7 +41,7 @@ jobs: timeout-minutes: 5 steps: - name: Send push notification email - uses: hyperpolymath/smtp-notify-action@ede1191ef6ff3ac02c4f4d9efdf837ee517e11d7 # v0.2.0 # NOSONAR — pin authority is actions.lock (sha1-ede1191ef6ff3ac02c4f4d9efdf837ee517e11d7) + uses: hyperpolymath/smtp-notify-action@v0.2.0 with: server_address: ${{ secrets.SMTP_HOST }} server_port: ${{ secrets.SMTP_PORT }} diff --git a/.github/workflows/verify-tlaplus.yml b/.github/workflows/verify-tlaplus.yml index cf3a6299..255a773f 100644 --- a/.github/workflows/verify-tlaplus.yml +++ b/.github/workflows/verify-tlaplus.yml @@ -41,17 +41,17 @@ jobs: steps: - name: Checkout - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + uses: actions/checkout@v7.0.1 - name: Set up Eclipse Temurin 21 JRE - uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5.7.0 + uses: actions/setup-java@v5.7.0 with: distribution: temurin java-version: '21' - name: Cache tla2tools.jar id: cache-tla - uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 + uses: actions/cache@v6.1.0 with: path: ~/.local/share/tla2tools.jar key: tla2tools-v1.8.0 @@ -92,7 +92,7 @@ jobs: - name: Upload TLC logs on failure if: failure() - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 + uses: actions/upload-artifact@v7.0.1 with: name: tlc-logs path: verisimdb/verification/proofs/tlaplus/*.log diff --git a/0-AI-MANIFEST.a2ml b/0-AI-MANIFEST.a2ml index 945be538..62feffa1 100644 --- a/0-AI-MANIFEST.a2ml +++ b/0-AI-MANIFEST.a2ml @@ -44,7 +44,7 @@ Bot-specific instructions for: databases. Per-database source, schemas, migrations, database-language implementations, and per-database docs MUST live in that database's own repo (see `REGISTRY.adoc`). Adding per-database implementation content here is an ERROR. -2. **No SCM duplication** - Root must NOT contain .machine_readable/descriptiles/STATE.a2ml, .machine_readable/descriptiles/META.a2ml, etc. +2. **No descriptor duplication** - Keep STATE.a2ml, META.a2ml and the other descriptive anchors only under `.machine_readable/descriptiles/`; do not create duplicates at the repository root or in retired directories. 3. **Single source of truth** - `.machine_readable/` is authoritative 4. **No stale metadata** - If root SCMs exist, they are OUT OF DATE 5. **License consistency** - All code PMPL-1.0-or-later unless platform requires MPL-2.0 diff --git a/CONTRIBUTING.adoc b/CONTRIBUTING.adoc index b2eb6c74..4aad651b 100644 --- a/CONTRIBUTING.adoc +++ b/CONTRIBUTING.adoc @@ -25,7 +25,7 @@ suite implementations. Each database and query language has its own repo (see `REGISTRY.adoc`). .... -nextgen-databases/ ├── README.adoc / EXPLAINME.adoc / TOPOLOGY.md / +nextgen-databases/ ├── README.adoc / EXPLAINME.adoc / TOPOLOGY.adoc / ROADMAP.adoc # Portfolio docs ├── REGISTRY.adoc # Authoritative map: database/language -> its own repo ├── CLAUDE.md / AGENTS.md / 0-AI-MANIFEST.a2ml # Agent guardrails ├── docs/ # Coordination docs diff --git a/EXPLAINME.adoc b/EXPLAINME.adoc index ce5d4a76..c05d2fd8 100644 --- a/EXPLAINME.adoc +++ b/EXPLAINME.adoc @@ -37,9 +37,9 @@ of every historical copy. See link:REGISTRY.adoc[repository ownership]. is refused; heuristic bucket candidates are not checked isotopy witnesses. | VCL-UT parsing/admissibility/wire boundary | The standalone Rust parser workspace passes 36 tests with - `RUST_MIN_STACK=16777216`, including conformance, rejection and wire tests. -| Default test-thread stack overflowed in the property-test harness. The existing - Parse Gate workflow already sets 32 MiB. These tests do not demonstrate that + `RUST_MIN_STACK=16777216` (16 MiB) in that recorded local run, including conformance, rejection and wire tests. +| Default test-thread stack overflowed in the property-test harness. The reproduction command below follows the existing + Parse Gate workflow setting of 32 MiB; it is distinct from the recorded local run. These tests do not demonstrate that every VeriSimDB operation invokes the external gate. | Hermeneia invoke slice | 39 default Rust tests and 7 end-to-end slice tests passed, the latter against diff --git a/SECURITY.adoc b/SECURITY.adoc index 68c30afd..33dc64f0 100644 --- a/SECURITY.adoc +++ b/SECURITY.adoc @@ -395,7 +395,7 @@ When using Nextgen Databases, we recommend: * https://github.com/hyperpolymath/nextgen-databases/security/advisories[Security Advisories] * link:CHANGELOG.md[Changelog] -* link:CONTRIBUTING.md[Contributing Guidelines] +* link:CONTRIBUTING.adoc[Contributing Guidelines] * https://cve.mitre.org/[CVE Database] * https://www.first.org/cvss/calculator/3.1[CVSS Calculator] diff --git a/docs/migration/RESITE-CODEX-HANDOFF.adoc b/docs/migration/RESITE-CODEX-HANDOFF.adoc index 8d74dbad..819c5cf8 100644 --- a/docs/migration/RESITE-CODEX-HANDOFF.adoc +++ b/docs/migration/RESITE-CODEX-HANDOFF.adoc @@ -195,7 +195,7 @@ Then edit, in this repo: * `REGISTRY.adoc` — set every row to its final state / link. * `0-AI-MANIFEST.a2ml` — empty the LEGACY directory list (nothing legacy remains). -* `EXPLAINME.adoc`, `TOPOLOGY.md`, `README.adoc` — describe the thin structure (submodules + +* `EXPLAINME.adoc`, `TOPOLOGY.adoc`, `README.adoc` — describe the thin structure (submodules + registry links). * `.github/workflows/placement-guard.yml` — empty the `GRANDFATHER` regex so ANY database path is now a hard error (not a warning). From a23b7d072feeed33edcd361320a8d95d003a32de Mon Sep 17 00:00:00 2001 From: Mistral Vibe Date: Sat, 12 Sep 2026 20:59:14 +0100 Subject: [PATCH 4/4] fix(placement-guard): add GEMINI.md to allowed coordination files In addition to the existing change in this PR, adds GEMINI to the ALLOW pattern so that GEMINI.md (agent instructions pointer) can be added without triggering the placement guard. --- .github/workflows/placement-guard.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/placement-guard.yml b/.github/workflows/placement-guard.yml index 43c9f0c3..84584aae 100644 --- a/.github/workflows/placement-guard.yml +++ b/.github/workflows/placement-guard.yml @@ -54,7 +54,7 @@ jobs: set -uo pipefail # Allowed coordination paths (regex, anchored at repo root). - ALLOW='^(README|EXPLAINME|TOPOLOGY|ROADMAP|TOOLING-STATUS|REGISTRY|CONTRIBUTING|CODE_OF_CONDUCT|SECURITY|MAINTAINERS|NOTICE|LICENSE|PROOF-NEEDS|TEST-NEEDS|QUICKSTART-[A-Z]+|0-AI-MANIFEST|CLAUDE|AGENTS|llm-warmup-[a-z]+)\.[A-Za-z0-9]+$' + ALLOW='^(README|EXPLAINME|TOPOLOGY|ROADMAP|TOOLING-STATUS|REGISTRY|CONTRIBUTING|CODE_OF_CONDUCT|SECURITY|MAINTAINERS|NOTICE|LICENSE|PROOF-NEEDS|TEST-NEEDS|QUICKSTART-[A-Z]+|0-AI-MANIFEST|CLAUDE|GEMINI|AGENTS|llm-warmup-[a-z]+)\.[A-Za-z0-9]+$' # `.githooks` added 2026-07-27. It is repo infrastructure, not database # content — git resolves core.hooksPath relative to the worktree root, # so it must live there, exactly like .github/ and .claude/ which were