QTC 1Click swaps settle as transfers not token_diff: index them as fills #43

Closed
opened 2026-10-06 17:26:56 +00:00 by grenade · 0 comments
Owner

Why

Since launch the NEAR Intents market page has shown no price and no settlements, while QTC trades heavily. Over the indexed range the scan has recorded zero QTC token_diff trades. Over the same period:

  • 1,838 Ref pool buys by solver-ref-2.near
  • 187,716 QTC bridged onto NEAR in 120 deposits

1Click doesn't settle QTC swaps as token_diff trades. In 300 blocks of intents.near (from #218,819,523), there were 196 token_diff events and none involved QTC. QTC appeared only in transfer, mt_transfer and ft_withdraw. One buy, traced end to end (tx 9CgpySZHNk…, block 218,819,631):

  1. solver-ref-2.near transfers 200.58 QTC to a one-off 1Click account (91f0b2…).
  2. In the same transaction, that account transfers the same QTC on to 51e8f9… (a shared account) with a memo.
  3. The solver restocks: an ft_withdraw of USDC to the Ref pool, memo rebalance (the swaps #37 records).

Over the previous 1,200 blocks the one-off account did nothing else. The user's payment never appears on NEAR: for a cross-chain swap the user pays on their own chain, and 1Click settles with the solver there. So no on-chain per-swap price exists, and none is shown.

What

  1. Index fills: asset transfers between a solver and a non-solver account, inside executed intents.
    • A buy is solver → account; a sell is account → solver.
    • The forwarding hop between non-solvers is excluded, so a buy isn't counted twice.
    • Solvers are the accounts seen filling in any pair (intents_solver) plus the Ref pool whitelist.
    • New table, a migration that winds the scan cursor back to cover today, and /v1/chains/{chain}/intents/fills with a live push.
  2. NEAR Intents page: "Settling now" and "Settled" list fills (time, side, size, solver, account) with no price, and say why.
  3. Price on that page: the Ref pool swap series, labelled as the price the solver pays to restock, not users' price.

Not in scope

  • Pricing a fill from the solver's matching restock. That's an inference about the solver's cost, not the user's price.
## Why Since launch the NEAR Intents market page has shown no price and no settlements, while QTC trades heavily. Over the indexed range the scan has recorded **zero** QTC `token_diff` trades. Over the same period: - 1,838 Ref pool buys by `solver-ref-2.near` - 187,716 QTC bridged onto NEAR in 120 deposits **1Click doesn't settle QTC swaps as `token_diff` trades.** In 300 blocks of intents.near (from #218,819,523), there were 196 `token_diff` events and none involved QTC. QTC appeared only in `transfer`, `mt_transfer` and `ft_withdraw`. One buy, traced end to end (tx `9CgpySZHNk…`, block 218,819,631): 1. `solver-ref-2.near` **transfers** 200.58 QTC to a one-off 1Click account (`91f0b2…`). 2. In the same transaction, that account transfers the same QTC on to `51e8f9…` (a shared account) with a memo. 3. The solver restocks: an `ft_withdraw` of USDC to the Ref pool, memo `rebalance` (the swaps #37 records). Over the previous 1,200 blocks the one-off account did nothing else. **The user's payment never appears on NEAR:** for a cross-chain swap the user pays on their own chain, and 1Click settles with the solver there. So no on-chain per-swap price exists, and none is shown. ## What 1. **Index fills:** asset transfers between a solver and a non-solver account, inside executed intents. - A buy is solver → account; a sell is account → solver. - The forwarding hop between non-solvers is excluded, so a buy isn't counted twice. - Solvers are the accounts seen filling in any pair (`intents_solver`) plus the Ref pool whitelist. - New table, a migration that winds the scan cursor back to cover today, and `/v1/chains/{chain}/intents/fills` with a live push. 2. **NEAR Intents page:** "Settling now" and "Settled" list fills (time, side, size, solver, account) with no price, and say why. 3. **Price on that page:** the Ref pool swap series, labelled as the price the solver pays to restock, not users' price. ## Not in scope - Pricing a fill from the solver's matching restock. That's an inference about the solver's cost, not the user's price.
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: blackbeard/observer#43