Follow puts MadeOnSol on your private watchlist; its changes then lead “Since you were last here” when you come back. Following needs an account; browsing never does.
Unknown3 gaps: Published packages (not enough yet), API description (source unavailable), Official site changes (stale). Packages name its repository, but none is confirmed as the project’s own.
Bars: meaningful, source-backed ships per week (count). Weeks run Monday to Sunday, UTC, labelled by their Monday. Commits are aggregated, a code week counted once. Hatched: 2 weeks before HEY began reading this project’s sources — not yet read, not zero.
Questions HEY can answer about MadeOnSol — as of 2026-10-20
Is MadeOnSol still being built?
DerivedShipping: 26 meaningful events in 30 days; latest ship 5 days ago.Evidence →
What did MadeOnSol ship last?
FactCode changes, week of 2026-10-12 – 2026-10-18 · 1 commit — Code activity, 5 days ago.Evidence →
What does HEY not know about MadeOnSol?
Unknown3 gaps: Published packages (not enough yet), API description (source unavailable), Official site changes (stale). Packages name its repository, but none is confirmed as the project’s own.Details →
Build timeline
Code changes, week of 2026-10-12 – 2026-10-18 · 1 commitmadeonsol/plugin-robinhood-chain
SDKs and MCP servers: bundles, bundled-now share, KOL trades per token
Feature release · Source linked
New package versions cover the terminal endpoints released this week. MCP servers: mcp-server-madeonsol 4.2.0 adds madeonsol_token_bundles , madeonsol_token_bundle_share and madeonsol_kol_token_trades (108 tools). mcp-server-robinhood-chain 0.16.0 adds rhc_token_bundles…Show allShow less
New package versions cover the terminal endpoints released this week. MCP servers: mcp-server-madeonsol 4.2.0 adds madeonsol_token_bundles , madeonsol_token_bundle_share and madeonsol_kol_token_trades (108 tools). mcp-server-robinhood-chain 0.16.0 adds rhc_token_bundles , rhc_token_bundle_share , rhc_token_kol_trades , rhc_kol_scout_leaderboard and rhc_deployer_activity (73 tools). Existing tools accept the new opt-ins: include_balances on bundle and buyer quality, include_wallet_flags on holders, verify_current_balances and include_scout_scores on the cap table and early buyers, and on…
New GET /api/v1/rhc/deployer-hunter/{address}/activity (PRO+) shows a Robinhood Chain developer's launches and the buys and sells of their own tokens as one timeline, newest first. A trade counts when the developer's own address traded one of the tokens it deployed. It is the…Show allShow less
New GET /api/v1/rhc/deployer-hunter/{address}/activity (PRO+) shows a Robinhood Chain developer's launches and the buys and sells of their own tokens as one timeline, newest first. A trade counts when the developer's own address traded one of the tokens it deployed. It is the same definition as the rhc:dev_activity WebSocket channel, and every trade carries that channel's event_id , so you can backfill what your socket missed and join the two. Each event says how the developer was attributed: creator (we saw the launch) or pool_creator (only the first pool's creator is known, weaker). The…
Every KOL trade on a token in one call, with current balances on Robinhood Chain
API release · Source linked
New GET /api/v1/kol/tokens/{mint}/trades lists every stored KOL trade on a Solana token, newest first: KOL name, wallet, buy or sell, SOL and token amounts, price and market cap at the trade, signature and time. Page through the full history with next_cursor ; has_more is exact.…Show allShow less
New GET /api/v1/kol/tokens/{mint}/trades lists every stored KOL trade on a Solana token, newest first: KOL name, wallet, buy or sell, SOL and token amounts, price and market cap at the trade, signature and time. Page through the full history with next_cursor ; has_more is exact. Until now a token's KOL activity was only available as a per-KOL summary ( /kol/tokens/{mint} ). KOL trades below 0.05 SOL (or $3.50 on a stable-quoted leg) are not stored, so very small trades are missing. New GET /api/v1/rhc/tokens/{address}/kol-trades does the same on Robinhood Chain, with the EVM address, tx…
Bundles that enter after launch, and what they hold now
API release · Source linked
New GET /api/v1/tokens/{mint}/bundles and GET /api/v1/rhc/tokens/{address}/bundles (PRO+) list every coordinated buy cluster on a token in the last hour, 6 hours or 24 hours: the launch bundle and every group that buys together later. Until now bundle detection only looked at…Show allShow less
New GET /api/v1/tokens/{mint}/bundles and GET /api/v1/rhc/tokens/{address}/bundles (PRO+) list every coordinated buy cluster on a token in the last hour, 6 hours or 24 hours: the launch bundle and every group that buys together later. Until now bundle detection only looked at the first 20 buyers, so a group entering an hour after launch was invisible. A cluster is a slot (Solana) or block (Robinhood Chain) where at least 3 distinct wallets bought ( min_wallets , up to 20). Each cluster shows when it happened and how long after launch ( phase : launch or later), how many wallets were new to…
Bundle "new wallet" counts and RHC scout followers now follow chain order
Announcement · Source linked
new_wallets on bundle clusters ( /tokens/{mint}/bundles , /rhc/tokens/{address}/bundles , the token:bundles / rhc:token_bundles streams) now counts a wallet as new only when it never bought the token in an earlier slot (Solana) or earlier block (Robinhood Chain). Before…Show allShow less
new_wallets on bundle clusters ( /tokens/{mint}/bundles , /rhc/tokens/{address}/bundles , the token:bundles / rhc:token_bundles streams) now counts a wallet as new only when it never bought the token in an earlier slot (Solana) or earlier block (Robinhood Chain). Before, "earlier" was decided by a timestamp in whole seconds, and several slots or blocks share one second, so a wallet that had bought one slot or block earlier in the same second was counted as new. Measured on 2026-10-15: about 1 in 900 cluster members on Robinhood Chain and 1 in 190 on the busiest Solana bundle tokens moved…
Bundled share of supply is only stated when every cluster was counted
Announcement · Source linked
GET /tokens/{mint}/bundle-share and GET /rhc/tokens/{address}/bundle-share read at most 200 coordinated buy clusters per request. On a very busy token the window can hold more, and older clusters were then left out while bundled_pct_of_supply_now was still served as if the…Show allShow less
GET /tokens/{mint}/bundle-share and GET /rhc/tokens/{address}/bundle-share read at most 200 coordinated buy clusters per request. On a very busy token the window can hold more, and older clusters were then left out while bundled_pct_of_supply_now was still served as if the wallet set were complete. Now: new field clusters_complete : true only when the cluster list was read in full (the cluster function answered and fewer than clusters_limit = 200 clusters came back); when the list comes back full, clusters_complete is false, held_now.incomplete_reason is clusters_truncated , no balances are…
Top traders now use FIFO cost basis, and sold-but-never-bought tokens no longer count as profit
API release · Source linked
GET /api/v1/tokens/{mint}/top-traders now calculates realized PnL with FIFO cost basis, the same method as /wallet/{address}/pnl , so a wallet's realized PnL on a token matches across both endpoints for the same window. This changes rankings. Before, tokens a wallet sold without…Show allShow less
GET /api/v1/tokens/{mint}/top-traders now calculates realized PnL with FIFO cost basis, the same method as /wallet/{address}/pnl , so a wallet's realized PnL on a token matches across both endpoints for the same window. This changes rankings. Before, tokens a wallet sold without a buy we observed (tokens received by transfer or airdrop, buys under the 0.05 SOL storage floor, or buys before the window) were counted at zero cost, so their full sale proceeds showed as profit. An insider who received tokens for free and sold them could rank as a top trader. Now those tokens are reported in a new…
GET /api/v1/rhc/kol/{wallet}?include_performance=true (PRO and above) now returns a performance block for a Robinhood Chain KOL: winrate_7d and winrate_30d (percent of closed positions that made money), the number of closed positions and realized PnL in ETH per window, the…Show allShow less
GET /api/v1/rhc/kol/{wallet}?include_performance=true (PRO and above) now returns a performance block for a Robinhood Chain KOL: winrate_7d and winrate_30d (percent of closed positions that made money), the number of closed positions and realized PnL in ETH per window, the 30-day median hold time and an auto_strategy_tag ( scalper , day_trader , swing_trader or hodler , the same thresholds as Solana KOL scores). Until now this existed only for Solana KOLs. The numbers come from the same FIFO cost-basis calculation as /rhc/wallet/{address}/pnl over the last 90 days, and carry the same…
Small verified wallet token balances no longer round to zero
Announcement · Source linked
Solana position annotations and Robinhood Chain wallet holding fields preserve the numeric token quantity supplied by the balance classifier. Previously, the response formatting rounded these quantities to six decimal places on Solana and twelve on Robinhood Chain. A wallet…Show allShow less
Solana position annotations and Robinhood Chain wallet holding fields preserve the numeric token quantity supplied by the balance classifier. Previously, the response formatting rounded these quantities to six decimal places on Solana and twelve on Robinhood Chain. A wallet could therefore show a positive holding status alongside a balance of 0 for a very small position. The correction covers the verified balance, the known-cost amount still held, and externally received token amounts. Actual zero balances remain zero; missing balance evidence remains unverified. Monetary-value rounding and…
Robinhood Chain endpoints answer a slow backend with 503 and Retry-After
Announcement · Source linked
When the Robinhood Chain database is too slow to answer within 8 seconds, every /api/v1/rhc/* endpoint and the keyless x402 Robinhood Chain endpoints now return 503 with error_kind: "rhc_backend_timeout" , retry_after_seconds: 10 and a Retry-After: 10 header. Before, this case…Show allShow less
When the Robinhood Chain database is too slow to answer within 8 seconds, every /api/v1/rhc/* endpoint and the keyless x402 Robinhood Chain endpoints now return 503 with error_kind: "rhc_backend_timeout" , retry_after_seconds: 10 and a Retry-After: 10 header. Before, this case returned a bare 500 Internal server error on most routes, which told clients the request was broken rather than to back off and retry. Postgres statement timeouts keep their existing 503 body ( error_kind: "statement_timeout" ). Every other server error is still a 500. Honour Retry-After ; the condition is transient.…
Robinhood Chain wallet funding no longer stalls on very large blocks
Announcement · Source linked
On 2026-10-14 from 12:30 UTC, new Robinhood Chain wallet funding evidence ( /rhc/wallet/{address}/funding and the funding panel on Robinhood wallet pages) stopped updating for almost two hours. A few unusually large blocks made our node refuse the collector's block request, and…Show allShow less
On 2026-10-14 from 12:30 UTC, new Robinhood Chain wallet funding evidence ( /rhc/wallet/{address}/funding and the funding panel on Robinhood wallet pages) stopped updating for almost two hours. A few unusually large blocks made our node refuse the collector's block request, and the collector retried the same request instead of asking for less. It now splits such a request into smaller ones, down to a single block. The collector caught up from where it stopped by 14:25 UTC: funding transfers in the affected blocks are recorded, not skipped. Platform October 14, 2026 #
Robinhood Chain KOL win rate: correct scalper tagging, and a stale ranking is an error
Announcement · Source linked
Two fixes to the Robinhood Chain KOL win rate added earlier today: auto_strategy_tag (on /rhc/kol/{wallet}?include_performance=true and the sort=winrate_* leaderboard) is now classified on the exact median hold time. Before, the hold was rounded to whole minutes first, so a 20…Show allShow less
Two fixes to the Robinhood Chain KOL win rate added earlier today: auto_strategy_tag (on /rhc/kol/{wallet}?include_performance=true and the sort=winrate_* leaderboard) is now classified on the exact median hold time. Before, the hold was rounded to whole minutes first, so a 20 second hold got no strategy at all and a hold of 29 minutes 40 seconds was tagged day_trader . Both are scalper now. median_hold_minutes_30d is still shown rounded to one decimal. GET /api/v1/rhc/kol/leaderboard?sort=winrate_7d|winrate_30d now answers 503 with code: "kol_scores_stale" and retry_after_seconds when no…
Robinhood Chain holders: correct per-holder shares for burn rows
API release · Source linked
GET /api/v1/rhc/tokens/{address}/holders could report a burn address (0x...dead) with a share above 1. On a token with 77 % of its supply burned, the burn row showed share: 3.378 . The concentration block ( top1_share , burned_pct , pool_held_pct ) was always correct; only the…Show allShow less
GET /api/v1/rhc/tokens/{address}/holders could report a burn address (0x...dead) with a share above 1. On a token with 77 % of its supply burned, the burn row showed share: 3.378 . The concentration block ( top1_share , burned_pct , pool_held_pct ) was always correct; only the per-row share was affected. What changed: share is now null on burn rows. For every other row it is unchanged: balance divided by the non-burned supply, with liquidity pools included. New share_of_supply : balance divided by the total supply, for every row including burns and pools. New share_of_circulating : balance…
Robinhood Chain holder count in token intelligence
Announcement · Source linked
GET /api/v1/rhc/tokens/{address}/intelligence?include=holder_count now returns the holder count for Robinhood Chain tokens. Before this, the module answered unavailable with not_in_this_release for every token. The number is the same concentration.holder_count you get from…Show allShow less
GET /api/v1/rhc/tokens/{address}/intelligence?include=holder_count now returns the holder count for Robinhood Chain tokens. Before this, the module answered unavailable with not_in_this_release for every token. The number is the same concentration.holder_count you get from /rhc/tokens/{address}/holders : addresses with a positive balance, liquidity pools and burn addresses excluded, folded from ERC-20 Transfer logs on our own node. It costs 1 of the 8 request budget points instead of the 3 for the full holders module, so a terminal can show it on first paint next to snapshot and risk. The…
Robinhood Chain liquidity no longer goes missing after a launchpad graduation
API release · Source linked
Some Robinhood Chain tokens returned liquidity_usd: null even though they traded in a funded pool. The clearest case was FLW ( 0x867d…b8e1 ): after its Pons V2 bonding curve graduated into a Uniswap v4 pool, a background job kept clearing the token's liquidity on every pass. A…Show allShow less
Some Robinhood Chain tokens returned liquidity_usd: null even though they traded in a funded pool. The clearest case was FLW ( 0x867d…b8e1 ): after its Pons V2 bonding curve graduated into a Uniswap v4 pool, a background job kept clearing the token's liquidity on every pass. A second timing issue left some brand-new tokens without liquidity when they went quiet right after launch. On 2026-10-13 this affected about 430 of roughly 9,000 tokens traded in the previous 24 hours. What changed: GET /api/v1/rhc/tokens/{address} , POST /api/v1/rhc/token/batch and the…
Robinhood Chain early buyers: an exit needs verified holder evidence
Feature release · Source linked
GET /api/v1/rhc/tokens/{address}/early-buyers no longer reports an early buyer as exited when the holder data behind it is missing or unverified. still_holding is now true or false only when the holder read succeeded and the token's holder fold reconciles against on-chain…Show allShow less
GET /api/v1/rhc/tokens/{address}/early-buyers no longer reports an early buyer as exited when the holder data behind it is missing or unverified. still_holding is now true or false only when the holder read succeeded and the token's holder fold reconciles against on-chain supply; otherwise it is null and position is unknown . Each row adds holding_status ( verified_nonzero , verified_zero , unverified ) and holding_reason , and the summary adds unknown_holding next to exited , which now counts only verified zero balances (a transfer out also counts). The response also carries…
Robinhood Chain trades survive long database outages, restarts and ingest backlogs
Announcement · Source linked
The Robinhood Chain trade ingester no longer discards trades it cannot handle in time. During a long database outage it keeps unwritten trades up to a fixed memory ceiling, where it previously started discarding the oldest ones once more than 50,000 were waiting. Anything it…Show allShow less
The Robinhood Chain trade ingester no longer discards trades it cannot handle in time. During a long database outage it keeps unwritten trades up to a fixed memory ceiling, where it previously started discarding the oldest ones once more than 50,000 were waiting. Anything it still has to let go of (past that ceiling, when a waiting queue is full, or still in memory when the process stops) is recorded on disk as a block range that is owed, and those blocks are read again from our own Robinhood Chain node as soon as the ingester is healthy. A restart now writes every waiting trade before it…
Robinhood Chain x402: the USDG offer now carries its EIP-712 domain
Announcement · Source linked
The USDG leg ( network: "eip155:4663" ) of every Robinhood Chain x402 payment offer ( /api/x402/rhc/* ) now carries the token's EIP-712 domain in accepts[].extra : name: "Global Dollar" and version: "1" . Standard x402 clients for the exact EVM scheme, such as @x402/evm , read…Show allShow less
The USDG leg ( network: "eip155:4663" ) of every Robinhood Chain x402 payment offer ( /api/x402/rhc/* ) now carries the token's EIP-712 domain in accepts[].extra : name: "Global Dollar" and version: "1" . Standard x402 clients for the exact EVM scheme, such as @x402/evm , read these two fields to sign the EIP-3009 transferWithAuthorization . Until now they were missing, so those clients refused the USDG option and could only pay with the Solana USDC leg. Our own SDKs ( robinhood-chain-x402 , robinhood-chain on PyPI) were not affected because they already sign with this domain. The values are…