Files
fidelity-ai-workspace/vault/02-work-items/pdiap-15765.md
david.delagneau 374991a568 Refactor workspace structure and documentation
- Deleted obsolete files: obsidian-vault.md, onboarding.md, workspace-model.md
- Updated opencode.json to remove references to deleted files.
- Revised profile.md to clarify the status of legacy paths and communication evidence.
- Adjusted prompts to reflect new file paths and improve clarity.
- Enhanced daily logs with focus, work-items, and blockers properties.
- Updated work-item notes to include systems, workstreams, people, and related properties.
- Improved context maintenance guidelines to ensure accurate and durable project knowledge.
- Refined base filters to exclude template files and ensure only relevant notes are displayed.
- Updated daily templates to ensure proper formatting and consistency.
- Modified workflows to align with the new vault structure and improve context synchronization.
2026-04-16 16:28:30 -06:00

79 lines
6.0 KiB
Markdown

---
type: work-item
project: fidelity
status: active
ticket: PDIAP-15765
title: "AO DOB field error not showing investigation"
systems: [xflowsdk, fid4, cogstore]
workstreams: [ao-discourse, xflow-debugging]
people: [jeff-dewitte, gurram-santosh, raj-sundararaj]
related: []
updated: 2026-04-16
tags:
- work-item
- fidelity
- ao
- xflow
---
# PDIAP-15765 - AO DOB field error not showing investigation
## Status
- Active again
- Move back to In Progress on the next workday
- Small XFlowSDK compatibility PR opened for the iOS-side fix
- PR has Santosh approval, but still needs code-owner approval before merge and story completion
---
## 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.
---
## 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
- Get the small XFlowSDK compatibility PR reviewed and released.
- Send one more AO working-group Teams summary that points to the Jira comment, Discourse comment, and PR while keeping the separate `HybridBrokerageAccountOpening` / `JointIdentityCheck` issue clearly out of the original Youth-fix scope.
- Keep the final AO working-group message very explicit about there being two flow scenarios: the Youth iOS-only issue now handled by the service change plus iOS fallback, and the separate cross-platform `HybridBrokerageAccountOpening` / `JointIdentityCheck` service-side issue.
- Update that AO working-group message so it now reflects the final framing: the original Youth issue is fixed on the iOS side, and the separate `HybridBrokerageAccountOpening` / `JointIdentityCheck` issue is the remaining service-side follow-up.
- Close the story with comments explaining that the immediate Youth issue was resolved on the service side and that the XFlowSDK fallback fix will be available in the next release.
- 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.