Perché Solana ha bisogno di un explorer specializzato
Su Bitcoin una transazione sposta valore da input a output. Su Ethereum è una chiamata da un indirizzo a un altro, che potenzialmente innesca ulteriori chiamate interne. Entrambi sono concettualmente abbastanza semplici che un explorer ingenuo produce qualcosa di leggibile.
Solana è strutturalmente diversa. Una transazione porta una lista di istruzioni, ciascuna nomina un programma da invocare e gli account che quel programma può leggere o scrivere. Un singolo scambio potrebbe contenere otto istruzioni attraverso quattro programmi: creare un account di token, approvare un delegato, invocare il programma di scambio, che internamente invoca due pool di liquidità, poi chiudere l'account temporaneo. Tutto atomico, tutto in una transazione.
Lo mostri grezzo e ottiene un muro di indirizzi base58 e array di byte. È tecnicamente completo e praticamente inutile. L'intero valore di un explorer Solana sta nella decodifica — sapere che il programma TokenkegQfe... è il programma SPL Token, che questa istruzione è un trasferimento, che il mint ha sei decimali quindi l'intero grezzo significa ciò che significa.
Solscan mantiene quel layer di decodifica attraverso i programmi principali, e lo tiene aggiornato man mano che ne appaiono di nuovi. Questo è lavoro poco affascinante e continuo, ed è il prodotto.
Transazioni fallite, di cui Solana ne ha molte
Questo merita una propria sezione perché sorprende le persone che arrivano da altre chain.
Su Solana, le transazioni fallite sono registrate on-chain e costano una commissione. Durante periodi intensi una quota significativa delle transazioni sottomesse fallisce — slippage superato, uno stato di account cambiato sotto, budget di calcolo esaurito. Il suo portafoglio potrebbe semplicemente dire "transazione fallita" e lasciarla a capire perché.
Solscan mostra il fallimento correttamente: quale istruzione è fallita, quale programma ha restituito l'errore, e il codice di errore con un significato decodificato dove ne ha uno. Per i casi comuni — l'errore di programma personalizzato 6001 su uno scambio è di solito slippage, il budget di calcolo superato significa che la transazione aveva bisogno di più unità di calcolo di quante ne avesse richieste — questo trasforma un fallimento opaco in qualcosa di attuabile.
Il risultato pratico è che una transazione Solana fallita è normale piuttosto che allarmante, e la commissione è piccola. Ciò che non deve fare è presumere che il fallimento significhi che i fondi si sono mossi e sono rimasti bloccati. Su Solana la transazione è atomica: se è fallita, nulla al suo interno è successo eccetto la commissione.
Token, account e la cosa che confonde tutti
Il modello di account di Solana coglie di sorpresa quasi ogni nuovo arrivato, e vale la pena capirlo prima di leggere una pagina di Solscan.
Il suo indirizzo di portafoglio non detiene il suo USDC. Possiede un account di token associato separato, che lo detiene. Un portafoglio con cinque token diversi ha cinque account di token, ognuno un indirizzo on-chain distinto con il proprio saldo esente da affitto.
Questo significa che una pagina di indirizzo deve mostrare due cose diverse: il saldo SOL detenuto dal portafoglio stesso, e i saldi di token detenuti da account che possiede. Solscan gestisce questo chiaramente, e spiega anche la meccanica dell'affitto — ogni account deve detenere un saldo SOL minimo per restare vivo, motivo per cui creare un account di token costa una piccola quantità che recupera quando lo chiude.
La gestione degli NFT è anche più forte della concorrenza, inclusi gli NFT compressi, che vivono in un albero di Merkle piuttosto che come account individuali e che un explorer ingenuo semplicemente non mostrerà affatto.
Dai nostri test
Abbiamo fatto girare uno scambio Jupiter fallito attraverso tre explorer Solana. Solscan ha nominato l'istruzione interna fallente e dato l'errore decodificato. L'explorer ufficiale ha mostrato gli stessi dati con meno interpretazione, il che era comunque sufficiente per diagnosticare. Il terzo ha mostrato "fallita" e nient'altro. Il divario tra i primi due è convenienza; il divario col terzo è la differenza tra risolvere e non risolvere.
La situazione API
L'API Pro di Solscan richiede una chiave ed è misurata. Alcuni endpoint pubblici restano, ma sono limitati e non una base su cui costruire.
L'alternativa per gli sviluppatori è saltare interamente le API di explorer e usare il JSON-RPC di Solana direttamente. L'endpoint mainnet pubblico su api.mainnet-beta.solana.com funziona senza chiave — l'abbiamo verificato — e restituisce dati di epoca, slot, account e transazione:
curl -X POST https://api.mainnet-beta.solana.com \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"getEpochInfo"}'
È pesantemente limitato e non adatto alla produzione, ma per un widget di stato o una ricerca occasionale è gratuito e non richiede nulla. La trappola è che l'RPC grezzo non le dà alcuna decodifica — ottiene il pacchetto di istruzioni nella sua forma poco utile, e riprodurre l'interpretazione di Solscan è la parte difficile. Quello è precisamente ciò per cui sta pagando. La nostra comparazione API copre le opzioni.
Solscan o l’explorer ufficiale?
Il Solana Explorer su explorer.solana.com è open source, mantenuto dalla Solana Foundation, e fa una cosa che Solscan non può: può puntarlo a qualsiasi endpoint RPC, incluso un validatore locale.
Per lo sviluppo questo è decisivo. Testare contro localnet o un cluster privato significa che Solscan semplicemente non è un'opzione, mentre l'explorer ufficiale funziona cambiando un menu a tendina. Significa anche che nessuna terza parte apprende cosa sta guardando.
Per tutto il resto, la decodifica di Solscan è più ricca, le viste di token sono migliori, e il supporto NFT non è nemmeno vicino. La maggior parte delle persone dovrebbe usare Solscan e tenere l'explorer ufficiale per lo sviluppo e per una seconda opinione quando qualcosa sembra strano.