The revision matters
This library is pinned to commit 24a12b199a0103a5d8a5a3e4616362bf653993d8. Links to GitHub include that immutable revision. A branch name can move; a commit reference lets another reader inspect the same source. The repository labels MultiBit deprecated. Source availability does not make its binaries maintained or establish that an old dependency set is safe to run.
Read by question, not alphabetically
- Where are files located? Start with InstallationManager.
- What does the wallet directory identifier mean? Read WalletId.
- Which wallet family is this? Read WalletType and WalletTypeExtension.
- How does an encrypted file get read? Follow EncryptedFileReaderWriter and its validators.
- Which backups exist? Read BackupManager.
- How is a wallet created and loaded? Follow WalletManager.
Trace boundaries
A class name is only an entry point. Follow the values passed into dependencies, including the bitcoinj key crypter and the MultiBit commons AES helpers. Do not infer cryptographic defaults from a method name. The pom files and dependency versions belong in any reproducibility record. A source browser helps navigate those relationships; it does not replace execution tests.
Use tests as specifications with limits
The repository contains tests for encryption, backups, wallet identifiers and wallet management. Read the fixtures and assertions before deciding what each test establishes. A test for a byte round trip is not an end-to-end migration test. We link and display the historical tests but have not executed the original Java suite for this publication.
Code and license access
The source pages display complete selected files with line anchors and provide a download bundle with provenance, file hashes and the repository’s license notices. That bundle is for inspection. It contains no installer and is not a maintained wallet release. Original authorship remains with the MultiBit contributors and relevant rights holders.
Make a defensible finding
A good technical note identifies the commit, file, method or lines, input assumption, observed branch and testing status. Label inference separately from direct observation. Where historical help and implementation appear to differ, quote their versions and preserve the uncertainty instead of inventing a universal rule.