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.
| Gate | What it proves | Status | Evidence |
|---|---|---|---|
| G0 | toolchain installed; exact CLI grammar in FACTS | PASS 2026-11-09T23:09Z (b3a9090) | docs/EVIDENCE.md §G0 |
| G1 | contract unit and sandbox tests; model.csv match | PASS 2026-11-09T20:43Z (b721641) | docs/EVIDENCE.md §G1 |
| G1 (v7) | v7 contract additions: unit, sandbox, model.csv | PASS 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 Tgas | PASS 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 |
| G2 | testnet deploy; views answer; explorer links | PASS 2026-11-09T20:55Z (5f27f44) | docs/EVIDENCE.md §G2 |
| G3 | web E2E; accessibility ≥ 90; both themes; phone | PASS 2026-11-09T21:15Z (176914f) | docs/EVIDENCE.md §G3 |
| G4 | OutLayer execution attested; cost recorded; fallback tested | PASS 2026-11-09T22:10Z (d87eef6) | docs/EVIDENCE.md §G4 |
| G5 | oracle live price; staleness and confidence rejection tested | FALLBACK (disclosed): owner oracle; live Pyth waits on H13 | docs/EVIDENCE.md §G5 |
| G6 | 1Click dry quote verified | PASS 2026-11-09T22:58Z (fea52b7) | docs/EVIDENCE.md §G6 |
| G7 | Solana devnet tx with Ed25519 verify and settle; signer response on NEAR | PASS (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 |
| G8 | copilot verifier green (fixture at minimum) | PASS (fixture) 2026-11-09T23:56Z (df4706f); no live NEAR AI answer (key H7) | docs/EVIDENCE.md §G8 |
| G10 | v7 facts and toolchain | PASS with open items (F-351, F-352, F-353) 2026-11-10T13:44Z (09c4316) | docs/EVIDENCE.md §G10 |
| G11 | v7 contract tests, gas rows, model.csv --v7 | PASS (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 |
| G2b | nectar-core-v2 testnet deploy; views answer; pnpm verify green | PASS (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-v7 | docs/EVIDENCE.md §G2b |
| G14 | x402 paid call on testnet | PASS 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 |
| G3b | web E2E against nectar-core-v2 | PASS (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 |
| G12 | Base toolchain and collateral | PASS 2026-11-10T18:04Z (7bface5), local fork of Base Sepolia, not Base Sepolia (D-026) | docs/EVIDENCE.md §G12 |
| G13 | Base round trip | PASS (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 |
| G9 | fresh-clone README rehearsal under 15 min; no secrets in history | PASS (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 removed | docs/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:
| Run | What the verifier checked | Recorded |
|---|---|---|
| G2b re-run | contract_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-run | positions 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-run | positions 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-run | borrow 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-run | 608 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-run | e2e 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_verifiedbefore 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_chainhad 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.