thesis terminal

one entry of the signed ledger, in words

receiptthesis
#12kindthesiswritten2026-09-20 00:13Zthesis2fa03a
hash4ff94151aea984fefcb2c42d8a40e7479f211af998feefc8a16c3ec0e5a6e849
prev hash5775395dc9dbb3cab6bb22b5be4e9e8dd0fb1ec1ea8aa8e7e19414b25f6d3f62
signature10409a3c599eac8427f1911e28145aac6f2c0af57e37f97870cc1bb47c477e278227b4c7871230dc0d237ce416c76f6d276aacddbfd71234d3e5f6f87d42750f
public keyf25f03fbc22533bc1b707bdcd9a452968c8724afa039cebd6d485dc741f63975
hash = sha256(prev hash + the canonical payload JSON); the signature is Ed25519 over the lowercase hex hash. Change one character of the payload and every entry after this one stops verifying.
what was claimed
short NEAR for 60 days, NEAR funding at 69% APR (longs paying shorts)
at1789863207217
session2fa03acd4e754cc7a2a37f11
tthesis
text_chars69
thesis_sha256b81e0401dcaa8c8ae744a7fe9d58d7dbd47564025880ec4ead5da105b3d3c38e
ticket_sha256b3bfcf839e27426223a4b9db160198bdc31128208878c719e883f44ffcd01019
v1
wallet_boundfalse
target
{
  "asset": "NEAR",
  "constraints": {
    "defined_risk": false,
    "delta_neutral": false,
    "hands_off": false,
    "keep_dry_powder": false,
    "no_cex": false,
    "no_sell_holdings": false
  },
  "horizon": "months",
  "injection": 0.03,
  "side": "short",
  "view": "carry"
}
ticket
{
  "legs": [
    {
      "coin": "NEAR",
      "entry": {
        "px": 3.5744,
        "type": "market"
      },
      "kind": "perp",
      "leverage": 1,
      "marginMode": "cross",
      "note": "Short with no spot hedge, so it is sized like a directional short, not a carry: $399.98 at 1x cross with a stop 25.0% away at 4.47 (stop clamped at 25%; the ATR rule gave 43.0%). Funding at today's 55.2% APR pays $0.61/day, which is the whole reason for the trade and not enough on its own.",
      "notionalUsd": 399.98,
      "qty": 111.9,
      "side": "short",
      "stop": {
        "pct": 25,
        "px": 4.468
      }
    }
  ],
  "riskUsd": 99.99,
  "template": "funding_harvest"
}
Shown as it was signed, with the wallet taken out: a field named address or walletNote reads [redacted], any 0x address inside any other field reads 0x… (a vault link keeps its own, which is a public contract), and a clause quoting what a wallet holds is cut and says so. Those bytes are unchanged in the signed entry — /ledger/12 serves it verbatim, and that is what the verifier hashes.
check it yourself

Nothing here asks you to trust this page. Run the independent verifier: it refetches every entry, recanonicalises each payload, recomputes the chain and checks each signature against the published key.

node scripts/verify_ledger.mjs https://think.ascendants.io
The head is at /ledger/head, this entry's raw JSON at /ledger/12, and the public key at /.well-known/thesis-terminal-pubkey.json.