[patch] [Feature]: Mobile onboarding phase 1#1697
Draft
juan-arias wants to merge 6 commits intodevfrom
Draft
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Adds initial “mobile onboarding” support by persisting an onboarding status in the cache and enabling a broker-request replay if the app returns foreground before broker completion.
Changes:
- Introduces
MSIDOnboardingStatus+MSIDOnboardingStatusCache(keychain-backed) with unit tests. - Updates
MSIDBrokerInteractiveControllerto write onboarding status, track the current broker request, and optionally replay the request withignore_broker_request=1. - Adds
MSID_IGNORE_BROKER_REQUESTbroker constant and wires new files into the Xcode project.
Reviewed changes
Copilot reviewed 12 out of 12 changed files in this pull request and generated 14 comments.
Show a summary per file
| File | Description |
|---|---|
| IdentityCore/src/controllers/broker/ios/MSIDBrokerInteractiveController.m | Writes onboarding status, tracks current broker request, and replays broker invocation on “no response” foreground return. |
| IdentityCore/src/cache/onboarding/MSIDOnboardingStatus.h | Defines onboarding status/reason model and string/enum helpers. |
| IdentityCore/src/cache/onboarding/MSIDOnboardingStatus.m | Implements JSON serialization + default values for onboarding status/reason. |
| IdentityCore/src/cache/accessor/MSIDOnboardingStatusCache.h | Declares cache API for onboarding status read/write/clear. |
| IdentityCore/src/cache/accessor/MSIDOnboardingStatusCache.m | Implements keychain persistence and TTL enforcement for onboarding status. |
| IdentityCore/src/parameters/MSIDInteractiveRequestParameters.h | Adds isReplayRequest flag to interactive request parameters. |
| IdentityCore/src/MSIDBrokerConstants.h | Declares MSID_IGNORE_BROKER_REQUEST. |
| IdentityCore/src/MSIDBrokerConstants.m | Defines MSID_IGNORE_BROKER_REQUEST. |
| IdentityCore/tests/integration/ios/MSIDBrokerInteractiveControllerIntegrationTests.m | Adds integration tests covering onboarding status write, request clearing, and replay behavior. |
| IdentityCore/tests/MSIDOnboardingStatusTests.m | Adds unit tests for onboarding status JSON parsing/roundtrip and helper mappings. |
| IdentityCore/tests/MSIDOnboardingStatusCacheTests.m | Adds unit tests for cache TTL, ownership behavior, clear behavior, and field preservation. |
| IdentityCore/IdentityCore.xcodeproj/project.pbxproj | Adds new onboarding source/test files to the Xcode project and build phases. |
IdentityCore/tests/integration/ios/MSIDBrokerInteractiveControllerIntegrationTests.m
Show resolved
Hide resolved
IdentityCore/src/controllers/broker/ios/MSIDBrokerInteractiveController.m
Outdated
Show resolved
Hide resolved
IdentityCore/src/controllers/broker/ios/MSIDBrokerInteractiveController.m
Outdated
Show resolved
Hide resolved
Veena11
reviewed
Feb 13, 2026
IdentityCore/src/controllers/broker/ios/MSIDBrokerInteractiveController.m
Show resolved
Hide resolved
Veena11
reviewed
Feb 13, 2026
Contributor
Veena11
left a comment
There was a problem hiding this comment.
Added some comments. Please check. Also some of the copilot review comments are good too, please address those
Veena11
reviewed
Feb 13, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Proposed changes
Type of change
Risk
Additional information
This pull request introduces new onboarding status functionality to the project by adding the
MSIDOnboardingStatusandMSIDOnboardingStatusCacheclasses, along with their associated tests and integration into the Xcode project. Additionally, a new broker constant is defined. These changes enable the caching and retrieval of onboarding status information, supporting future onboarding-related features.New Onboarding Status Feature:
MSIDOnboardingStatusandMSIDOnboardingStatusCacheclasses, along with their headers and implementation files, to manage onboarding status in the keychain. [1] [2] [3]onboardinggroup. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]MSIDOnboardingStatusandMSIDOnboardingStatusCacheto ensure correct functionality. [1] [2] [3]Broker Constants:
MSID_IGNORE_BROKER_REQUEST, in both the header and implementation files for use in broker request handling. [1] [2]