receiptthesis
hashc162562113efc2c333ddcd827ad6c6c4620b3c8bc536c3a4caf172f5347ed9df
prev hash9ca2de726ce44699d595733caef931ca56d846c4e114fddba41f8113315bc117
signature884c1c7a46c59c0c92b76f3a6d4d8c4c8bb08f1adc29e6934f317d988ad5ec4239f54473469791b351f7741a577576d15723893d333204804c4914720cc1d800
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
Position BTC for next 3 days with stopgaps and proper profit exit plan
at1789952871894
session73e5330abf1648729990c0d8
tthesis
text_chars70
thesis_sha2565b0b1da09fd41cd81988fa3e3df010fc50cbf56e19628c67e10cc5dd475dec6e
ticket_sha2566763cadd377acea9c10cd765f9ff14fc6598a4ff759323f74d4e5fbfe8ed2e8e
v1
wallet_boundfalse
target
{
"asset": "BTC",
"constraints": {
"defined_risk": false,
"delta_neutral": false,
"hands_off": false,
"keep_dry_powder": false,
"no_cex": false,
"no_sell_holdings": false
},
"horizon": "days",
"injection": 0.03,
"view": "directional"
}ticket
{
"legs": [
{
"coin": "BTC",
"entry": {
"px": 82004,
"type": "market"
},
"kind": "perp",
"leverage": 2,
"marginMode": "cross",
"note": "Stop is 1.5x the daily ATR (the 14-bar 1h ATR scaled by sqrt(24), because this prototype only fetches 1h candles) for a days-long hold (3.3% from the 82,004 entry, not from the mid); targets take half the size at 1R and half at 2R. You did not say which way, so code defaulted to long - say 'short' and re-compose if that is wrong.",
"notionalUsd": 3021.03,
"qty": 0.03684,
"side": "long",
"stop": {
"pct": 3.31,
"px": 79290
},
"takeProfits": [
{
"pct": 3.31,
"px": 84718,
"sizeFrac": 0.5
},
{
"pct": 6.62,
"px": 87433,
"sizeFrac": 0.5
}
]
}
],
"riskUsd": 99.98,
"template": "perp_swing"
}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/107 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/107, and the public key at /.well-known/thesis-terminal-pubkey.json.