Robinhood Chain·Scanned 05 Nov 2026, 15:48 UTC
TH
Verdict
50/100 safety
Unverified Pons template token, no owner powers seen; buy and sell work at ~4% fee; 23% was sniped at launch.
This is a standard Pons launchpad token that still trades on its bonding curve; buying and selling work with a fixed 4% fee and no owner controls were found, but the token's source code is not verified. The launch was captured: 20 sniper wallets, including bundles funded by common wallets, bought about 23% of supply in the first seconds and have since sold to later buyers, and bundle-linked wallets still hold about 4%. Liquidity is very thin, and the project, website and X account are all one or two days old, with an anonymous team and some products promoted as live that the site says are not yet deployed.
Score breakdown
- Contract58
- Token42
- Social / X42
- Website50
Higher is safer · 0 = worst · 100 = best
- Yes
- 4%
- Unknown
- 0% / 0%
Key findings
- HighClaim contradicted: The Swap Gateway routing contract (ThoriosFlow) charges no fees and retains no balance.
- MediumOne funder's 8 wallets bundled 7.14% of supply
- MediumSource code is not verified
- MediumPons factory owner controls graduation rescue and executor settings
- GoodToken was made from the fixed Pons template with no owner powers
What would change the verdict
- Raises safety:Token source is verified on the explorer and matches the Pons template → contract score up
- Raises safety:Curve sells out and graduates to Uniswap v4 with LP held by the Pons locker → up
- Lowers safety:Bundle-linked wallets (about 4.4% combined) dump their remaining tokens into the thin curve → down
- Lowers safety:Pons factory owner swaps the graduation executor or uses the rescue path on this launch → down
Unlock PRO for this project
A one-time payment adds hourly re-checks for good, a 7-day watch, questions to the jury, the launch map and deeper social forensics.
Findings
13 findingsRisks (8)
HighClaim contradicted: The Swap Gateway routing contract (ThoriosFlow) charges no fees and retains no balance.claims-mismatchDeterministic
Claimed 0% tax, but the simulation measured buy 4.0% / sell 4%.
Evidence
Show source
ThoriosFlow passes it to the Uniswap v3 router in the same call and leaves a receipt; it has no owner, no fee and keeps no balance.- forkmeasured buy 4.0% / sell 4%
Confirmed by: facts
MediumOne funder's 8 wallets bundled 7.14% of supplysnipersDeterministic
8 wallets funded by the same address 0x5309…f32f bought 7.14% of the supply together (block 106501635). Spreading one buyer over many wallets hides how much a single entity controls.
Evidence
- on-chainbundles with commonFunder 0x53091256ebd2d8aa37b45536a5fd864ca764f32f: 8 wallets, pctSupply 7.14
Confirmed by: facts
MediumSource code is not verifiedotherDeterministic
The contract source is not published on the explorer, so nobody can read what it really does. The analysis relies on bytecode only.
Evidence
- on-chainexplorer: no verified source for 0x55f9f963B348FDca9BA7c33F7148a91cCEFd745C
Confirmed by: facts
MediumPons factory owner controls graduation rescue and executor settingsotherAI
The bonding curve has no owner of its own, and its reserves can leave only through graduate(). That function is restricted to the factory and works only once the curve is sold out. However, the factory owner 0x263e…19Dd has several powers over this launch. They can call rescueSweptGraduation, which sends out tokens and ETH, after a 7-day GRADUATION_RESCUE_DELAY. They can call forceSweptGraduation and rescueCurveFees. They can replace the graduationExecutor and launchDeployer at any time with no timelock. The factory source was omitted, so it is unverified whether these paths could redirect migration liquidity away from the Uniswap v4 pool and LP locker. This is a launchpad-wide power held by the Pons protocol owner, not by the token creator.
Evidence
- on-chainPonsV2LaunchFactory owner = 0x263ed295dAFaE1d9AAdD6E56c4B6F9f38eE019Dd
- staticfn rescueSweptGraduation(address,address) [owner] @PonsV2LaunchFactory.sol:L1254-L1286 — sends tokens out, sends ETH
- staticparam GRADUATION_RESCUE_DELAY = 604800 (constant)
- staticfn setGraduationExecutor(address) [owner]; fn setLaunchDeployer(address) [owner]
- codePonsV2BondingCurve.sol:L598-L638
Show source
function graduate(address recipient) external onlyFactory returns (uint256 quoteOut, uint256 tokenOut) { if (graduated) revert AlreadyGraduated(); if (recipient == address(0)) revert ZeroAddress(); if (!readyToGraduate()) revert NotReadyToGraduate(); // Halt trading before the sweep, not after. The sweep pays the escrow, // and a quote asset with a transfer callback can re-enter buy() or // sell() from inside that payment. This function is deliberately not // nonReentrant so it stays callable from within buy()'s own guarded // scope, so the flag is the only thing closing that window. Reentering // while it was still false repopulated the fee buckets after they had // been zeroed, leaving balances with no quote behind them once the // reserve was handed over, and no way to ever sweep them. // // Safe to set here: readyToGraduate() is already evaluated above, and
Confirmed by: claude-opus-5.5, grok-4.7 · Disputed by: gpt-5.6-sol
MediumX posts present Rail and Record as live; site says not deployedclaims-mismatchAI
The X account presents the Disbursement Rail and Evidence Record as working products (payouts to many wallets, on-chain graded price claims). The project's own pages say both were only written and tested on a copy of Robinhood Chain and will open on this site the moment they are deployed. The rail page is still 'Reading the rail…' and the record scoreboard says no graded claims yet. Anyone buying $TH for those utilities is ahead of what the site itself says is on chain.
Evidence
Show source
Thorios⁹⁰ expands its execution infrastructure with the Disbursement Rail, enabling programmable distribution of ETH, USDG, and tokenized equities across multiple wallets through a single funded contract.Show source
The Disbursement Rail is written and tested on a copy of Robinhood Chain; it opens here the moment it is deployed.Show source
The Evidence Record is written and tested on a copy of Robinhood Chain; it opens here the moment it is deployed.Show source
No graded claims yet.
Confirmed by: grok-4.7 · Disputed by: gpt-5.6-sol
LowLaunch sniped: 20 wallets took 23.5% of supply in 10 secondssnipersDeterministic
The launch was captured: 20 wallets bought 23.5% of the supply within 10 seconds. A small, fast group set the early price and could sell into everyone who bought later — bad for launch fairness and a strong insider/bot signal. They now hold 0% of supply, so current dump pressure from them is low — most of it was already sold, i.e. they exited on later buyers.
Evidence
- on-chainsnipers: windowBlocks=100, wallets=20, pctSupplyBought=23.4693, pctSupplyHeldNow=0
- on-chainsnipers.pctSupplyBought = 23.4693, pctSupplyHeldNow = 0
- on-chainbundles: block 106501635 commonFunder 0x53091256ebd2d8aa37b45536a5fd864ca764f32f pctSupply 7.136; block 106501638 commonFunder 0xf70da97812cb96acdf810712aa562db8dfa3dbef pctSupply 2.8416
- on-chainclusters: funder 0xf70da97812cb96acdf810712aa562db8dfa3dbef pctSupplyHeldNow 2.7393; funder 0x53091256ebd2d8aa37b45536a5fd864ca764f32f pctSupplyHeldNow 1.64
- on-chainDeployer 0x3669ba75ae3c204b3fd5582835481dd0310d0a80 holds 0% now
Confirmed by: facts, claude-opus-5.5, grok-4.7
LowOnly about $2,475 of curve liquidity and 68 holdersliquidityAI
The token has not graduated and trades only on the bonding curve, which holds about $2,475 in liquidity. Holders number 68. The website domain was registered on 2026-11-04, one day before the token launched on 2026-11-05. Even modest sells will move the price a lot. A PinkLock02 locker holds 3.047% of supply. The lock terms and owner are not in the material.
Evidence
- on-chainliquidity: pons-v2-bonding-curve pool 0x1b2c18a70304a74b30f73a5f35c491De8a699eAd liquidityUsd 2475; graduated=false
- on-chain0xbe0b139abc90723af76a89d3051f60ba1b64c8d9 (PinkLock02) 3.047%
Confirmed by: claude-opus-5.5, grok-4.7, gpt-5.6-sol
LowSite and posts disagree on stock-token count (45 vs 46)claims-mismatchAI
The site, litepaper overview, and most posts say the model covers 46 Robinhood stock tokens. A launch post and the litepaper's Evidence Record section say 45. That does not by itself let anyone drain funds, but the published universe size is inconsistent.
Evidence
Show source
Reads live from 46 Robinhood stock tokens across 128 Uniswap v3 pools.Show source
Yours can be any of 45 stock tokens.Show source
Each of the 45 listed stock tokens grades on its deepest live pool whose oracle keeps at least 1,400 observations.
Confirmed by: grok-4.7, gpt-5.6-sol
Positive signals (2)
PositiveToken was made from the fixed Pons template with no owner powersownershipAI
FACTS show the token was created by the Pons launch deployer helper 0x3711…1A42. That verified helper deploys tokens only from the hard-coded PonsV2LauncherToken creation code via CREATE2. The creator therefore could not ship custom token logic. The selector list matches a plain launchpad template: ERC-20 functions, burn/burnFrom, metadata getters, and curve/launchFactory/deployer getters. It contains no mint, fee, blacklist, pause or owner setter. Limit: the token's own source is not verified on the explorer and the PonsV2LauncherToken source was not provided, so burnFrom's allowance check and similar details are assumed standard, not proven.
Evidence
- on-chainCreated by factory contract 0x3711ceA4feaDE896C913C68F01Eda97Cb06D1A42; tx sender 0x3669Ba75ae3c204B3Fd5582835481DD0310d0a80
- codePonsV2LaunchDeployer.sol:L99-L109
Show source
function deployLaunch(LaunchDeployment calldata params) external onlyFactory returns (address token, address curve) { _requireMetadataWithinLimits(params); bytes32 salt = _launchSalt(params); curve = Create2.deploy(0, salt, _curveCreationCode(params)); token = Create2.deploy(0, salt, _tokenCreationCode(params, curve)); } - codePonsV2LaunchDeployer.sol:L170-L185
Show source
function _tokenCreationCode(LaunchDeployment calldata params, address curve) private view returns (bytes memory) { return abi.encodePacked( type(PonsV2LauncherToken).creationCode, abi.encode( params.name, params.symbol, params.logo, params.description, params.socials, params.originalDeployer, curve, factory, params.supply ) ); - on-chaincontract.verified = false; functions: name, approve, totalSupply, transferFrom, decimals, burn, launchFactory, socials, balanceOf, curve, description, burnFrom, symbol, transfer, getTokenInfo, deployer, allowance, logo
Confirmed by: claude-opus-5.5, grok-4.7, gpt-5.6-sol
PositiveBuys and sells work; the 4% cost is a fixed curve fee plus creator taxhoneypotAI
The fork simulation bought and sold on the bonding curve. A second wallet that received tokens by transfer could also sell, and selling one hour later still worked. Transfer tax was 0%. The 3.97% buy and 4% sell cost is a 1% protocol fee plus a 3% creator tax. Both are immutable values set when the curve was deployed, so nobody can raise them. The curve also refuses any fee plus tax combination above 20%. The 99% snipe tax applied only during the first 3 seconds after launch and is now 0.
Evidence
- forkcanBuy=true, canSell=true, buyTaxPct=3.97, sellTaxPct=4, transferTaxPct=0
Show source
second wallet (received via transfer) could sell - codePonsV2BondingCurve.sol:L109-L114
Show source
uint256 public immutable feeBps; // Creator-chosen at launch, capped by the protocol at launch time. Kept // entirely separate from feeBps: it is layered on top of the base trade // fee, not part of the protocol/buyback/creator split, and is paid to // the creator in full. uint256 public immutable creatorTaxBps; - codePonsV2BondingCurve.sol:L219-L222
Show source
// The factory applies the same ceiling before deploying, but the curve // defends its own invariant rather than inheriting it: a combined fee // at or above the whole trade would break the quote accounting. if (feeBps_ + creatorTaxBps_ > MAX_TOTAL_TRADE_FEE_BPS) revert InvalidFeePolicy(); - codePonsV2BondingCurve.sol:L315-L323
Show source
function currentSnipeTaxBps(address recipient) public view returns (uint256) { if (snipeTaxExempt[recipient]) return 0; uint256 startBps = snipeTaxStartBps; if (startBps == 0) return 0; uint256 elapsed = block.timestamp - launchedAt; uint256 window = snipeTaxSeconds; if (elapsed >= window) return 0; return startBps >> ((elapsed * 14) / window); } - codePonsV2BondingCurve.sol:L541-L566
Show source
function sell(uint256 tokensIn, uint256 minQuoteOut, address recipient) external nonReentrant onlyInitialized returns (uint256 quoteOut) { if (graduated || readyToGraduate()) revert CurveGraduated(); if (tokensIn == 0) revert ZeroAmount(); if (recipient == address(0)) revert ZeroAddress(); (uint256 quoteReserveBefore, uint256 tokenReserveBefore) = getReserves(); IERC20(token).safeTransferFrom(msg.sender, address(this), tokensIn); uint256 grossQuoteOut = PonsV2BondingCurveMath.getAmountOut(tokensIn, tokenReserveBefore, quoteReserveBefore, 0); uint256 fee = (grossQuoteOut * feeBps) / BASIS_POINTS;
Confirmed by: claude-opus-5.5, grok-4.7, gpt-5.6-sol
Notes (3)
LowFactory can change the creator fee recipient; buyback is offfeesAI
The creator 0x3669…0a80 receives the 3% creator tax and the creator share of the 1% fee through the fee escrow. The factory can change this recipient. Per the comments, it does so for a creator-initiated change behind a 3-day timelock, or for a protocol-owner override. The factory can also toggle the buyback-and-lock route, which is currently disabled. These settings only decide who receives fees. They cannot raise fees or touch trader reserves. rescueFees pays pending fees straight to the fixed recipients and does not take curve reserves.
Evidence
- codePonsV2BondingCurve.sol:L343-L363
Show source
function setCreatorFeeRecipient(address newRecipient) external onlyFactory { if (newRecipient == address(0)) revert ZeroAddress(); emit CreatorFeeRecipientUpdated(deployer, newRecipient); deployer = newRecipient; } /** * @notice Enables or disables this launch's buyback-and-lock fee route. * The factory authorizes both the current creator recipient and protocol * owner before forwarding the setting here. * @dev Applies to fees charged from here on, not to fees already pending. * Each trade earmarks its buyback slice as it is charged, so a toggle * cannot reach back and reroute value that accrued under the opposite * setting. Without that, a disable landing before a sweep would divert a * buyback the creator had already earned into their own payout, and an - codePonsV2BondingCurve.sol:L850-L871
Show source
function rescueFees() external onlyFactory returns (uint256 protocolAmount, uint256 creatorAmount) { uint256 pending = quoteFeeBalance; uint256 tax = creatorTaxBalance; if (pending == 0 && tax == 0) revert ZeroAmount(); protocolAmount = (pending * protocolFeeShareBps) / BASIS_POINTS; creatorAmount = pending - protocolAmount + tax; quoteFeeBalance = 0; // Symmetrical with the sweep. This pays the creator their whole // bucket, earmark included, so leaving the earmark behind would let a // settled claim survive into the next accrual and divert fees the // creator has not earned yet into the vest. buybackQuoteBalance = 0; creatorTaxBalance = 0; - staticparam CREATOR_FEE_RECIPIENT_TIMELOCK = 259200 (constant); buybackEnabled = false
Confirmed by: claude-opus-5.5, grok-4.7, gpt-5.6-sol
InfoWebsite swap tool worked in a test but does not involve THwebsiteAI
The dApp test used the project's ThoriosFlow contract to swap 0.01 ETH for 0.06515 TSLA through Uniswap v3. The swap succeeded, the wallet received the tokens, and no unexpected approvals appeared. This shows the site's swap tool works as described. It says nothing about TH itself.
Evidence
- forkdappTests swap step: swap(tuple) to ThoriosFlow 0x59f5bf52cdf06da68ba1da5e260aca773a6291d1
Show source
wallet -0.01 ETH, +0.06515 TSLA
Confirmed by: claude-opus-5.5, grok-4.7, gpt-5.6-sol
InfoX account, domain and token all created within two days, anonymous teamsocialAI
@thorios90 was created on 5 Nov 2026, about 90 minutes before the token was deployed. The domain was created the day before. Followers are 87 with ordinary single-digit likes, not a huge bought audience. No named people are on the site or in the bio, and a search of X did not turn up third-party scam, rug, or honeypot posts about this contract. There is simply no public track record yet. The facts layer also lists no prior tokens for the deployer.
Evidence
Show source
0x55f9f963b348fdca9ba7c33f7148a91ccefd745c One market. One continuous model. Every fill becomes evidence.- on-chaindeployedAt=2026-11-05T05:43:06.000Z
Show source
X profile createdAt 2026-11-05T04:14:26.000Z; domainCreatedAt 2026-11-04; followers 87; deployerHistory [] Show source
Follow @thorios90 on X November 5, 2026
Confirmed by: grok-4.7, claude-opus-5.5
Score breakdown
Higher is safer. The overall is the weighted average of the assessed parts, then capped by hard facts.
Contract
weight 45%58Capped · max 60source code not verified → max 60
Deployed from the fixed Pons template with no owner, mint, fee or blacklist functions and working sells, but the token's own source is unverified, which caps this score.
Why this score
Raised the score
- Created by the verified Pons deployer from fixed template code
- No mint, pause, blacklist or owner setter in the function list
- Buy, sell, transfer-then-sell and sell after 1h all worked
- Curve fee 1% + creator tax 3% are immutable and capped
Lowered the score
- Token source code not verified
- Pons factory owner holds graduation rescue and executor powers with no timelock on executor changes
- Creator fee recipient can be changed by the factory
Token
weight 30%42The launch was captured by 20 sniper wallets and funded bundles that took about 23% of supply and have sold out, and the curve holds only about $2,475.
Why this score
Raised the score
- Deployer holds 0% and has no recorded sales
- Snipers now hold 0%, so current dump pressure from them is low
- Top 10 holders own about 23% outside the curve
Lowered the score
- 20 wallets sniped 23.5% of supply in 10 seconds and exited on later buyers
- One funder's 8 wallets bundled 7.14% at launch; another funded 4 wallets
- Bundle-linked wallets still hold about 4.4%
- Very thin liquidity (about $2,475) and only 68 holders
Social / X
weight 15%42Brand-new anonymous X account created the same day as the token, with posts presenting products as live that the site says are not yet deployed.
Why this score
Raised the score
- Small, organic-looking audience without obvious bought hype
- No third-party scam or rug warnings found
Lowered the score
- X account created about 90 minutes before the token
- No named team
- Posts market Rail and Record as live while the site says they are not deployed
- Inconsistent stock-token count (45 vs 46)
Website
weight 10%50The site's swap tool worked as described, but the domain is one day old and some product pages admit features are not yet deployed.
Why this score
Raised the score
- Swap tool tested successfully and routed through Uniswap v3 as described
- ThoriosFlow no-owner claim confirmed
Lowered the score
- Domain registered one day before launch
- Rail and Record pages show nothing deployed yet
- Unverified treasury lock and token-gating claims