feat: Add PR template and drafting context for xflow-for-ios repository

This commit is contained in:
2026-04-16 07:07:21 -06:00
parent b46fbbca25
commit a375b3c3b1
3 changed files with 44 additions and 0 deletions

View File

@@ -13,3 +13,6 @@
- [context-maintenance.md](./context-maintenance.md) - [context-maintenance.md](./context-maintenance.md)
How this workspace should be kept current as living memory. How this workspace should be kept current as living memory.
- [pull-requests.md](./pull-requests.md)
PR template and framing notes for repositories such as `xflow-for-ios`.

View File

@@ -0,0 +1,34 @@
# Pull Requests
## xflow-for-ios PR Template
The `xflow-for-ios` repo PR form uses this structure:
- `## What`
- What does the PR do?
- Is it a bug fix, new feature, refactor, or something else?
- `## Why`
- Why this PR is needed?
- `## How`
- How is it doing what it does?
- How to test, how to integrate, any relevant compromises, etc.?
- `### Changes details`
- bullet list such as `Detail one`, `Detail two`
- `## Missed anything?`
- checklist including:
- explained the purpose of the PR
- self-reviewed the PR
- added or updated test cases
- informed of breaking changes, testing, and migrations if applicable
- updated documentation if applicable
- attached screenshots if applicable
- resolved SwiftLint warnings introduced by the commit
## Current Small-Fix Example
For the April 15, 2026 iOS validation fallback fix, the code change is a one-line update in `XFlowViewAdapterRepresentable.swift` for `.apxDateSelect`:
- before: only `validationDictionary?["validations"]`
- after: `validationDictionary?["validations"] ?? validationDictionary?["birthDate"]`
This should be framed as a small compatibility bug fix for AO-style payloads, not as a broader Android-parity refactor.

View File

@@ -33,3 +33,10 @@
- Jeff's project history note: AO is the oldest service integration and has older, harder-to-change payload conventions, while newer consumer services were largely built through Slate and were the primary validation target during the SwiftUI refactor. - Jeff's project history note: AO is the oldest service integration and has older, harder-to-change payload conventions, while newer consumer services were largely built through Slate and were the primary validation target during the SwiftUI refactor.
- That history explains why `validations` aligned better with newer SwiftUI work, while older AO payload shapes can still require explicit iOS fallback handling. - That history explains why `validations` aligned better with newer SwiftUI work, while older AO payload shapes can still require explicit iOS fallback handling.
- Jeff's practical guidance: when the issue is AO-consumer-specific, iOS-only, and caused by a mismatch between what the AO service sends and what the SDK expects, the easiest fix is often to add the minimal compatibility fallback on iOS. - Jeff's practical guidance: when the issue is AO-consumer-specific, iOS-only, and caused by a mismatch between what the AO service sends and what the SDK expects, the easiest fix is often to add the minimal compatibility fallback on iOS.
## PR Drafting Context
- The `xflow-for-ios` PR template currently uses sections `## What`, `## Why`, `## How`, `### Changes details`, and `## Missed anything?` with a final checklist.
- The April 15 iOS fix PR is a one-line change in `XFlowViewAdapterRepresentable.swift` for `.apxDateSelect`, adding `birthDate` as a fallback after `validations`.
- This PR should be described as a small compatibility bug fix for older AO-style payloads rather than as a broader Android-parity refactor.
- David opened the PR for this minimal iOS compatibility fix.