Skip to content

Commit f0e19a6

Browse files
sktbrdclaude
andcommitted
docs(treasury): split address book — verified recipients, unnamed tier
Salvaged from the closed #276 (its attribution mechanism was superseded by 861b390): the tiered address book on SPLIT_PRODUCT, the hash-verified recipients of the two unnamed ETH-paying splits with the measured divergences that refute the subnet hypothesis, the never-sources tier, and the UNNAMED_VERIFIED_SPLITS export so future naming starts from verified constants instead of a re-dig. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1 parent 648f763 commit f0e19a6

1 file changed

Lines changed: 40 additions & 5 deletions

File tree

src/services/treasury-inflows.ts

Lines changed: 40 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -49,18 +49,53 @@ export const SWAP_FEE_SPLIT = "0x15e69fd67dcc17e061ceeb93dac791e0f5af0eae";
4949
* in the SAME transaction (distribute-and-withdraw flows), and failing that by
5050
* the ledger credit that funded it — see `ledgerSplitForCredit`, which is what
5151
* recovers a bare `withdraw()` of balance deposited earlier. A split nobody has
52-
* mapped yet (two such ETH-paying splits, 0xd9b2…ad6b and 0xdac8…e54, have
53-
* already credited this treasury) still falls to the generic `splits` tag: an
54-
* unmapped split must surface as unclassified, never wear another product's
55-
* name. The one exception is spelled out at `UNATTRIBUTED_USDC_FALLBACK`.
52+
* mapped yet still falls to the generic `splits` tag: an unmapped split must
53+
* surface as unclassified, never wear another product's name. The one
54+
* exception is spelled out at `UNATTRIBUTED_USDC_FALLBACK`.
5655
*
57-
* Adding a product = one entry here plus its i18n strings and tile tone.
56+
* ── THE ADDRESS BOOK ──
57+
*
58+
* MAPPED (below):
59+
* SUBNET_FINAL_SPLIT 0xcc7E…3A4E → "subnet". Recipients (reconstructed from
60+
* the creation event, hash-verified against the stored splitHash,
61+
* 2026-08-19): Sopa Multisig 0x96C3…eEA2 80%, treasury 20%. Pays USDC.
62+
* SWAP_FEE_SPLIT 0x15e6…0eae → "swap" (recipients above).
63+
*
64+
* IDENTIFIED, RECIPIENTS VERIFIED, PRODUCT UNKNOWN (`UNNAMED_VERIFIED_SPLITS`;
65+
* deliberately unmapped — their payouts stay generic until a human names
66+
* them). Both were once suspected of being subnet splits; the on-chain shape
67+
* refutes that, so do not re-add the hypothesis:
68+
* 0xd9b2…ad6b — 0xEed9…a282 20%, treasury 80% (hash-verified 2026-08-19).
69+
* Diverges from the subnet pattern on every axis: counterparty is not the
70+
* Sopa Multisig, the treasury share is INVERTED (80% vs the subnet's 20%),
71+
* different factory (0x5cba…21d1), no distribution incentive, pays ETH
72+
* where the subnet lane pays USDC.
73+
* 0xdac8…e54 — 0x9ad8…E1c8 49.5%, treasury 49.5%, 0x9946…17a1 1%
74+
* (hash-verified 2026-08-19). Also unrelated to the [80/20] subnet shape.
75+
* Pays ETH.
76+
*
77+
* NOT SPLITS, NEVER SOURCES: SplitsWarehouse 0x8fb6…1fb8 is shared transport
78+
* for every split above; the legacy Ethereum-mainnet treasury 0x4d3a…ce52
79+
* (config `GNARS_ADDRESSES_ETH.treasury`) is an obsolete DAO address, not an
80+
* income product; Seaport and the auction house have their own tags.
81+
*
82+
* Adding a product = verify the recipients against the stored splitHash first
83+
* (reconstruct from the creation event), then one entry here plus its i18n
84+
* strings and tile tone.
5885
*/
5986
const SPLIT_PRODUCT: Record<string, InflowSource> = {
6087
[SUBNET_FINAL_SPLIT]: "subnet",
6188
[SWAP_FEE_SPLIT]: "swap",
6289
};
6390

91+
/** Investigated and hash-verified splits whose product is still unnamed (see
92+
* the address book above for their recipients and why they are NOT subnet).
93+
* Exported so future naming starts from the verified constants, not a re-dig. */
94+
export const UNNAMED_VERIFIED_SPLITS = [
95+
"0xd9b22da0c190a90bcada99d69b0f5aeeaf10ad6b",
96+
"0xdac848cfe537b21eeb5e718422e4055644b29e54",
97+
] as const;
98+
6499
/**
65100
* Where a credit came from. Kept deliberately coarse — these are the things
66101
* the DAO actually earns from, not a transaction taxonomy. `splits` is the

0 commit comments

Comments
 (0)