01 · Settlement exists
SIMULATION PASSEDOne existing pDAI passes through Maker’s shutdown machinery and returns 0.000369041775507061 fork-WETH from the three ETH adapters.
[E01]Existing contracts, cross-chain custody, public markets, lending claims and archived mechanism tests. No undeployed peg architecture is shown as an existing system.
← pDAI GeoMap · MKR-DAO / SKY · Evidence ZIP ↓The useful question is which transaction can execute, what it pays, and what gives that payment independent value.
Fresh chain tests establish a working Maker shutdown settlement route, live local MKR/SKY operations, and surviving Reserve upgrade authority. They also establish specific broken paths. Complexity alone proves neither impossibility nor a coordinated six-year plan.
One existing pDAI passes through Maker’s shutdown machinery and returns 0.000369041775507061 fork-WETH from the three ETH adapters.
[E01]Reserve Main and hyUSD RToken still accept their Timelock’s UUPS upgrade authority. A complete migration remains to be designed and tested.
[E03]e121 deployed and funded a local SKY converter. Ca6f burned fork-MKR and received existing SKY. This establishes activity, not dollar reserves.
[E04]| Layer | What the evidence establishes | What still needs proof |
|---|---|---|
| Execution | Settlement and conversion can run. Some upgrade permissions remain. | A complete, safe deployed peg route. |
| Ownership & authority | Exact wards, roles, runtime and storage determine each right. | Common wallet ownership or official Sky sponsorship. |
| Economic value | Fork-WETH can unwrap into native PLS. Collateral has asset-specific value. | Fresh executable USD liquidation/redemption values for the whole reserve. |
| Peg & solvency | A separately funded converter can accept the existing pDAI token. | Who funds it, who may redeem, capacity, competing claims and stress survival. |
price = 1 entry is not a dollar payment. Conversely, a frozen borrowing module is not proof that settlement or every recovery route is dead.Fresh pins: 27,825,918–27,825,919, 18 October 2026, 03:59:25–03:59:35 UTC, PulseChain chain ID 369. Earlier evidence is explicitly dated. Public RPC used; Sophia was not accessed. Nothing was signed or broadcast.
Read the token address together with its chain. The bridge token can be swapped for forked pDAI at a market rate; the bridge itself does not convert those addresses at 1:1.
| Asset | Original on Ethereum | Bridge token on PulseChain | ETH custody | PLS bridge supply | Observed balance / supply |
|---|---|---|---|---|---|
| DAI | 0x6b175474e89094c44da98b954eedeac495271d0f | 0xefd766ccb38eaf1dfd701853bfce31359239f305 | unavailable | 10,959,381.5805 | not refreshed |
| USDC | 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 | 0x15d38573d2feeb82e7ad5187ab8c1d52810b1f07 | unavailable | 11,754,648.6653 | not refreshed |
| USDT | 0xdac17f958d2ee523a2206206994597c13d831ec7 | 0x0cb6f5a34ad42ec934882a05265a7d5f59b51a2f | unavailable | 4,162,138.9907 | not refreshed |
| WETH | 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 | 0x02dcdd04e3f455d838cd1249292c58f3b79e3c3c | unavailable | 3,934.3058 | not refreshed |
PulseChain block 27,828,698; fresh Ethereum-side reads unavailable. Two cross-chain snapshots are not atomic. Pending messages, limits and aggregate liabilities require separate reconciliation. These reserves are not pDAI backing.
| Asset | Saved ETH custody | Saved PLS supply | Saved coverage |
|---|---|---|---|
| WETH | 5,645.80 | 5,301.46 | 106.50% |
| USDC | 13,618,604.60 | 12,876,245.96 | 105.80% |
| USDT | 4,579,082.01 | 4,376,159.03 | 104.60% |
| DAI | 13,326,211.82 | 12,834,274.51 | 103.80% |
Imported from pstables.online/#advanced. No dedicated observation block or date is provided for these saved coverage rows. Do not combine them with the fresh PulseChain supply column or interpret them as current solvency certification.
Ethereum DAI → OmniBridge → brDAI → a PulseX pool → forked pDAI. In the reverse direction, pDAI must be sold into an accepted bridge asset before that asset can return to Ethereum. Piteas can select a route across supported pools; the route depends on current liquidity.
| Infrastructure | Address | Role |
|---|---|---|
| PiteasRouter | 0x6bf228eb7f8ad948d37ded07e595efddfaaf88a6 | Public swap entry |
| Current SwapManager | 0x58ab37d02696a481e2e5b5779967f3f4d237baa9 | Configured execution logic |
| PulseX V1 router | 0x98bf93ebf5c380c0e6ae8e192a7e2ae08edacc02 | factory() → V1 |
| PulseX V2 router | 0x165c3410fc91ef562c50559f7d2289febed552d9 | factory() → V2 |
The old distribution snapshot lists 0x258e…6a9a as the aggregator; official Piteas docs identify it as a SwapManager deprecated in August 2025. Historical volumes remain historical.
The distribution page identifies Aave V3 at 0x87870…4fA4E2. Its saved debt table has no dedicated block metadata. The new column reads each reserve’s stable + variable debt token supplies at one fixed PulseChain block. Quantities are in each underlying asset; do not add CRV, WBTC and DAI as though they were dollars.
| Asset | pSTABLES saved debt | Debt at new pin | aToken supplied at new pin | Available underlying cash | Debt / supplied |
|---|---|---|---|---|---|
| pWETH | 156,361.81 | 157,119.05 | 1,806,028.57 | 1,649,713.55 | 8.70% |
| wstETH | 109.45 | 109.55 | 195,252.08 | 195,142.74 | 0.06% |
| WBTC | 22,058,763.33 | 58,726,324.75 | 1,704,561.93 | 0.00 | 3,445.24% |
| pUSDC | 1,054,611,352.68 | 1,327,576,765.45 | 1,102,694,789.07 | 0.00 | 120.39% |
| pDAI | 412,502,714.29 | 553,153,947.32 | 413,747,663.55 | 0.00 | 133.69% |
| LINK | 2,053,040,427.70 | 4,910,508,970.70 | 57,036,705.69 | 0.00 | 8,609.38% |
| AAVE | 0.00 | 0.00 | 30,579.43 | 30,579.43 | 0.00% |
| cbETH | 1,202.67 | 1,204.38 | 43,403.39 | 42,200.25 | 2.77% |
| pUSDT | 721,393,780.99 | 951,055,880.09 | 747,086,909.68 | 0.00 | 127.30% |
| rETH | 2,518.41 | 2,562.99 | 8,328.83 | 5,796.98 | 30.77% |
| LUSD | 1,263,002.85 | 1,243,555.06 | 6,045,579.45 | 4,811,864.88 | 20.57% |
| CRV | 18,396,372,781.72 | 59,665,766,348.25 | 1,560,581,497.25 | 7,221,564.04 | 3,823.30% |
| SNX | 717,546.88 | 998,455.20 | 137,699.26 | 0.00 | 725.10% |
| BAL | 27,921,250.49 | 53,524,185.40 | 5,079,436.28 | 90,546.62 | 1,053.74% |
| UNI | 7,486,580.58 | 10,636,726.38 | 267,084.25 | 91.36 | 3,982.54% |
| LDO | 17,071,960.23 | 24,256,524.41 | 616,866.13 | 137.58 | 3,932.22% |
| MKR | unavailable | 2,658,172.95 | 29,594.58 | 0.00 | 8,981.96% |
Source “bad_debt” = max(total_debt − supplied, 0), to the displayed precision. Relabelled here as a reported accounting gap; it is not a collateral-aware insolvency calculation. “UTIL” is the saved debt/supplied ratio, not a verified executable borrow rate.
These getter results describe current accounting at the same pin. They do not attribute losses to the wallet and do not value an executable exit.
| Account | Collateral · oracle base | Debt · oracle base | Health factor |
|---|---|---|---|
| 86ff | 193,548,783.59 | 1,460,446,368,243.56 | 0.000109334892356123 |
| 5996 | 105,109.66 | 73,843.79 | 1.053320096313758897 |
| 2822 | 0.00 | 0.00 | no debt / max uint |
| 9e6f | 0.00 | 0.00 | no debt / max uint |
| 1967 | 0.00 | 0.00 | no debt / max uint |
At this pin 0x6bea…cd46 is cDAI / XUSD, not cDAI / canonical WPLS. token1() returns 0xbbea…ab29, whose symbol is XUSD. getPair(cDAI, canonical WPLS) returns 0xf45362408bcd023a4fb874588b5914a1c6db0b71. The historical trading pattern is not reattributed to a new pair.
Open the original distribution tab ↗The checked on-chain links are the ATROPA pools and the direct stable-to-stable pools shown above. Different paths connect the same assets and can create arbitrage incentives. Reserve spot ratios alone do not prove that a swap path executes, that parity holds, or that someone maintains it.
| Asset | ATROPA pair · V1 | Asset per ATROPA | pDAI per asset · via ATROPA | pDAI per asset · direct V2 |
|---|---|---|---|---|
| pDAI | 0x5ef7aac0de4f2012cb36730da140025b113fada4 | 20.24641987 | 1.00000000 | 1.00000000 |
| pUSDC | 0xc636bfe0bae34824380b4e26bc34e4614e55e483 | 46.93361334 | 0.43138421 | 0.43069129 |
| pUSDT | 0x1ba4436daa19d77268ae1f13ca8294ec6a4c2486 | 48.84698904 | 0.41448655 | 0.41374721 |
Normalized reserve ratios at 27,828,698. Formula: pDAI per pUSDC via ATROPA = (pDAI per ATROPA) ÷ (pUSDC per ATROPA), with the same calculation for pUSDT. Fees, impact, stale reserves and transfer restrictions are excluded. A mismatch is a research lead, not demonstrated profit.
ATROPA owner() = zero at this pin. Its verified token source has no three-stable parity converter. No separate deployed parity enforcer was established by the sources checked for this revision.
The live path is shutdown settlement. Ordinary vault borrowing and the original PSM are separate paths.
Existing balance; one pDAI used. No injected funds or state overrides.
DaiJoin burns the external token and transfers internal accounting credit to the holder.
Internal DAI moves to Vow; the holder gets a one-DAI bag. Each collateral type has its own claim counter.
Each adapter debits the holder’s credit and transfers real fork-WETH tokens.
0.000369041775507061 PLS for the tested one-pDAI ETH basket, before gas. All eleven simulated calls passed; pre-existing WETH was preserved.
The ten-step settlement simulation and its eleven-step continuation through native withdrawal completed with no top-level or inner-call errors. No Vat.frob was required. The ETH-A/B/C outputs were summed after integer truncation.
The same bag may claim each eligible collateral component once; this is a basket, not three separate dollar entitlements. Other collateral types were not exhaustively valued.
[E01]End.live = 0 and Vat.live = 0 are observed. End has a nonzero shutdown time, stored debt and ETH-A/B/C fix rates. Its shutdown timestamp is 16 April 2025, 06:27:15 UTC.
Stored End debt: approximately 128.725B DAI accounting units. This is a settlement snapshot, not current ERC-20 circulating supply.
The bounded post-fork End log scan returned 14 Pack/Cash events. Successful receipts include a 100,000-DAI Pack and an ETH-C Cash against 1,397 DAI of a bag. Cash alone transfers internal collateral; an adapter exit is distinct.
[E02]This establishes a collateral-token redemption, not $1 redemption, not Ethereum ETH, and not positive profit after gas. In this test, simulated gas charges exceeded the gross native output. The WETH implementation matches the fork runtime; a traced withdrawal pays native PLS.
| Component | Actual fork-WETH output for 1 pDAI | End internal gem at pin | Adapter token balance at pin |
|---|---|---|---|
| ETH-A | 0.000163437848940579 | 15,180,556.671489455968044734 | 21,956,005.499608484671106584 |
| ETH-B | 0.000101010386423648 | 12,911,618.695058509225306502 | 16,778,544.841841390002589826 |
| ETH-C | 0.000104593540142834 | 12,720,027.121127135805691403 | 21,582,750.888068877749045727 |
| Total tested | 0.000369041775507061 | Separate accounting credits | Separate custody balances |
Internal credit and adapter token custody describe two constraints on the same withdrawal. They are not additive reserves. A successful one-unit test does not establish whole-supply capacity, all-ilk availability or a gas-efficient retail route.
| Adapter | Address | fix · ray units |
|---|---|---|
| ETH-A Join | 0x2f0b23f53734252bda2277357e97e1517d6b042a | 163437848940579445233054 |
| ETH-B Join | 0x08638ef1a205be6762a8b935f5da9b700cf7322c | 101010386423648891035126 |
| ETH-C Join | 0xf04a5cc80b1e94c69b48f5ee68a08cd2f09a7c3e | 104593540142834188306272 |
For each adapter, output in raw gem units = floor(DAI wad × fix ÷ 10²⁷). Sending more tokens to an adapter does not automatically increase fix or create a holder’s internal claim.
10,101.010101010101010101 ETH-A gem units remain credited to e121. A full-credit GemJoin.exit simulation succeeds. This is bounded by an existing internal balance and custody, not an unlimited drain.
The origin of that credit was not reconstructed here. Calling it an omitted lock or a newly discovered exploit is unsupported.
[E01]Its ordinary buyGem and sellGem routes need Vat.frob. Prior pinned simulations reverted Vat/not-live. The exact Vat has no uncage function.
Adding collateral or changing the HAT does not itself re-enable this code path.
[E07]Pause owner and authority are both zero. A complete reconstruction of 416 plot/drop/exec logs found 209 unique plans; two hashes are still stored. Existing exec is public, so owner=0 alone does not prove no outstanding execution path.
Both remaining plans target 0x2855e21f0e651975a72e93b66aebac4d6d8f3f0a; both currently revert ds-pause-delegatecall-error. No working governance-restoration plan was demonstrated. Vat has not authorized the PauseProxy at this pin.
A surviving mint adapter is not the same as a new DAO receiving mint authority.
At saved block 27,824,343, Vat.live() = 0, but DaiJoin.live() = 1 and DAI.wards(DaiJoin) = 1. The canonical token still had an authorized mint adapter. The blanket statement “all pDAI minting is impossible” would therefore be too strong.
New collateral-backed borrowing through the original Vat.frob route is blocked by Vat.live = 0. The local SKY token and its MKR converter do not change that state or prove control of the canonical pDAI token.
DaiJoin.exit(user, amount) checks its own live flag, moves enough of the caller’s internal Vat DAI to DaiJoin, then calls Dai.mint. The caller needs sufficient internal DAI and permission for the movement, normally granted with Vat.hope(DaiJoin). This is not free issuance.
DaiJoin.join, then used collateral GemJoin.exit and a native unwrap. It did not test the reverse DaiJoin.exit mint route. No direct positive or negative reverse-exit simulation was found in this retained review.A new MakerDAO, SKY deployment or converter still needs a demonstrated source of internal Vat DAI or another authorized mint path. Some ward-restricted Vat methods, including suck, do not have the live guard. This review did not exhaustively trace every surviving ward contract’s reachable capabilities, so it does not certify that all new internal credit creation is impossible.
Burning existing ERC-20 pDAI into internal credit and exiting it again rematerializes an existing liability; it does not by itself add net backing. SKY minting creates SKY, not canonical pDAI. No fresh chain requests were made for this added evidence card.
| Contract on PulseChain | Full address |
|---|---|
| Canonical pDAI | 0x6b175474e89094c44da98b954eedeac495271d0f |
| Maker DaiJoin | 0x9759a6ac90977b93b58547b4a71c78317f391a28 |
| Maker Vat | 0x35d1b3f3d7966a1dfe207aa4514c12a259a0492b |
Source review and saved state only. These are separately testable hypotheses, not completed Anvil tests.
SOURCE_SUPPORTED; POSITIVE SEQUENCE NOT YET EXECUTED IN THIS REVIEW
DAI: 0x6b175474e89094c44da98b954eedeac495271d0f
Vat: 0x35d1b3f3d7966a1dfe207aa4514c12a259a0492b
DaiJoin: 0x9759a6ac90977b93b58547b4a71c78317f391a28
| ERC20 supply | +wad |
|---|---|
| internal DAI caller | -wad*10^27 rad |
| internal DAI adapter | +wad*10^27 rad |
| Vat debt | unchanged |
| external collateral | unchanged |
What a test would prove: A successful receipt plus exact before/after deltas proves canonical-token minting backed by the caller's internal DAI, even while Vat.live==0. A zero-amount call does not prove positive capacity.
Boundary: No evidence that the new SKY operator controls this credit. Existing internal balances remain liabilities; no new dollar backing appears.
STANDARD LOCAL REGRESSION CANDIDATE
DAI: 0x6b175474e89094c44da98b954eedeac495271d0f
Vat: 0x35d1b3f3d7966a1dfe207aa4514c12a259a0492b
DaiJoin: 0x9759a6ac90977b93b58547b4a71c78317f391a28
| join supply | -wad |
|---|---|
| exit supply | +wad |
| round trip net supply | 0 |
| round trip net caller tokens | 0 excluding gas |
| Vat debt | unchanged throughout |
What a test would prove: The two legs and conserved final balances demonstrate burn/remint compatibility. A failed leg identifies its concrete prerequisite; never label transport or RPC errors a contract revert.
Boundary: This cannot create a permanent extra pDAI balance. Do not seed canonical token balances, rewrite roles, or impersonate an unrelated holder and call that reachable proof.
BLOCKED BY SAVED Vat.live()==0
Vat: 0x35d1b3f3d7966a1dfe207aa4514c12a259a0492b
| when live | Creates internal DAI and collateral-backed debt; later DaiJoin.exit materializes ERC20 tokens. |
|---|---|
| saved caged state | frob reverts before debt issuance. |
What a test would prove: A standard zero-state local read or simulation can confirm the actual frob not-live error; it does not establish the availability of collateral or a new governance authority.
Boundary: An adapter address with Vat ward status cannot remove this live guard just by forwarding frob. A token named SKY does not alter Vat.live.
READ-ONLY IDENTITY CHECK REQUIRED; UPSTREAM IMPLEMENTATION IS CAGE-GATED
Ethereum_upstream_deployment_candidate: 0x60744434d6339a6b27d73d9eda62b6f66a0a04fa
recorded_Pulse_Chainlog: 0xda0ab1e0017debcd72be8599041a2aa3ba7e740f
| during successful loan | Temporary DAI/debt created. |
|---|---|
| after successful repayment | Principal supply and debt return to starting values; borrower must return the full amount. |
| saved caged state | The reviewed upstream implementation refuses execution. |
What a test would prove: An identity/code match establishes whether the explicit live gate applies locally. The historical Vat rely record alone is insufficient.
Boundary: A flash mint is temporary liquidity and not permanent new supply or dollar backing. No privileged local overrides or exploit execution are included.
READ-ONLY STATE / RUNTIME REVIEW NEEDED
historical_Vat_ward_candidate: 0x197e90f9fad81970ba7976f33cbd77088e5d7cf7
Chainlog: 0xda0ab1e0017debcd72be8599041a2aa3ba7e740f
| drip if positive interest | Internal Pot credit and Vow debt increase by Pie*(newChi-oldChi). |
|---|---|
| Pot exit | Moves already entitled internal credit to the savings owner. |
| DaiJoin exit | Can materialize that internal credit as canonical ERC20 pDAI. |
What a test would prove: Recorded getter values and an exact deployed source match identify whether growth is possible; an owned-account ordinary withdrawal demonstrates only that owner's entitlement.
Boundary: Calling drip does not award its caller all savings interest. Upstream master notes differences from the production contract, so its semantics are comparison evidence until local runtime is matched.
SAVED ARB-ONE-A CAPACITY ZERO; PREPAID CASE IS CONDITIONAL
TeleportJoin: 0x41ca7a7aa2be78cf7cb80c0f4a9bdfbc96e81815
TeleportGateway: 0x22218359e78bc34e532b653198894b639ac3ed72
DAI: 0x6b175474e89094c44da98b954eedeac495271d0f
| ordinary live path | May create internal DAI with frob, then mint canonical ERC20 DAI through DaiJoin. |
|---|---|
| saved domain state | No positive mint capacity. |
| prepaid caged path | Re-materializes already prepaid internal credit; no net debt creation when no frob is used. |
What a test would prove: Read domain debt/line, internal credit and authenticated pending record; capacity requires those combined facts, not the mere existence of mintPending.
Boundary: Prepayment burns existing canonical DAI into internal credit. It is not free issuance. No message forgery, impersonation or bypass test is included.
READ-ONLY AUTHORIZATION INVENTORY; EXTERNAL REACHABILITY UNPROVEN
Vat: 0x35d1b3f3d7966a1dfe207aa4514c12a259a0492b
| suck semantics | Increases internal DAI, sin, vice and debt together. It is debt accounting, not external reserves. |
|---|---|
| direct DAI mint | Requires a DAI ward, a different authorization mapping. |
What a test would prove: wards(address), code and source establish a component's recorded capability. The end-to-end externally reachable authorized route must be established separately.
Boundary: Impersonating a ward or overwriting storage only demonstrates a counterfactual, not a real caller's ability. This review supplies no such privilege tests.
RETAINED SOURCE: ESCROW TRANSFER, NOT TOKEN MINT
gateway: 0xd3b5b60020504bc3489d6949d545893982ba3011
escrow: 0xa10c7ce4b876998858b1a9e12b10092229539400
DAI: 0x6b175474e89094c44da98b954eedeac495271d0f
| DAI totalSupply | unchanged |
|---|---|
| escrow DAI | decreases |
| recipient DAI | increases |
What a test would prove: A transfer receipt and supply delta can identify inventory release independently from minting.
Boundary: L2 token minting or bridge control does not create canonical L1 DAI mint authorization or new collateral.
SEPARATE TOKEN SYSTEM; NO CANONICAL pDAI MINT ROUTE ESTABLISHED
SKY: 0x6400fe04cba0d72be2f2e6ece30ba7c591752c45
converter: 0xf616e5d28c2c6d20214fd2da65df9733bd0ca855
MKR: 0x9f8f72aa9304c8b593d555f12ef6589cc3a579a2
| initial SKY mint | Increases local SKY supply. |
|---|---|
| MKR to SKY conversion | Burns forked MKR and transfers prefunded SKY. |
| canonical pDAI | Neither observed transaction calls canonical pDAI minting. |
What a test would prove: Check exact target and nested calls, token-address-specific supply changes and independent DAI/Vat authorization; a SKY mint is not a pDAI mint.
Boundary: No official Sky sponsorship, new pDAI governance power or collateral backing follows from these operations.
RETAINED DEPLOYED SOURCE; ELIGIBLE ACTIVE AUCTIONS NOT INVENTORIED
End: 0x0e2e8f1d1326a4b9633d96222ce399c708b19c28
Vat: 0x35d1b3f3d7966a1dfe207aa4514c12a259a0492b
| snip | Creates internal accounting credit at Vow while cancelling a recorded liquidation and reconstructing collateral/debt accounting. |
|---|---|
| skip | Also creates internal End credit for the legacy auction refund path. |
| canonical DAI | No DaiJoin.exit is called by these methods; any later materialization is a separate action by an entitled internal-credit holder. |
What a test would prove: Read-only exact auction-state and recipient tracing can establish whether a documented refund entitlement exists. No caller-controlled mint amount or mint-to-caller route follows merely from a public function.
Boundary: Settlement bookkeeping and refund rights are not a new DAO mint authority or external dollar backing. No active-transaction or privileged execution recipe is included.
NOT IDENTIFIED IN THE BOUNDED RETAINED REVIEW
| result | No issuance or caller-capability conclusion is supported without identification. |
|---|
What a test would prove: A read-only registry and authority inventory narrows candidates; an address or selector alone does not prove a usable mint path.
Boundary: No guessed addresses, generic privileged calls or novel exploitation routes are supplied.
Reserve Main and RToken retain upgrade authorization. The existing BackingManager has a specific storage-context failure.
A valid governance operation is still required.
Holds Main’s OWNER role.
Same-implementation upgrade authorization passes.
Same-implementation upgrade authorization passes.
Not implemented in this review. New manager, valid basket/oracles, synchronized cached references, approvals and reserves are needed.
upgradeTo(currentImplementation) succeeds on Main and RToken when simulated with the Timelock as caller. Main rejects 48Fc and an unrelated address lacking OWNER. Both implementation runtimes exactly match their explorer-verified code.
The tests do not impersonate the Timelock on-chain. They verify the destination permission; a real governance lifecycle is still necessary.
[E03]The current Main setters are private initialization helpers. There is no working public setBackingManager shortcut. A migration needs an authorized implementation upgrade.
RToken also caches its own BackingManager pointer. Updating only Main would leave that stale reference in place.
At this pin Alexios reports threshold 1, delay 1 block, period 15 blocks and prior-block quorum 0. Modified stRSR returns voting weight 1 even for an unrelated test address.
This is not an exclusive 48Fc repair key. The voting configuration needs a separate security review; no proposal was submitted.
| Execution layer | Observed behavior | Consequence |
|---|---|---|
| Outer BackingManager 0x61691c4181f876dd7e19d6742b367b48aa280ed3 | Delegates to replacement code 0x0989b804e582ec37e8ba054c558eb304f493586a | Replacement code executes using the outer manager’s storage. |
| Nested fallback | Target = storage[storage[0]]. Here storage[0]=1 and storage[1]=0. | Ordinary calls delegate to codeless zero and return empty bytes. |
| Custom admin guard | Outer context’s admin is zero; all reviewed storage-write paths require that admin. | Normal upgrade calls from Timelock or 48Fc revert. |
| Standalone replacement | Its own administrator is 48Fc, in its own storage. | Changing the standalone instance does not repair the manager’s storage. |
| Former UUPS code | The old implementation is no longer selected. | Calling its old upgrade function signature cannot resurrect its authorization. |
main() returning 0x is empty return data, not a valid zero-address getter. The failed Ca6f execution on 18 May 2026, 14:13:25 UTC reached this manager and reverted Proxy: caller is not the admin. The proposed replacement was not installed. Execution was permissionless; executing a 48Fc proposal does not prove common ownership. [E03][E08]
A credible repair must test every component’s storage layout, cached addresses, initializer state, token allowances, oracle freshness, basket health, supply accounting, redemption path and capital. Upgrading Main/RToken does not automatically free assets or rights trapped at the old manager. Old balances and allowances need their own recovery audit.
No complete replacement implementation, migration or solvent post-migration redemption has been demonstrated here. The surviving authority is real; the finished repair is conditional.
Two mined transactions show creation of inventory, then MKR burn and distribution from that inventory.
e121 → local SKY.mint(converter, amount)
The converter receives newly created units. The transaction has zero native value and no child collateral-transfer calls. Its Transfer(0x0, converter, amount) log denotes mint accounting.
Ca6f → converter.mkrToSky
SKY supply is unchanged across this conversion block. MKR supply falls by the burned amount.
[E04]| Role | Address / measured state |
|---|---|
| Local SKY token | 0x6400fe04cba0d72be2f2e6ece30ba7c591752c45 |
| Local converter | 0xf616e5d28c2c6d20214fd2da65df9733bd0ca855 |
| Creator and observed ward | 0x98c89980d1eae247ada3636ae27648f78e66e121Both contracts created 18 August 2026; absent at fork comparison block 17,233,000. |
| SKY / converter wards(e121) | 1 / 1 |
| SKY / converter wards(zero) | 0 / 0 |
| SKY supply at pin | 2,793,851,059 SKY |
| Converter inventory | 2,757,095,503.444449999999984 SKY |
| SKY mint authorization | Simulated 1 raw unit and 10⁴⁰ raw units (10²² SKY) succeed from e121; zero, Ca6f and control address revert. |
The forked MKR token has owner=0 but a nonzero authority:
The successful burn trace consults that authority. Maker Chief still points to fork-MKR as its governance token; no evidence here replaces Chief.GOV with this local SKY.
This is a locally deployed, ward-authorized Sky-style token/converter, not a demonstrated Reserve mock. Exact compiled equivalence to upstream SKY code has not been reproduced.
Neither the token name nor this transaction pair establishes official Sky operation, a pDAI reserve, or a dollar peg.
| Context | Actual meaning |
|---|---|
| ERC-20 Transfer event, from=zero | Mint-event convention. The transaction caller here is e121. |
| Literal zero admin compared to msg.sender | No demonstrated ordinary signing caller can pass that guard. |
| Timelock executor role granted to zero | This implementation explicitly treats that role entry as open execution. |
These cannot be combined into a hidden common admin key. The same numeric address has different semantics in different code.
Current SKY name/symbol calls hit an RPC MCOPY compatibility error; the name is observed in runtime, while supply, roles and tested operations respond. Verified fork-MKR source and raw receipts/traces are included. Upstream SKY source is a comparison, not an exact local source-verification claim.
Execute first, identify the asset second, price the realizable output third.
The fork-WETH runtime is unchanged from the fork comparison. A traced withdraw(1) pays one native wei to e121; the full settlement continuation is included in the evidence. Its native exit is denominated in PLS, not Ethereum ETH. This can bypass a WETH/WPLS swap pool, subject to the wrapper’s available backing and the user’s balance. [E05]
Assumed reserves: 969,902 WETH / 969,314 WPLS. Sell 10,101 WETH, assuming a 0.30% constant-product pool fee.
Input is 1.04145% of WETH reserves. Average execution is about 1.32457% below the initial spot ratio; post-trade spot falls about 2.04777%.
These are mathematical results using the supplied reserves, not a verified current pool quote. They do not establish the pool’s identity or fee.
At the purely illustrative PLS price of $0.00003, that output is approximately $0.298835; the quote-side reserve is about $29.07942.
A roughly one-percent input can trade against such reserves; “$0.30 cannot exit a $29 pool without a crash” is incorrect. The important problem is low dollar proceeds, not that particular slippage claim.
| System | Fresh observed state | Interpretation |
|---|---|---|
| Origin Vault 0xe75d77b1865ae93c7eaa3040b038d7aa7bc02f70 | pDAI supported=true; direct balance 1,456.620480433024964620 pDAI. Capital/rebase pauses=false. totalValue and calculateRedeemOutputs(1e18) revert. | Registration and an unpaused flag do not demonstrate a working OUSD redemption. |
| Origin price path | pDAI price getter returns 100009178 in 8 decimals; underlying feed timestamp 10 May 2023, 21:39:47 UTC. | A stale nominal ≈$1 read is not current realizable collateral value. |
| Reserve basket 0x9119db28432bd97abf4c3d81b929849e0490c7a6 | DISABLED status 2; fullyCollateralized=false. Main itself paused=false, frozen=false. | A nonpaused Main does not make its basket healthy. |
| Reserve pDAI plugin 0xb03a029ff70d7c4c53bb3c4288a87acfea0ee8fe | Status 2; tryPrice reverts StalePrice(). | The current collateral route is not a functioning price/redemption demonstration. |
| Reserve BackingManager | main() returns empty data; direct canonical pDAI balance=0. | Separate component and asset accounting required; this is not a zero-dollar valuation of every other asset. |
[E06] The report does not mark all fork tokens worthless, or all quoted balances as dollars. Each token needs its own custody, claim, liquidity and price test.
Official documentation identifies 0x6bf228eb7f8ad948d37ded07e595efddfaaf88a6 as PiteasRouter. Public router usage does not prove common ownership. An empty-code address does not prove a separate human buyer. “47B gross / 24.3B net / 7,750 wallets” and the shortened f3cb pool label cannot be reproduced from the supplied prose without the underlying full-address ledger, block window and net definition. [E10]
| Reproducible metric | Result | Scope / boundary |
|---|---|---|
| 777 direct deliveries from PiteasRouter | 111,458,646.213937678047147687 pDAI; 65 transfers | Complete archived 777 token log corpus, blocks 17,233,000–27,824,339. Bilateral delivery, not current holdings or profit. |
| One routed transaction: sum of all pDAI Transfer logs | 759,652.638008809684055654 pDAI | 12 logs in a successful transaction; multiple hops count the same economic output repeatedly. |
| Same transaction: final recipient | 189,882.202301523517456384 pDAI | Plus fee 61.914401357807115059 pDAI. Three intermediary routers have zero net pDAI change. |
The 85.5M figure in the supplied text may use a different window; without its method it cannot be compared conclusively. Neither “all independent buyers” nor “no cluster drain” follows from a recipient table. Lending deposits and receipt-token positions also matter; a low direct wallet balance does not establish that all exposure was sold.
| Metric | Definition |
|---|---|
| Gross logs | Sum successful unique Transfer events, deduplicated by chain, transaction hash and log index. |
| Bilateral net | Router→wallet less wallet→router; misses all other counterparties. |
| Wallet balance change | All token inflows less all outflows over a complete interval. |
| Owner-level economic exposure | Validated control cluster plus positions, debt, redemption rights and recoverable liquidity. |
Every major conclusion is tied to a pinned response, mined receipt, exact code path or clearly marked conditional model.
“No redemption and no surviving control, therefore impossible” is disproved by specific execution evidence. A shutdown collateral exit works; authorized upgrade paths remain; a new externally funded converter is technically possible. None of those facts establishes that a solvent $1 route already exists, that the whole architecture was coordinated over six years, or that it must reach a peg.
| Priority | Decisive test | What would change the conclusion |
|---|---|---|
| 1 · Whole settlement basket | Enumerate every ilk, End.fix/gem and adapter balance; simulate claims and value realizable outputs after gas. | Quantifies existing redemption value and capacity beyond the three tested ETH ilks. |
| 2 · Funded conversion contract | Identify a deployed pDAI accept/pay function; test from an ordinary eligible holder through to independent asset payout. | Proves a live stabilization route rather than a proposed design. |
| 3 · Reserve migration | Build and review a storage-compatible Main/RToken/component migration on a local fork, then test its governance lifecycle and redemption. | Turns surviving permissions into a tested recovery plan. |
| 4 · Solvency and custody | Reconcile reserves, liens, receipt tokens, bridges, allowances and all eligible claims at one block. | Distinguishes full backing, limited intervention and circular accounting. |
| 5 · L2 end-to-end proof | Supply child chain ID/RPC and replayable state; trace exact L1 deposit → L2 asset → settlement → L1 withdrawal. | Proves the proposed L2 mechanism and asset mapping, without relying on names. |
| 6 · Provenance and flows | Recover the full Piteas census and deployment/admin histories with explicit windows and labels. | Tests coordinated operation and the six-year thesis instead of inferring intent from complexity. |
evidence.zip ↓ Raw RPC requests/responses, technical subreports, selected historical evidence and SHA-256 manifest. No credentials or signed transactions.
Fresh block 27,825,919 · state-continuing simulation; exact End/Join runtime matches
review_v2/maker/sequence_proof.json; review_v2/maker/settlement_rates.json; review_v2/maker/current_raw.json; review_v2/maker/followup_raw.json; review_v2/maker/pause_plan_scan.jsonPrimary source ↗Pack 100,000: block 23,251,614. Cash 1,397 ETH-C: block 23,251,700. Both status=1.
review_v2/maker/end_cash_pack_logs.json; review_v2/maker/sequence_proof.jsonPrimary source ↗Fresh block 27,825,918 · caller controls and verified implementation runtime matches
review_v2/reserve/current_raw.json; review_v2/reserve/main_current_raw.json; review_v2/reserve/rtoken_current_raw.json; review_v2/reserve/runtime_matches.json; review_v2/reserve-upgrade.mdPrimary source ↗Mined receipts, creation provenance, historical supply and role controls · fresh pin 27,825,919
review_v2/sky/transactions_raw.json; review_v2/sky/state_raw.json; review_v2/sky/extra_raw.json; review_v2/sky/findings.mdPrimary source ↗Fresh block 27,825,918 · unchanged fork runtime; one-wei withdrawal trace; settlement continuation at 27,825,919
review_v2/root/weth_raw.json; review_v2/root/weth_withdraw_call.json; review_v2/maker/unwrap_sequence_proof.json; review_v2/maker/unwrap_sequence_summary.jsonPrimary source ↗Fresh block 27,825,918 · raw getters, reverts, oracle timestamp, supply
review_v2/root/raw.json; review_v2/pin.jsonPrimary source ↗Historical pin 27,824,343 · buyGem/sellGem Vat/not-live; exact source/runtime evidence
pegmap_audit/psm_raw.json; pegmap_audit/psm_source_match.json; pegmap_audit/psm.txt; arb_pdai_audit/maker/runtime_source_match.jsonPrimary source ↗Block 26,561,274 · 18 May 2026 14:13:25 UTC; status=0
arb_pdai_audit/governance/summary.json; arb_pdai_audit/governance/trace0.json; arb_pdai_audit/governance/receipt0.jsonPrimary source ↗Historical pins 27,824,342–27,824,343; fork comparison 17,233,000. Not a fresh full L2 rescan.
arb_pdai_audit/REPORT.txt; arb_pdai_audit/rollup/fork_vs_current.json; arb_pdai_audit/sequencer/summary.json; arb_pdai_audit/flows/summary.json; arb_pdai_audit/flows/escrow_withdraw_0_trace.json; arb_pdai_audit/flows/escrow_withdraw_1_trace.json; arb_pdai_audit/maker/probe.jsonPrimary source ↗777 log window 17,233,000–27,824,339; routed example at block 24,610,842
review_v2/flow_777_recomputed.json; review_v2/flow_repeated_hops_example.json; review_v2/flow-review.md; arb_pdai_audit/wallet_links/777_pdai_events_combined.jsonPrimary source ↗Addresses are on PulseChain unless explicitly labelled L2 counterpart. An L2 counterpart address is an on-chain configured value, not proof that a functioning child chain was independently accessed.
The supplied pasted Markdown was treated as a collection of claims. Public PulseChain RPC supplied fresh state, simulation and receipt evidence. Exact source/runtime comparisons were used where available. Simulated calls use specified callers; they prove execution under that caller context, not possession of a private key. No state overrides, proposals, votes or transactions were submitted. Older evidence is retained with its own pin; current prices, all-token reserves, all wallet identities and child-chain operation were not exhaustively audited.
Contracts can inherit years of open-source history while being deployed locally much later. The SKY pair was locally created on 18 August 2026. A shared funding transfer, permissionless execution or shared router is not by itself proof of shared ownership or official organizational control.
Prepared for mijk · pSTABLES research · 18 October 2026. This report describes the inspected state and tested paths; future transactions can change them.
Saved PulseChain block 27,824,343. The exact archived getter responses establish Vat.live = 0, DaiJoin.live = 1 and DAI.wards(DaiJoin) = 1. They do not constitute a successful reverse-exit simulation.
Sources: current_review/arb_pdai_audit/maker/probe.json and retained source/runtime matches for Dai, DaiJoin and Vat. The reconstruction script is read-only and was not executed during this interface update.