Skip to content

Commit a23d3d9

Browse files
hyperpolymathclaude
andcommitted
refactor(rename): VQL → VCL + verisimdb → verisim
Mechanical rename across all source, docs, and configuration: - VQL / vql / vql_* → VCL / vcl / vcl_* - VeriSim Query Language → VeriSim Consonance Language - verisimdb → verisim (repo, module, DB name, Prometheus metrics) - .vql extension → .vcl - vql-bridge/, src/vql/, examples/vql-queries/ → vcl-equivalents - Rust module vql_bridge/vql_fmt → vcl_bridge/vcl_fmt Schema impact: - ClickHouse database renamed: verisimdb.* → verisim.* - All 1108 proof_attempts rows migrated via TSV backup/restore - 7 PROVEN + 2 SANCTIFIED certificates regenerate identically against the new schema (verified live) - Prover Enum8 now includes all 42 variants (cadical, kissat, spass, etc.) Terminology framing (from migration instructions): VeriSim operations are **propositions to a consonance engine**, not queries against a passive store. Operations split into propositional (DECLARE, ASSERT, RETRACT) and epistemic (INSPECT, VERIFY). Preserved unchanged: - github.com/hyperpolymath/verisimdb URLs (GitHub repo rename pending) - "query" in general English prose (context-sensitive Step 3 work) - Operation names (SELECT/INSERT/DELETE → INSPECT/ASSERT/RETRACT) — Step 4 requires per-occurrence judgement, not automated - -ut type suffixes — Step 5 per-occurrence total-vs-sound decision Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent e8ee0eb commit a23d3d9

221 files changed

Lines changed: 2804 additions & 1546 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.claude/CLAUDE.md

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,8 @@ The following files in `.machine_readable/` contain structured project metadata:
6161
### ALLOWED
6262
- **Rust** - Core database engine, modality stores
6363
- **Elixir** - OTP orchestration layer
64-
- **ReScript** - VQL parser, federation registry
65-
- **VQL** - VeriSim Query Language (native query interface, NOT SQL)
64+
- **ReScript** - VCL parser, federation registry
65+
- **VCL** - VeriSim Consonance Language (native query interface, NOT SQL)
6666

6767
### BANNED
6868
- Python - Use Rust instead
@@ -101,12 +101,12 @@ cd elixir-orchestration && mix compile
101101
Use Podman (NOT Docker):
102102
```bash
103103
# In-memory (default)
104-
podman build -t verisimdb:latest -f container/Containerfile .
105-
podman run -p 8080:8080 verisimdb:latest
104+
podman build -t verisim:latest -f container/Containerfile .
105+
podman run -p 8080:8080 verisim:latest
106106

107107
# Persistent storage (redb graph + file-backed Tantivy + WAL)
108-
podman build -t verisimdb:persistent --build-arg FEATURES=persistent -f container/Containerfile .
109-
podman run -p 8080:8080 -v verisimdb-data:/data verisimdb:persistent
108+
podman build -t verisim:persistent --build-arg FEATURES=persistent -f container/Containerfile .
109+
podman run -p 8080:8080 -v verisim-data:/data verisim:persistent
110110
```
111111

112112
### Verified Container Deployment (stapeln)
@@ -230,13 +230,13 @@ VeriSimDB needs to service all ~290 hyperpolymath repos from GitHub Actions CI.
230230

231231
### Architecture: Git-Backed Flat-File Store
232232

233-
Instead of running verisimdb as a persistent server in GitHub, use a **git-backed data repo**:
233+
Instead of running verisim as a persistent server in GitHub, use a **git-backed data repo**:
234234

235235
```
236-
hyperpolymath/verisimdb-data (new repo)
236+
hyperpolymath/verisim-data (new repo)
237237
├── scans/ # panic-attack scan results per repo
238238
│ ├── echidna.json
239-
│ ├── verisimdb.json
239+
│ ├── verisim.json
240240
│ └── ...
241241
├── hardware/ # hardware-crash-team findings
242242
│ └── latest-scan.json
@@ -249,28 +249,28 @@ hyperpolymath/verisimdb-data (new repo)
249249

250250
### How It Works
251251

252-
1. **Each repo's CI** runs panic-attack, produces JSON, pushes to `verisimdb-data` via workflow dispatch
253-
2. **verisimdb-data ingest workflow** receives the JSON, stores it, updates the index
254-
3. **Query** by checking out verisimdb-data and reading JSON (no server needed)
252+
1. **Each repo's CI** runs panic-attack, produces JSON, pushes to `verisim-data` via workflow dispatch
253+
2. **verisim-data ingest workflow** receives the JSON, stores it, updates the index
254+
3. **Query** by checking out verisim-data and reading JSON (no server needed)
255255
4. **Local dev**: Run `verisim-api` server locally, load from the data repo
256256

257257
### Implementation Steps (for Sonnet)
258258

259-
1. Create `verisimdb-data` repo from rsr-template-repo
259+
1. Create `verisim-data` repo from rsr-template-repo
260260
2. Add `ingest.yml` workflow that accepts repository_dispatch events with scan payloads
261261
3. Add a reusable workflow `scan-and-report.yml` that repos can call:
262262
- Runs `panic-attack assail` on the repo
263-
- Sends results to verisimdb-data via repository_dispatch
263+
- Sends results to verisim-data via repository_dispatch
264264
4. Add the reusable workflow to 2-3 pilot repos first (echidna, panic-attacker, ambientops)
265-
5. Add a `query.sh` script that clones verisimdb-data and searches the index
265+
5. Add a `query.sh` script that clones verisim-data and searches the index
266266

267267
### Future: Persistent Server
268268

269269
When ready to scale beyond flat files:
270270
- Deploy verisim-api to **Fly.io free tier** (3 shared VMs, 1GB persistent volume)
271271
- Use the Containerfile already in `container/`
272272
- GitHub Actions calls the Fly.io endpoint instead of repository_dispatch
273-
- Keep verisimdb-data as backup/mirror
273+
- Keep verisim-data as backup/mirror
274274

275275
## Hypatia Integration Pipeline
276276

@@ -294,15 +294,15 @@ panic-attack assail → ScanIngester → octad octads → PatternQuery → Dispa
294294
`category_distribution/0`, `temporal_trends/1`, `repos_by_severity/1`, `weakness_hotspots/0`
295295

296296
3. **DispatchBridge** (`dispatch_bridge.ex`): Bridge to Hypatia dispatch pipeline
297-
- Reads JSONL dispatch manifests from `verisimdb-data/dispatch/`
297+
- Reads JSONL dispatch manifests from `verisim-data/dispatch/`
298298
- Tracks execution status and feeds outcomes back for drift tracking
299299
- API: `read_pending/1`, `read_dispatch_log/2`, `read_all_dispatch_logs/1`,
300300
`read_outcomes/1`, `summarize/1`, `feedback_to_drift/1`, `ingest_dispatch_summary/1`
301301

302302
### Remaining: Fleet Dispatch (Live Execution)
303303

304304
Fleet dispatch is logged to JSONL but not yet executing live GraphQL mutations.
305-
Requires GitHub PAT with `repo` scope — see `verisimdb-data/INTEGRATION.md`.
305+
Requires GitHub PAT with `repo` scope — see `verisim-data/INTEGRATION.md`.
306306

307307
## Model Router (Future Tool - Sonnet Task)
308308

@@ -334,7 +334,7 @@ User prompt → Haiku classifier → Route to:
334334
See `KNOWN-ISSUES.adoc` at repo root for all honest gaps. All 25 issues resolved.
335335

336336
Resolved in recent sessions:
337-
- VQL-DT type checker wired end-to-end (Elixir-native + ReScript + Rust ZKP bridge)
337+
- VCL-DT type checker wired end-to-end (Elixir-native + ReScript + Rust ZKP bridge)
338338
- 11 proof types: EXISTENCE, INTEGRITY, CONSISTENCY, PROVENANCE, FRESHNESS, ACCESS, CITATION, CUSTOM, ZKP, PROVEN, SANCTIFY
339339
- Multi-proof parsing: PROOF A(x) AND B(y) splits correctly
340340
- Modality compatibility validation (INTEGRITY needs semantic, PROVENANCE needs provenance, etc.)
@@ -343,9 +343,9 @@ Resolved in recent sessions:
343343
- oxrocksdb-sys C++ dependency eliminated (Oxigraph feature-flagged, redb pure-Rust backend added)
344344
- protoc build dependency eliminated (proto code pre-generated)
345345
- stapeln container ecosystem integrated (compose.toml, .gatekeeper.yaml, manifest.toml, ct-build.sh)
346-
- VQL Playground wired to real backend (ApiClient.res, async execution, demo mode fallback, octad modalities)
346+
- VCL Playground wired to real backend (ApiClient.res, async execution, demo mode fallback, octad modalities)
347347
- PanLL database module protocol (DatabaseModule.res, DatabaseRegistry.res — VeriSimDB/QuandleDB/LithoGlyph)
348-
- Product telemetry: opt-in collector (ETS), reporter (JSON), 19 telemetry tests, VQL executor + drift monitor wired
348+
- Product telemetry: opt-in collector (ETS), reporter (JSON), 19 telemetry tests, VCL executor + drift monitor wired
349349
- PanLL telemetry dashboard panel with modality heatmap, query patterns, performance metrics
350350

351351
## Hypatia Integration Status
@@ -354,12 +354,12 @@ Resolved in recent sessions:
354354
- ScanIngester: panic-attack JSON → octad octads (Document, Graph, Temporal, Vector, Provenance, Semantic)
355355
- PatternQuery: cross-repo analytics (pipeline health, severity distribution, temporal trends, hotspots)
356356
- DispatchBridge: reads JSONL dispatch manifests, summarizes outcomes, feeds drift tracking
357-
- Hypatia VQL layer reads verisimdb-data flat files directly
358-
- Built-in Elixir VQL parser (no external Deno/Node needed)
357+
- Hypatia VCL layer reads verisim-data flat files directly
358+
- Built-in Elixir VCL parser (no external Deno/Node needed)
359359
- 954 canonical patterns tracked across 298 repos
360360

361361
**Needs PAT:** Automated cross-repo dispatch requires a GitHub PAT with `repo` scope.
362-
See `verisimdb-data/INTEGRATION.md` for PAT setup instructions.
362+
See `verisim-data/INTEGRATION.md` for PAT setup instructions.
363363

364364
## User Preferences
365365

@@ -371,7 +371,7 @@ See `verisimdb-data/INTEGRATION.md` for PAT setup instructions.
371371
## Repository Structure
372372

373373
```
374-
verisimdb/
374+
verisim/
375375
├── Cargo.toml # Workspace definition
376376
├── rust-core/ # Rust crates
377377
│ ├── verisim-graph/

ABI-FFI-README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ This library follows the **Hyperpolymath RSR Standard** for ABI and FFI design:
2525
2626
┌─────────────────────────────────────────────┐
2727
│ C Headers (auto-generated) │
28-
│ generated/abi/verisimdb.h │
28+
│ generated/abi/verisim.h │
2929
└─────────────────┬───────────────────────────┘
3030
3131
│ imported by
@@ -49,7 +49,7 @@ This library follows the **Hyperpolymath RSR Standard** for ABI and FFI design:
4949
## Directory Structure
5050

5151
```
52-
verisimdb/
52+
verisim/
5353
├── src/
5454
│ ├── abi/ # ABI definitions (Idris2)
5555
│ │ ├── Types.idr # Core type definitions with proofs
@@ -66,11 +66,11 @@ verisimdb/
6666
│ ├── test/
6767
│ │ └── integration_test.zig
6868
│ └── include/
69-
│ └── verisimdb.h # C header (optional, can be generated)
69+
│ └── verisim.h # C header (optional, can be generated)
7070
7171
├── generated/ # Auto-generated files
7272
│ └── abi/
73-
│ └── verisimdb.h # Generated from Idris2 ABI
73+
│ └── verisim.h # Generated from Idris2 ABI
7474
7575
└── bindings/ # Language-specific wrappers (optional)
7676
├── rust/
@@ -198,7 +198,7 @@ zig build test # Run tests
198198

199199
```bash
200200
cd src/abi
201-
idris2 --cg c-header Types.idr -o ../../generated/abi/verisimdb.h
201+
idris2 --cg c-header Types.idr -o ../../generated/abi/verisim.h
202202
```
203203

204204
### Cross-Compile
@@ -221,7 +221,7 @@ zig build -Dtarget=x86_64-windows
221221
### From C
222222

223223
```c
224-
#include "verisimdb.h"
224+
#include "verisim.h"
225225

226226
int main() {
227227
void* handle = verisimdb_init();
@@ -263,7 +263,7 @@ main = do
263263
### From Rust
264264

265265
```rust
266-
#[link(name = "verisimdb")]
266+
#[link(name = "verisim")]
267267
extern "C" {
268268
fn verisimdb_init() -> *mut std::ffi::c_void;
269269
fn verisimdb_free(handle: *mut std::ffi::c_void);
@@ -354,7 +354,7 @@ When modifying the ABI/FFI:
354354

355355
2. **Generate C header**
356356
```bash
357-
idris2 --cg c-header src/abi/Types.idr -o generated/abi/verisimdb.h
357+
idris2 --cg c-header src/abi/Types.idr -o generated/abi/verisim.h
358358
```
359359

360360
3. **Update FFI implementation** (`ffi/zig/src/main.zig`)

BEST-IN-CLASS-ROADMAP.md

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -5,41 +5,41 @@ Criticality-ordered plan. Toolchain first, then infrastructure, then ecosystem.
55
**Completed prerequisites** (this session):
66
- [x] verisim-planner crate (cost-based query planning)
77
- [x] Triple API (REST + GraphQL + gRPC)
8-
- [x] VQL AST → LogicalPlan bridge
8+
- [x] VCL AST → LogicalPlan bridge
99
- [x] Proof obligation costing (per-type: existence→ZKP)
1010
- [x] Adaptive tuning (actual vs estimated latency feedback)
1111
- [x] Post-processing + cross-modal cost models
1212
- [x] ZKP scheme decision: PLONK (documented in Trustfile)
1313

1414
---
1515

16-
## Phase 1: VQL Toolchain (HIGHEST PRIORITY)
16+
## Phase 1: VCL Toolchain (HIGHEST PRIORITY)
1717

18-
### 1.1 VQL REPL — Rust CLI
18+
### 1.1 VCL REPL — Rust CLI
1919
**Criticality: CRITICAL** | Effort: Medium | Crate: `verisim-repl`
2020

2121
Every database has an interactive shell. Without one, VeriSimDB is unusable
2222
for exploration and debugging.
2323

24-
- Rust CLI binary (`vql` command)
24+
- Rust CLI binary (`vcl` command)
2525
- Readline/rustyline for input editing, history, multiline
2626
- HTTP client to verisim-api (configurable endpoint)
2727
- Commands: `\connect`, `\explain`, `\timing`, `\format json|table|csv`
28-
- Syntax highlighting for VQL keywords
28+
- Syntax highlighting for VCL keywords
2929
- Tab completion for modalities, proof types
3030
- Output formatters: table (default), JSON, CSV
3131
- `.vqlrc` config file support
3232

33-
### 1.2 VQL REPL — Elixir IEx Extension
34-
**Criticality: HIGH** | Effort: Small | Module: `VeriSim.VQL.IEx`
33+
### 1.2 VCL REPL — Elixir IEx Extension
34+
**Criticality: HIGH** | Effort: Small | Module: `VeriSim.VCL.IEx`
3535

36-
- `use VeriSim.VQL.IEx` in IEx sessions
37-
- `vql("SELECT GRAPH FROM OCTAD ...")` function
36+
- `use VeriSim.VCL.IEx` in IEx sessions
37+
- `vcl("SELECT GRAPH FROM OCTAD ...")` function
3838
- Pretty-printed results with modality indicators
39-
- `vql_explain/1` for EXPLAIN output
39+
- `vcl_explain/1` for EXPLAIN output
4040
- Direct in-process execution (no HTTP round-trip)
4141

42-
### 1.3 VQL Language Server (LSP)
42+
### 1.3 VCL Language Server (LSP)
4343
**Criticality: HIGH** | Effort: Large | Crate: `verisim-lsp`
4444

4545
- Diagnostics: parse errors, unknown modalities, type mismatches
@@ -49,11 +49,11 @@ for exploration and debugging.
4949
- VS Code extension + Neovim plugin
5050
- Uses existing ReScript parser via JSON bridge
5151

52-
### 1.4 VQL Formatter
52+
### 1.4 VCL Formatter
5353
**Criticality: MEDIUM** | Effort: Small | Module in `verisim-repl`
5454

55-
- `vql fmt` subcommand
56-
- Canonical formatting for VQL queries
55+
- `vcl fmt` subcommand
56+
- Canonical formatting for VCL queries
5757
- Keyword uppercasing, consistent indentation
5858
- Integrates with LSP `textDocument/formatting`
5959

@@ -137,7 +137,7 @@ Configurable by admin, overridable by user, defaults to global.
137137
### 3.4 ZKP Integration (PLONK)
138138
**Criticality: HIGH** | Effort: Large
139139

140-
Real zero-knowledge proof verification for VQL-DT PROOF clause.
140+
Real zero-knowledge proof verification for VCL-DT PROOF clause.
141141
Scheme: PLONK (see contractiles/trust/Trustfile for rationale).
142142

143143
- `ark-plonk` integration in verisim-semantic
@@ -202,7 +202,7 @@ Close the loop between estimated and actual costs.
202202

203203
- Parse-once, execute-many for repeated queries
204204
- Plan caching (skip re-optimization for identical plans)
205-
- Parameterized queries (prevent VQL injection)
205+
- Parameterized queries (prevent VCL injection)
206206
- Cache invalidation on schema/config changes
207207

208208
### 5.3 Result Streaming
@@ -245,7 +245,7 @@ Close the loop between estimated and actual costs.
245245
**Criticality: MEDIUM** | Effort: Large
246246

247247
- Federation resolver returns real results (currently empty)
248-
- Cross-instance VQL queries
248+
- Cross-instance VCL queries
249249
- Drift-aware federation (respect drift policies)
250250
- Federation discovery protocol
251251

@@ -266,16 +266,16 @@ Can't claim best-in-class without numbers.
266266
### 7.2 Client Libraries
267267
**Criticality: HIGH** | Effort: Medium
268268

269-
- Rust SDK (typed, async, with VQL builder)
269+
- Rust SDK (typed, async, with VCL builder)
270270
- Elixir SDK (direct BEAM integration)
271-
- ReScript SDK (VQL builder + type-safe results)
271+
- ReScript SDK (VCL builder + type-safe results)
272272
- Each SDK: connection pooling, retry logic, auth
273273

274274
### 7.3 Documentation Site
275275
**Criticality: MEDIUM** | Effort: Medium
276276

277277
- API reference (auto-generated from proto + GraphQL schema)
278-
- VQL language guide with examples
278+
- VCL language guide with examples
279279
- Architecture guide (Marr's three levels)
280280
- Tutorial: "Build a multimodal search in 10 minutes"
281281
- Deployment guide (Podman + Containerfile)
@@ -323,23 +323,23 @@ Can't claim best-in-class without numbers.
323323

324324
| # | Item | Phase | Criticality |
325325
|---|------|-------|-------------|
326-
| 1 | VQL REPL (Rust CLI) | 1.1 | CRITICAL |
326+
| 1 | VCL REPL (Rust CLI) | 1.1 | CRITICAL |
327327
| 2 | Write-Ahead Log | 2.1 | CRITICAL |
328328
| 3 | Real normalizer regeneration | 4.1 | CRITICAL |
329329
| 4 | Authentication | 3.1 | CRITICAL |
330330
| 5 | ACID transactions | 2.2 | CRITICAL |
331-
| 6 | VQL REPL (Elixir IEx) | 1.2 | HIGH |
331+
| 6 | VCL REPL (Elixir IEx) | 1.2 | HIGH |
332332
| 7 | ZKP/PLONK integration | 3.4 | HIGH |
333333
| 8 | Authorization (RBAC) | 3.2 | HIGH |
334334
| 9 | Query profiling (EXPLAIN ANALYZE) | 5.1 | HIGH |
335-
| 10 | VQL LSP | 1.3 | HIGH |
335+
| 10 | VCL LSP | 1.3 | HIGH |
336336
| 11 | Persistence backends | 2.3 | HIGH |
337337
| 12 | Benchmarks vs ArangoDB/SurrealDB/Virtuoso | 7.1 | HIGH |
338338
| 13 | Client libraries | 7.2 | HIGH |
339339
| 14 | Snapshots & backup | 2.4 | HIGH |
340340
| 15 | Conflict resolution | 4.2 | HIGH |
341341
| 16 | Replication | 6.1 | HIGH |
342-
| 17 | VQL formatter | 1.4 | MEDIUM |
342+
| 17 | VCL formatter | 1.4 | MEDIUM |
343343
| 18 | Encryption at rest | 3.3 | MEDIUM |
344344
| 19 | Result streaming | 5.3 | MEDIUM |
345345
| 20 | Prepared statements | 5.2 | MEDIUM |

CHANGELOG.adoc

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -62,12 +62,12 @@ All notable changes to VeriSimDB are documented here. This project uses https://
6262
- **Circuit Registry** (`circuit_registry.rs`): In-memory registry mapping circuit names to compiled R1CS verification functions.
6363
- **Circuit Compiler** (`circuit_compiler.rs`): DSL gates (AND, OR, XOR, NOT, LinearCombination) compiled to R1CS constraints.
6464
- **Verification Key Store** (`verification_keys.rs`): Per-circuit keys with rotation, federation export/import as `KeyExportBundle`.
65-
- **VQL Circuit DSL** (`VQLCircuit.res`): ReScript types for circuit definition with `parseCustomProof` and `serializeCircuitDef`.
65+
- **VCL Circuit DSL** (`VQLCircuit.res`): ReScript types for circuit definition with `parseCustomProof` and `serializeCircuitDef`.
6666

6767
==== Homoiconicity — Queries as Octads (Phase 7)
68-
- **QueryOctadBuilder** (`query_octad.rs`): Stores VQL queries as octads across all 6 modalities (document=query text, graph=parse tree, vector=embedding, tensor=cost vector, semantic=proof obligations, temporal=execution history).
68+
- **QueryOctadBuilder** (`query_octad.rs`): Stores VCL queries as octads across all 6 modalities (document=query text, graph=parse tree, vector=embedding, tensor=cost vector, semantic=proof obligations, temporal=execution history).
6969
- **API endpoints**: `POST /queries` stores a query as octad. `POST /queries/similar` finds similar past queries by vector similarity. `PUT /queries/{id}/optimize` re-plans and updates cost vector.
70-
- **VQL REFLECT keyword**: `SELECT * FROM REFLECT WHERE FULLTEXT CONTAINS 'drift'` queries the query store itself. Meta-circular: REFLECT queries are themselves stored as octads.
70+
- **VCL REFLECT keyword**: `SELECT * FROM REFLECT WHERE FULLTEXT CONTAINS 'drift'` queries the query store itself. Meta-circular: REFLECT queries are themselves stored as octads.
7171
- **Elixir REFLECT executor**: Routes REFLECT source queries to the query store via text search.
7272

7373
=== Changed
@@ -90,16 +90,16 @@ All notable changes to VeriSimDB are documented here. This project uses https://
9090

9191
=== Added
9292
- Initial alpha release with 6 modality stores (Graph, Vector, Tensor, Semantic, Document, Temporal).
93-
- VQL parser (ReScript) with dependent-type and slipstream execution paths.
93+
- VCL parser (ReScript) with dependent-type and slipstream execution paths.
9494
- Elixir/OTP orchestration layer with GenServers.
9595
- Rust HTTP API server (verisim-api) with REST endpoints.
9696
- Octad entity management (create, read, update, delete, search).
9797
- Drift detection with 6 drift types and configurable thresholds.
9898
- Self-normalization with vector and document regeneration strategies.
9999
- Federation architecture with KRaft-inspired consensus.
100-
- GitHub CI integration via verisimdb-data git-backed repo.
100+
- GitHub CI integration via verisim-data git-backed repo.
101101
- Hypatia VeriSimDB connector for pattern detection.
102102
- Criterion benchmarks for all modality stores.
103-
- VQL grammar (ISO/IEC 14977 EBNF compliant).
104-
- VQL formal semantics (operational + type system).
103+
- VCL grammar (ISO/IEC 14977 EBNF compliant).
104+
- VCL formal semantics (operational + type system).
105105
- Comprehensive documentation (WHITEPAPER, consultation papers, deployment guide).

0 commit comments

Comments
 (0)