the code moved w the oracle, minutes ahead of it
alphafi's sdk is public on github. i lined up every change to ALPHA's price feed in it, every commit raj ever made there & every package the admin wallets published, against the chain. the people writing the sdk had four of the chain's five ALPHA remaps in hand as they happened, one of them hours before. one rule for the whole page: a git account committing is not a wallet signing. i keep them apart even when the timing makes that annoying.
ALPHA's price feed, in the sdk & on chain
the sdk hardcodes ALPHA's pyth feed (an override in src/core/client.ts). every on-chain change below was signed by the lending admin 0xa1eb94d1…. feed names are pyth's own catalog. "gap" is sdk time minus chain time, so negative means the sdk got there first.
| on chain (utc) | what changed on chain | the sdk change | gap |
|---|---|---|---|
| 2025-04-30 21:23:21 B5QZSUym… | oracle v3 published (0x39850d8d…). its only difference from v2: add_alternate_price_identifier & remove_alternate_price_identifier, the functions later used to price ALPHA off other coins | #61 "alphafi-oracle package upgrade" (archived) by 11felix, merged by rajalphafi at 21:47:22 | +24 min |
| 2025-05-08 17:18:28 5KKJzizK… | ALPHA gets its first price: mapped to SUI | #69 "adding alpha priceFeed" (archived) (11felix), merged 17:14:08 by jangid: ALPHA's feed set to Crypto.SUI/USD | -4 min |
| 2025-10-26 14:21:05 5kUUZq3L… | ALPHA re-mapped to stSUI | #114 "alpha to stsui price" (archived, diff) (11felix), merged 10:38:56 by jangid: feed set to Crypto.STSUI/USD | -3h 42m |
| 2025-10-29 | nothing | #115 "using sui price for alpha" (archived) (11felix), would have shown ALPHA at SUI's price. never merged | |
| 2025-11-23 12:42:32 BbvwEdmG… | the oracle gets a "wormhole APT" entry on pyth's APT/USD; ALPHA is mapped to it at 12:55:40 | #120 "alpha mapped to apt" (archived, diff) (11felix), committed 12:43:44, merged 12:45:52 by jangid: feed set to Crypto.APT/USD | +72 s, then -10 min |
| 2025-11-25 08:39:21 9XV5n5Sn… | the "APT" entry is re-pointed at pyth's AVAX/USD. from here ALPHA is priced as AVAX, which is how P4 got booked at $14.16 eight days later | #121 "alpha price feed" (archived, diff) (11felix), committed 08:34:44, merged 08:45:34 by jangid: feed set to Crypto.AVAX/USD & scripts/testRun.ts edited to look up that feed's price object | -4m 37s |
| 2025-12-09 10:11:11 7CFutEux… | oracle v4 published (0x7671937b…): same interface, new logic in 9 functions (listed below) | 74d47fcf (archived) "Updated Oracle contract", raj's own commit, 10:20:28 | +9 min |
| 2026-07-31 20:10 | oracle v5 (0x869b2d44…): pyth lazer feeds, fixed prices | #170 (archived) (11felix), 2026-08-01 06:49 | +11 h |
every one of those sdk feed changes swaps in a whole different 64-character feed id (SUI/USD 23d73151…, STSUI/USD 0b3eae8c…, APT/USD 03ae4db2…, AVAX/USD 93da3352…), not a typo of a nearby value & the branches are still in the repo under their own names: feature/alpha-sui-price, feature/alpha-stsui-price, feature/alpha-apt-price. the XAUm (gold) mapping on nov 22 2025 & the dec 9 flip-flop got no sdk change.
& through all of it the sdk's ALPHA override kept reporting ALPHA at its coingecko market price (pythPrice: alphaCoin.coingeckoPrice), while the protocol's own oracle booked it at SUI's, stSUI's, APT's & then AVAX's. whether alphafi.xyz's screens used that field i didn't check, so i'm saying "the sdk", not "the app".
raj's commits, all of them
raj is alphafi's ceo (that's how he's introduced on stage). on github he's rajalphafi & commits as raj@alphafi.xyz. pulled from every branch of alphalend-sdk-js by login & by email, plus every PR's merged_by. no commit by him exists there before 2025-04-29.
| utc | commit | what it is | on chain |
|---|---|---|---|
| 2025-04-29 08:19:04 | b413b902 | merges #56 (archived) "update prices optimization" (11felix) | |
| 2025-04-29 08:39:49 | 38dd4ab1 | merges #57 (archived) "new package id" (rishikesh-chavan): the lending package 0xc0198e7d… to 0xee754fc0… | published 08:31:47 by the lending admin CNLU5eeC…, 8 min earlier |
| 2025-04-29 20:06:15 | 684cbc11 | merges #58 (archived) "suiClient round robin" (11felix) | |
| 2025-04-30 17:01:28 | dcdccfed | merges #59 (archived) "bugfix liquidation function" (OctoSauce) | |
| 2025-04-30 18:29:31 | e6d7d642 | merges #60 (archived) "claim_and_deposit fix" (11felix) | |
| 2025-04-30 21:47:22 | 0fccd255 | merges #61 (archived) (11felix): oracle v2 to v3, the version that added the alternate-price functions | published 21:23:21 by the lending admin, 24 min earlier |
| 2025-12-09 10:20:28 | 74d47fcf (archived) | his own commit, "Updated Oracle contract", +1/-1 in src/constants/prodConstants.ts: oracle v3 to v4 | published 10:11:11 by the lending admin, 9 min earlier |
| 2025-12-09 10:25:19 | 117a36cd | "Merge branch 'main'", a pull before pushing |
so: 8 commits in that repo, ever (archived list), out of 694 on main. six are PR merges from two days in april 2025 & two of those merges put a package the lending admin had just published into the sdk, 8 & 24 minutes after it went on chain. after P1 opened (2025-05-02) he committed there exactly twice, both on dec 9 2025, both the oracle v4 bump. he opened no PRs. jangid merged 123 of the 175.
& 27 more, in the old vault sdk
his only other public commits anywhere since april 2025 are 27 in alphafi's old vaults sdk, may 4 to jun 12 2025. that repo (AlphaFiTech/alphafi-sdk) is gone from the org now, deleted or made private on a date github doesn't show, but the commits survive in Zorag44's copy, Zorag44/alphafi-sdk (his commits there, archived). 21 of raj's 27 switch the sdk to new package ids, 41 packages in total & every one of the 41 was published by the vault admin 0xe25b5d16…. the commit always comes after the publish, never before: 19 of 21 within 20 minutes of the batch's last upgrade, median 9.
| commit (utc) | commit | message | packages | vault admin published (utc) | gap |
|---|---|---|---|---|---|
| 2025-05-04 12:25 | 9ab85557 | alphafi 3 new packageid | 1 | 12:20:56 | +5 min |
| 2025-05-10 20:11 | 01d2abbb | Volo upgrade | 1 | 20:04:20 | +7 min |
| 2025-05-11 18:37 | 64eada9b | autobalance package upgraded | 1 | 18:29:06 | +9 min |
| 2025-05-13 14:52 | 005a7efd | HASUI upgrade | 1 | 14:47:08 | +6 min |
| 2025-05-22 16:49 | bde4dbdb | New package id for alpha 3 | 1 | 16:33:54 | +16 min |
| 2025-05-23 13:04 | 4e7c2d43 | Package upgrade for Cetus CLMM hack. | 10 | 12:03:10 to 12:49:43 | +14 min |
| 2025-05-23 21:20 | b4f7f77f | Upgraded to change swap from cetus to bluefin | 3 | 20:46:12 to 21:02:08 | +18 min |
| 2025-05-25 17:47 | d768d8a2 | Updated the latest package IDs. | 1 | 17:30:59 | +16 min |
| 2025-05-27 12:22 | 30641063 | latest package updated | 1 | 12:11:24 | +11 min |
| 2025-05-29 12:15 | 06812acc | Upgraded alphafi_stsui package | 1 | 12:08:09 | +7 min |
| 2025-05-30 04:53 | 2b204fbc | alpha_stsui latest package id updated | 1 | 04:47:10 | +7 min |
| 2025-05-31 16:55 | ce1d5d22 | alphafi_2 upgraded | 1 | 16:44:59 | +10 min |
| 2025-05-31 19:45 | 728a1559 | kriya package updated | 1 | 19:39:57 | +6 min |
| 2025-06-03 04:49 | 1d32bed7 | Package upgrade. | 1 | 04:40:56 | +9 min |
| 2025-06-05 20:14 | 326bf5a8 | Upgrade | 3 | 19:43:16 to 20:07:38 | +7 min |
| 2025-06-06 20:29 | ba0d8c43 | Bluefin upgrade | 1 | 20:15:08 | +14 min |
| 2025-06-06 21:26 | 6c1b1d77 | Bluefin upgrade | 5 | 20:52:16 to 21:22:27 | +4 min |
| 2025-06-06 22:08 | 54915e13 | Bluefin Upgrade | 4 | 21:40:00 to 22:03:43 | +5 min |
| 2025-06-10 20:24 | b28f5ce7 | Cetus Upgrade | 1 | 10:54:05 | +9.5 h |
| 2025-06-11 18:11 | cb7a4fc6 | Cetus Upgrade | 1 | 16:47:17 | +84 min |
| 2025-06-12 06:18 | 7252ed4c | Cetus upgrade | 1 | 06:13:10 | +5 min |
the other 6 of the 27: five "Merge branch 'main'" pulls (they bring in other people's ids, incl. three god-wallet packages; not his) & one that adds a bluefin pool object. on 2025-05-23, the day after the cetus exploit, the vault admin upgraded ten packages in 47 minutes & raj's commit landed 14 minutes after the tenth.
the other direction is the stronger half. every package the vault admin & the god wallet published from 2025-04-30 to 2025-12-09, against the first commit in either public sdk that adds it:
| first synced into a public sdk by | vault admin's packages | god wallet's packages |
|---|---|---|
| rajalphafi | 41 | 0 |
| 11felix | 26 | 26 |
| Zorag44 | 4 | 6 |
| sid | 1 | 0 |
| never synced publicly | 20 | 112 |
| total published | 92 | 144 |
for six weeks, every upgrade the vault admin made reached the sdk through raj's account within minutes (median 18 after each package's own publish) & none of the god wallet's did. when he stopped, others picked the job up w lags of weeks (11felix's median is about 15 days). the vault admin is the wallet that ran emergency mode on seven pools at 22:01 on shutdown night, zeroed the ALPHA vault's lock at 22:16:48, published the sep 26 v3 upgrade that let the locked tickets out (the vault lock) & published the Holder package the fee wallet kept the bad-debt caps in (the borrowed money). it doesn't prove who holds the vault admin's key. it's as close as public data gets to "the same person, or someone sitting right next to them".
raj, in his own words: "I raised the liquidation threshold"
dec 12 2025, about alphalend's IKA market, from raj's own account: "I raised the liquidation threshold when price was bottoming so users wouldn't get liquidated" .
here's what that market's settings did on chain. IKA is alphalend market 15. its settings change through a MarketCap object, 0xe1e2db42…, whose client_address is the lending admin & every update_market_collateral_ratios call on it was sent by the lending admin:
| utc | LTV | liquidation threshold | tx (sender: lending admin) |
|---|---|---|---|
| 2025-08-03 08:33:06 | 35% | 40% | 4CMdSj69… |
| 2025-08-04 16:12:12 | 35% | 50% | HQkyFEZ1… |
| 2025-10-29 22:28:44 | 45% | 55% | 8PK9Yjcu… |
| 2025-11-19 17:55:55 | 45% | 65% | EsBqgKKB… |
| 2025-12-19 15:08:47 | 45% | 70% | 9tYJP5YD… |
the only threshold raises before his post are oct 29 & nov 19 2025, both signed by the lending admin. that's 0xa1eb94d1…, the same wallet that published every oracle version & re-pointed ALPHA's feed at AVAX. raj says the decision was his. the chain says who signed it.
"flow limits cap the blast radius at $250K per market"
jul 14 2026, from raj's account: "Flow limits cap the blast radius at $250K per market" (screenshot). a flow limit caps how much can leave a market (borrows & withdrawals) in a rolling window. each market's is set w update_flow_limiter through its MarketCap. USDC is market 6, its cap is 0x9b8879a0… & every call on it was sent by the lending admin. here's the USDC limit around that post & the fee wallet's sep 6 borrows:
| utc | what | USDC limit | tx |
|---|---|---|---|
| 2026-06-16 06:24:15 | lending admin sets the limit | 250,000 / 30 min | J7g2Euxt… |
| 2026-07-14 | raj's post | 250,000 / 30 min | post (screenshot) |
| 2026-07-19 12:18:53 | lending admin doubles it | 500,000 / 30 min | 8WhiPM4f… |
| 2026-09-04 20:00:54 | lending admin raises it | 5,000,000 / hour | HXSbkZfm… |
| 2026-09-06 16:41:52 | fee wallet borrows 1,012,240 USDC | 5,000,000 / hour | FeM4bX5E… |
| 2026-09-06 17:00:32 | fee wallet borrows 3,551,828 USDC | 5,000,000 / hour | AUHp6aWy… |
| 2026-09-06 17:02:02 | lending admin sets it to 0 | off | 2sFGN3iH… |
| 2026-09-06 17:02:36 | fee wallet borrows 1,131,506 USDC | off | Ho75AfHe… |
| 2026-09-06 18:03:15 | lending admin sets it again | 300,000 / hour | HfqsMLrq… |
| 2026-09-06 18:28:00 | lending admin sets it again | 4,900,000 / hour | rBG2LwFa… |
| 2026-09-07 08:29:01 | lending admin sets it again | 250,000 / hour | D81jpYdD… |
a limit of 0 doesn't mean nothing can leave. alphalend's own flow limiter code skips the check entirely when the limit is 0 (flow_limiter::check_and_update returns before it counts anything), so 0 is off. it was off for an hour, set to 300,000 at 18:03, 4,900,000 at 18:28 & 250,000 the next morning. it also got switched off for the ALPHA market on sep 25 at 11:38:51 & for all 36 markets at 17:30:52, hours before the shutdown post (september).
raj's avatar, bought by the treasury wallet
raj's x avatar is a robot w a cap that reads "のぞみ": Prime Machin #1282 (0xa2cba7ad…), traits nozomi-cap, chrome, flames, large square screen. on chain, that nft was bought on 2025-09-03 at 07:45:15 utc by alphafi's treasury ops wallet 0xf71e0bc4… (9W7FT33k…), in the same tx that created that wallet's first kiosk. it's still in that kiosk today. raj's current avatar image was uploaded to x at 07:48:33 utc the same morning, 3 minutes 18 seconds after the buy. i found it by following the avatar to the wallet that holds it. the wallet was brand new: its first SUI came from alphafi's fee wallet on aug 9 2025 (FUhfiga7…) & it started working on aug 24, when 0x9d11564c… (a day-one ALPHA-market wallet) moved ~180k stSUI into it. the nft was one of its first buys, 10 days later.
where the 07:48:33 comes from: the number in an x image url (profile_images/1963147086699859968/…) is a snowflake id, which x stamps w the moment it was created, to the millisecond. shift it right 22 bits, add 1288834974657 & you get unix ms: 2025-09-03 07:48:33.635 utc. a new profile photo gets a new id, so this is when the current one went up.
archive.org backs it up w no math. it saves raj's posts as they go out & each copy records his profile picture at that moment. his 07:35:49 utc post still shows the avatar he'd had since july 2021. his 08:54:40 utc post shows the robot. so the switch happened inside those 79 minutes & the buy (07:45:15) sits inside them too. four years on one picture, then a new one 3 minutes after the treasury wallet bought it.
archived on oct 7 2026: the purchase tx, the nft, the wallet on tradeport, raj's avatar image. suiscan & tradeport draw their pages w javascript, so the copies may load slowly or thin. the chain is the receipt.
that's the wallet that funds alphalend's IKA rewards & pays the keeper, sent a027 4 BTC & 10 tBTC, paid idear.sui twice, made the "payroll-shaped" payouts that landed in gate & kucoin deposit addresses, holds a ~539k ALPHA vault stake (its receipt, 65,769 SUI of rewards collected) & whose alphalend position became the security package. the full list is on early movers.
raj's own words vs the wallets
the avatar above isn't the only time. twice more raj posted, in the first person, about something he'd just done & each time a wallet in this research had done exactly that minutes earlier. & once he called the alphafi validator "my validator". his account is private now, so each post has its archive.org copy too.
dec 12 2025: "I removed my $IKA from AlphaLend"
- 13:27:49 raj: "IKA I bought off the market sits on AlphaLend as I use it as collateral to borrow." (post, archived)
- 14:57:56 w9273 pulls 19,774,390 IKA of collateral out of alphalend (95pieTfu…). of all 203 txs on the IKA market that day, it's the biggest withdrawal by ~7x; nobody else took out more than 2.9M.
- 15:15:47 raj: "I removed my $IKA from AlphaLend to increase the APR for others :)" (post, archived). 17m51s after the removal.
- 15:19:02 w9273 deposits all 19,774,390 IKA into navi (DM88ZF1o…).
- 15:37:55 under his threshold post, someone writes "Saved my bags fr". raj: "my bags too! :)" (post; archive.org lists a capture that won't load, so the readable copy is my screenshot).
oct 13 2025: "Just staked mine."
- 07:13:34 6a49 stakes 20 popkins nfts (claynosaurz' sui collection) w a lock that runs out on jan 11 2026 at 07:13:34, exactly 90 days (ECw42UQ9…). its first stake ever. of ~50 wallets in this research, it's the only one that ever used the popkins staking contract.
- 07:22:50 raj, replying to @MrBreadSmith & @Claynosaurz: "Just staked mine." (post, archived)
- 07:37:40 raj: "I kept is simple and locked all of them for 3 months. I might buy more!" (post, archived). 3 months is the 90-day lock on all 20.
- "I might buy more": 6a49 staked 49 more on oct 24 & 15 more on nov 1, 84 in all, never unstaked. on nov 27 raj posted "Inside top #50 in @Claynosaurz Leaderboard!" (post, archived) w a screenshot of the popkins staking board, rank #42 (archived image).
may 29 2025: "my validator"
raj: "my validator has 44 million SUI staked, but only 14 million SUI counted in the vote" & "the rest came from the Foundation" (post). the alphafi validator had 44,230,477 SUI that day. details on who paid.
| raj said | the wallet | gap |
|---|---|---|
| set an nft as his avatar (sep 3 2025) | 0xf71e0bc4… bought it | 3 min before |
| "I removed my $IKA from AlphaLend" (dec 12 2025) | w9273 removed 19.77M IKA | 18 min before |
| "Just staked mine", "locked all of them for 3 months" (oct 13 2025) | 6a49 staked 20 popkins, 90-day lock | 9 min before |
| "my validator" (may 29 2025) | the alphafi validator, 44.2M SUI | same day |
who can sign what
read from the objects each wallet owns today (sui graphql, 2026-10-05).
- the lending admin 0xa1eb94d1… holds the oracle's UpgradeCap 0x003f74ba… (now at v5) & the UpgradeCap of alphalend's lending package itself. it published every oracle version: v1 2025-04-27, v2 04-28, v3 04-30, v4 12-09, v5 2026-07-31. every alphalend MarketCap i read (the 21 markets whose ratios changed through feb 2026) names this wallet as its client_address. it signed every ALPHA remap & it's the lending protocol's protocol_fee_address, where alphalend's fees go.
- the vault admin 0xe25b5d16… holds the ALPHA vault's UpgradeCap 0x7ab23af8… & signed vault v1 to v3 & holds the UpgradeCap of the Holder package the bad-debt caps were kept in.
- the god wallet 0xa511088c… published ALPHA & holds 112 other UpgradeCaps, but none of those. (i'd assumed the opposite on the gate at first; that's fixed now.)
& the oracle's code isn't as unreadable as i first said. sui hands back each package version's disassembly (sui_getObject w content), so v3 & v4 can be diffed. same interface, 9 function bodies changed. the ones that matter:
- update_price_from_pyth: last_updated becomes chain time instead of pyth's publish time & an update older than the stored one is skipped.
- update_pyth_identifier_for_coin: on a re-point, clears the coin's old feed ids from the reverse map (v3 left them behind).
- update_max_age: a 120 s floor. add_coin_to_oracle: validates the threshold & the coin kind.
- smaller: a div becomes a mul in parse_price_to_number's confidence branch (unused by USD feeds) & a supra key type goes from u8 to u64.
P4's $14.16 booking on dec 3 ran under v3. on dec 9 v4 went live at 10:11, raj's sdk bump followed at 10:20 & the APT/AVAX flip at 12:46 to 12:52 is consistent w using v4's new re-point cleanup. the move registry record that claims to be this oracle's source (@altest.sui/allor, 0xb152f5a1…) is a separate v1 copy published 2025-09-07 by another wallet. the real one, @alphalend/oracle, has no public source. the only public alphalend move repo is interfaces whose function bodies are mostly abort 0 stubs.
the other accounts
commits since 2025-04-01 by account, from the github api (2026-10-04). an account's name here is a fact about the repo, not an accusation. most of these people did normal sdk work & i've said so where that's all there is.
| account | alphalend-sdk-js | alphafi-sdk-js | what ties it to this |
|---|---|---|---|
| 11felix | 261 | 152 | wrote every ALPHA price-feed change in the sdk (#69, #114, #115, #120, #121) & the oracle v3 & v5 switches (#61, #170) |
| jangid | 208 | 88 | merged #69, #114, #120 & #121 & 123 of the repo's 175 PRs. his github profile said company "AlphaFi" (bio: building #AlphaFi) until he cleared it on oct 13 2026 & the AI auditor raj launched from an AlphaFiTech repo on aug 11 2026 was transferred to his own account on sep 24, the day before the shutdown |
| rishikesh-chavan | 62 | 39 | wrote #57, the lending package switch raj merged 8 min after the publish. otherwise general sdk work |
| sid | 43 | 38 | synced one vault-admin package (jun 2025); wrote the sep 22 & 23 2026 multi-position commits. commits w no github account; the PRs carrying them were opened by sid-alphafi |
| harshaalphafi | 28 | 40 | merged those as PR #103 on sep 27 2026, 34.5 h after the tweet; built the betterstack incident bot |
| Zorag44 | 11 | 100 | his copy is where the old vault sdk survives (the org's repo is gone); synced 4 vault-admin & 6 god-wallet packages; 100 alphafi-sdk-js commits since nov 2025 |
| rg-alpha | 3 | 5 | 28 of the 50 commits in alphalend-contracts-interfaces, the repo whose function bodies are mostly abort 0 stubs |
| rajalphafi | 8 | 0 | everything in the section above |
| riteshR14, preyam2002, OctoSauce | 30 / 19 / 14 | 11 / 0 / 1 | general sdk work; nothing ties them to the oracle or the positions |
two of those deserve a line each. jangid: his public github profile listed his company as "AlphaFi" & his bio as "Building #AlphaFi #Crypto #DeFi" (archived jul 12 2026) until the company field was cleared on oct 13 2026, two and a half weeks after the shutdown. on aug 11 2026 raj posted "we've been running an AI auditor on our own Move code for over a year... open sourcing it today" w a link to AlphaFiTech/sui-ai-commons (born aug 9 in the org as AlphaFiTech/open-agents). that address now redirects to jangid/sui-ai-commons. the repo's own notes say it was transferred out of alphafi's org into his personal account on sep 24 2026, the day before the shutdown announcement (his commit recording the move, ba39b145, is stamped 18:01 utc, 29 hours before the tweet) & that alphafi's org rulesets didn't come w it. it's the only repo i can find that left the org around the wind-down. it's his repo now, so i archived it on oct 6 in case any of that changes: the notes, the commit & the repo. sid & harshaalphafi: four commits on sep 22 & 23 2026 ("find the right position cap id for a user w multiple positions", "paginate receipts to find all user receipts", "add slush position code in util") teach the sdk to split a withdrawal across several position caps in one wallet. PR #103 (archived) merged them on sep 27, 34.5 hours after the tweet. never published to npm & none of the 7,050 slush withdrawals from sep 23 to 30 used more than one cap. so: wind-down code, written two days before anyone was told, shipped to nobody.
also in the org: alphafi-betterstack, a telegram /alert bot that opens a better stack incident & phones whoever's on call (created 2026-05-13). the cron runner & a "metarepo" are private.
what raj said in public
every post here was re-read by its post id through the fxtwitter api on 2026-10-05 & links to the original. quotes are trimmed, never reworded.
on oct 6 2026, the day after this page was built, raj made his x account private. the links below now show nothing unless you follow him. archive.org has copies of all but one: the IKA post, for one, was archived the second it went up.
- 2024-08-24: "How we think at @AlphaFiSUI": "Simple > Complex, Users > Company, Product > Marketing...". noting it for later.
- 2025-05-30: on another protocol pinning a stablecoin at $1 (reply): they "should have had checks in the code to avoid oracle malfunction... That's how we do at AlphaLend". 22 days earlier alphalend had given ALPHA its first price by mapping it onto SUI's feed.
- 2025-11-13 & 12-05: "AlphaLend will be open sourced soon.", then "Open sourcing AlphaLend loading soon...". ten months on, no alphalend source is public.
- 2025-12-06: on EVM chains (post): "someone can upgrade the logic, spoof you, and do whatever they want", followed by "Thank you @SuiNetwork". three days later, on sui, the lending admin upgraded the oracle's logic (v4, 10:11 utc) & re-pointed ALPHA's price entry that same afternoon.
- 2025-12-12: the IKA liquidation threshold, above. that afternoon (17:38 utc), replying about audits (reply): "all in all, audits are not high ROI." the only audits in alphafi's github are two "preliminary" pdfs from may 2025.
- 2025-12-14: at 23:01 utc (3am in dubai), when pyth-sponsored prices on sui stalled (post), he "just finished writing a cron job that updates Pyth prices for Sui assets". so he writes the price-feed plumbing himself.
- 2025-12-15: "$DEEP and $WAL markets on AlphaLend", pitched w "Strict borrow limits so that you can withdraw anytime". twelve days earlier P4 had borrowed 47.5M DEEP & 6.2M WAL inside two hours against ALPHA booked at $14.16.
- 2026-06-27: "AlphaLend is built for the bad days" (screenshot), listing "no socialized debt", "oracle sanity checks" & "conservative risk caps". at the time alphalend's oracle was pricing ALPHA off AVAX's feed, as it had since nov 25 2025 (bar a two-day gap in december).
- 2026-07-14: "AlphaLend continues to lead where it matters" (screenshot), incl. "Flow limits cap the blast radius at $250K per market". true for USDC that day, then raised 20x & switched off around the fee wallet's sep 6 borrows (above). the bad debt the foundation covered ten weeks later was $17.1M.
- 2026-07-22 & 08-11: "$USDSUI just started paying us!" & hashi BTC on alphafi "from day one of mainnet". sui's own hashi launch post quotes him by name as a partner.
- 2026-09-03: "Looking forward to Basecamp". alphafi was announced as a diamond sponsor of sui basecamp 2026 around then, w raj on the main stage. sui.io/basecamp no longer lists alphafi.
- 2026-09-26 11:59, 13 hours after the shutdown tweet, a reply under alphafi's thread: "wind-down update": "$50M+ withdrawn so far", "Only $5.37M in loans left to repay", "For help repaying or withdrawing, reach out on Discord." it doesn't mention ALPHA, the oracle, the bad debt, or whose money paid it. that's the last post i can find from him.
what didn't happen
- no post, doc or sdk note ever said ALPHA was being priced off SUI, stSUI, gold, APT or AVAX. the sdk kept reporting coingecko the whole time.
- no public source for the lending market or the oracle, ever, despite "open sourced soon" (nov 13 2025) & "loading soon" (dec 5). the move repo is interface stubs & the upstream oracle file has no commit around the dec 9 upgrade at all.
- no word from raj, before or after sep 25, on how ALPHA itself was priced, the bad debt, the bailout or the foundation. he talked about oracles in general plenty (above). the sep 26 reply is a withdrawals update.
- alphafi's own X account hasn't posted since the shutdown thread (sep 25 23:09).
- & the discord the wind-down update sends people to: the server is still up ("ALPHA", 1,620 members), but general chat is gone from the channel list, so nobody can read it back. the only channel members can still post in is gm & #announcements was last active about eight months ago (its newest post is from feb 12 2026 & by oct 15 the account that posted every announcement shows as "Deleted User"), so the shutdown isn't in it. what's in gm since the shutdown: two gms, a russian "dead is dead", "a lot of questions remain unsolved raj. it’s time for answers…." (oct 1) & "hello sir please check my ticket" (oct 3). no answer to either, as of oct 5 (screenshots).