Verification · run 2026-09-21

Stockify verification,
in the open.

We run the same reads, quotes and router calls the app makes, against the live contracts on Robinhood Chain and the production site, and publish the result with the script that produced it. Deposits and withdrawals are executed inside the node as simulations. No transaction is signed.

119Pass
1Fail
4Warn or skipped
Run atSep 21, 2026, 2:14 PM UTC
Chain headBlock 68860115
Site checkedusestocky.xyz
Site commit25b4a5b

What it covers

Chain and contract wiring, live state of the 18 underlying vaults, fee counters, a simulated deposit and two withdrawal paths per vault, and a swap quote. Signed wallet deposits are not part of this run. Token supply, governance and lending checks are omitted from this page.

How it runs

A throwaway account is handed a USDG balance and allowance through eth_call state overrides so the router can execute end to end inside the node. The numbers are the node's answers, not ours.

What it is not

This is not a third-party security audit and does not prove the contracts are free of bugs. Stockify has not commissioned an independent audit of the vault contracts. Verify before you deposit.

Network

The RPC endpoint the app reads from, and the chain behind it.

3 pass
Chain idPass

eth_chainId returned 4663 (expected 4663, Robinhood Chain)

Chain headPass

Block 68860115 sealed 0s ago

Multicall3Pass

Contract present at 0xcA11…CA11, batched reads work

Contracts

Token contracts and the wiring between each vault, its router, oracle and position.

21 pass
USDGPass

USDG, 6 decimals at 0x5fc5…d168

Stockify tokenPass

Stockify (STOCKIFY), 18 decimals, supply 1,000,000,000, 10748879.691262666501279926 at the burn address

RegistryPass

18 of 18 pinned vaults resolve to a version 7 registry entry (37 entries in total)

AMZN wiringPass

Vault 0xF8DE…73D5 v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

AAPL wiringPass

Vault 0x5eaD…641e v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

AMD wiringPass

Vault 0x6bAb…532d v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

CRCL wiringPass

Vault 0xB20b…221d v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

GME wiringPass

Vault 0x9A8D…087b v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

GOOGL wiringPass

Vault 0x6058…3A02 v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

INTC wiringPass

Vault 0x7075…26Bd v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

META wiringPass

Vault 0xE0d7…6456 v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

MSFT wiringPass

Vault 0x387f…b057 v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

MSTR wiringPass

Vault 0x2f93…559D v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

MU wiringPass

Vault 0x3BB0…1026 v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

NVDA wiringPass

Vault 0xc5aF…A876 v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

PLTR wiringPass

Vault 0xD72F…400c v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

QQQ wiringPass

Vault 0x3f70…3dDf v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

SNDK wiringPass

Vault 0x8197…54b9 v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

SPCX wiringPass

Vault 0x0350…79a2 v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

SPY wiringPass

Vault 0x21ff…3787 v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

TSLA wiringPass

Vault 0x7881…8eF6 v7: router, position, oracle, treasury and buyback addresses match the registry; router settles in USDG

Vault state

Live state of each of the 18 vaults, read at one block the way the vault page does.

18 pass
AMZNPass

Block 68860135: open, tick -220869 in [-222180, -219960], oracle quote 5 min old, value $487, 0.000280901 shares

AAPLPass

Block 68860140: open, tick 218139 in [217320, 219780], oracle quote 7 min old, value $391, 0.000178589 shares

AMDPass

Block 68860145: open, tick 212263 in [211400, 214000], oracle quote 2 min old, value $1,706, 0.000554376 shares

CRCLPass

Block 68860145: open, tick 230752 in [229260, 233880], oracle quote 0 min old, value $2,672, 0.00123667 shares

GMEPass

Block 68860150: open, tick -245083 in [-247600, -244200], oracle quote 16 min old, value $403, 0.000516283 shares

GOOGLPass

Block 68860155: open, tick -217610 in [-219540, -217080], oracle quote 6 min old, value $394, 0.000176388 shares

INTCPass

Block 68860160: open, tick 228575 in [227800, 230400], oracle quote 3 min old, value $1,460, 0.00107991 shares

METAPass

Block 68860165: open, tick 210618 in [210480, 213000], oracle quote 9 min old, value $2,175, 0.000674272 shares

MSFTPass

Block 68860165: open, tick 214260 in [213180, 215640], oracle quote 0 min old, value $402, 0.00015118 shares

MSTRPass

Block 68860170: open, tick 225160 in [223400, 227800], oracle quote 9 min old, value $2,279, 0.000887717 shares

MUPass

Block 68860176: open, tick 206913 in [205800, 210120], oracle quote 3 min old, value $398, 0.000104916 shares

NVDAPass

Block 68860180: open, tick 222234 in [221300, 223700], oracle quote 12 min old, value $403, 0.000231143 shares

PLTRPass

Block 68860185: open, tick 224397 in [224000, 226600], oracle quote 13 min old, value $3,628, 0.00213648 shares

QQQPass

Block 68860185: open, tick 210354 in [209850, 211400], oracle quote 29 min old, value $395, 0.000192432 shares

SNDKPass

Block 68860191: open, tick 201440 in [200800, 205600], oracle quote 12 min old, value $407, 0.0000787578 shares

SPCXPass

Block 68860196: open, tick -225867 in [-227500, -225080], oracle quote 6 min old, value $1,382, 0.00094362 shares

SPYPass

Block 68860200: open, tick -209907 in [-210540, -209340], oracle quote 0 min old, value $392, 0.000238681 shares

TSLAPass

Block 68860206: open, tick -217043 in [-219300, -216120], oracle quote 29 min old, value $1,382, 0.0117928 shares

Fee accounting

What each vault's own counters say about the fee split. The site says 70% of claimed fees compounds, 20% is reserved for the buyback and 10% goes to the protocol treasury.

18 pass
AMZNPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (AMZN gross 0.00275151, USDG gross 0.658194)

AAPLPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (USDG gross 0.206443, AAPL gross 0.000593521)

AMDPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (USDG gross 16.6884, AMD gross 0.0142811)

CRCLPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (USDG gross 16.9472, CRCL gross 0.196436)

GMEPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (GME gross 0.0193086, USDG gross 0.622202)

GOOGLPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (GOOGL gross 0.000620239, USDG gross 0.309207)

INTCPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (USDG gross 17.317, INTC gross 0.105479)

METAPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (USDG gross 8.29819, META gross 0.0124725)

MSFTPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (USDG gross 0.390879, MSFT gross 0.000651629)

MSTRPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (USDG gross 19.3419, MSTR gross 0.0934885)

MUPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (USDG gross 0.49299, MU gross 0.000666565)

NVDAPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (USDG gross 0.345324, NVDA gross 0.00155875)

PLTRPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (USDG gross 22.8431, PLTR gross 0.116518)

QQQPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (USDG gross 0.273977, QQQ gross 0.000392824)

SNDKPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (USDG gross 0.522224, SNDK gross 0.000696173)

SPCXPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (SPCX gross 0.00482947, USDG gross 0.733566)

SPYPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (SPY gross 0.0000786477, USDG gross 0.032871)

TSLAPass

Matches what the site describes. Counters show 70% compounds, 20% buyback, 10% protocol treasury (TSLA gross 0.0109198, USDG gross 3.20437)

Deposit simulation

Builds a 100 USDG deposit for every vault exactly like the vault page and executes the router call inside eth_call. The test account is given a USDG balance and allowance through a state override; nothing is signed or sent.

17 pass · 2 warn
USDG storage layoutPass

balances mapping at slot 1, allowances mapping at slot 3 (found by probing eth_call state overrides)

AMZNPass

100 USDG → 0.0000559534 shares, swap leg 40.730879 USDG, router.deposit executes with 1,507,416 gas

AAPLPass

100 USDG → 0.0000442773 shares, swap leg 33.451863 USDG, router.deposit executes with 1,948,356 gas

AMDWarn

Refused by design: the valuation's pool guard rejects the pool state (pool 605.34 vs reference 611.52, -1.01%); deposits and USDG exits wait until the pool re-aligns with the Chainlink reference; token exits keep working

CRCLPass

100 USDG → 0.0000448872 shares, swap leg 32.93718 USDG, router.deposit executes with 1,536,867 gas

GMEPass

100 USDG → 0.000124205 shares, swap leg 26.950637 USDG, router.deposit executes with 1,499,639 gas

GOOGLPass

100 USDG → 0.0000434506 shares, swap leg 21.933672 USDG, router.deposit executes with 1,951,331 gas

INTCPass

100 USDG → 0.0000717436 shares, swap leg 31.062331 USDG, router.deposit executes with 1,914,631 gas

METAPass

100 USDG → 0.0000300745 shares, swap leg 6.273929 USDG, router.deposit executes with 1,975,590 gas

MSFTPass

100 USDG → 0.0000364521 shares, swap leg 43.52144 USDG, router.deposit executes with 1,507,095 gas

MSTRPass

100 USDG → 0.0000377833 shares, swap leg 40.421629 USDG, router.deposit executes with 1,529,664 gas

MUWarn

Refused by design: the pool price is 139 ticks (1.39%) from its 30 minute average, at or beyond the router's 100 tick TWAP guard; swaps wait for the average to catch up

NVDAPass

100 USDG → 0.0000556616 shares, swap leg 38.712029 USDG, router.deposit executes with 1,525,943 gas

PLTRPass

100 USDG → 0.0000571206 shares, swap leg 16.517824 USDG, router.deposit executes with 1,972,805 gas

QQQPass

100 USDG → 0.0000471989 shares, swap leg 32.348344 USDG, router.deposit executes with 1,502,764 gas

SNDKPass

100 USDG → 0.0000187713 shares, swap leg 14.781841 USDG, router.deposit executes with 1,971,988 gas

SPCXPass

100 USDG → 0.0000662347 shares, swap leg 32.524904 USDG, router.deposit executes with 1,521,684 gas

SPYPass

100 USDG → 0.0000591253 shares, swap leg 46.711845 USDG, router.deposit executes with 1,953,279 gas

TSLAPass

100 USDG → 0.000827543 shares, swap leg 29.656712 USDG, router.deposit executes with 1,516,410 gas

Withdrawal simulation

Redeems 0.1% of each vault's supply from the test account, both as pool tokens (vault.redeem) and as USDG through the router's protected swap (router.withdrawUSDG). Share balance and allowance are injected through a state override.

17 pass · 1 fail · 1 warn
Share storage layoutPass

vault share balances at slot 0, allowances at slot 1

AMZNPass

0.000000280901 shares → tokens: 0.000782109 AMZN + 0.286111 USDG · USDG only: 0.485759 USDG (floor 0.481943); with a 1% floor the token route returns 0.000782109 AMZN and 0.286111 USDG

AAPLPass

0.000000178589 shares → tokens: 0.000392706 AAPL + 0.258708 USDG · USDG only: 0.39034 USDG (floor 0.388855); with a 1% floor the token route returns 0.258708 USDG and 0.000392706 AAPL

AMDFail

Token exit works: 0.000000554376 shares → 0.000958113 AMD + 1.119849 USDG. USDG exit: The pool's price oracle (observe) reverts: the router cannot bound a swap by the TWAP, so USDG deposits and USDG exits are unavailable for this vault until the pool oracle answers; token exits keep working

CRCLPass

0.00000123667 shares → tokens: 0.00930449 CRCL + 1.783919 USDG · USDG only: 2.669272 USDG (floor 2.650192); with a 1% floor the token route returns 1.78392 USDG and 0.00930449 CRCL

GMEPass

0.000000516283 shares → tokens: 0.00477251 GME + 0.293933 USDG · USDG only: 0.401362 USDG (floor 0.400468); with a 1% floor the token route returns 0.00477251 GME and 0.293933 USDG

GOOGLPass

0.000000176388 shares → tokens: 0.000246446 GOOGL + 0.306311 USDG · USDG only: 0.393407 USDG (floor 0.392197); with a 1% floor the token route returns 0.000246446 GOOGL and 0.306311 USDG

INTCPass

0.00000107991 shares → tokens: 0.00381818 INTC + 1.00403 USDG · USDG only: 1.451364 USDG (floor 1.448672); with a 1% floor the token route returns 1.00403 USDG and 0.00381818 INTC

METAPass

0.000000674272 shares → tokens: 0.000192847 META + 2.036574 USDG · USDG only: 2.173698 USDG (floor 2.171548); with a 1% floor the token route returns 2.03657 USDG and 0.000192847 META

MSFTPass

0.00000015118 shares → tokens: 0.000358318 MSFT + 0.224994 USDG · USDG only: 0.402094 USDG (floor 0.397859); with a 1% floor the token route returns 0.224994 USDG and 0.000358318 MSFT

MSTRPass

0.000000887717 shares → tokens: 0.00558558 MSTR + 1.352697 USDG · USDG only: 2.274421 USDG (floor 2.255852); with a 1% floor the token route returns 1.3527 USDG and 0.00558558 MSTR

MUWarn

Token exit works: 0.000000104916 shares → 0.000104639 MU + 0.289607 USDG. USDG exit: Refused by design: the pool price is 136 ticks (1.36%) from its 30 minute average, at or beyond the router's 100 tick TWAP guard; swaps wait for the average to catch up

NVDAPass

0.000000231143 shares → tokens: 0.000707336 NVDA + 0.244545 USDG · USDG only: 0.402449 USDG (floor 0.398848); with a 1% floor the token route returns 0.244545 USDG and 0.000707336 NVDA

PLTRPass

0.00000213648 shares → tokens: 0.00331812 PLTR + 3.025489 USDG · USDG only: 3.615833 USDG (floor 3.613023); with a 1% floor the token route returns 3.02549 USDG and 0.00331812 PLTR

QQQPass

0.000000192432 shares → tokens: 0.000177669 QQQ + 0.26566 USDG · USDG only: 0.395757 USDG (floor 0.392227); with a 1% floor the token route returns 0.26566 USDG and 0.000177669 QQQ

SNDKPass

0.0000000787578 shares → tokens: 0.0000340611 SNDK + 0.346486 USDG · USDG only: 0.406664 USDG (floor 0.405465); with a 1% floor the token route returns 0.346486 USDG and 0.0000340611 SNDK

SPCXPass

0.00000094362 shares → tokens: 0.00294553 SPCX + 0.925055 USDG · USDG only: 1.382284 USDG (floor 1.370499); with a 1% floor the token route returns 0.00294553 SPCX and 0.925055 USDG

SPYPass

0.000000238681 shares → tokens: 0.000240813 SPY + 0.206352 USDG · USDG only: 0.390222 USDG (floor 0.386944); with a 1% floor the token route returns 0.000240813 SPY and 0.206352 USDG

TSLAPass

0.0000117928 shares → tokens: 0.00110381 TSLA + 0.967164 USDG · USDG only: 1.380214 USDG (floor 1.374817); with a 1% floor the token route returns 0.00110381 TSLA and 0.967164 USDG

Swap routing

The aggregator route the trade page shows, and the calldata it would hand to the wallet.

2 pass
Quote 100 USDG → AAPLPass

KyberSwap route: 0.296767 AAPL out (≈$100.7078270180049), gas 467166

Build calldataPass

4132 bytes of calldata for router 0x6131…37b5 (contract present on chain)

Production site

Pages and APIs served from https://usestocky.xyz.

23 pass · 1 warn
GET /Pass

200 text/html; charset=utf-8, 597 KB

GET /vaultsPass

200 text/html; charset=utf-8, 462 KB

GET /vaults/055c02d0-7d61-4909-9331-47a1785c4f15Pass

200 text/html; charset=utf-8, 433 KB

GET /lendingPass

200 text/html; charset=utf-8, 423 KB

GET /lending/metaPass

200 text/html; charset=utf-8, 436 KB

GET /trade/swapPass

200 text/html; charset=utf-8, 426 KB

GET /portfolioPass

200 text/html; charset=utf-8, 419 KB

GET /strategiesPass

200 text/html; charset=utf-8, 463 KB

GET /allocatorPass

200 text/html; charset=utf-8, 428 KB

GET /intelligencePass

200 text/html; charset=utf-8, 481 KB

GET /docsPass

200 text/html; charset=utf-8, 533 KB

GET /helpPass

200 text/html; charset=utf-8, 437 KB

GET /help/contactPass

200 text/html; charset=utf-8, 426 KB

GET /statusPass

200 text/html; charset=utf-8, 455 KB

API /api/public/vaultsPass

200: 18 vaults, 18 with a live snapshot, 18 with a fee APR, source onchain

API /api/statusPass

200: All monitored systems operational; api Operational, oracle healthy, vault deployed, keeper execute

API /api/lending/v2/marketsPass

200: 1 market(s), Active

API /api/allocatorPass

200: model v0.1, 5 position(s) summing to 1000.00 USDG, weights 1.0000; AMD 31.7%, MSTR 20.2%, CRCL 19.3%, INTC 17.6%, META 11.2%

API /api/trade/quotesPass

200: 1 quote(s) kyber 0.296767 AAPL

API /api/trade/buildPass

200: calldata for 0x6131…37b5 returned

RPC relay allows readsPass

200: eth_chainId → 0x1237

RPC relay refuses writesPass

403: Method not allowed through the relay

Security headersPass

HSTS and nosniff present

www aliasWarn

www alias does not resolve yet (fetch failed)

Reproduce it

Run the same checks yourself.

The script lives in the site repository as scripts/verify.ts. It needs Node 22 and nothing else: no keys, no wallet, no API token. Point it at any RPC for Robinhood Chain with NEXT_PUBLIC_RPC_URL if you do not trust the default.

The raw result of this run is at /verification/latest.json. Questions go to @stockifyhq or the contact page.

$ git clone https://github.com/pablooalonnso-web/claudemaxing5.git stocky
$ cd stocky && npm install
$ npm run verify

# chain only, no site checks
$ npm run verify -- --no-site

# also typecheck and lint the site
$ npm run verify -- --build