3x)
Proven vs. leading
Proven (direct on-node evidence):
pDAI identity and outstanding supply (44.36B).
The mint mechanism — one fully decoded DaiJoin.exit tx, every selector Keccak-verified.
The Vat is canonical, caged (live=0), with vice = 107.76B (~84% of debt) — uncollateralized issuance, by definition the product of suck.
452,811 sucks ≈ 456,902 mints (the suck→exit loop).
The ward capture: 133 post-fork relys beginning at block 8,928,152, ~500 blocks before the first mint; rely'd wards overlap suck beneficiaries.
The operator EOA and capture spell of the initial takeover tx.
Leading / not yet quantified:
Per-ward attribution of the full 107.76B vice (the on-photo suck-recipient totals were not legible enough to assert).
Whether 0xddb10889 (Maker) and 0xd78d8f (Compound) share a funder — untested.
Identity/role of the removed prior ward 0x403689…788e5.
Open items
Funding-source trace on 0xddb10889 and 0x24354d31 to test syndicate overlap with the Compound operation.
Enumerate the full set of 133 rely'd wards and net per-ward suck totals.
Confirm 0x961d2b69 (biggest-suck caller) was a ward at the time (historical wards, requires archive or a rely/deny cross-reference).
Reproduction
All against a go-pulse full node at http://127.0.0.1:8545, raw JSON-RPC. (Pruned node: use eth_getLogs eth_getBlockByNumber rather than eth_getTransactionReceipt/getTransactionByHash, which fail for old txs beyond the tx-lookup window. Logs survive pruning; historical state does not.)
totalSupply via eth_call 0x18160ddd on the DAI address.
Mint scan: eth_getLogs topics=[Transfer, 0x0], full chain, subdividing on node errors; tally recipients; current balanceOf each.
Mechanism: filter mints to a target recipient (topics=[Transfer, 0x0, pad(addr)]), fetch the block, find the tx, read from/to/selector and the per-block logs filtered to that tx hash.
Vat: DaiJoin.vat() 0x36569e77; then live() 0x957aa58c, debt() 0x0dca59c1, vice() 0x2d61a355 (÷1e45).
Suck scan: eth_getLogs on the Vat topics=[suck-sig] where suck-sig = 0xf24e23eb 56 zeros; v = topic2, rad = topic3.
Ward capture: eth_getLogs on the Vat topics=[[rely-sig, deny-sig]] (0x65fae35e…, 0x9c52a7f1…); usr = topic1.
Operator: eth_getLogs for those topics at block 8,928,152, take the tx hash, fetch the block, read the tx from/to/selector.