Personal research project — paper-testing & tuning, not raising capital.
Paper research · advisory · not live

Refusal log · what we declined, and why

Every trade the desk declined — with a plain-language reason, the structural-haircut breakdown, and a hashed proof you can re-derive yourself. We publish what we refuse, not just what we trade.

Why this is rare

Everyone publishes their wins. Almost nobody publishes what they declined. Refusal comes before economics — a great quote cannot buy its way past a toxic book. The refusal log is the credibility artifact.

How to read it

Each row is a hashed gate verdict (REFUSE or ENTRY) with its yield-decomposition haircuts. Expand "proof" to see the structural reason, per-driver haircuts and the row's hashes. A green chain badge means a from-scratch recompute of every hash agreed.

Chain integrity

source: static / offline
verifying chain…
 refused  entered

Head hash (fingerprint of the decision history)

chain length: · spec docs/PROOF_CHAIN_SPEC.md

The decision feed (most recent first)

A live feed from /api/rates-desk/refusals. REFUSALS are surfaced prominently — they are the moat. Each row expands into its structural reason, per-driver haircuts, and the hashes you can recompute.

Loading the refusal log…

Verify it yourself

Don't trust us — check us. Download one zero-dependency standalone verifier and the public decision log, run it on a clean machine with none of our code — it re-derives every hash and reports the exact broken_at if a single byte of history was altered after the fact.

Command

python3 verify_spa.py decision_log.jsonl

Spec

docs/PROOF_CHAIN_SPEC.md

Verifier

scripts/verify_spa.py

Canonical-JSON rule: json.dumps(obj, sort_keys=True, separators=(',',':'), ensure_ascii=False); hash = sha256(canonical_json).hexdigest(). The chain is append-only — each entry hashes the prior head, so flipping any past decision breaks the link.

Go deeper

⚠ Personal Research Project: SPA is a personal research project in paper validation and tuning. Not a regulated financial service. Not raising capital. Not investment advice.

Paper Trading Disclosure: All performance data reflects simulated trading on a virtual $100,000 USDC portfolio. Current paper APY: ~3.6% (variable, not a forecast). Simulated performance does not account for live slippage, liquidity impact, or smart contract execution risk. We reset our own track: only days with a real cycle log count (currently 10/30, anchor 2026-06-22). Go-live target: ~2026-07-21 — contingent on GoLiveChecker 29/29 (currently 27/29 NOT READY). See /track-record.

Not a Regulated Service: SPA is a personal research project at the paper-testing stage. This does not constitute investment advice, financial advice, or a solicitation to invest in any jurisdiction. Consult qualified professionals before making investment decisions.

DeFi-specific risks: Smart contract vulnerabilities and exploits · Protocol insolvency · Stablecoin de-pegging · Oracle manipulation · Regulatory actions · Technology failure. Funds in DeFi protocols are not covered by any investor compensation scheme.