v0.1.0-dev.3
Pre-releaseSee CHANGELOG.md for the curated changelog.
SHA256SUMS covers every attached archive plus the CycloneDX SBOM + VEX: shasum -a 256 -c SHA256SUMS.
Desktop GUI bundles (UNSIGNED). This release also includes cross-platform sparq GUI desktop installers (sparq-gui_v0.1.0-dev.3_*): macOS .dmg, Windows .msi + NSIS .exe, and Linux .deb + .AppImage. These bundles are NOT code-signed or notarized. On macOS, Gatekeeper will quarantine them; on Windows, SmartScreen will warn — see /download for the install bypass instructions (Gatekeeper/SmartScreen). OS-level code-signing (Apple Developer ID notarization + Windows Authenticode) requires maintainer-held credentials and is tracked separately — until then, treat the GUI bundles as developer/test installs. The SLSA attestation below proves who built each bundle (build provenance); it is not a substitute for OS code-signing. (No win-arm64 GUI installer yet — the Tauri bundler cannot cross-bundle it from the x64 Windows runner; no mobile app bundles yet.)
Supply chain: each release carries a CycloneDX SBOM per binary (*-v0.1.0-dev.3.sbom.cdx.json, including the GUI shell sparq-gui-v0.1.0-dev.3.sbom.cdx.json), a CycloneDX SBOM for the published npm/WASM client (sparq-js-v0.1.0-dev.3.sbom.cdx.json runtime tree + sparq-js-dev-v0.1.0-dev.3.sbom.cdx.json full build tree), and a VEX (sparq-v0.1.0-dev.3.vex.cdx.json) stating the exploitability of every advisory the dependency policy ignores. All artifacts (archives, GUI bundles, SBOMs, VEX) are SLSA build-provenance attested — verify with gh attestation verify <file> --repo jeswr/sparq.
What's Changed
- ci(lint): clippy hard-gate (-D warnings) + zero existing warnings; pin rustfmt.toml by @jeswr in #1
- fix(coverage): green main — dict-spill coverage tests + explicit mmap in coverage gate by @jeswr in #29
- feat(beads): SessionStart hook for bd context recovery + AGENTS.md note by @jeswr in #30
- fix: roborev backlog — gitignore scope, HDT streaming sniff, SHACL README, resolve_iri test by @jeswr in #31
- test(sparq-geo): OGC GeoSPARQL compliance ratchet + DE-9IM differential vs geo crate (sq-9h1r) by @jeswr in #32
- docs: strip hard-coded perf numbers from 6 READMEs (sq-q0im) by @jeswr in #33
- ci: PR-gating infra — ci-summary aggregator + CodeQL SAST + SHA-pin all actions; AGENTS.md directives by @jeswr in #34
- feat(server): SERVICE egress allowlist — default-deny SSRF guard via CLI/env/file (sq-4w18) by @jeswr in #35
- docs: rework root README (286→116L) + logo.svg + canonical crate-README template (sq-kuqa) by @jeswr in #37
- fix(sparq-py + engine): preserve rdf:dirLangString base direction; SPARQL-1.2-conformant its:dir JSON (sq-bj7o) by @jeswr in #36
- feat(sparq-mpc): RS consistency-checked + robust (Berlekamp–Welch) reconstruction — closes tamper-detection gap (sq-m34i / sq-uu0u WI-1) by @jeswr in #38
- feat(dashboard): readable metric labels — 318 labeled via generator + suite grouping + tooltips (sq-ocuf) by @jeswr in #39
- docs(agents): maintenance loop + bidirectional sibling-charter cross-pollination by @jeswr in #40
- ci: documentation-quality gate — markdownlint/typos/internal-links HARD + vale/external/no-perf ADVISORY (sq-5fd1) by @jeswr in #42
- feat(sparq-mpc): consistency-checked degree-2t equality/mult open (sq-7q9i / sq-uu0u WI-2) by @jeswr in #43
- deps: migrate quick-xml 0.37 → 0.40 (sq-8bhq, supersedes Dependabot #19) by @jeswr in #58
- feat(sparq-mpc): surface MaliciousSecurity enum in BackendInfo (sq-sz1h / sq-uu0u WI-3) by @jeswr in #60
- docs: concise per-crate READMEs — core/engine/cli/reason + solid/geo/vectors/server (sq-xogx/h1s7/rt1t/q2em) by @jeswr in #57
- feat(dashboard): featured well-known-suites section + scaling-comparison charts (sq-xvow / sq-viby) by @jeswr in #59
- fix(sparq-engine): SERVICE result parser preserves rdf:dirLangString its:dir (sq-s955) by @jeswr in #61
- fix(ci): kill the rc=101 / coverage-undercount flake — hermetic env tests + nextest retries (sq-x4jy) by @jeswr in #62
- chore(ci): SHA-pin Docker base images + least-privilege workflow permissions (sq-1umu) by @jeswr in #67
- feat(sparq-server): required Bearer-token gate on the write surface + optional read gate (sq-zcby) by @jeswr in #71
- feat(sparq-core): persist NAMED graphs across save/open + per-graph WAL (sq-3ui0, gh-45) by @jeswr in #69
- fix(ci): make the perf gate robust to CI-runner timing noise (sq-dzfu) by @jeswr in #72
- feat(sparq-server): enforce query-timeout (incl. UPDATE) + memory cap + decompression-ratio cap (sq-ebii) by @jeswr in #65
- docs: wire #![doc=include_str!(README)] + docs.rs all-features on 8 publish crates (sq-p26u) by @jeswr in #63
- docs(agents): clarify the maintenance loop is a safety net, not the cadence (act event-driven) by @jeswr in #66
- chore(release): record crates.io name availability + strip release.md TODO (sq-bk9) by @jeswr in #70
- docs(agents): codify consistent parallelisation + issue close-out + cross-agent self-id by @jeswr in #73
- MPC: finalise tampered-share detection (guarantee (D)) — PLAN refresh + deferred seams + e2e test (closes sq-uu0u) by @jeswr in #74
- bench: versioned competitor-comparison scaffold (Oxigraph/QLever/eye) by @jeswr in #75
- feat(sparq-zk): scale + harden committed-index revocation privacy (sq-hwe + sq-6qe) by @jeswr in #77
- research: MPC security-models taxonomy + protocol/operator/leakage/benchmark design record by @jeswr in #81
- docs: GitHub Pages cutover runbook + rollback (sq-iigf) by @jeswr in #78
- fix(release): boot the Docker image on
docker run+ run/curl smoke test (sq-n6rv) by @jeswr in #79 - docs(readme): human-focused rewrite — spec hyperlinks, precise feature titles, dark-mode logo, no internals (sq-avp7) by @jeswr in #68
- research: ZK verifier re-audit (post-remediation, AS LANDED) — sq-gbp4 by @jeswr in #82
- perf(ingest): opt-in native-only zlib-ng flate2 backend for gzip inflate (sq-i3xc) by @jeswr in #85
- perf(sparq-core): chunk-parallel + sharded-merge N-Quads in-memory loader (sq-25r3) by @jeswr in #84
- fix(ci): exclude informational checks from ci-summary gate + fix cargo-geiger virtual-manifest error (sq-wjth) by @jeswr in #86
- feat(mpc): three-axis security descriptor + Cleve type-invariant (sq-mq8q) by @jeswr in #87
- MPC: oblivious shuffle + sort substrate over Shamir F_p (sq-18lk) by @jeswr in #88
- feat(vectors): opt-in
embeddingsfeature — reqwest-backed RemoteEmbedder from env (sq-fg9y) by @jeswr in #83 - feat(sparq-mpc): MPC benchmark matrix (security × N × query class) — in-process counting tier [sq-sxm] by @jeswr in #90
- test(zk): standing forge-and-verify regression map for audit CRITICAL #1-#12 (sq-1gir) by @jeswr in #89
- feat(sparq-mpc): security-model SELECTION API + fail-closed backend registry (sq-a6p1) by @jeswr in #92
- feat(sparq-mpc): oblivious result-size + match-bit aggregation output path for set-returning hidden joins (sq-jnkm) by @jeswr in #93
- ci(zk): toolchain-gated lane for the forge/anchor suite + f64/k2 bb anchors (sq-f9tl) by @jeswr in #94
- feat(zk): enforce distinct-graph strict ordering in scan_check — close duplicate-inclusion / COUNT forgery (sq-vxq8) by @jeswr in #95
- feat(sparq-server): durable persistence in the server binary — --persist DIR (sq-7cxr / gh-44) by @jeswr in #80
- fix(sparq-core): RDF 1.2 triple terms in the sharded external builder (sq-t3rt) by @jeswr in #91
- feat(sparq-mpc): MPC network tier — real multi-process loopback transport + tc/netem LAN/WAN profiles (sq-tg6b) by @jeswr in #96
- Pin SPARQL 1.1 aggregate-over-empty semantics (sq-53ti) by @jeswr in #97
- chore(deps): Bump taiki-e/install-action from 2.49.0 to 2.81.10 in the actions-minor-patch group by @dependabot[bot] in #106
- chore(deps): Bump actions/github-script from 7.0.1 to 9.0.0 by @dependabot[bot] in #107
- chore(deps): Bump pollster from 0.3.0 to 0.4.0 by @dependabot[bot] in #103
- chore(deps): Bump i_overlay from 4.5.2 to 7.0.0 by @dependabot[bot] in #105
- chore(deps): Bump docker/metadata-action from 5.10.0 to 6.1.0 by @dependabot[bot] in #108
- chore(deps): Bump github/codeql-action from 3.27.0 to 4.36.2 by @dependabot[bot] in #111
- chore(deps): Update dtolnay/rust-toolchain requirement to 29eef336d9b2848a0b548edc03f92a220660cdb8 by @dependabot[bot] in #112
- chore(deps): Bump aws-actions/configure-aws-credentials from 4.3.1 to 6.2.0 by @dependabot[bot] in #113
- chore(deps): Bump actions/cache from 4.3.0 to 5.0.5 by @dependabot[bot] in #114
- chore(deps): Bump docker/setup-buildx-action from 3.12.0 to 4.1.0 by @dependabot[bot] in #115
- fix(sparq-cli): hdt_cli output-wording test drift (sq-w6ri) by @jeswr in #98
- research(zk): credential-bound HolderPoP design record (sq-c2ql) by @jeswr in #99
- perf(sparq-hdt): parallel PFC dictionary decode (sq-s506, H6) by @jeswr in #100
- feat(sparq-vectors): graph fingerprint header + checked open (sq-32i5) by @jeswr in #109
- chore(deps): Bump bzip2 from 0.4.4 to 0.5.2 by @dependabot[bot] in #118
- fix(sparq-hdt): cap unbounded pre-alloc in HDT loader (OOM-DoS) — sq-tzwa [OPUS-4.8] by @jeswr in #126
- feat(sparq-mpc): BGW degree-reduction for chained multiplications (sq-dvuc) by @jeswr in #119
- feat(fuzz): coverage-guided cargo-fuzz harness + bounded CI gate (sq-ovnf) by @jeswr in #125
- feat(sparq-zk): holder-bound signed-message family + holder_pk_digest (sq-y464, HolderPoP T1) by @jeswr in #124
- feat(sparq-server): SSE subscriptions transport (sq-bxog) by @jeswr in #120
- fix(sparq-engine): WAL-durable named-graph CLEAR/DROP (sq-glw2) by @jeswr in #123
- research(mpc): MPC+SPARQL operator×configuration capability matrix by @jeswr in #128
- research(zk): hidden cross-credential JOIN design record (sq-bwwl) by @jeswr in #129
- fix: parse perf regression + correct mis-seeded parse floor (main stop-the-line) by @jeswr in #133
- feat(sparq-zk-compose): AttestedHolderBinding manifest schema + HolderPop digest wiring (sq-h8rg, HolderPoP T2) by @jeswr in #131
- docs(agents): fold portable PSS charter conventions (#122/#121/#76) by @jeswr in #132
- chore(beads): re-export issues.jsonl (DB→git resync, 305→443) by @jeswr in #127
- research(mpc): IT-MAC malicious-security design (sq-km34) by @jeswr in #134
- docs(agents): background sub-agent dispatch — never block the turn on a batch by @jeswr in #136
- chore(bench): vendor Chart.js v2.9.2 into dashboard, drop cdn.jsdelivr.net dep [OPUS-4.8] by @jeswr in #137
- fix(bench): demote TIMING perf metrics to advisory/non-blocking [OPUS-4.8] by @jeswr in #139
- docs: no-internals / spec-link convention for user-facing crate READMEs (sq-avp7) by @jeswr in #138
- feat(sparq-vectors): bulk import of external embeddings (.npy / numeric dump) (sq-xsq9) by @jeswr in #140
- feat(sparq-engine): atomic multi-op SPARQL UPDATE — one durable commit (sq-ycle, #48) by @jeswr in #135
- feat(sparq-mpc): secure threshold/greater-than opening only the verdict bit (sq-rrz4) by @jeswr in #130
- research(solid): sparq-solid research-track scope (sq-3jtd) by @jeswr in #143
- feat(sparq-hdt): direct in-memory PFC + BitmapTriples HDT encoder (sq-ashy) by @jeswr in #141
- feat(zk-compose): verifier issuer-attested clear-key holder binding (T3/B1) [OPUS-4.8] by @jeswr in #142
- research(mpc): bounded property-path operator design (sq-py8h) by @jeswr in #144
- feat(dashboard): versioned static competitor data + external-reference baselines (sq-i0nm) [OPUS-4.8] by @jeswr in #145
- test(zk-compose): HolderPoP forge-and-verify regression suite (T4, sq-ncz0) [OPUS-4.8] by @jeswr in #148
- feat(sparq-server): gate WS + SSE subscriptions with the read token (sq-cxk5) by @jeswr in #147
- feat(sparq-mpc): end-to-end federated MPC pipeline driver — four-flatmates £100k use case (sq-6y92) by @jeswr in #146
- test(sparq-hdt): isolate roundtrip scratch dirs to fix flaky rejection oracle (sq-117n) by @jeswr in #150
- ci: add merge_group triggers so the merge queue's gate checks run [OPUS-4.8] by @jeswr in #157
- feat(bench): Deep Taxonomy first-class CI reasoning suite + guarded ci-bench hook [OPUS-4.8] by @jeswr in #152
- chore(pages): redirect bare Pages root to the benchmark dashboard [OPUS-4.8] by @jeswr in #154
- feat(sparq-zk-compose): in-circuit holder Proof-of-Possession (HolderPoP T5, B2 hidden-key) by @jeswr in #156
- docs(agents): clarify the session runs ON an EC2 work box (non-canonical measurements) by @jeswr in #151
- feat(sparq-vectors): hybrid_search fusing nearest_term + most_similar by Term via RRF (sq-88c6) by @jeswr in #149
- docs(research): competitor benchmark landscape — Fuseki yes, Solr no by @jeswr in #158
- docs: per-capability-surface benchmark program (Deep-Taxonomy template across surfaces, SHACL first) [OPUS-4.8] by @jeswr in #160
- feat(sparq-mpc): IT-MAC authenticated secret sharing foundation (sq-km34.1) by @jeswr in #153
- chore(sparq-py): publish to PyPI as
sparq-rdf, keepimport sparq(sq-8slf) by @jeswr in #155 - ci(ci-summary): converge gate on pending==0 + short settle (matrix-robust) [OPUS-4.8] by @jeswr in #161
- fix(zk): canonicalise scan test fixtures to satisfy #95 strict-ordering (sq-7p9c) by @jeswr in #165
- fix(skills): quote colon-bearing SKILL.md descriptions + gate frontmatter YAML (sq-56im) by @jeswr in #164
- feat(fuzz): coverage-guided SHACL-validation fuzz target (sq-o4pi) by @jeswr in #163
- docs(AGENTS): worktree-isolation rule for mutating agents + worktree lifecycle hygiene by @jeswr in #167
- feat(sparq-shacl): differential SHACL fuzzer vs reference engines (sq-55c1) by @jeswr in #166
- ci(security): hash-pin CI pip installs → Scorecard PinnedDependencies zero (sq-rbps) by @jeswr in #169
- ci: build-once + load-aware sharded nextest matrix (2 heavy + 3 bulk shards) by @jeswr in #159
- MPC: in-MPC bit-decomposition of the secret-shared sum in disclose_threshold_verdict (sq-g7t5) by @jeswr in #168
- feat(zk): in-circuit hidden cross-credential JOIN (join_eq member) [OPUS-4.8] by @jeswr in #170
- ci(miri): nightly UB lane over sparq-core's pure-Rust unsafe surface (sq-fo28) by @jeswr in #172
- docs(agents): fold cross-crate/cross-surface parity principle (Closes #173) by @jeswr in #177
- feat(bench): shared external-engine adapter kinds (sq-eifd) by @jeswr in #171
- test(sparq-solid): DENIED update leaves store byte-identical (fail-closed-before-apply) [OPUS-4.8] by @jeswr in #175
- feat(server): graceful degradation on transient durable-write I/O error (sq-vpx4) by @jeswr in #176
- feat(mpc): bounded property-path over disclosed-key regime (sq-py8h.1) by @jeswr in #174
- feat(zk): ZK join manifest schema — CircuitId/ProofInputs::JoinEq + JoinEdge (sq-fi03) by @jeswr in #178
- feat(bench): SHACL validation benchmark suite (sq-7iai) by @jeswr in #179
- feat(engine): graph-IRI prefix range-scan index for prefix-scoped aggregates (sq-zz8z, gh-51) by @jeswr in #180
- test(sparq-solid): differential — resolve_var_graphs set == engine write set (sq-3jtd.1) by @jeswr in #181
- chore(beads): re-export issues.jsonl mirror after the merge-train drain by @jeswr in #182
- feat(zk-compose): bind_joins verifier gate for hidden cross-credential JOIN (sq-sfsi) by @jeswr in #183
- feat(sparq-mpc): in-protocol range proof of the secret-shared sum (sq-nx0s) by @jeswr in #185
- feat(sparq-core): out-of-core N-Quads/TriG ingest for NAMED graphs (sq-5atq) by @jeswr in #187
- feat(bench): full-text-search benchmark suite (sq-ustq) — bench/fts/ by @jeswr in #186
- feat(zk-compose): join_eq proving path + N-way chain + real bb accept (sq-r2s8) by @jeswr in #188
- fix(sparq-engine): resolve intra-body CLEAR/DROP against running state in durable journal (sq-aalh) by @jeswr in #189
- feat(sparq-mpc): batched/vector secret sharing + row-binding (sq-dwb5) by @jeswr in #191
- test(sparq-zk-compose): forge-and-verify regression suite for the hidden cross-credential JOIN [OPUS-4.8] by @jeswr in #193
- feat(bench): GeoSPARQL benchmark suite (sq-tf8n) by @jeswr in #184
- feat(vectors): stream bulk .npy/dump embedding import (sq-3jc8) by @jeswr in #192
- fix(bench): per-shape SHACL expansion + push-before-shutdown EC2 gather harness (sq-8dp3) by @jeswr in #190
- feat(sparq-mpc): batched hidden-value join over row columns + oblivious output (sq-khf9) by @jeswr in #194
- feat(zk-compose): canonicalise manifest edge ordering (sq-y2wy) by @jeswr in #196
- fix(bench): port family_curve to composable CircuitId::FilterF64 { d } (sq-kep2) by @jeswr in #197
- feat(bench): vector/ANN benchmark suite — recall@10-deficit gate (sq-v02y) by @jeswr in #195
- chore(beads): re-export issues.jsonl mirror (empty-train resync) by @jeswr in #199
- ci(bench): cap benchmark-data history with max-items-in-chart (sq-3g6q) by @jeswr in #198
- ci(bench): seed competitors.json onto the Pages dashboard (sq-kehk) by @jeswr in #201
- feat(dashboard): summary-first render + all-query-type capability families (sq-rltn) by @jeswr in #200
- feat(bench): fill SHACL competitor values from live EC2 gather (sq-8dp3) by @jeswr in #202
- research: feature-showcase site design (sq-4r4b) — live-interactive, honest per-surface tiers by @jeswr in #203
- chore(beads): re-export mirror (feature-site + certification + logo bead graphs) by @jeswr in #206
- research: federated SPARQL feature landscape (sq-3183) [OPUS-4.8] by @jeswr in #216
- cert: certification skills foundation — TDD vendor + 2 attestation skills (sq-toze.1) by @jeswr in #208
- docs(security): .well-known/security.txt + CONTRIBUTING secure-coding section (GX-3/GX-6) by @jeswr in #209
- ci(supply-chain): un-degrade cargo-deny gate + per-release SBOM/VEX + cargo-auditable/vet (sq-toze.2/.3/.8) by @jeswr in #210
- research: ODRL usage-control + policy-over-queries (sq-3183) by @jeswr in #212
- Production-certification PLAN + ported compliance agents (sq-toze) by @jeswr in #205
- research: maintenance flow-on automation design (sq-ncvq) by @jeswr in #211
- research: broad SPARQL/RDF + commercial-vendor feature gap analysis (sq-3183) by @jeswr in #214
- chore: vendor logo-designer Claude Code skill (MIT) by @jeswr in #204
- research: Olaf Hartig corpus → sparq candidate features (sq-3183) by @jeswr in #215
- research: vector/GenAI feature landscape (sq-3183) by @jeswr in #213
- cert(GX-5): unsafe-code justification register + count ratchet by @jeswr in #217
- feat(site): live feature-showcase foundation + Pages deploy (sq-8thu, sq-40y0) by @jeswr in #218
- feat(sparq-server): serve VoID + SPARQL Service Description (opt-in federation discovery) by @jeswr in #219
- feat(serialize): RDF writer matrix — Turtle / TriG / N-Quads (opt-in) (sq-678h) by @jeswr in #223
- Certification readiness — memsafety (sq-toze) by @jeswr in #224
- feat(vectors):
vec:magic predicate — vector KNN inside SPARQL (sq-k6ex) by @jeswr in #222 - ci(flow-on): proactive merge-gates G1 new-crate-completeness + G2 public-api→skill (sq-ncvq.4/.5) by @jeswr in #221
- feat(flow-on): merge-triggered auto-task-creation engine (sq-ncvq) by @jeswr in #220
- feat(service): bind-join (VALUES pushdown) into SERVICE [OPUS-4.8] (sq-sjkj) by @jeswr in #230
- Certification readiness — OpenSSF by @jeswr in #227
- Certification readiness — SLSA by @jeswr in #226
- Certification readiness — NIST SSDF by @jeswr in #228
- Certification readiness — SBOM by @jeswr in #229
- Certification readiness — CIS by @jeswr in #231
- chore(beads): re-export issues.jsonl mirror (cert phase + roadmap) by @jeswr in #238
- Certification readiness — Privacy (GDPR/27701/SOC2) by @jeswr in #236
- Certification readiness — CDMC scorecard by @jeswr in #234
- Certification readiness — OWASP ASVS by @jeswr in #237
- feat(serialize): JSON-LD 1.1 writer — completes the RDF serializer matrix (sq-e3pj) by @jeswr in #240
- fix(server): stop error bodies leaking caller input / loaded RDF / fs paths (sq-cz89, sq-j9zs, sq-zg0u) by @jeswr in #241
- Certification readiness — EU CRA by @jeswr in #233
- Certification readiness — ISO 27001 by @jeswr in #232
- feat(vectors): predicate-constrained (filtered) ANN over the dict-id mask (sq-1wc1) by @jeswr in #242
- Certification readiness — Cryptographic Review by @jeswr in #235
- chore(typos): ignore sq- bead tokens in docs spell-check gate by @jeswr in #243
- feat(canon): expose RDFC-1.0 as an opt-in public API (sparq-canon) — sq-0qip by @jeswr in #225
- Certification readiness — consolidated (full 12-framework set) by @jeswr in #247
- feat(sparq-core): complete RDF 1.2 triple-term support — parallel triple-term merge + position-aware parser errors (sq-87bq) by @jeswr in #248
- feat(site): MPC £100k secure-threshold flagship + 6 surface pages by @jeswr in #249
- feat(maintenance): periodic drift scanner + scheduled lane (sq-ncvq.11) by @jeswr in #252
- feat(dashboard): promote all benchmarked families to dashboard rows (ZK + Solid/HDT/RSP/GenAI/GPU) by @jeswr in #253
- fix(server): unregistered geof: IRI stays a hard engine error under --all-features by @jeswr in #255
- feat(bench): wire ZK-family metrics into the dashboard data feed [OPUS-4.8] by @jeswr in #254
- feat(sparq-server): security response headers on all responses (sq-cmvh, ASVS V14.4) by @jeswr in #251
- fix(flow-on): G2 fires only on a NET pub-item signature change (stop false positives) by @jeswr in #258
- ci: container-image vuln scan + Dockerfile lint lane (GX-12 / sq-toze.31) by @jeswr in #257
- ci: GATING feature-matrix lane for opt-in cargo features (CDMC sq-kzfi) by @jeswr in #244
- feat(site): ZK car-hire flagship — real in-browser UltraHonk age-gate proof by @jeswr in #256
- feat(memsafety): enforce clippy::undocumented_unsafe_blocks first-party (MS-G2, sq-8wbn) by @jeswr in #250
- feat(sparq-policy): ODRL usage-control evaluator — single-node base case (sq-r06h) by @jeswr in #261
- feat(site): Solid (user,app)-pair flagship — same query, different result sets via WAC/ACP by @jeswr in #259
- compliance(cdmc): re-rate capability 2.1 (data catalogue) 3 → 4 — CI gate now met (sq-kzfi) by @jeswr in #263
- feat(sparq-core): explicit parse-depth bound for RDF triple-term nesting (sq-53s1, ASVS V5.5.2) by @jeswr in #266
- feat(sparq-server): opt-in per-query access audit log (sq-0bxp, CDMC CD-2) by @jeswr in #262
- chore(security): triage code-scanning alerts to zero — Trivy base CVEs + Scorecard posture by @jeswr in #268
- bench: register/add benches for drift-flagged crates (sq-ncvq.12) by @jeswr in #270
- chore(beads): re-export issues.jsonl mirror (post-cert + roadmap) by @jeswr in #271
- docs(skills): SKILL coverage for sparq-sim, sparq-solid, sparq-gpu (drift catch-up B, sq-ncvq.13) by @jeswr in #272
- feat(conformance): consolidate SHACL + GeoSPARQL into one central scoreboard (sq-ncvq.16) by @jeswr in #273
- feat(wasm): expose EXPLAIN / EXPLAIN ANALYZE on the wasm Store (sq-ncvq.14) by @jeswr in #269
- feat(prov): W3C PROV-O data-lineage for CONSTRUCT-derived data (sq-ntcg, CDMC CD-1) by @jeswr in #267
- fix(flow-on): drop G1-redundant new-crate rule + gate skill-sync on net pub-API diff by @jeswr in #276
- feat(federation): serve characteristic-set source statistics in VoID (sq-mr32, A3/Z2) by @jeswr in #277
- feat(sparq-fedplan): cost-based federated source selection + bind-vs-hash join planner (sq-a35t) by @jeswr in #278
- docs(AGENTS): fold portable charter conventions from prod-solid-server (cross-poll) by @jeswr in #279
- feat(sparq-engine): filtered-ANN BGP->IdMask wiring for vec: predicate (sq-bvmd) by @jeswr in #281
- feat(sparq-solid): materialize ODRL permissions into AUTH_GRAPH (sq-h3uk) by @jeswr in #280
- research: MPC+ZKP build-out design-delta + milestone bead breakdown (sq-pwr) by @jeswr in #283
- cert(sbom): strip absolute build path from SBOM bom-refs (GS-6, sq-toze.30) by @jeswr in #284
- cert(iso27001): org-adoptable ISMS policy + SoA templates (sq-ez5z) by @jeswr in #285
- docs: refresh stale MPC/ZK capability matrix to match main (sq-k4of) by @jeswr in #286
- feat(sparq-vectors): transitive/multi-variable IdMask for filtered-ANN (sq-3tjd) by @jeswr in #287
- feat(sparq-solid): materialize ODRL Prohibitions as explicit AUTH_GRAPH deny (sq-w693) by @jeswr in #289
- cert(iso27001): operator deployment-security responsibilities (sq-v48f) by @jeswr in #288
- research: HDT+Turtle parse-perf design-delta + remaining-milestone beads (sq-4wo) by @jeswr in #290
- audit: coverage + benchmark gap report → vetted beads (sq-bif/sq-5o5) by @jeswr in #293
- chore(beads): re-export issues.jsonl mirror (711 issues) by @jeswr in #295
- feat(sparq-solid): map ODRL constraints to ACP conditional grants (sq-hiz4) by @jeswr in #294
- ci(feature-matrix): exercise audit-log + filtered-ann opt-in tests (sq-21kp, sq-wuft) by @jeswr in #296
- research: adversarial coZK soundness re-audit vs eprint 2025/1026 (sq-9hrn, M-D) by @jeswr in #297
- feat(sparq-fedplan): ANAPSID-style non-blocking streaming join + spill (sq-vf7q) by @jeswr in #298
- feat(sparq-solid): refresh/revoke bridged ODRL grants on policy change (sq-dpk4) by @jeswr in #300
- cert(sbom): upgrade generated SBOM to CycloneDX 1.5/1.6 (GS-4, sq-toze.28) by @jeswr in #302
- cert(privacy): retention/erasure operator runbook (sq-toze.33) by @jeswr in #303
- cert(cryptoreview): FIPS posture statement (CR-G4, sq-cu32) by @jeswr in #304
- chore(beads): re-export issues.jsonl mirror (718 issues) by @jeswr in #305
- cert(privacy): query-log/PII data-minimisation posture (sq-toze.32) by @jeswr in #306
- cert(cryptoreview): constant-time / side-channel analysis (sq-egx6) by @jeswr in #307
- bench(dashboard): populate competitor columns from same-machine gather (sq-ays7) by @jeswr in #309
- perf(sparq-core): sharded-dict merge for parallel chunked Turtle (sq-eq26, T4) by @jeswr in #291
- perf(sparq-vectors): cache filtered-ANN IdMask across prepares (sq-36ol) by @jeswr in #292
- bench(parse): 3-way HDT stage split + NT-vs-HDT A/B row (sq-q6a1) by @jeswr in #299
- sec(crypto): adopt subtle + zeroize for secret-bearing types (sq-u8a8) by @jeswr in #308
- cert(cra): Article 14 incident-reporting runbook (GX-CRA-2, sq-iy3p) by @jeswr in #301
- feat(sparq-shacl): SHACL-AF rules — sh:rule (TripleRule + SPARQLRule), opt-in (sq-d1dw) by @jeswr in #239
- feat(sparq-server): Triple Pattern Fragments / LDF source endpoint (sq-bzh1) by @jeswr in #282
- bench(dashboard): same-box SPARQL comparison — sparq vs Oxigraph on SP2Bench-250k (sq-ays7) by @jeswr in #310
- fix: positional format args to clear CodeQL rust/unused-variable FPs (code-scanning→0) by @jeswr in #311
- sec(sparq-mpc): close latent non-constant-time Fp::pow (sq-7ltf) by @jeswr in #312
- feat(site): in-site benchmarks — top-bar tab, per-type sidebar, collapsible SPARQL groups w/ live competitive summaries (sq-vjn4) by @jeswr in #313
- sec(sparq-zk): minimise secret-dependent branching in Schnorr sign + document arkworks CT residual (sq-8jv7) by @jeswr in #314
- ci(codeql): exclude redundant FP-prone rust/unused-variable (clippy -D is the real gate) → code-scanning 0 (refs #150/#151/#170) by @jeswr in #315
- sec(sparq-mpc): zeroize SecureRng secret material on drop (sq-19ej) by @jeswr in #316
- research: academic paper-factory — writing/venue/auto-gen/skill research (sq-gum8 ph1) by @jeswr in #319
- feat(sparq-solid): retract bridged ODRL deny on prohibition withdrawal (sq-2pcf) by @jeswr in #320
- research: novel-contribution inventory + identification process (sq-gum8 ph2) by @jeswr in #317
- feat(sparq-vectors): cyclic-join handling in transitive filtered-ANN mask (sq-p5oy) by @jeswr in #318
- chore(sbom): canonical workspace-member purls + path-ref fix (sq-uujh) by @jeswr in #321
- feat(sparq-fedplan): adaptive mid-execution re-planning, opt-in (sq-7s4z) by @jeswr in #325
- feat(site): pre-warmed SPARQL REPL + dataset viewer/picker/upload (try playground) by @jeswr in #326
- test(sparq-mpc): encode witness-validation-before-proving obligation (sq-7leq) by @jeswr in #327
- feat(sparq-policy): faithful ODRL purpose-constraint enforcement (sq-q56r) by @jeswr in #328
- feat(sparq-vectors): filtered-ANN pre/post-filter cost model (sq-7hx6) by @jeswr in #329
- research: crypto-erase / at-rest-encryption design (sq-du24) by @jeswr in #330
- bench(qlever): same-box indexed-server gather recipe (sq-52fo) by @jeswr in #331
- ci: build+clippy+test the filtered-ann and shacl-af feature legs (sq-wuft) by @jeswr in #332
- docs(agents): cross-poll prod-solid-server conventions by @jeswr in #333
- feat(sparq-policy): stateful ODRL count-constraint enforcement (sq-zi5w) by @jeswr in #335
- cert(cra): Article 14 incident-reporting runbook + cross-reference (sq-zbb5) by @jeswr in #323
- cert(sbom): CI drift-check for VEX ignore-list vs deny.toml (GS-5, sq-toze.29) by @jeswr in #338
- feat(sparq-zk): wire remaining car-hire circuit-family members, opt-in not-yet-sound (sq-pzet) by @jeswr in #337
- cert(ssdf): correct controls.md coverage-summary miscount (sq-ce97) by @jeswr in #334
- feat(sparq-wasm): SHACL validate() binding for JS consumers (sq-yqi1, #162) by @jeswr in #339
- feat(sparq-vectors): bulk embedding import (.npy / numeric dump), opt-in (sq-xsq9) by @jeswr in #340
- design: academic paper-factory — phase-3 design + skill (sq-gum8) by @jeswr in #322
- ci: path-filter the heavy Rust matrix so non-Rust PRs merge fast (merge-throughput) by @jeswr in #344
- docs(security): reconcile SECURITY.md with the ZK verifier re-audit (sq-gbp4) by @jeswr in #345
- feat(sparq-server): WAL compact/vacuum admin op for erasure-completeness (sq-x32t) by @jeswr in #324
- docs(skill): update academic-paper SKILL to as-built (native HTML export, paper-evidence.json) by @jeswr in #349
- docs(sparq-zk-compose): reword 'sound verifier' overclaim (unblocks #342 gate) by @jeswr in #350
- feat(sparq-policy): ODRL recipient-neq / everyone-except → ACP noneOf (sq-5037) by @jeswr in #343
- docs: align stale ZK-verifier-status cross-refs with reconciled SECURITY.md (sq-gbp4) by @jeswr in #351
- feat(site): paper factory — Typst /papers pipeline + A1/A2 pilot papers (sq-gum8) by @jeswr in #336
- docs(threat-model): sync unsafe count to actual (MS-G5, sq-hday) by @jeswr in #352
- feat(sparq-server): standard HTTP security headers (ASVS-G1, sq-2bhm) by @jeswr in #353
- fix(site): bump postcss >=8.5.10 (GHSA-qx2v-qp2m-jg93, sq-zkrt) by @jeswr in #354
- feat(js): surface SHACL validate() on SparqStore + shacl-enabled bundle (sq-pxls, #162) by @jeswr in #355
- cert(privacy): CI gate against unqualified ZK/MPC privacy/soundness claims (sq-toze.35) by @jeswr in #342
- chore(bench): assess/retire standalone dashboard vs in-site benchmarks (sq-p744) by @jeswr in #358
- cert(sparq-server): verify/guard error responses don't leak internals (ASVS-G3, sq-kfel) by @jeswr in #357
- feat(sparq-fedplan): fold per-source latency into adaptive-replan cost model (sq-b51o) by @jeswr in #356
- feat(site): in-site benchmark trend + scaling charts (sq-hsyg) by @jeswr in #359
- docs(agents): port PSS 'watch your own outbound cross-repo threads' convention by @jeswr in #361
- cert(cra): proposed support & EOL policy (GX-CRA-1, sq-f8tv) by @jeswr in #346
- feat(sparq-server): request-log redaction option (privacy, sq-toze.34) by @jeswr in #360
- feat(site): register missing benchmark capability families in-site (dashboard-retirement gate) by @jeswr in #362
- ci(memsafety): AddressSanitizer lane over the mmap corruption corpus (MS-G3, sq-hybl) by @jeswr in #365
- docs(memsafety): record local ASan corpus run PASSED (MS-9b, sq-hybl) by @jeswr in #366
- feat(sparq-server): opt-in structured access-audit sink (sq-gos8) by @jeswr in #364
- cert(slsa): build provenance attestation for release binaries (GX-9, sq-toze.23) by @jeswr in #367
- feat(site): pre-warm the in-browser ZK prover on the car-hire route by @jeswr in #372
- feat(sparq-engine): SPARQL window functions + custom aggregate registry, opt-in (sq-5qz9) by @jeswr in #370
- feat(memsafety): Kani bounded-proof of mmap validators — eval + harness (MS-G4, sq-hkud) by @jeswr in #368
- research: orchestration-automation design — codify the lead's recurring tick by @jeswr in #374
- cert(provenance): npm publish provenance + crates package attestation (GX-10, sq-toze.24) by @jeswr in #373
- feat(sparq-fedplan): EWMA-smoothed latency in adaptive-replan cost model (sq-b51o follow-up) by @jeswr in #371
- feat(sparq-server): SPARQL Service Description endpoint (sq-qfcb) by @jeswr in #375
- chore(orchestration): bead-close/orphan-check/refill-candidate scripts (#374 Phase A/C/F) by @jeswr in #376
- docs(research): honest in-browser ZK perf assessment (slow proving + large proof) [OPUS-4.8] by @jeswr in #377
- feat(site): ZK browser-prover perf — proof-size relabel + evm-flavor (-43%, still ZK) + coi-serviceworker multithreading (~4x) by @jeswr in #379
- fix(scripts): orphan-check-bench.sh honor AWS_PROFILE=pss so EC2 query works (sq-b1fo) by @jeswr in #378
- ci(privacy): exclude .claude/agents/** from the privacy-claims gate (unblocks #369) by @jeswr in #380
- chore(agents): 6 role-specific subagent definitions by @jeswr in #369
- docs(zk): "What the ZK proofs verify" + per-member cost/semantics data by @jeswr in #382
- feat(sparq-mpc): fully-oblivious batched hidden join (secret-shared match bit), opt-in not-yet-sound (sq-xhaw) by @jeswr in #381
- feat(sparq-server): brTPF bind-restricted fragments + Hydra paging (sq-dxhb) by @jeswr in #383
- feat(site): ZK verification explainer + per-member circuit cost breakdown by @jeswr in #384
- cert(sbom): purl-canonicality CI assertion + JS-lockfile SBOM (sq-tmyw, sq-toze.27) by @jeswr in #348
- chore(scripts): safe worktree-GC sweep, dry-run default (sq-6xdr) by @jeswr in #385
- feat(sparq-vectors): approximate ANN backend + iterative over-fetch, opt-in (sq-ip3a) by @jeswr in #363
- feat(sparq-engine): SPARQL inline OVER() window-clause syntax (sq-h564) by @jeswr in #387
- ci: cover silently-skipped opt-in-feature test suites + guard (sq-vya1) by @jeswr in #386
- feat(sparq-mpc): deployment-grade in-MPC bit-decomposition for disclose_threshold, opt-in not-yet-sound (sq-mnv5) by @jeswr in #389
- cert(sbom): NTIA per-component supplier name (GS-1, sq-toze.26) by @jeswr in #388
- feat(sparq-zk): issuer-attested credential-bound HolderPoP, opt-in not-yet-sound (sq-c2ql) by @jeswr in #390
- docs: honesty + drift sweep — STATUS.md SOUND overclaim, GS-1/SBOM resolved, feature-matrix gate by @jeswr in #391
- ci: harden privacy-claims gate against predicate-form soundness overclaims (sq-qhy4) by @jeswr in #393
- docs: design record — streaming federation client crate (epic sq-3183) by @jeswr in #392
- fix(sparq-engine): custom aggregate honours DISTINCT end-to-end (sq-fldo) by @jeswr in #395
- chore(orchestration): PERFORMANCE-discretion gate — sparq-perf-reviewer agent + PreToolUse arm hook by @jeswr in #396
- ci: ephemeral orphan-proof cost-capped EC2 build farm by @jeswr in #417
- infra: push-scheduler — push-frontier.sh + bd edge audit + design (sq-o09o) by @jeswr in #422
- research: autonomous programmatic scheduler design (design-for-review) [OPUS-4.8] by @jeswr in #423
- feat(sparq-solid): ACP acp:issuer matcher — (agent,client,issuer) principal (sq-3jtd.6) by @jeswr in #394
- infra(scheduler): Phase 2 — sparq-workload-triage placement agent + build-cost seed by @jeswr in #424
- docs(sparq-server): stable error/status contract + contract test (sq-r5bv) by @jeswr in #419
- ci(cert): wire PyPI PEP-740 published-package provenance (GX-10 / sq-toze.37) by @jeswr in #428
- feat(sparq-core): mmap-free &[u8] seam for MappedDict::validate + Kani proof (sq-ueuk) by @jeswr in #418
- feat(sparq-fedclient): Phase 0 skeleton + dependency-boundary proof (sq-s1uy) by @jeswr in #425
- feat(sparq-zk-compose): ZK hidden-holder-SET anonymity tier (sq-3c00), opt-in not-yet-sound by @jeswr in #427
- feat(sparq-nlq): exec-accuracy harness — answer-F1, oracle vs end-to-end, grounded vs not (sq-05rv) by @jeswr in #426
- research: agent-efficiency tooling — cut parallel-agent token/$ cost (design-for-review) [OPUS-4.8] by @jeswr in #430
- feat(sparq-solid): library-level ACP conformance harness (sq-3jtd.9) by @jeswr in #420
- feat(sparq-fedclient): Phase 2 source-type abstraction + Endpoint adapter + default-deny SSRF guard (sq-rsxf) by @jeswr in #434
- feat(sparq-fedclient): discovery client + Service-Description parser (sq-nfxl) by @jeswr in #438
- feat(sparq-reason-wasm): tier-b W-reason WASM bundle for in-tab inference (sq-6qw3) by @jeswr in #421
- fix(ci): sparq-site.md YAML colon + extend skill-frontmatter gate to .claude/agents (sq-tstv) by @jeswr in #429
- docs: internal-stub READMEs for 5 publish=false crates (sq-4kr5) by @jeswr in #431
- ci: guard drift-scan/flow-on to refuse minting issues outside CI (sq-z0se) by @jeswr in #433
- feat(sparq-server): Service Description enumerates named graphs (sq-optl) by @jeswr in #439
- ci(typos): allowlist recurring SPARQL-keyword false-positives (sq-hyzq) by @jeswr in #432
- feat(sparq-engine): inline OVER ORDER BY a computed expression (sq-c1jv) by @jeswr in #440
- docs(sparq-serve): correct false
publish = falseREADME claim (sq-4kr5) by @jeswr in #443 - feat(sparq-fedclient): Phase 6 brTPF + TPF fragment adapters (sq-2qze) by @jeswr in #441
- fix(sparq-solid): rustdoc private-intra-doc-link + scoped -D warnings lane (sq-z1rm) by @jeswr in #445
- ci(typos): anchor caps-suffix allowlist to known keywords (sq-uiie) by @jeswr in #444
- feat(sparq-server): byte-accounted per-request memory cap (sq-s5is) by @jeswr in #448
- feat(sparq-fedclient): Phase 3 planner bridge + materialised single-source interpreter (sq-j27p) by @jeswr in #442
- feat(ci): Gate G3 — new bench suite -> registry + dashboard (sq-ncvq.6) by @jeswr in #446
- feat(sparq-fedclient): Phase 4 capability-aware pushdown (sq-7byx) by @jeswr in #451
- feat(sparq-fedclient): Phase 5 — streaming operators (sq-vtba) by @jeswr in #453
- test(sparq-fedclient): direct EgressFilterResolver::resolve() tests + reconcile stale Phase-0 doc + fmt (sq-73om) by @jeswr in #449
- test(sparq-server): HTTP integration tests for PSS named-graph query+update set; fix stale no-named-graph claim (sq-fh4z) by @jeswr in #447
- docs(fedclient): fix 5 unresolved rustdoc intra-doc-links in source.rs/lib.rs (sq-8e6z) by @jeswr in #450
- feat(sparq-server): bound writer-queue head-of-line blocking from a slow UPDATE (sq-nulp) by @jeswr in #452
- ci(typos): correct sq-uiie comment examples (sq-k041) — anchor recovers SEPERATEd/MULTIPLYed/OCURRed, not glued RECIEVEd/ADRESs by @jeswr in #455
- feat(sparq-engine): inline windowed AGGREGATES + ROWS/RANGE frames (sq-imj8) by @jeswr in #457
- docs(sparq-serve,sparq-parse): surface crate-local README on crates.io/docs.rs (sq-ieqz) by @jeswr in #456
- docs(sparq-core): pin dict mmap on-disk format to little-endian + checked test (sq-lvw8) by @jeswr in #458
- feat(sparq-solid): acp:CreatorAgent/OwnerAgent via trusted provenance (sq-3jtd.5) by @jeswr in #459
- feat(sparq-server): apply SPARQL-Protocol dataset-override params (sq-z33x) by @jeswr in #454
- ci(sq-c76x): free runner disk + step-retry to stop load-aware shard flakes by @jeswr in #461
- bench(sq-1wrw): size-suffix WatDiv metric names (_sf) for the scaling axis by @jeswr in #465
- feat(site): REPL preserves named graphs (GRAPH) on dataset upload (sq-17nw) by @jeswr in #467
- fedclient Phase 7: adaptive re-planning — epic sq-dnko feature-complete (sq-ij5x) by @jeswr in #460
- sparq-server(brtpf): DoS cap the binding set — mapping count + values payload bytes (sq-r74h) by @jeswr in #466
- ci(flow-on): proactive merge-gate G6 new-config/flag→docs (sq-ncvq.9) by @jeswr in #464
- fix(sparq-solid): CreatorAgent/OwnerAgent allOf with sibling concrete-agent matcher (sq-az1b) by @jeswr in #463
- ci(flow-on): fix G6 asymmetric flag extractor (recognize backtick-documented flags) [OPUS-4.8] by @jeswr in #468
- test(js): Node-version-independent compressed/dictionary zstd fixtures (sq-fz8s) by @jeswr in #472
- fix(sparq-mpc): scrub ChaCha20 key schedule in SecureRng (sq-it50) by @jeswr in #471
- docs(sparq-fedclient): fix crate-doc broken intra-doc links in default (fedclient OFF) build (sq-tiq4) by @jeswr in #470
- perf(sparq-hdt): finer DIRECT stage split in StageTimings (sq-7ge0) by @jeswr in #473
- style(sparq-serve,sparq-parse): one-shot rustfmt to clear 146 pre-existing diffs (sq-g47l) by @jeswr in #469
- docs(sparq-fedplan): fix crate-doc broken intra-doc links in default (fedplan OFF) build (sq-gxx7) by @jeswr in #474
- test(sparq-zk-compose): regression-baseline holder_pok gate count + bench↔snapshot parity (sq-ifur) [OPUS-4.8] by @jeswr in #475
- sparq-prov(reason): PROV-O lineage for reasoner materialization via why() proof trees (sq-m3i0) by @jeswr in #477
- feat(sparq-engine): inline OVER() LAG/LEAD/NTILE + named WINDOW clause (sq-hqhc) by @jeswr in #478
- fix(sparq-policy): close multi-limit odrl:count TOCTOU — tightest bound, single atomic consume (sq-ea27) by @jeswr in #476
- site(zk): headless Playwright smoke test for ZK prover pre-warm (sq-5q63) by @jeswr in #479
- fix(js): chunk-safe zstd fixture synthesis (sq-3lh7) by @jeswr in #480
- ci(G2): normalize line-wrapped pub-item signatures so rustfmt reflow isn't a false public-surface change (sq-5x2i) by @jeswr in #481
- fix(sparq-policy): ODRL dateTime mixed-offset normalization — compare instants, not lexical (sq-qj2q) by @jeswr in #482
- ci(sq-czlh): reuse ci-free-disk.sh in asan/fuzz/coverage heavy lanes by @jeswr in #483
- docs(sparq-reason-wasm): reproducible bundle-size recipe, drop non-reproducible perf figure (sq-75hm) by @jeswr in #485
- test(sparq-nlq): CI-gate the live-session regression-set round-trip (sq-g0lw) by @jeswr in #486
- feat(sparq-engine): collapse single-referenced RDF lists into JSON-LD @list (sq-gg3j) [OPUS-4.8] by @jeswr in #488
- bench(fts): wire BEIR IR-quality axis (Recall@100/nDCG@10) gather step + lucene-anserini BM25 oracle (sq-1fz0) by @jeswr in #487
- docs(AGENTS): drop the one hard-coded perf number (parse_ns_per_byte range) [OPUS-4.8] by @jeswr in #489
- ci(sq-6uc7): fold #462's boost + AGENT_TOOLSDIRECTORY purge into ci-free-disk.sh by @jeswr in #490
- feat(sparq-prov): PROV-O lineage for SPARQL UPDATE (INSERT…WHERE / INSERT DATA / DELETE) (sq-xwdd) [OPUS-4.8] by @jeswr in #491
- feat(sparq-mpc): hidden-intermediate exactly-k property-path chain (sq-py8h.2) [OPUS-4.8] by @jeswr in #493
- test(zk): Gate G5 — extend gate-count snapshot coverage to top-level zk/ circuits (sq-ncvq.8) [OPUS-4.8] by @jeswr in #492
- feat(sparq-solid): library-level WAC conformance harness (sq-3jtd.8) [OPUS-4.8] by @jeswr in #495
- feat(sparq-policy): ODRL static conflict + containment detection (sq-zabv) [OPUS-4.8] by @jeswr in #494
- docs(paper-factory): as-built correction banner on design record (sq-3df4) [OPUS-4.8] by @jeswr in #496
- bench: OWL sameAs equality micro-suite — closure-size self-gate (sq-msl6, A3+A5) [OPUS-4.8] by @jeswr in #497
- feat(site): hover/focus-intent prefetch warm-up of the in-browser ZK prover [OPUS-4.8] by @jeswr in #500
- feat(sparq-server): opt-in HTTP SHACL validate endpoint POST /shacl/validate (sq-r868) by @jeswr in #498
- feat(sparq-shacl): SHACL-AF node-expression algebra + sh:values rules + gated W3C node-expr harness (sq-1m0n) by @jeswr in #499
- fix(bench/owl-sameas): clear stale .rq + match q_membership by name (sq-f4ps) by @jeswr in #502
- feat(sparq-policy): DPV/purpose-taxonomy subsumption for odrl:purpose (sq-z3ve) by @jeswr in #503
- feat(sparq-zk-compose): sparse O(n·D) holder/issuer set-membership host builder for a very large registry (sq-8k3h) [OPUS-4.8] by @jeswr in #505
- feat(sparq-mpc): malicious-with-abort IT-MAC comparison chain (sq-ka8m, design Hole 4) [OPUS-4.8] by @jeswr in #504
- docs(sparq-fedplan): sweep residual private_intra_doc_links on descriptor.rs:321 (sq-qik4) by @jeswr in #484
- feat(sparq-zk-compose): ZK FILTER coverage — negative xsd:integer + xsd:decimal circuit members (sq-1q9h) by @jeswr in #508
- feat(sparq-core): chunk-parallel TriG in-memory loader (sq-ev37) by @jeswr in #509
- feat(sparq-shacl): SHACL-AF function-expression form + sh:expression + function registry (sq-mk9n) by @jeswr in #510
- docs(ssdf): sq-5ty0 — stand-alone Secure-SDLC policy template (PO.1.1/PO.2.1) by @jeswr in #512
- feat(sparq-server): connection header-read timeout closes the slow-loris DoS (sq-2gqr) [OPUS-4.8] by @jeswr in #507
- feat(sparq-policy): odrl:spatial dimension + region isPartOf trees (sq-wukl) [OPUS-4.8] by @jeswr in #506
- docs(sparq-mpc): fix misleading MacKey::alpha_shares doc (sq-fbt2) [OPUS-4.8] by @jeswr in #513
- docs(memsafety): sync unsafe-crate counts to 26 forbid / 31 total (sq-pro0) by @jeswr in #515
- docs(sbom): verify cargo-cyclonedx path-member purl/bom-ref defect persists + upstream dossier (sq-4qo8) [OPUS-4.8] by @jeswr in #516
- feat(sparq-fedclient): brTPF compact/binary mapping transport (sq-6ihg) [OPUS-4.8] by @jeswr in #517
- feat(sparq-shacl): SHACL-AF sh:nodeByExpression + gated sht:Validate harness (sq-3w6n) [OPUS-4.8] by @jeswr in #518
- feat(sparq-core,wasm,site): JSON-LD ingest in the lean WASM build + REPL upload/URL (sq-dvyi) by @jeswr in #519
- docs(federated-planning): document the sparq-fedclient brTPF wire codec (sq-9wqw) [OPUS-4.8] by @jeswr in #520
- test(sparq-mpc): distinguish sound vs unsound auth_mul MAC-carry by tampering INSIDE degree_reduce (sq-81gd) [OPUS-4.8] by @jeswr in #521
- test(sparq-shacl): gated SHACL-1.2 core/node sht:Validate harness (sq-yca1) [OPUS-4.8] by @jeswr in #522
- feat(sparq-server): request-body read/idle timeout closes the slow-body DoS (sq-lodb) [OPUS-4.8] by @jeswr in #523
- feat(sparq-vectors): approximate DiskANN backend for the vec: predicate (sq-z589) [OPUS-4.8] by @jeswr in #524
- feat(site): live /surface/data-formats — format picker + gzip ingest demo (sq-j50v) by @jeswr in #525
- feat(sparq-fedclient): native IP-pinning HttpTransport for the Endpoint adapter (sq-25xk) [OPUS-4.8] by @jeswr in #526
- docs(cert): reproducible-build evidence for GX-8 — measured 22-byte single-cause diff (sq-toze.9) [OPUS-4.8] by @jeswr in #527
- ci(scheduler): conflict-partition over combined set + reserve by unpushed branches (sq-8rpq) by @jeswr in #529
- docs+bench: N-readers/1-writer serving contract + PSS write-throughput parity (sq-b4lo, gh-52) by @jeswr in #530
- feat(sparq-mpc): MAC-check the disclose_threshold_verdict decomposition opens (sq-6fv7) [OPUS-4.8] by @jeswr in #528
- docs: sync TOTAL-crate count 25 → 31 (sq-knl8) [OPUS-4.8] by @jeswr in #531
- test(sbom): regression-test the GS-6 bom-ref normalization (sq-9gli) by @jeswr in #532
- feat(sparq-shacl): SHACL-1.2 core/node list+ByTypes+disjunctive constraints (sq-vg3y) [OPUS-4.8] by @jeswr in #533
- feat(sparq-solid): ODRL dateTime live-clock re-check in ACP conditions (sq-0q7n) [OPUS-4.8] by @jeswr in #534
- docs(agents): codify rule taxonomy — "Enforced by Gn / flow-on rule-id" column on the per-change table (sq-ncvq.10) [OPUS-4.8] by @jeswr in #535
- fix(bench/serve): thread Wave-A4 ring API through the three drifted research spikes (sq-i9ck) by @jeswr in #536
- feat(sparq-mpc): MAC-check the disclose range-proof zero-test opens (sq-m4zi/sq-e7ma) [OPUS-4.8] by @jeswr in #537
- feat(sparq-server): opt-in first-party CORS origin allowlist (sq-o7o0, ASVS V14.5.3) [OPUS-4.8] by @jeswr in #538
- fix(bench/serve): factor cache_spike shard-map into type aliases (sq-kujq) [OPUS-4.8] by @jeswr in #539
- test(sparq-solid): verify noneOf conditional-grant refresh on exclusion-set change (sq-gx2q) by @jeswr in #540
- feat(sparq-shacl): emit sh:detail per-member/per-duplicate sub-results for sh:memberShape/sh:uniqueMembers (sq-f8gu) [OPUS-4.8] by @jeswr in #541
- feat(sparq-zk-compose): manifest-compose signed-int + decimal FILTER (sq-7lrq) [OPUS-4.8] by @jeswr in #542
- docs(bench/serve): drop unmeasured ~10-20ns figure from pss_update_throughput comment (sq-dpcg) [OPUS-4.8] by @jeswr in #543
- docs(cra): single named cybersecurity-policy template (Art.24/13, GX-CRA-3) [sq-d43g] by @jeswr in #544
- feat(sparq-policy): cross-process FileCounterStore for odrl:count (sq-5z1q) [OPUS-4.8] by @jeswr in #545
- test(sparq-engine): assert SPARQL parse-depth bound at engine seam + 1 MiB body cap (sq-1ukn, ASVS V5.5.2) [OPUS-4.8] by @jeswr in #546
- feat(sparq-fedclient): native HTTP FragmentTransport + wire TPF/brTPF into interpreter (sq-yzca) by @jeswr in #548
- test(sparq-shacl): diff-fuzz generator covers logical + nested + complex-path SHACL (sq-0hj7) [OPUS-4.8] by @jeswr in #550
- chore(perf-hygiene): drop unmeasured '~10-20ns' phrasing in 3 serve sibling sites (sq-7jib) by @jeswr in #547
- chore(bench): pin QLever Docker image to a sha256 digest (sq-l9yt) [OPUS-4.8] by @jeswr in #551
- build(release): cargo-auditable in the local build-dist.sh dist matrix (sq-ytnq) by @jeswr in #552
- feat(sparq-policy): cross-host AtomicCounterBackend (Redis/SQL) + BackendCounterStore adapter (sq-u3yo) by @jeswr in #553
- test(sparq-vectors): validate hybrid-RRF fusion on the olympics fixture (sq-88c6) [OPUS-4.8] by @jeswr in #554
- docs(sparq-mpc): fix broken intra-doc links + gate rustdoc -D warnings (sq-h1w2) [OPUS-4.8] by @jeswr in #555
- feat(sparq-core): one-pass compressed (SPQCPRM1) external build (sq-vkz7) [OPUS-4.8] by @jeswr in #556
- chore(perf-hygiene): drop unmeasured '~10-20 ns' from concurrent-serving.md §6.4 (sq-qpcy) by @jeswr in #557
- feat(sparq-server): enrich access-audit Actor::WebId from a trusted front's forwarded session (sq-ljfz) [OPUS-4.8] by @jeswr in #558
- test(sparq-shacl): wire Apache Jena SHACL reference adapter into diff-fuzz (sq-evws) by @jeswr in #559
- bench(rsp): RSP-QL deterministic per-window row-count gate + SRBench oracle (sq-b1hn) by @jeswr in #560
- feat(sparq-solid): wire stateful odrl:count THROUGH the ODRL→ACP bridge — bridged grant self-retracts on exhaustion (sq-58mh) [OPUS-4.8] by @jeswr in #561
- docs(security): FIPS/CMVP posture cross-ref in SECURITY.md (sq-d7kh) [OPUS-4.8] by @jeswr in #563
- chore(sparq-server): bump dev-dep tokio-tungstenite 0.24 -> 0.29 (sq-1qkm) [OPUS-4.8] by @jeswr in #564
- test(sparq-shacl): mirror pyshacl sh:detail exclusion in Jena diff-fuzz adapter (sq-vsqr) by @jeswr in #566
- feat(sparq-rsp-wasm): tier-b W-rsp windowed RSP-QL wasm bundle (sq-nzcb) [OPUS-4.8] by @jeswr in #567
- bench(hdt): HDT load-and-decode suite — count gate + load_s/ratio advisory + hdt-cpp competitor (sq-lrp9) by @jeswr in #568
- feat(sparq-text-wasm): tier-b W-text BM25 full-text wasm bundle (sq-jbe6) [OPUS-4.8] by @jeswr in #569
- docs(sparq-rsp-wasm): README push() term-syntax is Turtle, not N-Triples (sq-k2wy) [OPUS-4.8] by @jeswr in #572
- perf(sparq-core): honest build-timing labels so the rung-5 dict bucket re-measures (sq-3l43) [OPUS-4.8] by @jeswr in #570
- docs(sparq-introspect/nlq/sim): concise-README rewrite to the template (sq-lsxd) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/573
- test(sparq-shacl): wire Node RDF-JS SHACL reference adapter into diff-fuzz (sq-vz2v) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/574
- feat(sparq-server): Dockerfile HEALTHCHECK via in-binary --health-probe (sq-toze.36) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/577
- perf(sparq-mpc): tighten oblivious shuffle to AS-Waksman optimal switch count (sq-hny9) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/575
- docs(sparq-solid): design notes for sq-3jtd.7 vocab gaps (accessToClass/vc/custom-modes/nested-groups) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/578
- feat(site): /try REPL full SPARQL surface (CONSTRUCT/UPDATE/EXPLAIN) + tier-a /surface/sparql (sq-vfbm) by @jeswr in https://github.com/jeswr/sparq/pull/579
- feat(sparq-algos): opt-in graph analytics — PageRank/centrality/community (sq-mqvm) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/580
- ci(rustdoc): widen -D warnings gate to the whole workspace (sq-8gsv) by @jeswr in https://github.com/jeswr/sparq/pull/582
- deps(rand): rand-ecosystem 0.10 (rand 0.10 + drop rand_chacha + getrandom 0.4) (sq-8xug) by @jeswr in https://github.com/jeswr/sparq/pull/581
- docs(skills/mpc): document oblivious shuffle/sort public surface (sq-80pj) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/583
- bench(rung5): SPARQ_SPOT spot-launch path + record the on-demand/IAM blocker for the 1B dict-bucket re-measure (sq-3l43) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/584
- feat(sparq-prov/server/fedclient): advertise + discover PROV-O lineage via Service Description (sq-yyy3) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/585
- feat(bench/vector): gather-tier SIFT1M/GloVe recall-QPS Pareto adapter (sq-aiup) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/586
- feat(site): gray EXPLAIN/ANALYZE mode toggle for SPARQL Update examples (sq-xe4f) by @jeswr in https://github.com/jeswr/sparq/pull/587
- feat(sparq-shacl-wasm): tier-b W-shacl wasm bundle — in-tab SHACL validation (sq-lfmf) by @jeswr in https://github.com/jeswr/sparq/pull/588
- feat(sparq-mpc): bounded HIDDEN property-path {1,k}/{0,k}/p? + alternation via union-of-fixed-chains OR-fold (sq-py8h.3) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/589
- deps(sparq-gpu): migrate wgpu 22 -> 29 (sq-5z08, supersedes #117) by @jeswr in https://github.com/jeswr/sparq/pull/565
- refactor(sparq-geo): route line∩polygon clip through i_overlay (sq-yt4z) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/590
- fix(sparq-server): gate /metrics under --auth-token-read (sq-9jrx) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/592
- feat(site): /surface/shacl tier-b live SHACL validator (sq-egy6) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/591
- fix(sparq-core): reject unknown RDF format strings instead of silently parsing as Turtle (sq-m2pc) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/595
- feat(sparq-engine): SERVICE parse SPARQL-Results-XML (SRX) responses (sq-ycu) by @jeswr in https://github.com/jeswr/sparq/pull/594
- feat(sparq-mpc): drive oblivious shuffle/sort over the loopback transport (sq-bdbv) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/593
- docs(AGENTS): ZK circuit-member checklist — zk/compose member needs gate_count snapshot + cargo nextest (sq-0x65) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/596
- fix(sparq-core): reject unknown dataset format in load_dataset_serial instead of silent TriG (sq-01yr) by @jeswr in https://github.com/jeswr/sparq/pull/597
- feat(sparq-core): named-graph scoping for GenAI crates — Graph::named_graph + docs (sq-quuu) by @jeswr in https://github.com/jeswr/sparq/pull/598
- docs(memsafety): re-sync attestation to live ratchet — 58/44 sites, 30/35 crates, MS-G2/G3 closed (sq-toze.16) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/600
- test(sparq-mpc): federation-level OWA / omission negative suite (sq-2fms) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/599
- ci(release): Trivy scan the released container image before push (sq-p9xq) by @jeswr in https://github.com/jeswr/sparq/pull/601
- feat(sparq-mpc): collision-resistant Term->Fp join-key encoder + injectivity contract (sq-dl81) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/603
- perf(sparq-core): stream numerics/temporals caches on in-RAM save finalize (sq-7ph8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/602
- docs(flow-on): beads on-close hook already shipped upstream — no proposal to file (sq-ncvq.17) by @jeswr in https://github.com/jeswr/sparq/pull/604
- bench: mark LUBM not comparable for EYE (N3) reasoner (sq-bzr7) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/605
- feat(sparq-text): rebuild-on-boot + reconcile contract for the in-memory TextIndex (sq-oddt) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/606
- fix(scheduler): partition conflict-frontier by primary-CODE crate, not just surface label (sq-6ip4) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/607
- docs(cert/openssf): machine-readable Best-Practices (CII) self-cert + CI evidence gate (sq-toze.5) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/608
- feat(sparq-mpc): bounded property-path planner guard + cost-model wiring (sq-py8h.5) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/610
- feat(bench): register Apache Jena Fuseki+TDB2 http-sparql competitor (sq-gbq0) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/611
- docs(sparq-solid): record ldp:contains/containment-view ownership decision + pin invariant (sq-3jtd.4) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/612
- docs(sparq-wasm): audit wasm read-replica tier — CONSTRUCT/DESCRIBE + string-fn retention + opt-in regex + native-only persistence (sq-0ptd) by @jeswr in https://github.com/jeswr/sparq/pull/609
- docs: fix dead conformance-report.md links in AGENTS/CONTRIBUTING (sq-sfvh) by @jeswr in https://github.com/jeswr/sparq/pull/613
- feat(sparq-mpc): sharpen cheater attribution in robust reconstruction (sq-6u6b) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/615
- ci(docs-quality): bring research/ + zk/ markdown under the HARD markdownlint gate (sq-rqyo) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/614
- test(sparq-server): ASK boolean XML/JSON serializer oracle via sparesults (sq-cya4) by @jeswr in https://github.com/jeswr/sparq/pull/616
- docs(sparq-gpu): de-perf README — drop baked speedup ratios (sq-p3fk) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/617
- test(sparq-geo): GeoSPARQL RDFS/OWL Feature/Geometry entailment conformance + honest query-rewrite gap (sq-5ts8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/618
- feat(sparq-engine): add request-atomic update_in_place_atomic wrapper (sq-o1wp) by @jeswr in https://github.com/jeswr/sparq/pull/619
- feat(sparq-vectors): wire PQ candidate cache into DiskAnnIndex search path (sq-qamd) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/620
- docs(sparq-mpc): cross-link deferred malicious-security seams to successor beads (sq-6d6g) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/621
- feat(bench-dashboard): surface LUBM regime + result-mode as per-metric badges (sq-19z8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/622
- fix(js): percent-encode IRIREF-illegal chars + re-prove SPARQL-injection guard against the real parser (sq-c4ej) by @jeswr in https://github.com/jeswr/sparq/pull/623
- feat(sparq-server): classify blocked SERVICE egress as 403, not 500 (sq-iu0c) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/624
- feat(site): live /surface/javascript-wasm demo — queryCursor/match/count/applyDelta (sq-5teq) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/625
- feat(js): publish guardrails + git-pin verification for @jeswr/sparq (sq-bkag) by @jeswr in https://github.com/jeswr/sparq/pull/626
- feat(sparq-mpc): hidden-key endpoint DISTINCT — oblivious-sort + adjacent-equality dedup (sq-py8h.4) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/627
- feat(bench/dashboard): prefer EC2/nightly series in featured block + tier badge (sq-aas7) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/628
- feat(js): SparqStore.queryQuads() for CONSTRUCT/DESCRIBE (sq-1gkw) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/629
- feat(sparq-server): per-request SERVICE egress allowlist override hook (sq-9xoh) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/630
- docs(mpc): drop stale 'matrix still says degree_reduce in-flight #119' cross-ref (sq-aycz) by @jeswr in https://github.com/jeswr/sparq/pull/631
- chore(sparq-wasm): retire JS askToSelect ASK->SELECT* rewriter (sq-d38) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/632
- chore(supply-chain): drop stale RUSTSEC-2024-0436 (paste) ignore now that the GPU stack no longer pulls it (sq-l8bv) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/633
- feat(sparq-solid): precise variable-GRAPH write check under USING/WITH (sq-cnor) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/634
- docs(openssf): triage residual Scorecard Fuzzing/Maintained/Vulnerabilities alerts (sq-cgzx) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/635
- fix(bench/dashboard): tighten EC2-nightly 'same-box' wording to 'same c7g instance family' (sq-c0kd) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/636
- docs(branch-protection): solo-maintainer Scorecard evidence + live-ruleset reconcile (sq-sto1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/638
- docs(sparq-mpc): equality/mult open is DETECT-only, never CORRECTS under honest majority (sq-ji5f) by @jeswr in https://github.com/jeswr/sparq/pull/639
- test(sparq-mpc): pin the L2 bipartite match-graph leak of the scalar hidden join (sq-4vgx) by @jeswr in https://github.com/jeswr/sparq/pull/640
- feat(sparq-geo): GeoSPARQL query-rewrite extension — topology property-form patterns (sq-9g58) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/641
- feat(sparq-engine): vectorized DataChunk columnar primitives (M4) (sq-hvfe) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/642
- feat(sparq-nlq): N2 dictionary-grounded constraint of generated SPARQL (sq-9yjp) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/645
- ci(pages): auto-rebuild paper factory on benchmark-data push (sq-gdhy) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/643
- test(sparq-geo): OGC GeoSPARQL R1-R30 requirements-class conformance harness (sq-i2a0) by @jeswr in https://github.com/jeswr/sparq/pull/644
- docs(release): honest crates.io registry-publish-signing note (sq-jgt3) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/646
- feat(sparq-engine): opt-in materialised-view / query-result cache (sq-a9cn) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/648
- feat(sparq-nlq): wire sparq-sim entity/relation linking into NL->SPARQL grounding (sq-uw40) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/647
- ci(mutants): cargo-mutants per-crate test-quality ratchet (nightly, advisory) (sq-8kt3) by @jeswr in https://github.com/jeswr/sparq/pull/649
- test(sparq-wasm): cover exported Store wasm-bindgen API success paths + raise coverage floor 77->93 (sq-8r9a) by @jeswr in https://github.com/jeswr/sparq/pull/650
- test(sparq-reason): behavioural tests for rdfs.rs + N3 parser; ratchet coverage floor 81→82 (sq-jd5s) by @jeswr in https://github.com/jeswr/sparq/pull/651
- test(sparq-core): behavioural extsort tests + raise coverage floor 78→90 (sq-j67o) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/653
- feat(sparq-geo): close OGC R9 (geometry-metadata) + R16 (empty gmlLiteral) (sq-mzmh) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/652
- test(sparq-geo): GeoSPARQL query-rewrite conformance for eh*/rcc8* property forms (sq-5ts8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/654
- test(sparq-text): behavioural rewrite-path tests + ratchet coverage floor 84->90 (sq-bj7j) by @jeswr in https://github.com/jeswr/sparq/pull/655
- test(sparq-solid): behavioural tests for rewrite + provenance, ratchet coverage floor 84->89 (sq-2xdr) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/656
- test(sparq-serve): behavioural tests for lowest-covered modules, ratchet coverage floor 83->92 (sq-fggn) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/657
- test(sparq-nlq): behavioural tests for constrain.rs algebra walk, ratchet coverage floor 85->91 (sq-1jte) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/659
- test(sparq-core): N-Quads graphLabel IRI/blank-only coverage (sq-cpm) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/658
- feat(sparq-text): opt-in CJK character-bigram analyzer (sq-m3ln) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/662
- docs: hygiene — de-drift stale ZK gate counts to catalog pointer; fix dangling TODO ref [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/664
- test(sparq-hdt): behavioural tests for decoder error paths + single-threaded arm, ratchet coverage floor 87->90 (sq-cafc) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/661
- feat(sparq-shacl): vendor pinned DASH + propertyValidator $PATH pre-binding; run W3C sparql/component suite (sq-wys) by @jeswr in https://github.com/jeswr/sparq/pull/663
- test(sparq-introspect): wasm32 smoke test + bundle-size measurement (sq-aq5) by @jeswr in https://github.com/jeswr/sparq/pull/660
- feat(ci): coverage-gate.py --check-monotonic — fail CI if a PR lowers any crate's coverage floor (sq-neq8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/665
- style(sparq-mpc): clear cargo fmt drift in adversarial_tests.rs (sq-f6xs) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/666
- test(sparq-server): behavioural tests for lowest-covered modules, ratchet coverage floor 85->86 (sq-4vao) by @jeswr in https://github.com/jeswr/sparq/pull/667
- ci: add coverage/mutation floor files to the 'rust' paths-filter (sq-spfg) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/668
- feat(site): /surface/inference tier-b live page (W-reason bundle) (sq-0po6) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/669
- feat(sparq-core): dict-spill external builder supports RDF 1.2 triple terms (sq-jvbr) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/670
- ci(coverage): merge conformance binaries into sparq-core/engine nightly coverage (sq-bjct) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/671
- feat(site): live /surface/streaming-rsp page (tier-b W-rsp wasm) (sq-11zy) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/672
- docs: #![doc=include_str!(README)] + docs.rs all-features for hdt/rsp/text/nlq/shacl/introspect/sim (sq-jxl0) by @jeswr in https://github.com/jeswr/sparq/pull/673
- chore(deps): migrate ureq 2 -> 3 to drop unmaintained rustls-pemfile (sq-g2xs) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/674
- feat(site): live /surface/full-text page (tier-b W-text wasm) (sq-xoxu) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/677
- fix(ci): coverage gate fails on a MEASURE-FAILURE, not just a regression (sq-039g) by @jeswr in https://github.com/jeswr/sparq/pull/676
- test(sparq-gpu): CPU-reference unit tests + randomized GPU-vs-CPU differential oracle (sq-goay) by @jeswr in https://github.com/jeswr/sparq/pull/675
- fix(scheduler): hold the sparq-zk value-lane while #514 is open (sq-751l) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/678
- fix(ci): restore coverage gate — pin explicit tool for cargo-llvm-cov install-action [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/680
- docs: hygiene + honesty-drift reconciliation (de-bake perf, de-stale shipped capabilities) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/681
- ci(mutants): seed bench/mutants-baseline.json for sparq-algos (sq-ep3f) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/679
- docs(bench): re-confirm rung-5 1B dict-bucket EC2 run STILL blocked (sq-3l43) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/683
- ci(workflows): lint SHA-pinned taiki-e/install-action for explicit
with: tool:(sq-ur7o) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/682 - feat(sparq-mpc): Rabbit-style full-field in-MPC bit-decomposition — lift threshold magnitude 2^20 → 2^60 (sq-bgsn) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/685
- docs(sparq-server): drop redundant de-stale breadcrumb after WAL-durable CLEAR/DROP landed (sq-1ys1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/688
- docs(AGENTS): document the privacy-claims CI gate in the gate-table (sq-cuzr) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/686
- ci(unsafe-ratchet): mark geiger gate-promotion follow-up done (sq-4plh) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/687
- feat(sparq-engine): opt-in MVCC / ACID transaction isolation (sq-it1x) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/684
- feat(sparq-fedclient): multi-source UNION-per-leaf fan-out (sq-7yf0) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/690
- bench(dict): establish dictionary bytes/term + dict-load-throughput baseline (sq-9w0t) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/689
- docs(scheduler): OVERSIGHT/observability — decision LOG + live STATUS + PAUSE/KILL + ESCALATE (sq-hsst) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/692
- docs(bench): reconcile Wikidata-8B runbook against merged dict-spill (sq-1q3) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/694
- ci(docs-site): anti-drift glue — lychee over built site HTML + generated-fragment headers (sq-d8or) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/695
- chore(deps): hold dtolnay/rust-toolchain MSRV pin at declared 1.88 floor; ignore version-bumps (sq-sski) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/696
- test(sparq-algos): kill 15 surviving mutants + lower cargo-mutants ceiling 23->8 (sq-lqty) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/691
- docs(sparq-rsp,sparq-zk-compose): trim READMEs to the concise template (sq-puyy) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/697
- chore(deps): Bump actions/setup-java from 4.8.0 to 5.3.0 by @dependabot[bot] in https://github.com/jeswr/sparq/pull/705
- feat(site): /surface/http-server tier-e captured curl + SSE-frame walkthrough (sq-rnwc) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/698
- ci: run the bench/dict (dict-baseline) selftest from a CI lane (sq-hqmm) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/693
- docs(research): dict-id-order determinism audit — no canonical leak + 1 vector-fingerprint sharp edge (sq-xom2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/710
- chore(deps): Bump tower-http from 0.6.11 to 0.7.0 by @dependabot[bot] in https://github.com/jeswr/sparq/pull/702
- chore(deps): Bump the cargo-minor-patch group with 3 updates by @dependabot[bot] in https://github.com/jeswr/sparq/pull/699
- docs(book): mdBook guide scaffold + non-publishing build-validate lane (sq-h0tr) by @jeswr in https://github.com/jeswr/sparq/pull/708
- feat(site): /surface/genai tier-e captured NL→SPARQL loop + real result tables (sq-3was) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/711
- ci(supply-chain): make cargo-vet GATING leg deterministic (--frozen, no remote re-fetch) by @jeswr in https://github.com/jeswr/sparq/pull/712
- chore(deps): Bump bzip2 from 0.5.2 to 0.6.1 by @dependabot[bot] in https://github.com/jeswr/sparq/pull/700
- ci(supply-chain): pin cargo-vet@0.10.2 so it parses trusted-publisher (real fix for #704 GATING break) by @jeswr in https://github.com/jeswr/sparq/pull/713
- chore(deps): Bump actions/checkout from 6.0.3 to 7.0.0 by @dependabot[bot] in https://github.com/jeswr/sparq/pull/707
- feat(bench/cli): --json results emit for bench / bench-mmap (sq-d7d) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/709
- feat(site): /surface/vector tier-e captured vec: k-NN + Bolt embedding run (sq-dwdm) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/714
- ci(docs-quality): promote no-perf-numbers to a HARD gate (sq-8ic6) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/717
- chore(deps): Bump taiki-e/install-action from 2.81.10 to 2.82.0 in the actions-minor-patch group by @dependabot[bot] in https://github.com/jeswr/sparq/pull/704
- fix(sparq-vectors): make graph fingerprint dict-id-order-independent (thread-count stable) (sq-xhiv) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/715
- docs(engine): honest serialise-determinism docs + ORDER-BY-tie clarification (sq-b83e, sq-8qzz, sq-8m65) by @jeswr in https://github.com/jeswr/sparq/pull/716
- feat(site): /surface/geosparql tier-e captured geof: + R-tree GeoIndex + map (sq-ndaz) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/718
- docs(compliance): sync forbid(unsafe_code) crate counts to verified 30/35 (hygiene sweep) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/723
- docs(roadmap): mark T9 named-graph quad store DONE (sq-uls) by @jeswr in https://github.com/jeswr/sparq/pull/720
- feat(bench): --json machine-readable emit for bench/parse + sparq-text bench_text (sq-ghjc) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/719
- docs(research): MPC untrusted-planner → routing seam design (sq-pwr) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/726
- ci(pages): fold ALL dev/bench* dashboards + artifact smoke check (sq-zngy) by @jeswr in https://github.com/jeswr/sparq/pull/727
- test(sparq-engine): pin bound-endpoint zero-length + NegatedPropertySet full-scan avoidance (sq-5kr) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/722
- feat(sparq-rsp): true overlay-snapshot EvalMode over Graph::snapshot (sq-j39) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/725
- docs: doc-currency — reword stale 'SERVICE federation not yet implemented' to opt-in
servicefeature (sq-6gob) by @jeswr in https://github.com/jeswr/sparq/pull/728 - feat(sparq-py): add Graph.copy() over the core snapshot API (sq-6h8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/721
- feat(sparq-introspect): persisted *.introspect sidecar + per-class sample labels (sq-3n4) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/724
- docs(fast-ingestion): reject radix-sort permutation lever after measurement (sq-56z) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/729
- docs(research): paper-factory honesty-gate coverage — close the .typ blind spot (sq-gum8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/731
- docs(sparq-vectors): document the id-keyed .spqv/.spqg staleness contract (sq-wlzi) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/730
- chore(beads): re-export issues.jsonl mirror — session closes + new beads (943) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/736
- ci(honesty): scan paper .typ sources in perf-number + privacy-claims gates (sq-mkza) by @jeswr in https://github.com/jeswr/sparq/pull/738
- docs: reword stale roadmap T9 line — property paths + SERVICE federation are DONE (sq-d751) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/733
- docs(sparq-algos): correct test-location claim in README (sq-6c04) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/732
- feat(sparq-engine): SERVICE variable endpoints + per-query timeout (sq-d4p) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/739
- docs(sparq-rsp): EvalMode doc-comments say 'four' strategies after Snapshot landed (sq-wh42) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/734
- chore(sparq-py): runnable pre-publish PyPI name-availability check (sq-ed5) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/735
- docs(research): release-CI + multi-platform build design record (sq-v286) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/742
- docs(research): ZK age-proof gate-count reduction — why ~17k, how to reach ~4k (sq-1s2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/741
- docs(research): GUI design record — Tauri 2, MVP→phased roadmap, maintenance plan (sq-ixc3) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/743
- feat(sparq-introspect): export characteristic sets as SHACL node shapes (sq-bde) by @jeswr in https://github.com/jeswr/sparq/pull/737
- feat(papers): A3 — opt-in GeoSPARQL layer + cross-family conformance ratchet [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/740
- docs: SERVICE ?var doc-currency (#739/sq-d4p) + fix stale 58→59 unsafe-site count [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/745
- ci(honesty): shared phrase-list + evidence-JSON-prose scan + build-boundary assertion (sq-mraf/sq-4hga/sq-dxi3) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/744
- docs(book): tested quickstart example via rustdoc_include (sq-384j) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/746
- feat(sparq-conformance): consolidate sparq-solid WAC/ACP ratchets into central scoreboard (sq-j174) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/747
- ci: retry transient crates.io fetch flakes in SBOM + feature-matrix (sq-hxn7, sq-hhxc) by @jeswr in https://github.com/jeswr/sparq/pull/750
- feat(bench): --json emit for 4 example bench harnesses (sq-cxji) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/749
- feat(gui): GUI MVP foundation — shared @sparq/client TS package + Tauri 2 scaffold (sq-2e93) by @jeswr in https://github.com/jeswr/sparq/pull/748
- docs(readme): bring 20 crate READMEs to the readme-template (sq-inzv) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/751
- docs/ci: finish crate-README template + promote readme-template to a HARD gate (sq-4lvq, sq-ixsf, sq-8ic6) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/752
- chore(beads): re-export issues.jsonl mirror — session bead delta (975) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/753
- feat(site/papers): Solid WAC+ACP decision-parity conformance paper; correct scoreboard to 7 suites / 3442 [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/754
- feat(gui-mvp): basePath env-switch + WasmStore conformance guard + SPARQL query-editor uplift (sq-9vw5, sq-06gq, sq-n5aw) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/760
- feat(site/papers): memory-safety attestation paper — confined/registered/CI-ratcheted unsafe surface (sq-gum8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/761
- feat(site/try): structured SPARQL results panel — table ⇄ raw-JSON toggle + CSV/TSV/JSON export (sq-x0kp) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/762
- research: signed typed-value representation to remove in-circuit literal parsing [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/514
- fix(docs): MD040 language tags unblock markdownlint gate (post-#514) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/766
- feat(site/papers): coZK witness-validation NEGATIVE-RESULT paper — R-WV as a build-time gate (sq-gum8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/763
- ci(gui): per-platform Tauri build+clippy matrix + tauri-driver e2e scaffold (sq-bu69) by @jeswr in https://github.com/jeswr/sparq/pull/764
- feat(agent-telemetry): per-agent/per-wave token+cost telemetry harness (sq-dhss) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/767
- docs(skills): reconcile stale router-skill status notes against current code [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/768
- feat(site): FL1 ZK car-hire cross-credential composition + captured-manifest verify (sq-8dx2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/771
- docs(cryptoreview): register CR-G8 value-hook encoding as an open external-audit obligation (sq-1s2.1.1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/772
- feat(bench/zk-compose): comprehensive SPARQL ZK gate-cost catalog harness (sq-1s2.1.2) by @jeswr in https://github.com/jeswr/sparq/pull/770
- docs(research): correct stale coverage/bench gap-audit + record sq-bif/sq-5o5 decomposition [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/773
- chore(bench): attribute existing ZK benches to sparq-zk / sparq-zk-compose in the registry (sq-5o5.1) by @jeswr in https://github.com/jeswr/sparq/pull/774
- fix(scripts): drift-scan honors G1 publish=false bench exemption (sq-bif.5) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/776
- feat(site): surface comprehensive SPARQL ZK gate-cost catalog on /benchmarks/zk (sq-1s2.1.3) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/777
- test(coverage): seed floors + presence gate for 7 untracked crates (sq-bif.1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/775
- fix(scripts): drift-scan honors featured=false; mark 7 trend-only suites (sq-5o5.2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/778
- docs(bench/zk-compose): de-stale catalog README after /benchmarks/zk landed (sq-1s2.1.3/#777) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/779
- feat(site): MPC £100k flagship — received-view panel + semi-honest/stub bead citations (sq-3hrc) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/780
- feat(bench/dashboard): promote the ZK estate to a FEATURED_SUITES card (sq-5o5.3) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/781
- docs(release): reconcile publishable-crate count 16 → 17; add sparq-algos to publish DAG (sq-v286.1) by @jeswr in https://github.com/jeswr/sparq/pull/783
- feat(site/papers): B3 — compile ODRL usage policies into a queryable WAC/ACP view (single-node bridge) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/786
- test(sparq-fedplan): correctness suite — source-selection/plan/adaptive + descriptor pruning (sq-bif.3) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/782
- ci(sbom): retry transient cargo-cyclonedx flake in the GS-* live self-tests (sq-90ew) by @jeswr in https://github.com/jeswr/sparq/pull/787
- test(sparq-prov): correctness suite — PROV-O derivation/update/datetime + reason coverage (sq-bif.4) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/784
- ci(release): add release-plz.toml version_group over the 17 publishable crates (sq-v286.3) by @jeswr in https://github.com/jeswr/sparq/pull/789
- ci(release): unify release/dist build matrix via workflow_call; drop dist tags trigger (sq-v286.2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/790
- test(sparq-fedclient): correctness suite — pushdown/wire/operators/discovery + error paths (sq-bif.2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/785
- ci(release): ship sparq-server native binary in the build matrix (sq-v286.6) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/791
- ci(release): add release-plz Release-PR + tag workflow → reuse release.yml (sq-v286.4) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/792
- docs(research): adversarial issuer-desync review of dual-leaf ZK encoding [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/793
- feat(site): GUI Phase 2 endpoint mode — Connect panel + SPARQL 1.1 Protocol client (sq-2mke) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/795
- docs(agents): single-source the sub-agent shared contract + brief-discipline (sq-or5m) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/799
- docs(research): design multi-account agent fan-out spill (sq-fi8v) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/800
- docs(research): sq-hb75 — projective/extended-TE scalar-mul measured & REJECTED (no-win) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/801
- test(gui): real tauri-driver WebDriver e2e — launch shell + run-a-query assertion (sq-pnnl) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/803
- ci: add advisory Conventional-Commits PR-title validator (sq-v286.5) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/804
- feat(site): GUI Phase 2 live subscriptions view — stream /subscriptions/sse result deltas (sq-9ij6) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/806
- ci(release): add UNSIGNED Tauri desktop bundles (.dmg/.msi/.exe/.deb/.AppImage) to release + SLSA subject-path (sq-8n1c) by @jeswr in https://github.com/jeswr/sparq/pull/808
- feat(sparq-fedplan-mpc): Phase-1 seam skeleton + default-deny SourcePrivacyDescriptor (sq-2q1x) by @jeswr in https://github.com/jeswr/sparq/pull/798
- docs(cryptoreview): external-audit readiness dossier for sq-qhy4 (CR-G1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/802
- docs(zk): refresh verify+cost report to 28 circuit members (sq-ritq) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/809
- test(sparq-vectors): end-to-end reference-library (hnswlib/FAISS) gather verification (sq-6te5) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/807
- fix(bench/gather): harden same-box Oxigraph gather vs the 73min stall (sq-sxso) by @jeswr in https://github.com/jeswr/sparq/pull/810
- docs(research): finalize dual-leaf ZK term encoding + revise CR-G8 (issuer-desync corrections) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/794
- fix(ci): correct stale Pages-source comments — flip is DONE, build_type=workflow (sq-svtt) by @jeswr in https://github.com/jeswr/sparq/pull/814
- docs(research): configurable ZK commitment + circuit-builder + signature program (sq-1s2.5.1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/815
- docs(research): HDT 0.4-vs-0.7 upgrade decision analysis (sq-4wo.2, #758) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/819
- ci(publish): npm OIDC trusted publishing (no NPM_TOKEN) + pre-wire crates.io trusted-publishing flip (sq-v286.11) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/818
- fix(gui): cross-platform beforeBuildCommand for win-x64 installer (sq-v286.10) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/821
- fix(bench): build bench_vectors with approx-ann (or skip when off) to unblock RED main (sq-k9o2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/826
- chore(hygiene): AGENTS.md recurring-task sweep + stale-bead/from-pss triage [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/829
- feat(sparq-client): tracked generated wasm d.ts as the single source of truth — DELETE the hand-written WasmStore mirror (sq-jpki) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/816
- docs(research): Solid CTH wire-conformance feasibility + phased plan (sq-t58w) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/831
- docs: standardize on RDF 1.2 / SPARQL 1.2 terminology + add terminology skill (#812, sq-2p8z) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/825
- docs: decompose sq-bif test-coverage epic into atomic per-crate beads [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/833
- feat(gui): dataset panel — named-graph list with per-graph triple counts (sq-daru) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/828
- fix(sparq-fedclient): strict exact-token parse_ask_boolean (sq-2gfe) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/827
- test(sparq-shacl): both-feature-state shacl-af rule surface + dark eval.rs dispatch branches (sq-bif.10) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/837
- chore(hygiene): periodic AGENTS.md sweep — doc-currency/terminology/stale-bead/from-pss [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/844
- test(sparq-policy): wire into coverage floor+presence gates + stateless count-default tests (sq-bif.7) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/838
- feat(site): Turtle syntax highlighting in editor/results (#788, sq-8uew) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/845
- test(sparq-reason): default-OFF materialization + isolated incremental_explain unit tests (sq-bif.11) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/839
- test(sparq-engine): vectorized columnar differential + result-cache write-invalidation (sq-bif.12) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/840
- docs(book): document SPARQL 1.2 Update support (#813, sq-tfpq) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/847
- docs: decompose sq-5o5 benchmark-coverage epic into atomic beads [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/848
- test(sparq-core): parallel-vs-serial load differential + dict-spill activation/mmap-reload edges (sq-bif.13) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/843
- test(sparq-text): default-OFF pure-index feature-state test (sq-bif.16) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/842
- fix(ci): push-frontier.sh surfaces launchable epic-child beads (sq-p7nw) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/849
- bench(dashboard): register sim/introspect/nlq/mpc/wasm trend rows (featured=false) — clear drift (sq-5o5.5-.9) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/850
- feat(site): customisable query on the Solid access-control showcase (#797, sq-p6p7) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/852
- chore(hygiene): periodic sweep + UPSTREAM.md currency (sq-v7be) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/853
- test(sparq-algos,sparq-canon): integration/unit suites + coverage-gate wiring (sq-bif.8, sq-bif.9) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/851
- ci: durable auto-close of mapped beads on PR merge (replaces ephemeral watcher) (sq-84a8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/830
- feat(site): pretty/indented Turtle serialisation in REPL + results (#805, sq-gb4o) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/854
- test(sparq-mpc): transport codec + proof-deferral + oblivious-join determinism glue tests (sq-bif.15) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/846
- fix(ci): bead-autoclose fail-soft on ruleset-blocked push + document the bypass/periodic-PR path (sq-roe3) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/856
- fix(bench): fail-soft + fetch-rebase the perf-baseline auto-ratchet push (sq-llxc) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/858
- feat(bench): strictly-additive --json emit for remaining harnesses (sq-k5qq) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/855
- chore(i18n): RDF 1.2 terminology in runtime error messages (sq-ja92) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/857
- feat(site): SHACL Compact Syntax display (#796, sq-pvg2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/860
- test(sparq-engine): disambiguate Vec<Vec> assertion under 3+-feature unification (sq-xx3u) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/859
- test(sparq-server): feature-composition (audit-log + access-audit) + sequenced durable-failure (sq-bif.14) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/841
- chore(hygiene): periodic sweep — SKILL-currency/counts/stale-bead/from-pss [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/863
- feat(bench): strictly-additive --json emit for the 6 remaining bench/serve spikes (sq-5vm.1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/862
- fix(ci): make the inference-conformance suite fetch resilient (sq-y5dz) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/864
- ci(release): refresh deprecated macos-13 runner pin (sq-v286.12) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/866
- docs(research): scope JSON-LD pretty + compaction (sq-pxdu) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/867
- test(sparq-zk-compose): glue unit tests for build/driver/toml (circuit-id, subprocess error, witness TOML) (sq-bif.6) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/865
- docs(research): Solid WAC/ACP differential-oracle design (sq-t58w.2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/868
- feat(sparq-engine): engine-side pretty Turtle serialiser (sq-ixc3.2, long-term home for #805) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/861
- feat(bench): wire ZK/Solid/HDT/RSP/GenAI/GPU family metrics into the CI bench feed (sq-k0km) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/871
- feat(site): JSON-LD syntax highlighting in editor/results (sq-ixc3.1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/870
- ci: adopt repo-root npm workspaces + migrate npm-ci lanes (sq-jpki.1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/873
- feat(sparq-shacl): SHACL Compact Syntax parser (text→shapes) (#796, sq-v0b8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/869
- refactor(sparq-solid): extract WAC/ACP parity corpus to a reusable test source (sq-t58w.6) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/872
- refactor(js): type js/ wasm Store against the shared @sparq/client single source (sq-jpki.2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/876
- feat(sparq-engine): opt-in pretty (indented) JSON-LD writer + CLI out-formats (sq-ixc3.3) by @jeswr in https://github.com/jeswr/sparq/pull/875
- feat(sparq-geo): extend GML parser beyond Simple-Features — Envelope, arc Curve/Surface, 3-D coords (sq-47vu) by @jeswr in https://github.com/jeswr/sparq/pull/878
- docs(AGENTS): note crate-README ≤120-line cap in the new-crate maintenance row [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/881
- feat(sparq-introspect): ABSTAT-style type minimalization over rdfs:subClassOf (sq-lc3) by @jeswr in https://github.com/jeswr/sparq/pull/877
- feat(sparq-server): categorised unmatched-route 404 + document GSP-DELETE 404 IRI reflection (sq-pj6u, sq-ttv2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/879
- feat(site): GUI Phase 2 server health panel — Prometheus /metrics + VoID/Service Description (sq-he72) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/883
- docs(fedclient): graduate federation-client-design to architecture doc (sq-zwr4) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/885
- feat(site): basePath-aware coi-serviceworker self-registration fallback for Tauri webview (sq-9zjy) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/886
- fix(ci/sbom): harden derive-workspace-member-lock against link:true workspace deps (sq-f04e) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/887
- feat(sparq-vectors): incremental add/remove/update via in-RAM delta sidecar + compact (sq-pi44) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/880
- test(sparq-mpc): byte-stability KAT for the sha2 0.10->0.11 dep bump (sq-jkcj) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/888
- feat(sparq-wasm): wire engine pretty Turtle/TriG serialiser onto wasm Store (sq-fe1s) by @jeswr in https://github.com/jeswr/sparq/pull/882
- chore(ci-meta): readme-template gate in agent checklist + repo-root node_modules .gitignore (sq-t7oe, sq-1bc9) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/892
- feat(sparq-zk): commitment-method config registry over the zk:scheme slot (sq-zzxt) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/891
- feat(sparq-fedplan): EWMA refinements — per-source α, time-aware decay, staleness eviction (sq-3xkz) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/893
- test(sparq-solid): WAC/ACP differential oracle vs independent procedural reference (sq-t58w.7) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/899
- feat(sparq-wasm): JSON-LD serialise-out on Store.serialize (expanded/flattened/compacted + pretty) (sq-ixc3.5) by @jeswr in https://github.com/jeswr/sparq/pull/900
- feat(sparq-conformance): register the Solid WAC/ACP differential oracle in the conformance scoreboard (sq-t58w.8) by @jeswr in https://github.com/jeswr/sparq/pull/921
- test(js): cross-language Solid WAC/ACP differential oracle (sq-t58w.9) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/922
- docs: de-stale 4 'not-yet-wired' markers — capability shipped, doc lagged (sq-o718, sq-ouq7, sq-r3ex, sq-jyu7) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/924
- feat(sparq-wasm): caller-supplied prefix map on Store.serialize (sq-l5kr) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/923
- chore(ci): anti-drift gate — bench/dashboard assets must be wired into the Pages publisher (sq-53cq) by @jeswr in https://github.com/jeswr/sparq/pull/925
- feat(sparq-vectors): persist the delta sidecar to disk (.spqd, durable add/remove/update) (sq-7e50) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/926
- feat(sparq-zk): pluggable OFF-circuit issuer-signature scheme trait (sq-1hsl) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/920
- docs(agents): correct PyPI distribution name sparq → sparq-rdf [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/932
- feat(sparq-wasm): wire SHACL Compact Syntax parse into Store.parseShaclCompact (sq-quly) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/929
- docs(gui): re-lead embedded-native app as PRIMARY + workspace model + cred/Solid proposal (sq-uau8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/889
- feat(sparq-canon): opt-in NON-STANDARD rdf12-triple-term canon profile (sq-hslb) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/933
- feat(sparq-server): GSP PATCH — atomic SPARQL-Update body (always-on) + opt-in Solid N3-Patch (sq-hj4n) by @jeswr in https://github.com/jeswr/sparq/pull/934
- docs(skills): sync top-level SKILL.md zk + prov-lineage status with shipped reality [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/937
- docs(AGENTS): codify the N3.js upstream-contribution practice (sq-758 B5) by @jeswr in https://github.com/jeswr/sparq/pull/939
- feat(sparq-conformance): ratcheted W3C JSON-LD 1.1 toRdf + fromRdf conformance gate (sq-oy1f.2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/944
- docs(AGENTS): charter cross-poll — diff-scoped-review trap (#927) + graceful-degradation-on-usage-limit (#928) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/952
- feat(sparq-engine): full W3C JSON-LD 1.1 Compaction — hand-rolled, dependency-free (sq-ixc3.4) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/950
- fix(ci/js): root install so Solid differential test deps resolve — unblock red main js gate (sq-fvz8) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/953
- docs(agents): add the rustdoc --all-features gate to the rust-feature/merge-fixer pre-PR checklists (sq-4sbk) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/955
- ci(js): add path-filtered pull_request trigger so the js gate validates on PRs + fix stale 'Informational' header (sq-5lof) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/956
- fix(sparq-rsp-wasm): take JS Number (f64) at the boundary, not BigInt (u64) — fixes 'Cannot convert 60 to a BigInt' (sq-734a) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/954
- feat(cli,wasm): expose full W3C JSON-LD 1.1 Compaction (caller @context) on CLI dump + wasm Store (sq-oy1f.5) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/957
- fix(deps): remediate Dependabot npm devDep advisories via root overrides (sq-thk91) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/958
- ci(lint): gate workspace clippy --all-features so default-OFF feature-gated lints are caught centrally (sq-4sbk) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/959
- feat(sparq-canon): SHA-384 hash-profile parity for the rdf12 v2 canon path (generic over Digest) (sq-5i1d) by @jeswr in https://github.com/jeswr/sparq/pull/960
- ci(release-plz,bench): stop two recurring non-gating main reds (sq-owci) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/962
- test(sparq-policy): wire SolidLab ODRL Test Suite as a conformance ratchet (sq-tmsd6) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/961
- feat(sparq-serve): response-bytes result cache over PodEpochs (visibility-scope keyed, single-flight, off by default) (sq-jluc) by @jeswr in https://github.com/jeswr/sparq/pull/936
- chore(repo): untrack 2 generated STATUS.md + drop inference report from .gitignore (sq-l8imt) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/964
- feat(site): persistent cross-session workspace model + Tauri/web/memory persistence (sq-atb0) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/965
- fix(sparq-engine): four JSON-LD 1.1 Compaction correctness bugs (sq-oy1f.8/.9/.10/.11) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/963
- fix(ci/sbom): harden js-sbom lane against external dev-deps on a published member (sq-pl1p) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/968
- fix(site): GUI SHACL validator __wbg_ptr crash (lost wasm receiver) + Playwright e2e (sq-800o) by @jeswr in https://github.com/jeswr/sparq/pull/970
- feat(sparq-policy): ODRL constraint-matching conformance batch — use-hierarchy + collection membership + LogicalConstraint (sq-euhr3/sq-k7itg/sq-a0zef) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/971
- feat(sparq-serve/sparq-server): online consistent snapshot backup + restore (gated /admin/backup + /admin/restore, feature
backup) (sq-o5bi) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/941 - ci(release): build the Tauri desktop GUI bundle on workflow_dispatch + stable sparq-gui__ asset naming (sq-gl3cf) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/973
- feat(site): /download page — GUI desktop + CLI/server binaries (sq-gl3cf) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/974
- feat(site): /try playground JSON-LD output modes — wasm Store.serializeCompact full 1.1 Compaction (sq-oy1f.7) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/976
- docs(readme-gate): correct stale ADVISORY framing + add pre-PR readme-template guidance to agent defs (sq-bhgve) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/979
- test(sparq-canon): nested-bnode distinguishing-power regression vectors for rdf12 triple-term canon (sq-mu1cd) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/967
- feat(sparq-fedplan-mpc): MPC seam Phase 2 — source-selection adapter over sparq-fedplan::select_sources (sq-fix4) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/975
- feat(sparq-server): JSON-LD content negotiation — emit + accept application/ld+json on SPARQL/GSP (sq-oy1f.1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/977
- test(sparq-conformance): wire W3C JSON-LD 1.1 compact suite into the ratchet (sq-3uos5) by @jeswr in https://github.com/jeswr/sparq/pull/969
- docs(compliance): reconcile stale '26+ crates' forbid(unsafe_code) count to verified 31/36 [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/982
- fix(sparq-engine): three JSON-LD 1.1 Compaction strict-third-party faithfulness gaps (sq-oy1f.12/.13/.14) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/978
- docs(research): reconcile stale JSON-LD Framing 'out of scope' note (framing landed sq-oy1f.17/#984) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/986
- test(sparq-reason): correctness coverage for dark N3/OWL/parser/API branches (sq-qcnn) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/980
- docs(design): frontend-design skill pack + website redesign (cut the overwhelm) + distinct operational GUI [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/988
- perf(site): lazy-load the wasm engine off the critical path — idle prewarm + code-split REPL (sq-4296) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/987
- feat(sparq-fedplan-mpc): MPC seam Phase 3 — disclosed/hidden routing pass (route_operators) (sq-i1wh2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/985
- feat(sparq-engine): hand-rolled W3C JSON-LD 1.1 Framing (frame matching + @embed/@explicit/@default/@omitDefault/@requireAll + list/named-graph) (sq-oy1f.17) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/984
- feat(sparq-fedplan-mpc): MPC seam Phase 4 — leakage-envelope assembly + dual ratification (sq-pwr.2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/989
- test(sparq-reason): kill OWL inconsistencies() pair-enum mutants + raise n3/mod.rs past 85% (sq-wtjol/sq-fodw5) by @jeswr in https://github.com/jeswr/sparq/pull/991
- test(sparq-shacl): correctness coverage — SHACL-AF func ops + SCS error paths + SHACL-SPARQL edges (sq-qcnn) by @jeswr in https://github.com/jeswr/sparq/pull/993
- feat(sparq-fedplan-mpc): MPC seam Phase 6 — FedUP-style result-aware source-combination pruning (sq-pwr.3) by @jeswr in https://github.com/jeswr/sparq/pull/994
- test(sparq-conformance): wire W3C JSON-LD 1.1 frame ratchet + raise COMPACT_FLOOR 163→186 (sq-oy1f.19/sq-oy1f.16) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/995
- test(sparq-shacl): cover sparql.rs push_values_down deep-algebra arms + ask_violates/select_validate error paths (sq-qcnn.1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/998
- feat(sparq-vectors): P0 structure-aware vectorisation — closure-before-vectorise + type-constrained negative sampling (sq-0wo9e.1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/999
- docs(research): trust-graph authorisation design for Solid/LWS (gh-940) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/951
- feat(sparq-trust): trust-graph authorisation PoC — opt-in admission gate + age>18 end-to-end (sq-pfae) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/966
- feat(site): regroup 16 surfaces into 5 capability themes + Cmd-K command palette (sq-vw3ax.1, sq-vw3ax.2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/990
- docs(research): structure-aware vectorisation + flexible grounding design (sq-0wo9e) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/996
- docs(research): JSON-LD 1.1 support gap-analysis + prioritised roadmap (sq-oy1f) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/938
- docs(research): design — SPARQL graph-analytics surface for sparq-algos + af-vs-own ontology (sq-b2uq) by @jeswr in https://github.com/jeswr/sparq/pull/930
- docs(research): spike OWL 2 EL/QL reasoning feasibility for sparq-reason (sq-wmeg) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/931
- docs(agents): codify 3 standing orchestration behaviours (issue-triage→beads · bead-frontier dispatch · mandatory worktree isolation) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/1011
- feat(site): collapse double-nav + /capabilities lazy gallery + Home rewrite (sq-vw3ax.3/.5/.7) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/1004
- feat(sparq-vectors): P1 typed-literal encoders — datatype router + order-preserving numeric/boolean/date + .spqv schema header (sq-0wo9e.2) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/1008
- feat(cli,server): JSON-LD parse+serialise+conneg DEFAULT-ON in native binaries (sq-oy1f.4) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/1007
- feat(sparq-trust): vendor sparql-zkp-ontologies (ISWC 2025) + provenance record (sq-0dksu) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/1005
- feat(gui): distinct operational GUI frontend + app shell — stop wrapping the marketing site (sq-ixc3.8, sq-ixc3.9) by @jeswr in https://github.com/jeswr/sparq/pull/1003
- fix(ci/release): install gui/app workspace deps before tauri build (sq-h1fcs) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/1016
- chore(orchestration): durable autonomous-scheduler workflow + AGENTS.md link (sq-sgu1) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/1012
- docs(research): ZK inference + credentials design — prove-query-under-entailment, N3, delegation-binding, unlinkable presentation (sq-rsd3v) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/1009
- docs(research): security-properties ontology for ZK proofs — ODRL-driven proof admissibility (sq-0dksu) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/972
- docs(zk): per-method security-properties write-up for the configurable commitment surface + register CR-G9 (sq-pkrl) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/919
- feat(gui): command palette (Cmd-K) keyboard-first spine — tools, named graphs, recent queries, run/EXPLAIN (sq-ixc3.10) [OPUS-4.8] by @jeswr in https://github.com/jeswr/sparq/pull/1018
- docs(agents): standing rule — proceed without greenl