Commit aaf68b4
authored
Add additional step ID and blocking error constants for onboarding telemetry, Fixes AB#3462876 (#3117)
## Summary
Adds the remaining step ID and blocking error constants from the Mobile
Onboarding Telemetry design (section 9 Step Taxonomy) to
`OnboardingTelemetryConstants`. Pure additive - no behavior change, no
caller wiring in this PR.
Linked Feature:
[AB#3462876](https://identitydivision.visualstudio.com/fac9d424-53d2-45c0-91b5-ef6ba7a6bf26/_workitems/edit/3462876)
## Why
PR #3088 shipped the recorder + the 5 step/blocking-error constants
OneAuth needed for non-brokered (`STEP_AUTHENTICATION_STARTED`,
`STEP_BROKER_INSTALL_PROMPTED`, `STEP_DEVICE_REGISTRATION_STARTED`,
`BLOCKING_ERROR_BROKER_INSTALL`, `BLOCKING_ERROR_MDM_FLOW`). The
remaining ~20 step IDs from the design will be needed by:
- The WebView hooks PR (follow-up) - emits `MDMEnrollmentStarted`,
`CompanyPortalLaunched`, `WebCpEnrollmentStarted`, etc. from
`AzureActiveDirectoryWebViewClient` URL-handler sites.
- Broker-side step emission (follow-up) - `AccountSelectionStarted`,
`InterruptFlowStarted`, `PrtAcquired`, `TokenIssued`, etc.
- OneAuth follow-ups for AM API + WebCP detection (Veena's request) -
needs `MDMEnrollmentStarted` constant.
- Termination steps - `UserCanceled`, `AuthorizationTimedOut`.
Landing the constants ahead of caller wiring lets downstream PRs
reference typed constants instead of hardcoded strings, and avoids a
chicken-and-egg sequencing problem.
## Constants added
Grouped by onboarding flow phase (matching design section 9):
- **Authentication / WebView**: `STEP_ACCOUNT_SELECTION_STARTED`,
`STEP_PASSKEY_AUTH_STARTED`, `STEP_CERT_BASED_AUTH_STARTED`
- **MFA / Strong Auth**: `STEP_STRONG_AUTH_SETUP_STARTED`,
`STEP_STRONG_AUTH_SETUP_COMPLETED`,
`STEP_AUTHENTICATOR_MFA_LINKING_STARTED`
- **CA Block & Remediation**: `STEP_CA_BLOCK_RECEIVED`,
`STEP_INTERRUPT_FLOW_STARTED`, `STEP_CONSENT_PROMPT_SHOWN`,
`STEP_TERMS_OF_USE_SHOWN`, `STEP_PASSWORD_RESET_REQUIRED`
- **Device Registration**: `STEP_DEVICE_REGISTRATION_UPGRADE_STARTED`
- **MDM Enrollment**: `STEP_MDM_ENROLLMENT_STARTED` (value
`MDMEnrollmentStarted`), `STEP_COMPANY_PORTAL_LAUNCHED`,
`STEP_WEB_CP_ENROLLMENT_STARTED`, `STEP_GOOGLE_ENROLLMENT_STARTED`
- **Intune App Protection**: `STEP_INTUNE_APP_PROTECTION_REQUIRED`
- **Compliance Remediation**: `STEP_COMPLIANCE_REMEDIATION_STARTED`,
`STEP_COMPLIANCE_REMEDIATION_COMPLETED`
- **Token Acquisition**: `STEP_PRT_ACQUIRED`, `STEP_TOKEN_ISSUED`
- **Termination**: `STEP_USER_CANCELED`, `STEP_AUTHORIZATION_TIMED_OUT`
- **Blocking error**: `BLOCKING_ERROR_DEVICE_REGISTRATION`
(`"DEVICE_REGISTRATION_REQUIRED"`)
All values are PascalCase (consistent with the existing `STEP_*`
constants and matching what eSTS/MATS expect for these enum-like step
values).
## Testing
- No new tests - pure constant additions; existing
`OnboardingTelemetryRecorderTest` and
`OnboardingSessionCorrelationStoreTest` continue to pass.
- Built locally; constants compile cleanly.
## Dependencies
- **Builds on**: PR #3088 (already merged) - extends
`OnboardingTelemetryConstants` added there.
- **Consumed by** (follow-up PRs):
- WebView page-tracking hooks (`AzureActiveDirectoryWebViewClient`
setter + emissions)
- Broker step emission (`BrokerSsoController`, `PrtController`, error
handler)
- OneAuth caller updates (AM API + WebCP detection per Veena's PR #3088
comment)
- **No breaking changes** - purely additive to the existing `object`.1 parent 3e6df21 commit aaf68b4
2 files changed
Lines changed: 48 additions & 0 deletions
File tree
- common4j/src/main/com/microsoft/identity/common/java/telemetry
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
5 | 6 | | |
6 | 7 | | |
7 | 8 | | |
| |||
Lines changed: 47 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
| 42 | + | |
42 | 43 | | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
43 | 60 | | |
44 | 61 | | |
| 62 | + | |
| 63 | + | |
45 | 64 | | |
46 | 65 | | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
47 | 84 | | |
48 | 85 | | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
49 | 90 | | |
50 | 91 | | |
51 | 92 | | |
52 | 93 | | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
53 | 100 | | |
54 | 101 | | |
55 | 102 | | |
| |||
0 commit comments