--- type: work-item project: fidelity status: active ticket: PDIAP-15765 title: "AO DOB field error not showing investigation" systems: [xflowsdk, xflowviewmaker, ftframeworks, fid4, cogstore] workstreams: [ao-discourse, xflow-debugging, consumer-integration] people: [jeff-dewitte, gurram-santosh, raj-sundararaj] related: [pdiap-15838] updated: 2026-04-17 tags: - work-item - fidelity - ao - xflow --- # PDIAP-15765 - AO DOB field error not showing investigation ## Status - Active closeout - Small XFlowSDK compatibility fix merged and released in XFlow `2.8.48` - XFlowViewMaker was updated to the new XFlow version and a follow-up PR was opened - The XFlowViewMaker PR already has some approvals, but one FTFrameworks code-owner approval is still required before merge --- ## Context - This ticket is tied to an AO DOB validation issue. - The issue was confirmed for authenticated users in the `HybridYouthAccountOpening` flow on the `TeenIdentityCheck` page. --- ## Confirmed Findings - The issue reproduces only for authenticated users based on the currently stored evidence. - The Youth / `TeenIdentityCheck` scenario is the iOS-only issue; do not describe it as reproducing on Android. - Root cause was documented. - The original external report was incomplete. - For the config discussion, `CheckIdentity` was already correct. The `TeenIdentityCheck` issue had two config gaps inside `validation-rules`: the root key should be `validations`, and the age gate also needs `eighteenOrAbove` there when that rule is required. - Follow-up validation on April 13 showed two distinct authenticated scenarios rather than one uniform cross-platform issue. - A `HybridBrokerageAccountOpening` / `JointIdentityCheck` scenario reproduces on both iOS and Android. - A `HybridYouthAccountOpening` / `TeenIdentityCheck` scenario works on Android but fails on iOS. - Current evidence suggests Android is more flexible in how it decodes rule variations, while iOS is stricter about the expected `validation-rules` structure. - Later validation on April 15 showed the original `HybridYouthAccountOpening` / `TeenIdentityCheck` issue no longer reproduces once the payload uses `validations` instead of `birthDate`. - A minimal XFlowSDK fix was still prepared on April 15 so the iOS `.apxDateSelect` path also falls back to `birthDate` for a future release. - Jeff confirmed on April 15 that this minimal iOS fallback is the right fix direction for the Youth / `TeenIdentityCheck` case and approved opening the PR under the same story. - On April 16, Jeff decided the iOS PR should be the primary fix path for the Youth / `TeenIdentityCheck` issue rather than relying on a separate service rollout. - Later on April 16, the PR received final approval, was merged, and the XFlow release was cut as version `2.8.48`. --- ## Current Guidance - Treat the iOS-only `HybridYouthAccountOpening` / `TeenIdentityCheck` discrepancy as the main client-side issue currently aligned with the story. - Keep the cross-platform `HybridBrokerageAccountOpening` / `JointIdentityCheck` scenario separate until it is clear whether it is a service/config issue, a distinct bug, or an unreported rule-processing difference. - Keep the authenticated-user qualifier whenever this ticket is mentioned. - Do not describe it as a generic validation issue without the `TeenIdentityCheck` and auth context. - The originally reported Youth issue was fixed for the Youth-flow `TeenIdentityCheck` path by the service-side payload update from `birthDate` to `validations`; local Fid4 validation also confirmed it. The XFlowSDK fallback PR should still be released so iOS handles the older `birthDate` format more safely. - That service-side Youth fix was later rolled back in QA so the iOS PR can remain the single fix path; local Fid4 validation with the PR still confirmed the `birthDate` validation works correctly. - Jeff provided historical context that these fallback paths exist largely to accommodate older AO payload conventions; when the issue is AO-specific, iOS-only, and caused by a service-vs-SDK key mismatch, this kind of iOS fallback is the usual fix. - The `HybridBrokerageAccountOpening` / `JointIdentityCheck` issue is different from the original Youth report: the rule content itself does not include `ageRange` or `eighteenOrAbove`, so that path still points to a service-side update rather than the same iOS parsing gap. - David compared `HybridBrokerageAccountOpening` / `JointIdentityCheck` in Cogstore and found the relevant rule content is the same in QA and Production despite different flow-definition versions, so that separate issue should also exist in Production. - The small iOS PR should be described as a compatibility safeguard for future older-format payloads and should not be framed as applying to the `HybridBrokerageAccountOpening` / `JointIdentityCheck` issue. - The service-side `birthDate` -> `validations` change and the small iOS PR both relate to the same Youth / `TeenIdentityCheck` issue; they should not be described as separate Youth issues. --- ## Next Step - The XFlowViewMaker approval and publish step are now complete. - Resolve the Fid4 dependency conflict through the podspec repo by removing the XFlowViewMaker version reference from both the latest `FTAccountOpen` and `FTTransfer` podspecs. - The podspec-repo PR was sent to Tauf and approved. - After that merge, `pod install --repo-update` in Fid4 worked because the published podspecs no longer restricted the XFlowViewMaker version. - Continue with the consumer PR/update path now that dependency resolution is unblocked. - After the Fid4 PR merges, treat the app release as the final downstream step before broader user visibility. - Keep the separate `HybridBrokerageAccountOpening` / `JointIdentityCheck` scenario out of the client-fix scope unless later evidence proves it is part of the same issue. - Consider a separate follow-up ticket for the cross-platform service-side issue if that path still stands after consumer confirmation.