| LOW | bitchat/ViewModels/ChatViewModel.swift | 1 | // |
| LOW | bitchat/ViewModels/ChatViewModel.swift | 21 | /// - Command processing |
| LOW | bitchat/ViewModels/ChatViewModel.swift | 41 | /// - Supports verified fingerprints for secure communication |
| LOW | bitchat/ViewModels/ChatViewModel.swift | 61 | /// - SwiftUI automatically optimizes UI updates |
| LOW | bitchat/Identity/SecureIdentityStateManager.swift | 1 | // |
| LOW | bitchat/Identity/SecureIdentityStateManager.swift | 21 | /// - Thread-safe access patterns |
| LOW | bitchat/Identity/SecureIdentityStateManager.swift | 41 | /// - No cloud sync or backup |
| LOW | bitchat/Identity/SecureIdentityStateManager.swift | 61 | /// |
| LOW | bitchat/Identity/SecureIdentityStateManager.swift | 81 | /// - Users can disable all persistence |
| LOW | bitchat/Identity/IdentityModels.swift | 1 | // |
| LOW | bitchat/Identity/IdentityModels.swift | 21 | /// This separation allows users to maintain stable cryptographic identities |
| LOW | bitchat/Identity/IdentityModels.swift | 41 | /// - Favorite/blocked status |
| LOW | bitchat/Identity/IdentityModels.swift | 61 | /// 2. System looks up social identity by fingerprint |
| LOW | bitchat/Utils/SystemSettings.swift | 1 | // |
| LOW | bitchat/Noise/NoiseProtocol.swift | 1 | // |
| LOW | bitchat/Noise/NoiseProtocol.swift | 21 | /// - Protection against replay attacks |
| LOW | bitchat/Noise/NoiseProtocol.swift | 41 | /// --------- --------- |
| LOW | bitchat/Noise/NoiseProtocol.swift | 61 | /// pattern: .XX, |
| LOW | bitchat/Sync/RequestSyncManager.swift | 1 | // |
| LOW | bitchat/Views/ContentView.swift | 1 | // |
| LOW | bitchat/Protocols/BitchatProtocol.swift | 1 | // |
| LOW | bitchat/Protocols/BitchatProtocol.swift | 21 | /// - Privacy features like padding and timing obfuscation |
| LOW | bitchat/Protocols/BitchatProtocol.swift | 41 | /// - Message padding obscures actual content length |
| LOW | bitchat/Services/NoiseEncryptionService.swift | 1 | // |
| LOW | bitchat/Services/NoiseEncryptionService.swift | 21 | /// - Message encryption/decryption |
| LOW | bitchat/Services/NoiseEncryptionService.swift | 41 | /// - Lazy session creation (on-demand when sending messages) |
| LOW | bitchat/Services/NoiseEncryptionService.swift | 61 | /// |
| LOW | bitchat/Services/MessageFormattingEngine.swift | 1 | // |
| LOW | bitchat/Services/MessageDeduplicationService.swift | 1 | // |
| LOW | localPackages/Arti/build-ios.sh | 1 | #!/bin/bash |
| LOW | localPackages/Arti/arti-bitchat/src/lib.rs | 41 | runtime, |
| LOW | localPackages/Arti/Sources/C/arti_shim.c | 1 | // Empty shim file to satisfy SPM target requirements. |
| LOW | …tFoundation/Tests/BitFoundationTests/PeerIDTests.swift | 421 | #expect(!PeerID(str: "name:\(badName)").isValid) |
| LOW | …es/BitFoundation/Sources/BitFoundation/Constants.swift | 1 | // |
| LOW | …tFoundation/Sources/BitFoundation/BinaryProtocol.swift | 1 | // |
| LOW | …tFoundation/Sources/BitFoundation/BinaryProtocol.swift | 21 | /// - Endianness handling for cross-platform compatibility |
| LOW | …tFoundation/Sources/BitFoundation/BinaryProtocol.swift | 41 | /// - **Efficiency**: Minimal overhead for small messages |
| LOW | …tFoundation/Sources/BitFoundation/BinaryProtocol.swift | 61 | /// - Minimum packet size: 21 bytes (header + sender ID) |
| LOW | …tFoundation/Sources/BitFoundation/BinaryProtocol.swift | 81 | /// - No crashes on invalid input |
| LOW | …tFoundation/Sources/BitFoundation/MessagePadding.swift | 1 | // |
| LOW | …kages/BitFoundation/Sources/BitFoundation/PeerID.swift | 1 | // |
| LOW | …/BitFoundation/Sources/BitFoundation/MessageType.swift | 1 | // |
| LOW | …tFoundation/Sources/BitFoundation/BitchatMessage.swift | 1 | // |
| LOW | …tFoundation/Sources/BitFoundation/BitchatMessage.swift | 101 | |
| LOW | …itFoundation/Sources/BitFoundation/BitchatPacket.swift | 1 | // |
| LOW | bitchatTests/GeohashPresenceTests.swift | 321 | #expect(blockPrecision == 7) |
| LOW | bitchatTests/SubscriptionRateLimitTests.swift | 1 | // |
| LOW | bitchatTests/ChatViewModelExtensionsTests.swift | 201 | // MockIdentityManager stores state based on fingerprint |
| LOW | bitchatTests/FontBitchatTests.swift | 1 | import SwiftUI |
| LOW | bitchatTests/Mocks/MockBLEService.swift | 1 | // |
| LOW | bitchatTests/Noise/NoiseCoverageTests.swift | 21 | let ikName = NoiseProtocolName(pattern: NoisePattern.IK.patternName) |
| LOW | bitchatTests/Noise/NoiseProtocolTests.swift | 101 | #expect(!message3!.isEmpty) |
| LOW | bitchatTests/Noise/NoiseProtocolTests.swift | 821 | |
| LOW | bitchatTests/Protocols/LocationChannelTests.swift | 21 | #expect(try decodeLevel(from: "8") == .building) |