Skip to content

Extract DocApprovalCore Swift package for iOS and macOS#142

Merged
enricopiovesan merged 2 commits into
mainfrom
cursor/issue-72-doc-approval-core
Jul 12, 2026
Merged

Extract DocApprovalCore Swift package for iOS and macOS#142
enricopiovesan merged 2 commits into
mainfrom
cursor/issue-72-doc-approval-core

Conversation

@enricopiovesan

Copy link
Copy Markdown
Contributor

Summary

  • Add shared apps/doc-approval/DocApprovalCore Swift package (HTTP sendCommand, SSE subscribe, AppStateViewModel, SessionListViewModel, SessionDiscovery, output parsing)
  • Wire ios-swift and macos-swift to the local package; remove duplicated client/view-model sources
  • Align Apple shells with command dispatch + SSE (same pattern as TraverseCore / Extract TraverseCore Swift package shared between ios-swift and macos-swift #58)

Governing Spec

Project Item

Definition of Done

  • Swift 6, iOS 17+ / macOS 14+ targets
  • SessionListViewModel polls sessions every 10s
  • DocApprovalClient.sendCommand(sessionId:command:payload:…) session-scoped dispatch
  • Unit tests: SSE parsing, session list parsing, command construction
  • Both ios-swift and macos-swift import local DocApprovalCore
  • No UIKit/AppKit in DocApprovalCore

Validation

  • cd apps/doc-approval/DocApprovalCore && swift test (12 tests)
  • xcodebuild iOS Simulator (iPhone 17) BUILD SUCCEEDED
  • xcodebuild macOS BUILD SUCCEEDED
  • bash scripts/ci/repository_checks.sh

Architecture boundary

  • UI shells render runtime fields only; transitions owned by Traverse SSE events
  • Public HTTP/SSE surfaces only

Checklist

  • Issue linked and Project 2 item updated
  • Updated AGENTS.md / README.md Ready summary
  • No business logic added to UI layer
  • CI gates pass locally where applicable

Made with Cursor

enricopiovesan and others added 2 commits July 11, 2026 20:35
Shared HTTP/SSE client, session listing, and AppStateViewModel for
doc-approval Apple shells, mirroring TraverseCore from #58.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@enricopiovesan enricopiovesan enabled auto-merge (squash) July 12, 2026 03:11
@enricopiovesan enricopiovesan merged commit 67e701c into main Jul 12, 2026
6 checks passed
@enricopiovesan enricopiovesan deleted the cursor/issue-72-doc-approval-core branch July 12, 2026 03:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Extract DocApprovalCore Swift package: shared iOS + macOS client

1 participant