Skip to content

Release v0.3.1

Latest

Choose a tag to compare

@github-actions github-actions released this 06 Sep 20:18
v0.3.1
8ec3bfa

Verifying the Release

In order to verify the release, you'll need to have gpg or gpg2 installed on your system. Once you've obtained a copy (and hopefully verified that as well), you'll first need to import the keys that have signed this release if you haven't done so already:

curl https://raw.githubusercontent.com/MostroP2P/mostrix/main/keys/negrunch.asc | gpg --import
curl https://raw.githubusercontent.com/MostroP2P/mostrix/main/keys/arkanoider.asc | gpg --import

Once you have the required PGP keys, you can verify the release (assuming manifest.txt.sig.negrunch, manifest.txt.sig.arkanoider and manifest.txt are in the current directory) with:

gpg --verify manifest.txt.sig.negrunch manifest.txt
gpg --verify manifest.txt.sig.arkanoider manifest.txt

gpg: Signature made fri 10 oct 2025 11:28:03 -03
gpg:                using RSA key 1E41631D137BA2ADE55344F73852B843679AD6F0
gpg: Good signature from "Francisco Calderón <fjcalderon@gmail.com>" [ultimate]

gpg: Signature made fri 10 oct 2025 11:28:03 -03
gpg:                using RSA key 2E986CA1C5E7EA1635CD059C4989CC7415A43AEC
gpg: Good signature from "Arkanoider <github.913zc@simplelogin.com>" [ultimate]

That will verify the signature of the manifest file, which ensures integrity and authenticity of the archive you've downloaded locally containing the binaries. Next, depending on your operating system, you should then re-compute the sha256 hash of the archive with shasum -a 256 <filename>, compare it with the corresponding one in the manifest file, and ensure they match exactly.

What's Changed in 0.3.1

🐛 Bug Fixes

  • join aborted fetch tasks before key-reload respawn by @arkanoider
  • snapshot waiter catch-up ids before spawn by @arkanoider
  • promote reputation row on PaymentRequestRequired by @arkanoider
  • keep Order Chat body visible under 60×15 shell chrome by @arkanoider
  • keep reputation DMs informational and header responsive by @arkanoider
  • show Order Chat amount, payment, and taker ratings by @arkanoider
  • bind waiter catch-up to ids snapshotted at spawn by @arkanoider
  • wait for a live relay and correlate waiter replies by @arkanoider
  • connect new client before aborting key-reload listener by @arkanoider
  • keep waiters registered while decrypting incoming DMs by @arkanoider
  • await aborted reconnect tasks and retry waiter subscribe by @arkanoider
  • keep wait_for_dm waiters across reconnect (MOSTRO-80) by @arkanoider
  • keep live outer ids retryable until persist succeeds by @arkanoider
  • skip inner ids until transcript persist succeeds by @arkanoider
  • match AddBondInvoice timeout to wait_for_dm by @arkanoider
  • keep v1 protocol warning visible on short terminals by @arkanoider
  • defer AddInvoice DB hydration until trusted amount exists (MOSTRO-078) by @arkanoider
  • fail-closed AddInvoice validation and gate listener framing (MOSTRO-078) by @arkanoider
  • validate take-sell AddInvoice sats against book order (MOSTRO-078) by @arkanoider
  • merge DM last_seen cursors by max on listener respawn by @arkanoider
  • dispatch TrackOrder via current global DM sender by @arkanoider
  • address CodeRabbit review on task alarms and backoff by @arkanoider
  • buffer router cmds during listener backoff and replay chats by @arkanoider
  • respawn critical background tasks individually on failure (MOSTRO-079) by @arkanoider
  • preserve cache on transient instance-info fetch failures by @arkanoider
  • preserve cached transport when instance-info auth rejects relay data by @arkanoider
  • bot rants fixed by @arkanoider
  • authenticate kind-38385 instance info before applying transport (MOSTRO-075) by @arkanoider

💼 Other

  • fix(liveness): keep wait_for_dm waiters across reconnect (MOSTRO-80) by @arkanoider in #170
  • Merge branch 'main' into fix/mostro-080-resurrect-waiters-on-reconnect by @arkanoider
  • fix(ui): show Order Chat amount, payment, and taker ratings by @arkanoider in #169
  • fix(chat): skip inner ids until transcript persist succeeds by @arkanoider in #168
  • refactor(chat): drop GiftWrap dual-read, kind 14 only by @arkanoider in #167
  • Merge commit 'a1937dba2fa5fc30b95c2734f069d0d5cb09c1f2' by @arkanoider
  • refactor(protocol): speak NIP-44 only for Mostro DMs by @arkanoider in #166
  • fix(liveness): per-task respawn on background task failure (MOSTRO-079) by @arkanoider in #161

🚜 Refactor

  • drop GiftWrap dual-read, kind 14 only by @arkanoider
  • speak NIP-44 only for Mostro DMs by @arkanoider
  • drop unused show_result_toast and Applied instance-info path by @arkanoider

📚 Documentation

  • describe kind-14 hydration, drop gift-wrap alias by @arkanoider
  • align comments with per-task background supervision by @arkanoider

⚙️ Miscellaneous Tasks

🛡️ Security

  • fix(security): validate take-sell AddInvoice sats against book order (MOSTRO-078) by @arkanoider in #164
  • fix(security): authenticate kind-38385 instance info before applying transport (MOSTRO-075) by @arkanoider in #160

Contributors

Full Changelog: v0.3.0...0.3.1