mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-08-09 08:04:45 +00:00
The original "ProGuard strips the keychain backend" hypothesis turned out to be wrong twice (PR 3260 comments document the binary PoW that refuted both H1 strip-of-classes and H1b strip-of-native-resource). The full 117 KB osxkeychain.so resource ships intact in the proguarded jkeychain-1.1.0-*.jar today, and Keyring.create() round-trips fine against the proguarded classpath on macOS. But the user-reported bug pattern (every cold boot, keychain key missing → forced re-login) maps so cleanly onto a hypothetical future strip-of-native-resource that the guard is worth keeping. Cheap to run (one unzip scan after proguardReleaseJars), wired onto every release packaging task (DMG, MSI, DEB, RPM, current-OS distributable, runRelease) so a regression can't slip past. Fails the build with a self-contained explanation pointing at the next person who has to debug it. The actual root cause of the reported bug remains unidentified after three refuted hypotheses (see plan doc PoW table); needs the affected user's Console.app logs + ~/.amethyst state to make further progress. The LoginScreen "keychain-unavailable" diagnostic banner from the earlier commit is unchanged and still earns its keep regardless of which failure mode eventually turns out to be the cause. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>