Fix onboarding crash

This commit fixes a crash that occurred when clicking "follow all"
during onboarding.

This fix works by making `Contacts` and `PostBox` isolated into a
specific Swift Actor, and updating direct and indirect usages
accordingly.

Changelog-Fixed: Fixed a crash that occurred when clicking "follow all" during onboarding.
Closes: https://github.com/damus-io/damus/issues/3422
Co-authored-by: alltheseas <64376233+alltheseas@users.noreply.github.com>
Signed-off-by: Daniel D’Aquino <daniel@daquino.me>
This commit is contained in:
Daniel D’Aquino
2026-01-05 15:57:20 -08:00
parent 368f94a209
commit 71c36052e2
31 changed files with 96 additions and 39 deletions

View File

@@ -94,8 +94,9 @@ final class WalletConnectTests: XCTestCase {
XCTAssertEqual(pool.all_descriptors.count, 1)
XCTAssertEqual(pool.all_descriptors[0].variant, .nwc)
XCTAssertEqual(pool.all_descriptors[0].url.url.absoluteString, "ws://127.0.0.1")
XCTAssertEqual(box.events.count, 1)
let ev = box.events.first!.value
let boxEventCount = await box.events.count
XCTAssertEqual(boxEventCount, 1)
let ev = await box.events.first!.value
XCTAssertEqual(ev.skip_ephemeral, false)
XCTAssertEqual(ev.remaining.count, 1)
XCTAssertEqual(ev.remaining[0].relay.url.absoluteString, "ws://127.0.0.1")