Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
110 commits
Select commit Hold shift + click to select a range
db87875
chore: remove relay-03 and stale DO relay from V9 testnet relay list
Niks988 Apr 6, 2026
ac10e36
Merge pull request #84 from OriginTrail/infra/remove-v10-relay-from-v9
branarakic Apr 6, 2026
dd6170d
update
Bojan131 Apr 21, 2026
880fc70
Merge remote-tracking branch 'origin/v10-rc' into fix/caught_bugs
Bojan131 Apr 21, 2026
2710f6e
fix(core,game): correct ACK digest buffer size and context graph API …
Bojan131 Apr 21, 2026
8fca9b7
fix: production bugs E-7, E-20, Q-1, P-13, K-4/K-5
Bojan131 Apr 21, 2026
36d6cc0
fix: production bugs CH-10, ST-7, A-7, A-13
Bojan131 Apr 21, 2026
f50bdf1
test: align agent test fixtures with A-7/A-12 spec fixes
Bojan131 Apr 21, 2026
3784905
fix(game,storage): unblock E2E game launch + worker adapter resolution
Bojan131 Apr 21, 2026
68e67dc
Merge remote-tracking branch 'origin/v10-rc' into fix/caught_bugs
Bojan131 Apr 21, 2026
b4194c6
fix(agent,publisher,chain,evm,elizaos): close A-15, A-5, K-11, sol-ow…
Bojan131 Apr 21, 2026
0e8cea0
fix(evm,E-9): dual-emit KnowledgeBatchCreated on V10 publish
Bojan131 Apr 21, 2026
2b1aee3
fix(storage,evm,elizaos): seal private literals + restore Hub Unautho…
Bojan131 Apr 21, 2026
7c76f07
fix(evm,storage,openclaw): close E-11/E-17/K-9, deterministic AES-GCM…
Bojan131 Apr 21, 2026
fc98006
fix(cli,evm,ci): close CLI-1/7/9/10/11/16, add Blazegraph svc, harden…
Bojan131 Apr 22, 2026
e3f1293
fix(publisher,storage,mcp): close P-1/P-2, K-1/K-2, ST-2 subtraction,…
Bojan131 Apr 22, 2026
fe3334f
fix(publisher): make PreBroadcastJournalEntry.publicByteSize a string…
Bojan131 Apr 22, 2026
d376ccc
fix(storage,blazegraph): rewrite no-graph deleteByPattern to enumerat…
Bojan131 Apr 22, 2026
fc8237d
fix(storage,blazegraph): materialize matching tuples then DELETE DATA…
Bojan131 Apr 22, 2026
77415d0
fix(game,coord): broadcast leader's CCL install state in expedition:l…
Bojan131 Apr 22, 2026
485bc5b
ci(blazegraph): create quads-mode namespace for storage conformance s…
Bojan131 Apr 22, 2026
af88ed5
ci(blazegraph): fix quads-mode namespace creation (NoAxioms required)
Bojan131 Apr 22, 2026
c3bbe23
fix(game,coord): emit substring 'published to context graph' in succe…
Bojan131 Apr 22, 2026
6d21a7e
fix(game,coord): force-resolve no-op when no votes/proposal pending (…
Bojan131 Apr 22, 2026
a9ac900
fix(game): tombstone-aware join + auth on locations endpoint (G-4)
Bojan131 Apr 22, 2026
f734939
fix(game,storage): force-resolve idempotency window + reliable Blazeg…
Bojan131 Apr 22, 2026
76b65e3
fix(storage,blazegraph): split deleteByPattern paths by graph filter
Bojan131 Apr 22, 2026
0d7e437
test(chain): add 81 behavioral tests for MockChainAdapter, lift lines…
Bojan131 Apr 22, 2026
1539d32
test(storage): lift coverage 79→86% lines (graph-manager 61→95%, priv…
Bojan131 Apr 22, 2026
02764b6
test(agent): lift coverage 74.6→76.1% lines (op-wallets + workspace-c…
Bojan131 Apr 22, 2026
65d25b9
test(adapter-elizaos, cli): lift coverage + fix rotateToken invalidat…
Bojan131 Apr 22, 2026
ce5983a
fix(bot-review): resolve every github-actions bot review finding on P…
Bojan131 Apr 22, 2026
f02b9f3
fix(origin-trail-game): expose optional success flag on CoordinatorAg…
Bojan131 Apr 22, 2026
01b7d4d
test(origin-trail-game): align mock registerContextGraphOnChain with …
Bojan131 Apr 22, 2026
7405626
fix(adapter-elizaos,agent,chain): 2nd-pass PR #229 bot review follow-ups
Bojan131 Apr 22, 2026
6535f77
fix(pr229-bot): wire post-body signed-request verify, fix endorse sig…
Bojan131 Apr 22, 2026
b434f69
fix(pr229-bot): verify signed GET/HEAD, emit full envelope on headles…
Bojan131 Apr 22, 2026
67ea2b3
fix(pr229-bot): bind signed HMAC to pathname+search, strict hex check…
Bojan131 Apr 22, 2026
efc6b5d
fix: address PR #229 round-5 bot review findings
Bojan131 Apr 22, 2026
3405815
Merge branch 'main' into fix/caught_bugs
Bojan131 Apr 22, 2026
be4c6b5
Merge remote-tracking branch 'origin/v10-rc' into fix/caught_bugs
Bojan131 Apr 22, 2026
e70b6f6
fix: CI regressions after merging v10-rc into fix/caught_bugs
Bojan131 Apr 22, 2026
6f0780e
test(e2e-finalization): fix race — wait for finalization, not just sync
Bojan131 Apr 22, 2026
de341d8
fix(pr229-bot): address round-6 bot review findings
Bojan131 Apr 22, 2026
38f42dd
fix(publisher): account for self-sign in per-CG quorum check
Bojan131 Apr 22, 2026
23ed224
fix: address PR #229 bot review round 7 (7 findings)
Bojan131 Apr 22, 2026
4bda9f4
fix: address PR #229 bot review round 8 (4 findings)
Bojan131 Apr 22, 2026
7c666b1
fix(publisher): use valid OperationName in WAL recovery log context
Bojan131 Apr 22, 2026
0992c62
fix: address PR #229 bot review round 9 (5 findings)
Bojan131 Apr 22, 2026
f428ab8
fix: address PR #229 bot review round 10 (5 findings)
Bojan131 Apr 22, 2026
429f49b
fix: address PR #229 bot review round 11 (4 findings)
Bojan131 Apr 22, 2026
5dd05c5
fix: address PR #229 bot review round 12 (2 findings)
Bojan131 Apr 22, 2026
bdaa2f6
fix(chain-event-poller): downgrade hardhat head-race to WARN
Bojan131 Apr 22, 2026
117aed9
fix(adapter-elizaos): PR #229 bot review round 13 (r13-1/r13-2/r13-3)
Bojan131 Apr 22, 2026
e67bb2d
fix(agent,adapter-elizaos): PR #229 bot review round 14 (r14-1/r14-2)
Bojan131 Apr 22, 2026
fde0e5b
fix(storage,adapter-elizaos): PR #229 bot review round 15 (r15-1/r15-2)
Bojan131 Apr 22, 2026
1eef2bc
fix(r16): address PR #229 bot findings round 16
Bojan131 Apr 22, 2026
0992fde
fix(pr-229/r17): 4 bot-review issues + tests (quads shape, per-runtim…
Bojan131 Apr 22, 2026
3865d6a
fix(pr-229/r18): 2 bot-review issues (DKG_NODE_URL fail-fast, DKGServ…
Bojan131 Apr 22, 2026
3c0259b
fix(pr-229/r19): 4 bot-review issues (HMAC framing, mandatory userTur…
Bojan131 Apr 22, 2026
3d90605
fix(pr-229/r20): adapter-elizaos/actions.ts — require explicit userTu…
Bojan131 Apr 22, 2026
1902abe
ci: force re-trigger after R20 push (no actual changes)
Bojan131 Apr 22, 2026
e80d07c
ci: nudge again — pull_request webhook seems stuck
Bojan131 Apr 22, 2026
9198177
Merge remote-tracking branch 'origin/v10-rc' into fix/caught_bugs
Bojan131 Apr 22, 2026
fa7dd65
fix(chain-event-poller): classify upstream RPC blips (5xx, ECONNRESET…
Bojan131 Apr 22, 2026
6d61d12
fix(pr-229/r21): 6 bot-review issues + tests (chat persistence, AGENT…
Bojan131 Apr 23, 2026
f10f382
fix(storage/blazegraph): materialise single-graph deleteByPattern via…
Bojan131 Apr 23, 2026
c30c981
fix(pr-229/r22): 6 bot-review issues from v10-rc merge (WM auth plumb…
Bojan131 Apr 23, 2026
be266d7
fix(pr-229/r22-6): surface signed-gossip signing failures as ERROR (n…
Bojan131 Apr 23, 2026
c018730
fix(pr-229/r23): 4 bot-review issues (HMAC fail-closed guard, VALUES …
Bojan131 Apr 23, 2026
6346878
fix(pr-229/r23-4 follow-up): extend envelope↔publisher attribution to…
Bojan131 Apr 23, 2026
bd2107e
fix(pr-229/r24): 4 bot-review issues (destination-scoped chat caches,…
Bojan131 Apr 23, 2026
778a831
fix(bots): address PR #229 bot review round 25
Bojan131 Apr 23, 2026
20a9d45
update
Bojan131 Apr 23, 2026
7e3cc59
Merge branch 'v10-rc' into fix/caught_bugs
Bojan131 Apr 23, 2026
76b382e
fix(pr-229/r27): 5 bot-review issues + AA-2 CI flake fix
Bojan131 Apr 23, 2026
f2eb9f4
Merge remote-tracking branch 'origin/main' into fix/caught_bugs
Bojan131 Apr 27, 2026
8ee9281
fix(pr-229): resolve bot-flagged bugs + green CI
Bojan131 Apr 27, 2026
39bbbe6
fix(pr-229): close 5 critical bot-flagged bugs + green CI
Bojan131 Apr 27, 2026
00dd89d
fix(pr-229): close all CodeQL alerts + green Tornado agent CI
Bojan131 Apr 27, 2026
9f4d001
fix(pr-229): close remaining CodeQL alerts (54 + 47)
Bojan131 Apr 27, 2026
066073d
fix(pr-229/r28): close remaining bot-flagged bugs from latest review
Bojan131 Apr 27, 2026
8c092f4
fix(pr-229/r29): close 3 newly-flagged bot bugs
Bojan131 Apr 27, 2026
b9bfef7
fix(pr-229/r30): close 4 newly-flagged bot bugs
Bojan131 Apr 27, 2026
e24bcd0
fix(pr-229/r30-2): close 3 newly-flagged bot bugs
Bojan131 Apr 27, 2026
05bb5b6
fix(pr-229/r30-3): consolidate SPARQL form-classifier + empty-result …
Bojan131 Apr 27, 2026
841a671
fix(pr-229/r30-4): three correctness bugs caught by latest bot pass
Bojan131 Apr 27, 2026
241c308
fix(pr-229/r30-5): two correctness bugs caught by latest bot pass
Bojan131 Apr 27, 2026
ee577f3
fix(pr-229/r30-6): close 3 newly-flagged bot bugs
Bojan131 Apr 27, 2026
8ccd04e
fix(pr-229): bug bot r30-7 round — slowloris timeout, triple-quoted S…
Bojan131 Apr 27, 2026
e128d46
fix(pr-229/r30-8): close 2 newly-flagged bot bugs
Bojan131 Apr 27, 2026
5b0f26a
ci(codex-review): bump timeout 15 → 30 minutes
Bojan131 Apr 28, 2026
a27788b
fix(pr-229/r31-1): close 3 newly-flagged bot bugs (idempotent stub UR…
Bojan131 Apr 28, 2026
50a4561
fix(pr-229/r31-2): close 4 newly-flagged bot bugs (deprecated catch-a…
Bojan131 Apr 28, 2026
7c6e9ba
fix(pr-229/r31-3): close 3 newly-flagged bot bugs (distinct headless …
Bojan131 Apr 28, 2026
012c3a4
fix(pr-229/r31-4): close 4 newly-flagged bot bugs (RPC error propagat…
Bojan131 Apr 28, 2026
558086f
fix(adapter-elizaos,node-ui): bot review r31-5 — headless assistant d…
Bojan131 Apr 28, 2026
1e2407b
fix(pr-229/r31-6): close 3 newly-flagged bot bugs (workspace node sch…
Bojan131 Apr 28, 2026
0172ac8
fix(pr-229/r31-7): close 3 newly-flagged bot bugs (auth pre-handler v…
Bojan131 Apr 28, 2026
005f02a
fix(pr-229/r31-8): close 3 newly-flagged bot bugs (oxigraph per-posit…
Bojan131 Apr 28, 2026
7846206
fix(pr-229/r31-9): close 2 newly-flagged bot bugs (assistant-supersed…
Bojan131 Apr 28, 2026
bafe058
fix(pr-229/r31-10): close 5 newly-flagged bot bugs (headless-survives…
Bojan131 Apr 28, 2026
26b5d99
fix(pr-229/r31-11): close 3 newly-flagged bot bugs (delta supersede a…
Bojan131 Apr 28, 2026
2f16dac
fix(pr-229/r31-12): close 2 newly-flagged bot bugs (delta split-looku…
Bojan131 Apr 28, 2026
fcf3d6a
fix(pr-229/r31-12): close newly-flagged J8hn — V10KnowledgeBatchEmitt…
Bojan131 Apr 28, 2026
f0be918
fix(pr-229/r31-13): close 2 newly-flagged bot bugs (assistantText `??…
Bojan131 Apr 28, 2026
3fffd56
fix(pr-229/r31-14): close 2 newly-flagged bot bugs (per-graph lock ca…
Bojan131 Apr 28, 2026
ec44ec0
chore(pr-229): scrub internal review-process narration from shipped code
Bojan131 Apr 29, 2026
2cb7744
Merge remote-tracking branch 'origin/main' into fix/caught_bugs
Bojan131 Apr 29, 2026
7e41cda
fix(autoupdater): always run contract clean+rebuild when sources change
Bojan131 Apr 29, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 0 additions & 30 deletions .cursor/hooks.json

This file was deleted.

10 changes: 0 additions & 10 deletions .cursor/mcp.json

This file was deleted.

52 changes: 0 additions & 52 deletions .cursor/rules/dkg-annotate.mdc

This file was deleted.

100 changes: 100 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,22 @@ jobs:
needs: build
runs-on: ubuntu-latest
timeout-minutes: 10
# ST-1: the BlazegraphStore parity gate in
# adapter-parity-extra.test.ts intentionally fails red when
# `BLAZEGRAPH_URL` is missing so a green pass cannot lie about
# parity coverage. We boot a real `lyrasis/blazegraph` service
# container (NanoSparqlServer on :9999) so the parity test
# exercises both adapters against actual engines instead of the
# canned node:http stub that ST-1 documents as misleading.
services:
blazegraph:
image: lyrasis/blazegraph:2.1.5
ports:
# The image declares EXPOSE 9999 but actually starts the
# NanoSparqlServer on Jetty's :8080 (verified via
# `netstat` inside the container). Map host:9999 -> container:8080
# so the rest of this job can keep referring to localhost:9999.
- 9999:8080
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
Expand All @@ -179,9 +195,93 @@ jobs:
- name: Restore build outputs
run: tar -xzf /tmp/build-outputs.tgz

- name: Wait for Blazegraph SPARQL endpoint
# NanoSparqlServer needs ~5-15s on a cold start. Poll the
# default `kb` namespace's SPARQL endpoint with `ASK {}` for
# up to 60s. We use `continue-on-error: true` so a failed
# boot does not turn the whole shard red — instead the
# storage suite below will run, hit the original ST-1 sentinel,
# and surface the missing-engine error in the failure log
# exactly like before. That preserves the "no false positives"
# contract: silently passing without a real engine is impossible.
run: |
set -e
for i in $(seq 1 30); do
if curl -sf "http://localhost:9999/bigdata/namespace/kb/sparql?query=ASK%20%7B%7D" >/dev/null 2>&1; then
echo "blazegraph ready after ${i}s"
exit 0
fi
sleep 2
done
echo "::warning::blazegraph never became ready within 60s; ST-1 parity test will report"
continue-on-error: true

- name: Create Blazegraph quads-mode namespaces
# The `kb` namespace shipped by lyrasis/blazegraph defaults to
# triples mode (quads=false), so any GRAPH <…> { … } clause is
# silently dropped on insert and the conformance suite gets
# surprising results (deleteByPattern over-deletes because all
# triples land in the default graph regardless of intent).
#
# We provision TWO quads-mode namespaces, not one. Vitest runs
# files in parallel by default, and `storage.test.ts` issues
# `DROP ALL` before every Blazegraph conformance test in its
# suite — pointing `adapter-parity-extra.test.ts` at the SAME
# namespace meant the conformance suite's `DROP ALL` could
# fire mid-parity and wipe its inserted fixture, making the
# parity lane flaky.
# Isolating per file (not per worker) is sufficient: vitest
# serialises tests WITHIN a file, so the conformance suite's
# `DROP ALL` between its own tests is fine, and the parity
# suite holds exclusive ownership of its own namespace.
#
# `dkgq` → conformance / general storage suite
# (storage.test.ts and other DROP-ALL tests)
# `dkgq-parity` → adapter-parity-extra.test.ts (real Oxigraph
# ↔ Blazegraph parity), keyed off
# `BLAZEGRAPH_PARITY_URL` so the parity test
# runs against an isolated namespace and
# cannot be wiped mid-run.
#
# continue-on-error so a failure here surfaces as the storage
# suite's missing-engine error rather than a separate red lane.
run: |
set -e
create_namespace() {
local ns="$1"
local props="/tmp/${ns}.props"
# Quads mode requires disabling inference (NoAxioms) and truth
# maintenance — Blazegraph rejects the namespace creation
# otherwise with: "com.bigdata.rdf.store.AbstractTripleStore.quads
# does not support inference".
{
echo 'com.bigdata.rdf.store.AbstractTripleStore.quads=true'
echo 'com.bigdata.rdf.store.AbstractTripleStore.statementIdentifiers=false'
echo 'com.bigdata.rdf.store.AbstractTripleStore.axiomsClass=com.bigdata.rdf.axioms.NoAxioms'
echo 'com.bigdata.rdf.sail.truthMaintenance=false'
echo "com.bigdata.rdf.sail.namespace=${ns}"
} > "$props"
echo "--- ${props} ---" && cat "$props" && echo '---'
curl -fsS -X POST -H 'Content-Type: text/plain' \
--data-binary @"$props" \
http://localhost:9999/bigdata/namespace
# Verify the namespace responds to SPARQL.
curl -fsS "http://localhost:9999/bigdata/namespace/${ns}/sparql?query=ASK%20%7B%7D" >/dev/null
echo "blazegraph ${ns} (quads) namespace ready"
}
create_namespace "dkgq"
create_namespace "dkgq-parity"
continue-on-error: true

- name: "Core (442 tests)"
run: pnpm --filter @origintrail-official/dkg-core test
- name: "Storage (78 tests)"
env:
BLAZEGRAPH_URL: http://localhost:9999/bigdata/namespace/dkgq/sparql
Comment thread
Bojan131 marked this conversation as resolved.
# r31-10 (ci.yml:256): isolated namespace for the parity
# suite so parallel vitest workers can't have one file's
# `DROP ALL` wipe another's fixture mid-test.
BLAZEGRAPH_PARITY_URL: http://localhost:9999/bigdata/namespace/dkgq-parity/sparql
run: pnpm --filter @origintrail-official/dkg-storage test
- name: "Chain unit (46 tests)"
run: pnpm --filter @origintrail-official/dkg-chain test
Expand Down
7 changes: 6 additions & 1 deletion .github/workflows/codex-review.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,12 @@ jobs:
review:
name: Codex Review
runs-on: ubuntu-latest
timeout-minutes: 15
# 30 min ceiling: gpt-5.4 / effort: high can take ~25 min on a
# large (>30k-line) diff, so 15 min was hitting the cap mid-stream.
# The concurrency group above already cancel-in-progress, so a
# new push will kill any still-running review — there's no
# downside to a generous ceiling.
timeout-minutes: 30
# Skip fork PRs - they cannot access repository secrets
if: github.event.pull_request.head.repo.full_name == github.repository

Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/npm-continuous-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,12 +57,12 @@ jobs:
# workflow runs the full TORNADO / BURA / KOSAVA matrix in parallel on
# the same commit and is the authoritative test gate (enforced via
# branch protection on merges to v10-rc). Re-running `pnpm turbo test`
# in this publish workflow was redundant with `ci.yml` AND incompatible
# with the `accept-red-ci` policy on v10-rc: a deliberately-red
# PROD-BUG sentinel test (e.g. network-sim K-4/K-5 — no seeded RNG, no
# libp2p-parity harness) would fail this step and block every dev
# pre-release, even though CI was already reporting the same red state
# as documented bug evidence. See .test-audit/BUGS_FOUND.md.
# in this publish workflow was redundant with `ci.yml` AND
# incompatible with the `accept-red-ci` policy on v10-rc: a
# deliberately-red PROD-BUG sentinel test (e.g. network-sim
# K-4/K-5 — no seeded RNG, no libp2p-parity harness) would fail
# this step and block every dev pre-release, even though CI was
# already reporting the same red state as documented bug evidence.

- name: Compute dev version suffix
id: version
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -100,12 +100,12 @@ jobs:

# NOTE: tests are intentionally NOT re-run here. The main `ci.yml`
# workflow is the authoritative test gate on the source commit.
# Re-running `pnpm turbo test` in release-preflight was redundant with
# `ci.yml` AND incompatible with the `accept-red-ci` policy on v10-rc:
# deliberately-red PROD-BUG sentinel tests (e.g. network-sim K-4/K-5)
# would block every tagged release even though CI was already reporting
# the same red state as documented bug evidence. See
# .test-audit/BUGS_FOUND.md for the sentinel inventory.
# Re-running `pnpm turbo test` in release-preflight was redundant
# with `ci.yml` AND incompatible with the `accept-red-ci` policy on
# v10-rc: deliberately-red PROD-BUG sentinel tests (e.g.
# network-sim K-4/K-5) would block every tagged release even though
# CI was already reporting the same red state as documented bug
# evidence.

markitdown-assets:
needs:
Expand Down
9 changes: 9 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,15 @@ playwright-report/
.cache/
data/

# Local node runtime fixtures (private keys, auth tokens, daemon logs,
# RDF stores, sqlite DBs). These are produced by integration tests that
# spin up real daemons under a per-test home dir. They MUST never be
# committed: the wallets.json files contain reusable private keys that
# anyone who clones the repo could re-use for signed publishes / chain
# txs. PR #229 review r3146360279 caught this regression once already.
.test-nodes/
**/.test-nodes/

# Hardhat build output
packages/evm-module/artifacts/
packages/evm-module/cache/
Expand Down
5 changes: 3 additions & 2 deletions packages/adapter-elizaos/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,9 @@
},
"scripts": {
"build": "tsc",
"test": "vitest run --passWithNoTests",
"test:coverage": "vitest run --coverage --passWithNoTests",
"typecheck:tests": "tsc --noEmit -p tsconfig.test.json",
"test": "tsc --noEmit -p tsconfig.test.json && vitest run --passWithNoTests",
"test:coverage": "tsc --noEmit -p tsconfig.test.json && vitest run --coverage --passWithNoTests",
"clean": "rm -rf dist tsconfig.tsbuildinfo"
},
"dependencies": {
Expand Down
Loading
Loading