learning_ai_common_plat/packages/swift-diagnostics/Package.swift
saravanakumardb1 abcf817cb3 feat(swift-diagnostics): implement Phase 2.2 Swift Client SDK
New package ByteLystDiagnostics with:

- Core types: DiagnosticsSession, TraceSpan, LogEntry, Breadcrumb

- DiagnosticsClient: actor-based singleton with polling

- BreadcrumbTrail: ring buffer (max 100) for timeline

- NetworkInterceptor: URLProtocol-based HTTP capture

- DeviceState: battery, memory, storage, network, thermal

- 20+ XCTest unit tests

Features:

- configure()/start()/stop() lifecycle

- trace() async span wrapper

- log() with breadcrumb integration

- breadcrumb() manual timeline markers

- ETag-based config polling

- 30-second batch flush

Platforms: iOS 15+, macOS 13+, watchOS 8+, tvOS 15+
2026-03-03 09:28:11 -08:00

34 lines
807 B
Swift

// swift-tools-version:5.9
import PackageDescription
let package = Package(
name: "ByteLystDiagnostics",
platforms: [
.iOS(.v15),
.macOS(.v13),
.watchOS(.v8),
.tvOS(.v15)
],
products: [
.library(
name: "ByteLystDiagnostics",
targets: ["ByteLystDiagnostics"]
),
],
dependencies: [],
targets: [
.target(
name: "ByteLystDiagnostics",
path: "Sources/ByteLystDiagnostics",
swiftSettings: [
.enableExperimentalFeature("StrictConcurrency")
]
),
.testTarget(
name: "ByteLystDiagnosticsTests",
dependencies: ["ByteLystDiagnostics"],
path: "Tests/ByteLystDiagnosticsTests"
),
]
)