Notes / Audits and snapshots
Source: chains/solana/data/sol_read_refactor_check_2026-09-17.md in the repository, rendered here without changes. Source file
scripts/sol_read.py originally ran main() unconditionally at module scope (no if __name__ == "__main__": guard), so nothing else in this project could import sol_read without it immediately crashing on sys.argv. Every decoder also lived inline in main()'s if/elif chain, duplicating the byte layouts if any other file needed the same reads.
Refactored into one function per account type (read_program, read_squadsv3, read_squads, read_klend_market, etc.), same byte offsets, same decode order, main() now just dispatches to them and prints. No logic changed.
Ran the refactored CLI against Solana Mainnet Beta for every target used in