Reading explorer data your tests already assert

Network infrastructure corridor

Anchor tests print friendly logs locally, but devnet demos require Solana Explorer. This article maps three explorer panels to assertions you likely already wrote.

Account list and writable flags

Compare the explorer’s account list to your instruction’s accounts macro. Writable accounts should match mut attributes. If explorer shows an account as read-only but your test mutates it, the transaction should fail — verify that failure on purpose once to see the log message.

Program log lines

msg! output appears under program logs. Use distinctive strings in tests (Counter incremented to 4) and search for them after client-side sends. When logs are missing, confirm your RPC URL matches the cluster you think you are on.

Inner instructions and CPI

Cross-program calls show nested inner instructions. Expand them to see token transfers or system program allocations triggered by your handler. CPI bugs often appear here as unexpected program IDs.

Post-transaction account data

For small structs, base64 account data in explorer is hard to read. Instead, note the byte length change after initialize vs. increment. Length stable but value wrong points to serialization errors, not missing accounts.

Practice this during the First dApp Builder Workshop day-two deploy block. Related: Accounts vs. programs.