Changelog
This page lists visual changes to the app, newest first. Each feature’s guide covers how to use it.
November 11, 2026
- Explorer links open scan.vf.at: every address, token, transaction and NFT link now opens vfat’s own explorer instead of each chain’s explorer. Insurance policies on Optimism and Arbitrum now open the right policy; they used to open a Base page.
- Nami Genesis fee option: a Nami farm position in your Sickle lets you choose Max Fees, Balanced or Max Points during Genesis, with each option’s points and fee split, fee APR and points.
November 10, 2026
- Portfolio wallets: name your wallets and save sets of them as bundles, then switch between bundles from the Wallets menu. Portfolio reopens on the wallets you had last time. Names and bundles stay in your browser and never go into shared links.
- Links that follow filters: turning a filter or wallet set back to how the page opened now updates the address bar too.
- Portfolio cards: a shared portfolio link’s preview card leads with total value, APR and PnL, with daily earnings and what’s unclaimed underneath. A new button beside the copy-link button shares the same card as an image.
- One Portfolio APR: the Earning group header no longer shows its own APR and daily earnings, which could differ from the Earning in positions total when small balances were hidden.
- Telegram alerts from Portfolio: the Wallets menu and wallet list link a wallet to vfat’s Telegram bot. On phones, choose Add beside the wallet chips to open the list. Press Start in Telegram to watch that wallet.
November 9, 2026
- Portfolio: a position’s details are one compact card about the position, leaving out what its row shows. It has Positions’ range chart with the last 30 days in range beneath it. A Sickle position adds its PnL chart for any wallet in the bundle, connected or not. A Position section holds the Standard range APR for the same pool, unclaimed fees and rewards, composition, pool share and when it opened. Contract addresses move behind Contracts.
- Sickle, Lending and Staking location badges: their icons are the same size as the other location badges and line up with the label.
- Range chart: the price direction switch is as tall as the Range settings button beside it.
- Portfolio tokens: a wallet token’s details show its price over the last 24 hours with an hourly readout on hover, its on-chain liquidity, each wallet’s holding and its 24-hour value change, and Yield’s top three pools for it with Earn beside each.
- Portfolio table: the asset table no longer casts a shadow beneath it.
November 7, 2026
- Portfolio: Sickle positions show their lifetime PnL, as on Positions, for every wallet in the bundle, including watched ones: a PnL total beside Earning (a tile on phones), a PnL column on each position’s row with the shown positions’ total on the group header, and the PnL, ROI and age in a position’s details. Positions held directly in a wallet aren’t tracked and say so.
- Portfolio: your connected wallet’s positions have Positions’ action tiles on their row: Harvest, Compound, Rebalance and Exit for Sickle positions, and the Wallet positions buttons, such as Deposit NFT and Migrate, for positions held directly in your wallet, then an arrow to the pool. They look as they do on Positions. The separate Rebalance button is gone, since Rebalance is among the tiles, and a position whose protocol details couldn’t be loaded shows one greyed tile saying management is unavailable. Your wallet’s tokens have a Swap tile before Earn, which opens the swap form over Portfolio to swap the token into any other, on its chain or across chains; it replaces the Swap to native button in a token’s details. Other row actions keep their names, as tiles.
November 6, 2026
- Yield: the APR trend is one arrow, steeper for bigger changes, with its change in grey. The arrow is coloured only when APR moved more than 10%.
- Positions: vault shares held in your wallet moved from the table to Wallet positions, where Migrate transfers them into your Sickle. The table, count and totals cover Sickle holdings.
- Positions: a holding in a vault vfat doesn’t list shows the vault’s name instead of its address, and says why it has no yield or details.
- Phones: a tap anywhere on a Yield, Positions, Protocols or Stats row opens it. Only the star and the action tile stay separate. A pool’s sheet shows its type, TVL and APR at the top, with the same explanations.
- Phones: tables that scroll sideways fade at the edge and keep their name column in view. Protocols starts with Protocol, TVL and Sickle TVL, and Customize columns adds the rest.
- Phones: Menu starts at the pages the bottom bar doesn’t cover, with Home beside App settings and Notices. Yield and Positions search read Search, or -USDC to exclude.
- Tokens: Last 24 Hours is now Chart.
- Positions: vault holdings are rows in the positions table instead of separate cards, with the same quick buttons and widget as other positions. Exit on the row withdraws the whole holding. The summary totals now include vaults.
- Loading: tables show placeholder rows in their real columns instead of a spinner, so rows land without moving the page. Portfolio holds Earning and the idle token suggestion in place while they load.
November 5, 2026
- Rebalance: the form and quick Rebalance recalculate the range around the price, in range or not: your automation’s saved offsets if it has them, otherwise the same width centered on the price.
- Positions: the Settings button under the action tabs is gone, since it repeated Settings on the automation line above them.
- Range settings: in a Rebalance, Rebalance starts from can open on the position’s Current bounds instead of recentering, so you choose which bound to move.
- Rebalance: Range mode adds Width: set how wide the range is in one field, or hold Alt (Option on a Mac) and scroll over the chart, and both bounds move together around the price.
- Transactions: a failed transaction says your tokens and position didn’t change and only the network fee was spent, then gives the likely cause. A failed quote says nothing was sent and what to try. Cancelling a price impact warning reads as cancelled, not failed.
- Automation: statuses are in plain words, such as Couldn’t get a quote or Paused: price past your cutoff, and say whether it retries on its own.
- Positions: a greyed Harvest, Compound, Rebalance or Exit tile says why on hover, focus or tap. Batch forms say what’s missing on the button, and a Failed tag in a batch shows its reason on tap as well as hover.
- Empty lists: a search with no matches says so and offers Clear search, and hidden rows read 3 positions hidden by filters.
- Words: Harvest replaces Collect and Claim, gas account replaces prepaid gas, Set up on a gas account now reads Needs setup, and the name is vfat everywhere.
- Yield: pools holding under $10,000, or with an APR over 10,000%, are tagged Thin pool. An APR over 10,000% shows as >10,000%. Pools under $10,000 follow the rest in the default sort; sort by a column to rank every pool together.
- Deposit: a thin pool warns above Deposit how little it holds and why its APR won’t last.
- Deposit: the Deposit mode box uses the same lighter background as Position range, so the unselected mode is visible.
- Yield: the APR trend tops out at >999%; the tooltip keeps the real change.
- Portfolio, Positions, Yield and Tokens: when data can’t load, totals show —, with the last known value and its age where there is one, never $0. Tables say what couldn’t load and offer Retry, and say so when you’re offline. Yield shows Loading pools… or Pools unavailable in place of 0 of 0 pools.
- Portfolio: Updated becomes Couldn’t refresh with the age of the last good load.
- Notices: the incomplete balances notice is now Totals may read low, naming the chains it couldn’t read, and says your funds aren’t affected.
- Positions: with a position that has no price, Total value shows At least the sum of the rest and explains what it leaves out. Its Unavailable Deposit cell says why, and APR shows —.
- Portfolio and Positions: both now say Unclaimed, for fees and rewards not yet harvested.
November 4, 2026
- Portfolio: the totals add Out of range, the value and count of pool positions outside their range, and Claimable, the uncollected fees and rewards in the shown positions, for every wallet in the bundle. Empty totals stay hidden, and unavailable ranges are counted separately. On phones the totals are more compact: Net worth sits on one line, and every card shares one row that scrolls sideways when the cards don’t fit.
- Portfolio: hiding small balances now also hides Uniswap v4 and Fables positions worth under $1.50, which were always shown, valuing them as the Value column does.
- Yield and Positions: the search field shows that
-excludes, such as -USDC, and Yield’s search help now covers it:ETH USDCmatches either,ETH -wstETHleaves wstETH out, and-wstETHalone lists everything else. - Positions: a group’s widget only has tabs for what can run, such as no Move with a single position, and says so when nothing can. The Exit N positions button under it is now an Exit tab, where you choose the positions, the token you exit to and the slippage.
- Deposit: the automation section is now Automate & cover where cover is available, instead of Add to this deposit.
- Header: the vfat logo is a little smaller.
- App settings: now a dropdown from the header gear on desktop that opens when the pointer rests on the gear, or on a click (a drawer on phones). Settings that change one feature now live where that feature is. App settings keeps Display (with Theme as Light, Dark and System side by side, replacing the header’s theme button) and Networks. Use full width is gone.
- Range settings: a sliders button on every range chart, in the range editor and beside a position chart’s title, opens rebalance goals, range percentages (shown on the current range both ways) and liquidity bars in place, as a sheet on phones.
- Yield: a Fee chip after Min APR shows and changes the maximum pool fee, 5% by default. Filters notes the default fee cap. Unlisted assets remain visible across the app; the local Whitelisted only filter limits the current view. Token warnings use the backend finding when available, with amber Unverified as the fallback.
- Transactions: slippage rows offer Make 1% my default when you pick another value; the price impact prompt shows your limit with picks that re-check the transaction; dust problems are fixed with Max dust and High dust limit picks in place. A row’s Exit panel picks the token and can keep it with Exit to … every time; review switches and exit tokens are in Positions’ Customize columns → Quick actions. A deposit’s automations offer Save as my defaults, and editing one deposit’s limits no longer changes your defaults.
- Wallet: the header’s wallet control, now without the network logo, opens a menu on hover or click, and on phones the Wallet tab opens the same menu as a drawer. It has your address with Copy address, the native balance, Fund wallet, Send, Activity, Network, More wallet options, HyperEVM block mode, moved out of App settings, and Disconnect. Connecting a wallet is unchanged.
- Notices: the bell is always in the header and opens its list on hover too, with a round blue count; the list ends with Notify this device, the push switch, which moved out of App settings.
November 3, 2026
- Portfolio: on phones, the idle tokens strip has a close button too, so it can be hidden for a week and shown again from Notices. The strip and its buttons are 44 pixels tall.
November 2, 2026
Navigation: Settings opens App settings directly, without a dropdown. Automation is reached from Positions instead of the header or phone menu.
Automation UX: chains show position counts and favor chains with holdings; activation appears before gas controls, and Manage permissions expands detailed approvals. Readiness separates steps handled by Save from funding problems and pending checks. Save labels wrap on small phones; Menu and All chains identify navigation destinations.
Positions: an Automation button beside search, on phones too, opens one view of every chain’s automation and gas account, replacing Sickle settings. Each chain lists its automated positions, its switch and its gas account with how long the balance lasts and which positions rely on it; a dot on the button marks a gas account that needs setting up, is low or is empty. Add gas offers amounts in rebalances and can turn on paying from the account in the same step. A switched-on but empty gas account no longer hides the deposit form’s funding warning.
Automate this position: a Ready to run block above Save lists what the position’s automation needs on its chain: the chain’s automation switch, each action’s approval and how runs get paid, with the gas account’s level and Add gas when fees fall short. Save names what else it turns on, such as Save and turn on automation for Base, approves every automation that is on, and the footer lists each transaction it sends.
Gas signals: a notice under the header warns on every page when a gas account your automated positions rely on is low or empty, with Add gas; dismissing it holds until the level drops again. Push notifications cover the same drops. On Positions, a position’s automation line says Automation off on its chain with Turn on instead of a row of Off, shows the gas level its runs rely on and Add gas while a run waits for gas. Gas reasons read in plain words, such as Waiting for gas and Waiting: fee below gas cost, with what fixes them in the row tooltip.
Notices: a dismissed notice is no longer gone for good. A bell in the header, and Notices in the mobile menu, list every notice, shown and hidden, with Show again for each hidden one and Show all again. The bell shows the current count before you open it, including hidden notices. This covers the gas notice and Portfolio’s idle token suggestions.
Protocols, Tokens and Lending markets: the Filters button is gone, since the chain was its only filter. A Chain chip now sits in a bar along the top of the table, with how many rows match out of all that match your search and Sort, as on Yield, Positions and Users.
Yield and Positions: on screens 2,240 pixels and wider, the details column beside the table widens into the room the table doesn’t need, up to 1,024 pixels, so the chart tabs fit side by side and the details run in two or three columns without scrolling. On tall screens it shows every chart at once, two to a row with a shared cursor, and the charts grow taller to fill the column. In a narrower column, the chart tabs wrap onto a second row instead of scrolling sideways.
Velodrome recovery: with its October deadlines past, the recovery notice is gone, along with the review dialog it opened, the matching notice in a position’s actions and the Velodrome recovery guide.
November 1, 2026
- Positions: group headers show their APR again, weighted by deposit, as the chain groups did before grouping by protocol, pool and status was added.
- Positions and Yield: the details card is back to compact rows, the label on the left and the value on the right so numbers line up, in two or three balanced columns. Contracts & IDs stays open with every address’s explorer link and copy button, and token names again open their explorer link and address copy. Token logos no longer sit on a grey backing.
- Positions: the current-price marker and value keep one colour in range charts and the Status column’s range bar; out of range, the range itself turns red as before.
- Deposit and Rebalance: the read-only price or % beside each bound no longer shows a hint on hover, which covered Range mode; selecting it still switches modes.
- Positions and Yield: expanded rows open on one chart card with a tab per metric and a cursor shared by every tab, then one details card in full-width bands, with addresses and IDs folded under Contracts & IDs. Positions open on Your PnL, Yield on Avg APR. The same layout is used in the wide widget, on the farm page and on phones.
- Positions: the PnL annualized is labelled Return APR, and a farm’s in-range staked liquidity is Staked in range instead of a second Active TVL.
- Portfolio: idle token suggestions show the APR of the Standard range the deposit form starts from, so they match the form, rather than the pool’s average APR, which now shows only when no Standard range can be worked out, marked avg.
October 31, 2026
- Home: Supported Integrations shows one row of logos per list, with Show all to expand it.
- Stats: chain names and the Farms and Pools counts in the chain table are plain text, without underlined links or ↗ arrows.
- Protocols: the Sickle TVL / Protocol TVL column is now Sickle share, and Cover, Positions and Average Position are hidden by default.
- Tokens: each row’s 24h sparkline takes the color of its 24h change: green, red, or grey when flat.
- Token detail: pool rows use the same identity as Yield rows, and the table no longer has a Token Price column.
- Positions: batch action position pickers use borderless cards, with a soft fill on selected rows and small gaps between choices.
October 26, 2026
- Navigation: the phone bar marks the current section in the primary colour.
- Cover: the deposit form’s Cover chip uses the same surface and selected state as the automation chips in both themes.
October 25, 2026
- Range bars and charts: in-range green and out-of-range red use matching strength, so both stand out equally.
October 23, 2026
- Tables: search and view controls sit slightly above the table, with a small gap between them.
October 20, 2026
- Home: the tour video loads only when selected, in portrait on phones held upright and widescreen elsewhere; touch devices and narrow windows request fullscreen, and the player fills the window when fullscreen is unavailable.
October 17, 2026
- Theme: light mode uses soft off-white cards on a warm pale-gray background; dark mode uses light gray text on cool slate surfaces.
October 16, 2026
- Theme: cards, filled buttons and inputs share a subtle shadow, including KPI cards, attached action buttons and fields inside menus or cards; combined token and amount fields keep one shadow, and tabs and dense table controls stay flat.
- Header: the connected wallet and Copy address controls share a flat surface without a shadow.
- Yield: pool detail columns share the same height, with extra space below shorter groups, and keep labels close to their values so charts sit higher on the page.
- Yield: side-by-side Farm and Pool panels share the same height while their rows stay compact.
October 14, 2026
- Yield: on phones, pair names are slightly smaller so the full name usually fits.
October 13, 2026
- Selection: selected filters, tabs and options use a soft light blue highlight in light mode and a brighter neutral grey highlight in dark mode, with readable neutral text, including Yield filters, App Settings currencies and Swap’s selected route.
- Tables: in Yield and Positions, a light grey header strip separates the column labels from the filter bar in light mode.
- Colors: positive values, negative values and warnings use saturated green, red and amber, brighter in dark mode and darker in light mode.
October 12, 2026
- Theme: the light theme uses white cards on a warm pale background; dark mode uses cool slate surfaces and light gray text.
- Colors: primary actions, automation settings and Connect wallet keep a solid blue fill, and transaction buttons keep strong colors for their action type.
- Colors: supporting buttons, filters and colored tags use soft tints; status badges and migration cards use tinted backgrounds without outlines; fee and native-asset tags use neutral fills.
- Selection: selected table rows use a subtler shade so figures stay clear; option cards, tabs and filter choices highlight the whole selection, with quieter neutral fills for unselected options and no outline.
- Inputs: fields use neutral fills without outlines when clicked or tapped, Tab navigation shows a subtle gray indicator inside the field, and surface shades and quiet dividers separate supporting details.
- Home: feature cards, quick links, MCP and integration tiles use the same borderless card style as dashboard KPIs and pool analytics, separated by page-background gaps.
- Home: subtle rising lines with varied speeds, lengths and brightness move behind the hero; they pause when the hero is out of view or the tab is hidden, and stay still when your device requests reduced motion.
- Navigation: desktop navigation marks the current section with neutral text and a subtle gray background.
- App Settings: preferences, currencies, RPCs and default inputs use borderless cards, with small gaps between sections on a neutral background.
- Tables: search fields and toolbar buttons share a neutral surface; row action buttons match their row’s surface, with small gaps between rounded buttons instead of dividers; disabled actions show muted icons; selection and hover colors extend through pinned actions.
- Yield: rows use a compact layout with the pool name in bold; on phones, the Pool/Farm marker is a smaller unfilled icon.
- Yield and Positions: expanded details use the table rows’ card surface, white in light mode, with 8px page-background gaps instead of divider lines, detail rows aligned with their headers, compact shaded value rows and matching borderless analytics cards; only the final row of a shorter panel stretches.
- Positions: position and grouped-chain tables use Yield’s soft row surfaces, spacing, sorting indicator and full-height action buttons; on phones, rows show a bold pair name and a smaller Pool/Farm marker.
- Positions: the automation strip in the position overview uses the shared blue highlight and spans the widget width.
- Portfolio: wallet holdings are separated by surface color and small gaps.
- Deposit and Swap forms: narrow surface gaps separate the token/currency options and MAX, matching the range steppers and slippage presets.
- Swap: price-impact badges in transaction details use soft colors matching the route badges.
- Automation: warnings use a soft colored background and informational notices a neutral shaded surface, both borderless.
- MCP: the selected client has a soft highlight, and setup snippets sit on a shaded surface.
- Sickle settings: each account uses a borderless card; the expanded account has a soft highlight, and its settings use separate surfaces.
- Status: chain cards sit borderless on the page background with consistent spacing.
October 4, 2026
- Home: the page shows before its live stats and integrations finish loading, with placeholders until the data arrives.
- Home: cards reveal with staggered 0.8-second animations as they enter view, including on first load; content stays steady when you return to a saved scroll position, and animations are off when your device requests reduced motion.