mattermost-push-plugin/agent-ops/roadmap/phase/platform-expansion/milestones/ios-desktop-runtime-parity.md

2.9 KiB

Milestone: iOS/Desktop 런타임 parity 기준

위치

  • Roadmap: agent-ops/roadmap/ROADMAP.md
  • Phase: agent-ops/roadmap/phase/platform-expansion/PHASE.md

목표

iOS/Desktop runtime 구현에 필요한 capability와 테스트 기준을 정의한다. Android와 동일해야 하는 계약과 iOS/Desktop platform 특성 때문에 다르게 가야 하는 계약을 구분한다.

상태

[계획]

구현 잠금

  • 상태: 잠금
  • 결정 필요: 아래 체크리스트
    • iOS/Desktop 확장 범위 정렬 Milestone에서 1차 platform 범위와 구현 순서가 결정되어야 한다
    • APNs와 Desktop notification 기반 push 처리 범위를 결정해야 한다

범위

  • iOS/Desktop native runtime capability mapping
  • Dart API platform behavior 기준
  • APNs, Desktop notification, notification tap, ACK, token registration 테스트 기준
  • iOS/Desktop platform에서 불가능하거나 다르게 처리해야 하는 기능 식별

필수 기능

Epic: [capability] Capability Mapping

Android runtime 기능을 iOS/Desktop 기준으로 재분류한다.

  • [push] APNs/Desktop notification 수신과 payload 처리 가능 범위를 정의한다
  • [token] platform별 device token format과 registration 기준을 정의한다
  • [notification] platform별 notification display와 tap handling 기준을 정의한다
  • [ack] ACK delivery 가능 범위를 정의한다
  • [reply] inline reply 가능 여부와 대체 정책을 정의한다

Epic: [tests] 테스트 기준

iOS/Desktop 구현을 검증할 방법을 정한다.

  • [unit] Swift와 Desktop native unit test 범위를 정한다
  • [integration] iOS/Desktop Flutter integration test 범위를 정한다
  • [manual] 실제 APNs 또는 Desktop notification이 필요한 manual smoke 범위를 정한다

완료 기준

  • iOS/Desktop 기능별 parity 여부가 표로 정리되어 있다
  • Dart API가 platform별로 어떤 동작을 보장하는지 문서화되어 있다
  • iOS/Desktop runtime 구현 전 필요한 테스트 기준이 명확하다
  • 지원하지 않을 기능은 unsupported behavior로 명확히 표현되어 있다

완료 리뷰

  • 상태: 없음
  • 요청일: 없음
  • 완료 근거: 없음
  • 리뷰 필요:
    • 사용자가 완료 결과를 확인했다
    • archive 이동을 승인했다
  • 리뷰 코멘트: 없음

범위 제외

  • 실제 iOS/Desktop runtime 구현
  • APNs 인증 인프라 구축
  • Android API breaking change

작업 컨텍스트

  • 관련 경로: ios/**, macos/**, lib/**, example/ios/**, example/macos/**
  • 표준선(선택): Android의 public Dart API contract를 기준으로 삼되 iOS/Desktop platform 특성상 다른 동작은 명시적으로 문서화한다
  • 선행 작업: iOS/Desktop 확장 범위 정렬
  • 후속 작업: 없음
  • 확인 필요: iOS/Desktop 1차 platform 범위, APNs/Desktop notification 처리 범위