Skip to content

Harden observation architecture, examples, and documentation - #13

Merged
sonmbol merged 1 commit into
mainfrom
agent/kmp-observable-bridge-1.1-hardening
Jul 28, 2026
Merged

Harden observation architecture, examples, and documentation#13
sonmbol merged 1 commit into
mainfrom
agent/kmp-observable-bridge-1.1-hardening

Conversation

@sonmbol

@sonmbol sonmbol commented Jul 28, 2026

Copy link
Copy Markdown
Owner

Summary

  • adds field-level SwiftUI Observation dependencies while preserving all 1.1 consumer APIs
  • coalesces dependency-specific invalidations without duplicating Kotlin business state
  • hardens cancellation, rebinding, shared collection, and actor delivery behavior
  • adds Swift 5.9–6.2 package-manifest compatibility and drift validation
  • expands DailyPulse into production-style presentation views and deterministic previews
  • refreshes benchmarks, DocC, README architecture guidance, simulator media, and onboarding

Why

KMPObservableBridge should preserve Kotlin as the authoritative state owner while matching SwiftUI dependency, identity, and lifetime semantics as closely as imported Kotlin types allow. This release improves rendering granularity and evidence without changing the existing macro or property-wrapper APIs.

Compatibility

Existing 1.1 source remains compatible. Explicit macro fields remain required. iOS 17+ gains field-level Observation tracking; iOS 15/16 retain the correct global ObservableObject fallback.

Validation

  • 41 Swift package tests
  • strict concurrency with warnings as errors
  • macro expansion coverage
  • API compatibility against 1.1.0
  • package-manifest consistency
  • SKIE/native isolation audit
  • package parsing and whitespace validation

@sonmbol
sonmbol merged commit 036dce6 into main Jul 28, 2026
1 check passed
@sonmbol
sonmbol deleted the agent/kmp-observable-bridge-1.1-hardening branch July 28, 2026 07:42
@sonmbol sonmbol added the enhancement New feature or request label Jul 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant