Share Vault, persistence, SSH/SFTP, forwarding, and SwiftUI components across platforms. Add mobile editors, terminal input, standalone Assistant, Metrics navigation, transfers, and a unified Live Activity with host system icons. Validation: 35 iOS tests and 100 focused macOS tests pass; formatting and zh-Hans checks pass. The full macOS run reports 14 issues in the documented timing, Keychain, and popover suites. Remaining Assistant tool and CloudKit work is tracked in Memory/MOBILE_ROLLOUT.md.
16 lines
589 B
Swift
16 lines
589 B
Swift
import TermindDomain
|
|
|
|
public nonisolated protocol MetricsSampling: Sendable {
|
|
func connect(_ configuration: SSHConnectionConfiguration) async throws
|
|
func sample() async throws -> MetricsSample
|
|
func filesystems() async throws -> [MetricsFilesystem]?
|
|
func processes() async throws -> MetricsProcessSample?
|
|
func gpu() async throws -> NvidiaSnapshot?
|
|
func disconnect() async
|
|
}
|
|
|
|
nonisolated extension MetricsSampling {
|
|
public func filesystems() async throws -> [MetricsFilesystem]? { nil }
|
|
public func processes() async throws -> MetricsProcessSample? { nil }
|
|
}
|