What the app says when something goes wrong

This page is a stub. The full guide is written against the shipped app version and is on its way.

A standing rule from the product’s own roadmap, no silent failures, no generic something-went-wrong. Every failure message in the app names its cause and its next step, and this page collects them so you can look one up rather than wonder.

Importing. A file with no recognisable transaction columns is refused plainly, “Nothing in this reads as transaction data,” with an invitation to send its first few lines so the format gets added. Recognised files with unusable rows show every refused row and its reason. A session-restore that is handed the wrong file says so, pick the gains-session.json the app downloaded. Google Sheets failures name the real cause, usually the sheet’s share setting, it needs Anyone with the link.

Wallet scanning. Addresses failing shape checks are told before any network call. A valid address with no history says so, usually a typo or the wrong chain. Explorer failures name the failing explorer and the rate-limit wait, rescan after it, held rows are skipped. Deep histories that hit the page cap are told to rescan to continue, a disclosed limit, not a failure.

Valuation. Value-from-daily-closes always reports “Valued N of M,” and anything without a public price opens a drawer offering your own unit price, marked as set by you, or one-click quarantine. Pricing cannot fail without saying so.

Exchange sync. Failures land on the connection row with the exact cause, the relay’s answer, or the exchange’s own words. Kraken keys need only Query Funds plus Query Closed Orders and Trades, Binance keys only Enable Reading.

Licence keys. A key that does not verify says “check it copied across whole,” truncation is the usual cause, line breaks are fine. A valid key smaller than your workspace names its cap and where bigger keys live.

Share links. An expired or revoked link says exactly that, ask the sender for a fresh one. A truncated link cannot open the envelope and says so, links must be shared whole.

Storage, the one worth memorising. If a browser refuses to save, private mode or a full disk, the app announces it once and tells you the next step, download your session file from Settings. The Saved pulse only ever shows when a write actually happened. And if a screen ever crashes, the crash card appears with your data intact and a session download button, data is never lost to a display error.

If you meet a failure that does not explain itself, that is a bug by definition, tell [email protected] and it joins this page’s standards.