Skip to main content

Evidence

Verified against: docs/EVIDENCE.md as of 2026-11-11 (summary table, incl. the re-runs after D-027 recorded in commits b8784c1 and 5083d30, the G14 402 → 200 and G1 2.2.1 gas-row rows recorded in 2e16f9b, and the G14-on-HEAD and G1 re-check rows recorded in a677689) · docs/EVIDENCE.md §G9 run 3 (2026-11-11T15:30Z–15:38Z, tested 3107a1a, recorded in 837cd12, merged 1a46931), re-run (2026-11-11T08:57Z–09:00Z, tested 0af5cdd, recorded in 89f83ee) and first run (2026-11-11T08:43Z–08:50Z, c5f6349) · docs/EVIDENCE.md §G3b re-run 2 after WO-49 (2026-11-11T17:26Z–17:44Z, tested fd6592d, recorded in 5770fa7) and re-run 1 (tested 3107a1a, recorded in b1728aa) · D-026 (2026-11-10), D-027 (2026-11-11)

Status on 2026-11-11: G0–G4, G6 PASS; G8 PASS (fixture); G5 FALLBACK (disclosed); v7: G1 (v7) PASS, G10 PASS with open items, G12 PASS on a local fork of Base Sepolia (D-026). After the security fix wave (D-027) the verifier re-ran G11, G2b, G7, G14 (chain claims) and G3b on contract 2.2.1-v7, and G13 on the local fork: all PASS. A later run (recorded in 2e16f9b) ran the G14 HTTP 402 → 200 step: PASS; the same run found one change method without a gas row on 2.2.1 (FAIL). The re-check (recorded in a677689) passed with 67 of 67, and G14 passed again on HEAD with the demo agent that checks the MCP call. G9 PASS: run 3 after review 2 (2026-11-11, tested 3107a1a, recorded in 837cd12) and the earlier re-run (tested 0af5cdd, recorded in 89f83ee) both passed; the first run (commit c5f6349) failed on a docs wording issue on this page, since removed. G3b: re-run 2 after the review 2 web fixes and WO-49 (tested fd6592d, recorded in 5770fa7) PASS: e2e 404 passed / 0 failed / 88 skipped (desktop 229/0/17, phone 175/0/71), e2e/screens.spec.ts 76/76, Lighthouse 28/28 = 100, security headers present, pnpm verify green; re-run 1 (3107a1a) had failed on screenshot tests only, fixed in WO-49. This page mirrors docs/EVIDENCE.md, which only the verifier writes. If the two ever differ, docs/EVIDENCE.md wins.

This page backs the claim that the repository runs and does what the README says. Each gate is run by a separate verifier from a fresh clone with no secrets.

GateWhat it provesStatusEvidence
G0toolchain installed; exact CLI grammar in FACTSPASS 2026-11-09T23:09Z (b3a9090)docs/EVIDENCE.md §G0
G1contract unit and sandbox tests; model.csv matchPASS 2026-11-09T20:43Z (b721641)docs/EVIDENCE.md §G1
G1 (v7)v7 contract additions: unit, sandbox, model.csvPASS 2026-11-10T14:05Z (09c4316)docs/EVIDENCE.md §G1
G1 (2.2.1 gas rows)every change method of the deployed 2.2.1-v7 code has a sandbox gas row under 100 TgasPASS 2026-11-11T15:25Z (re-check, tested 48b5c5a, recorded in a677689): 67 of 67 change methods have a gas row, max 78.60 Tgas per tx, 608 unit + 51 sandbox, tested wasm = deployed code hash 3mv4LRm6…. First run FAIL 2026-11-11T14:16Z (tested 45ed1f3, recorded in 2e16f9b): the owner setter remove_extra_remote_chain had no row, since covered by a sandbox test (no contract change)docs/EVIDENCE.md §G1
G2testnet deploy; views answer; explorer linksPASS 2026-11-09T20:55Z (5f27f44)docs/EVIDENCE.md §G2
G3web E2E; accessibility ≥ 90; both themes; phonePASS 2026-11-09T21:15Z (176914f)docs/EVIDENCE.md §G3
G4OutLayer execution attested; cost recorded; fallback testedPASS 2026-11-09T22:10Z (d87eef6)docs/EVIDENCE.md §G4
G5oracle live price; staleness and confidence rejection testedFALLBACK (disclosed): owner oracle; live Pyth waits on H13docs/EVIDENCE.md §G5
G61Click dry quote verifiedPASS 2026-11-09T22:58Z (fea52b7)docs/EVIDENCE.md §G6
G7Solana devnet tx with Ed25519 verify and settle; signer response on NEARPASS (re-run after D-027) 2026-11-11T08:25Z (tested 3ab3026, recorded in b8784c1): positions 8–10 on 2.2.1-v7 + vault v2, three finalized devnet txs with the Ed25519 verify at ix0, the depositor's withdraw after each. Earlier PASS (v7) 2026-11-10T16:52Z (91db9ea) on the v1 layout: release 5fTihnbJ… and settle 3cdcQru2…; supersedes PARTIAL 2026-11-09T23:57Z (97382fd, NEAR side only)docs/EVIDENCE.md §G7
G8copilot verifier green (fixture at minimum)PASS (fixture) 2026-11-09T23:56Z (df4706f); no live NEAR AI answer (key H7)docs/EVIDENCE.md §G8
G10v7 facts and toolchainPASS with open items (F-351, F-352, F-353) 2026-11-10T13:44Z (09c4316)docs/EVIDENCE.md §G10
G11v7 contract tests, gas rows, model.csv --v7PASS (re-run after D-027) 2026-11-11T08:20Z (tested 3ab3026, recorded in 5083d30): 608 unit + 50 sandbox, mock-ft 23, model.csv 132 rows, max receipt 67.69 Tgas. The check that every change method has a gas row ran later (row G1 (2.2.1 gas rows) above). Earlier PASS with open item F-352 2026-11-10T16:12Z (53f1e63)docs/EVIDENCE.md §G11
G2bnectar-core-v2 testnet deploy; views answer; pnpm verify greenPASS (re-run after D-027) 2026-11-11T08:25Z (tested 3ab3026, recorded in b8784c1): contract_version 2.2.1-v7; the 2.2.1-v7 wasm rebuilt from a fresh clone with cargo near build non-reproducible-wasm matched the deployed code hash (3mv4LRm6…) on the verifier's machine; it is not the Docker reproducible build. pnpm verify was not part of this re-run. Earlier PASS 2026-11-10T16:52Z (91db9ea) on 2.0.0-v7docs/EVIDENCE.md §G2b
G14x402 paid call on testnetPASS on HEAD with the demo agent that checks the MCP call before signing, 2026-11-11T15:02Z (tested 48b5c5a, recorded in a677689): borrow_verified logged before signing, borrow tx E2suM2LC… (position #15), relay tx 4vW2tPF5…, paid GET → 200 with 123 CSV rows. PASS, HTTP 402 → 200 run by the verifier 2026-11-11T13:55Z (tested 45ed1f3, recorded in 2e16f9b): unpaid GET → 402 (near:testnet, usdc-mock, 10000, pay to nectar.testnet), borrow tx 7UFpexpd… (position #14), relay tx EskZKj9s…, paid GET → 200 with 110 CSV rows. PASS for the chain claims (re-run after D-027) 2026-11-11T08:25Z (tested 3ab3026, recorded in b8784c1): borrow tx HvFX6YRa… (position #13), relay tx BemztvL9…. Earlier PASS 2026-11-10T16:52Z: relay tx 5VL1P4kg…, agent borrow tx GcHF75nW…docs/EVIDENCE.md §G14
G3bweb E2E against nectar-core-v2PASS (re-run 2, after the review 2 web fixes and WO-49) 2026-11-11T17:44Z (tested fd6592d, recorded in 5770fa7): e2e 404 passed / 0 failed / 88 skipped (desktop 229/0/17, phone 175/0/71), e2e/screens.spec.ts 76/76, Lighthouse 28/28 = 100, security headers present, pnpm verify green. Re-run 1 (3107a1a, recorded in b1728aa) had failed on screenshot tests only, fixed in WO-49. Before that: PASS (re-run after D-027 and the design port) 2026-11-11T08:24Z (tested 3ab3026, recorded in 5083d30): 392 passed / 0 failed / 82 skipped; accessibility ≥ 90 on all 22 route/theme pairs (home light 97); no horizontal scroll at 400 px. Earlier PASS 2026-11-10T17:48Z (0ed567f)docs/EVIDENCE.md §G3b
G12Base toolchain and collateralPASS 2026-11-10T18:04Z (7bface5), local fork of Base Sepolia, not Base Sepolia (D-026)docs/EVIDENCE.md §G12
G13Base round tripPASS (re-run after D-027) 2026-11-11T08:25Z (tested 3ab3026, recorded in b8784c1), local fork: release and settle on the redeployed vault, replays revert NonceUsed. Earlier PASS 2026-11-10T18:05Z (7bface5)docs/EVIDENCE.md §G13
G9fresh-clone README rehearsal under 15 min; no secrets in historyPASS (run 3, after review 2) 2026-11-11T15:38Z (tested 3107a1a, recorded in 837cd12): quick start about 2.3 min (pnpm i 13 s, pnpm demo:testnet 5 s, pnpm verify 36 s, docs build 25 s), gitleaks over 305 commits clean, review 2 fixes R2-03/04/05/06/09/11 present in code, next start sends X-Frame-Options DENY, HSTS and CSP frame-ancestors 'none', the wallet selector opens in Chrome with 0 CSP console messages, Feed MCP over stdio and HTTP, no claim stronger than EVIDENCE. Earlier PASS 2026-11-11T09:00Z (tested 0af5cdd, recorded in 89f83ee; 21 README routes 200). First run FAIL 2026-11-11T08:50Z (c5f6349) on a docs wording issue on this page, since removeddocs/EVIDENCE.md §G9

After the security fix wave (2026-11-11)​

On 2026-11-11 a pre-release security review led to a fix wave (D-027): nectar-core-v2 2.2.1-v7, Solana vault v2, mock tokens upgraded, and the EVM vault redeployed on the local fork. The verifier then re-ran the gates on that stack from fresh clones of commit 3ab3026 and recorded them in docs/EVIDENCE.md:

RunWhat the verifier checkedRecorded
G2b re-runcontract_version 2.2.1-v7; rebuilt code hash equals the deployed one (3mv4LRm6…); keeper-v2 has one function-call key for 5 methods; the views answer§G2b, commit b8784c1
G7 re-runpositions 8–10: stored authorities equal the live derived key (domain 1); deposits confirmed with source: outlayer; 8 refused by the aggregate limit and released, 9 released, 10 settled (+2.386856 NVDAx to the buyer); Ed25519 verify at ix0 of each devnet tx; the depositor's withdrawals; PDAs closed§G7, commit b8784c1
G13 re-runpositions 11 (release) and 12 (settle) on the redeployed fork vault; on-chain digest equals the NEAR digest, ecrecover equals the authority; replays revert NonceUsed(10) / NonceUsed(14)§G13, commit b8784c1
G14 re-runborrow tx HvFX6YRa… (position #13, $10) and relay tx BemztvL9… (agent1's delegate paying 0.01 mock USDC to nectar.testnet)§G14, commit b8784c1
G11 re-run608 unit + 50 sandbox, mock-ft 23, model.csv 132 rows, max receipt 67.69 Tgas; every SR-1…SR-33 has a named test and 124 contract sr* tests pass; Solana 10 cargo + 55 TS; forge 105 pass / 3 skip; keeper 293, x402 17, feed 63, sdk 178§G11, commit 5083d30
G3b re-rune2e 392 pass / 82 skip; accessibility ≥ 90 on 22 route/theme pairs; no horizontal scroll at 400 px. The vault v2 screens (withdraw, claim, Re-sign settlement, claim owed collateral) passed their mocked E2E tests in e2e/remote.spec.ts on desktop and phone. Only screenshot capture was not run: remote screenshots (REMOTE_SCREENS unset, 14 per project) and the notes screenshots (NOTES_SCREENS unset)§G3b, commit 5083d30

Recorded later on 2026-11-11 (2026-11-11T13:52Z–14:18Z, tested 45ed1f3, recorded in 2e16f9b):

  • the G14 HTTP step, run by the verifier with its own x402 server from the clone: unpaid call → 402, paid call → 200. PASS. The demo agent used in that run predates its MCP-call check. A second run on HEAD (2026-11-11T15:02Z, tested 48b5c5a, recorded in a677689) used the checking agent: borrow_verified before signing, position #15, 200 with 123 CSV rows. PASS.
  • the G1 check that every change method has a gas row, on 2.2.1: FAIL. remove_extra_remote_chain had no row; every test was green and every measured method stayed under 100 Tgas. A sandbox test was added (no contract change), and the re-check (tested 48b5c5a, recorded in a677689) passed: 67 of 67 change methods, max 78.60 Tgas per tx.

What was fixed and what remains: Audits.

Block format​

Each run adds one block to docs/EVIDENCE.md, newest first within a gate. A block holds the command, at most 40 lines of trimmed output, the explorer links (each opened once by the verifier), the views read, and notes such as a faucet retry.

Rows change from "pending" to PASS or FAIL only when the verifier writes them. This page is regenerated from that file at each gate.