fleet/changes
Scott Gress 12ab93d9e0
Update "Setting up your device" page for MacOS Setup Experience (#33770)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #33173

# Details

This PR updates the "Setting up your device" page which appears in Linux
and Windows (and as of https://github.com/fleetdm/fleet/issues/30117,
MacOS) setup experiences. Front-end updates:

* Lots of renaming of things that were software-specific to now more
generically refer to "setup step"
* Removed the "My Device" heading
* Moved the info button inside the table header
* Added status of setup script run to the table
* Updated the empty state to not refer specifically to software
* Added optional `setup_only` query param to the `/device` page which,
if set, will always show the "setting up your device" page even if all
setup is complete. Normally as soon as setup finishes, the front-end
redirects to the regular My Device page. In the case of MacOS setup
experience, we don't want this to happen as we expect to either 1) keep
the setup experience up indefinitely if we're blocking device setup on
software install failure, or 2) close the setup dialog on successful
completion. This query param is also handy for testing.
* Added new "Configuration complete" state to be shown when all setup
steps are finished (successfully or not). This is only applicable on
MacOS, since other platforms will redirect to the My Device page when
finished.

This PR also includes one small backend change to the
`/device/{token}/setup_experience/status` API endpoint, to have it
return a `scripts` array alongside the existing `software` array. This
endpoint is not documented publicly.

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [X] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/committing-changes.md#changes-files)
for more information.

## Testing

- [X] Added/updated automated tests
Updated existing DeviceUserPage tests that check the SettingUpYourDevice
content, and added new tests for the new scripts content and the new
query param.

- [X] QA'd all new/changed functionality manually

<img width="1028" height="867" alt="Screenshot 2025-10-02 at 7 20 28 PM"
src="https://github.com/user-attachments/assets/7adab2c2-dac1-4463-96fc-13094da2c379"
/>

(note that as of now we'd only have at most one script, showing multiple
here to demonstrate the different states)

<img width="1031" height="524" alt="Screenshot 2025-10-02 at 7 22 01 PM"
src="https://github.com/user-attachments/assets/bedaa840-d7ef-4b6f-8daf-6ac3b447594f"
/>

<img width="1222" height="760" alt="image"
src="https://github.com/user-attachments/assets/42cf82d5-53e0-4c4d-b60e-9ac2cc86af68"
/>

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2025-10-06 16:45:53 +01:00
..
31565-fix-fleetd-version-linx Fix reported fleetd version on Software tab for Linux hosts. (#33438) 2025-09-25 12:58:14 -04:00
.keep Issue 1009 calculate diff software (#1305) 2021-07-08 13:57:43 -03:00
25403-update-end-user-migration-preview Replace old end user migration gif with updated video (#32971) 2025-09-16 15:11:05 +03:00
25557-android-profiles Feature branch for Android config profiles (#32976) 2025-09-22 11:29:57 -04:00
25700-linux-encryption-modal-copy Update copy in Linux escrow modal (#32742) 2025-09-11 15:24:32 -05:00
26688-error-on-signed-profiles Error on signed configuration profiles (#33341) 2025-09-25 14:50:48 +03:00
27876-host-details-labels Fix long label trunctaion on the host details page (#33451) 2025-09-25 13:39:26 -07:00
28152-windows-setup-experience-software UI: Windows setup experience > install software (#32934) 2025-09-16 10:12:25 -07:00
28503-validate-manual-agent-install Add new datastore method, validate when setting manual agent install (#32815) 2025-09-18 13:03:51 -04:00
28711-confirm-script-runs UI: Confirm before running scripts (#33679) 2025-10-01 10:15:30 -07:00
28713-gitops-checkbox-status-does-not-stay Avoid overriding local state with server state on ChangeManagement component (#33626) 2025-10-02 21:15:38 -04:00
29086-fix-windows-wipe-reenroll-as-new-host Bugfix: clear lock/wipe host actions on re-enrollment as new host row (#33561) 2025-09-30 16:16:03 -04:00
29650-turn-off-mdm-on-device-token-inactive-refetcher Check for device token inactive error in refetcher and turn off MDM (#33027) 2025-09-18 09:58:31 +03:00
29721-labels-page UI: Labels page (#33079) 2025-09-18 09:38:45 -07:00
30166-inconsistent-spacing-os-settings-cards-headers fix inconsistent header spacing by using section header (#33095) 2025-09-23 09:55:11 +03:00
30242-ui-profile-uploaded-at UI: Show updated_at instead of created_at for profile upload time (#32679) 2025-09-10 10:49:20 -05:00
30691-fix-ace-editor-cursor Fix ace editor cursor issues on chromeos (#33478) 2025-09-25 12:21:49 -05:00
30779-extend-error-detection-cached-stms Extend error detection for cached statements (#33189) 2025-09-22 13:12:16 -04:00
30888-add-smallstep-ca Add backend support for Smallstep CA (#32872) 2025-09-25 10:03:36 -05:00
30890-added-install-software-ios-ipados Allow specifying setup experience apps for iOS/iPadOS (#33772) 2025-10-03 14:39:09 -04:00
30915-apple-profiles Add Read-only Transaction to fetch profiles to install and remove all at once (#32737) 2025-09-10 09:29:04 -04:00
31083-add-missing-activities-for-canceled-vpp-app-installs Bugfix: create past activities when an "activated" VPP app install is cancelled by turning MDM off (#33693) 2025-10-06 09:15:40 -04:00
31286-package-upgrade-fix Updated changes file for #31286 per CS request (#32812) 2025-09-10 12:53:08 -05:00
31297-installer-status-improvements Fleet UI: Surface timestamp VPP device user page, remove vpp acknowledged tooltip (#32732) 2025-09-08 14:14:52 -04:00
31318-sentinelone-pkg Add manual translation for com.sentinelone.SentinelAgent (#32936) 2025-09-12 17:15:58 -04:00
31346-update-pww-policy-table-docs Update pwd_policy table docs (#33181) 2025-09-24 17:32:54 -05:00
31390-fix-certificate-ingest-parser fix certificate parser part 2 (#33152) 2025-09-23 16:12:11 +03:00
31584-unenroll-personal-ios-devices UB: Unenroll personal iOS devices backend (#32845) 2025-09-15 09:08:22 +03:00
31700-fix-invalid-get-delete-request-bodies Correcting client to omit request body for GET and DELETE requests (#32881) 2025-09-11 16:18:17 -05:00
31752-clicking-active-nav-causes-page-rerender Prevent full-page reloads when clicking some currently selected navbar links (#33500) 2025-09-26 08:51:04 -07:00
31845-add-new-firefox-icon Replace Firefox icon with one from brand guidelines (#33066) 2025-09-19 14:01:37 +02:00
31850-retry-apple-vpp-api-timeout Bugfix: retry VPP assets API call on Apple timeout, until our own context hits its timeout (#33313) 2025-09-23 10:46:30 -04:00
31869-platform-compatibility-tooltip-delay UI: Add Tooltip show delay across app (#33091) 2025-09-18 09:42:30 -07:00
31890-rate-limit-fix New rate limit algorithm for Fleet Desktop endpoints (#33344) 2025-09-26 15:03:50 -03:00
31917-setup-experience-software-retries Added support for retry logic in setup experience software installations. (#32823) 2025-09-16 12:26:14 -05:00
31968-oval-false-positives Add false-positive filtering for OVAL scanning (#33357) 2025-09-25 16:28:27 -04:00
31969-python-rpm-duplicate-package Add RPM to duplicate python packages filter (#33009) 2025-09-18 10:23:21 -04:00
31974-userauthenticate Return 410 Gone to UserAuthenticate (#32354) 2025-09-16 16:04:05 -04:00
31989-firefox-esr-sw_edition-translation Add sw_edition to cpe db generation and cpe translations (#32879) 2025-09-17 11:30:49 -04:00
32014-allow-fleet-host-ids-in-gitops-labels Allow fleet host ID when specifying Gitops manual label hosts (#33078) 2025-09-22 13:54:30 -05:00
32016-make-eula-gitops-path-relative-to-yaml Bugfix: make EULA path in gitops relative to the YAML file (like other settings) (#33070) 2025-09-17 08:25:23 -04:00
32029-reconcile-android-profiles Feature branch for Android config profiles (#32976) 2025-09-22 11:29:57 -04:00
32067-nil-last-opened Change LastOpenedAt logging (#32767) 2025-09-09 13:47:58 -04:00
32083-missing-privileges-app-fix Fixed bundle identifier for privileges pkg (#33517) 2025-09-26 14:31:31 -05:00
32103-show-certificates-true-total-count Show certificates actual total count in table (#32972) 2025-09-17 14:05:32 +03:00
32155-hosts-table-truncation Add tooltip+truncation to Hosts table hostname column (#33532) 2025-09-26 14:59:36 -07:00
32164-block-vpp-installs-on-personal-apple-devices Check enrollment type for mobile apple devices and block personal enrollments (#32844) 2025-09-11 16:02:18 +03:00
32208-fleetctl-preview-logging Stop showing debug logs during fleetctl preview, slight reformat (#33352) 2025-09-23 13:49:05 -04:00
32273-custom-settings-different-spacing Fixed inconsistent subtitle text style in Custom Settings (#32712) 2025-09-18 13:04:22 -04:00
32280-duplicate-desktop-osqueryd When building Linux and macOS fleetd packages, removed duplicate copies of osqueryd and fleet-desktop (#32697) 2025-09-09 17:13:30 -05:00
32283-adjust-log-level-for-windows-mdm-soap-faults Bugfix: Downgrade soap fault logging to info with soap_fault field (#33101) 2025-09-22 11:50:45 -04:00
32296-optimize-list-script-results Optimized GetHostScriptExecutionResults MySQL query for for large numbers of script results. (#32595) 2025-09-04 15:48:18 -05:00
32331-otel-instrumentation Added OTEL support for cron jobs. (#33083) 2025-09-17 17:02:38 -05:00
32340-idp-label-fields-padding Improve the layout of the IdP-driven label form (#33092) 2025-09-17 14:18:22 -07:00
32379-vpp-table-edit-teams-not-blocked-in-gitops Block edit teams action in VPP table when in GitOps mode (#33345) 2025-09-25 14:45:27 +03:00
32419-fix-conditional-access-delete Fix conditional access deletion (#33481) 2025-09-26 13:02:52 -03:00
32420-entra-easy-to-understand-error-messages Add easy to understand errors when setting up Entra conditional access (#33453) 2025-09-25 22:52:28 -03:00
32432-fail-dry-run-vpp-token-not-found Move dry run checks around for app store apps gitops and add test case (#33456) 2025-10-02 15:54:24 -03:00
32478-fleetctl-gitops-globs-ignore-dry-run Do not allow positional arguments when running gitops (#32780) 2025-09-11 14:42:56 -04:00
32519-reconcile-android-profiles Feature branch for Android config profiles (#32976) 2025-09-22 11:29:57 -04:00
32542-windows-setup-experience Add support for Windows setup experience software (#33134) 2025-09-18 16:39:15 -03:00
32630-add-border-around-empty-state add border to eua empty state (#33457) 2025-09-25 14:34:20 +03:00
32722-ui-smallstep Update UI for Smallstep CA feature (#33448) 2025-09-26 09:26:57 -05:00
32803-update-msg-delete-script-modal Updated message shown in the 'Delete Script' modal. (#33264) 2025-09-24 13:49:50 -04:00
32859-arch-linux-support Add initial Arch Linux support (#33096) 2025-09-18 18:55:31 -03:00
32862-arch-linux-software-ingestion Use new pacman table to ingest software from arch linux (#33238) 2025-09-23 10:28:32 -04:00
32924-align-policy-pass-fail-text-and-icons Make policy pass/fail icons and copy consistent across host details, my device, and manage policies tables (#32926) 2025-09-12 14:43:11 -07:00
32996-mdm-commands Fix bug in MDM command listing (#32992) 2025-09-15 15:12:03 -05:00
33054-gitops-license-warning One license warning per gitops run (#33621) 2025-09-30 14:32:41 -05:00
33068-ui-absolute-timestamps Add missing absolute timestamp tooltips to script list item upload and query modification table timestamps (#33599) 2025-09-29 16:57:51 -05:00
33147-increased-db-load Fixed MySQL DB performance regressions (#33184) 2025-09-19 15:35:05 -05:00
33173-update-setting-up-your-device Update "Setting up your device" page for MacOS Setup Experience (#33770) 2025-10-06 16:45:53 +01:00
33199-gitops-pluralization Use singular/plural form on GitOps log messages as appropriate (#33675) 2025-10-01 09:32:45 -05:00
33222-fix-controls-top-nav Fix path for Controls top nav link (#33556) 2025-09-29 15:04:31 +01:00
33244-query-param-required-mesage Use the query tag name instead of the field name (#33369) 2025-09-24 10:51:39 -04:00
33319-support-legacy-company-portal-sso-extension Add support for legacy Company portal SSO extension (#33796) 2025-10-03 17:56:38 -03:00
33492-host-count-mismatch 33492 software title host count includes software installers (#33588) 2025-10-03 12:16:00 -04:00
33494-os-version-response-time Optimize os versions response (#33691) 2025-10-01 12:11:27 -06:00
33562-4.73.2-migration-fix Fix for 4.73.2 misnumbered migrations (#33655) 2025-09-30 16:01:17 -05:00
33612-remove-software-rename-sql Removing the software renaming fix introduced in 4.73.3 due to MySQL DB performance issues. (#33616) 2025-09-30 10:35:47 -04:00
33681-software-ingestion-dbg-msg Fixed bad software ingestion debug message and added filter for invalid software with missing names. (#33682) 2025-10-01 12:17:23 -05:00
issue-31688-ui-consistant-empty-table add card for consistancy on the os versions empty table (#33470) 2025-09-29 18:10:24 +01:00
issue-32356-update-ui-android-user-card update host details and my device page to show users card for android devices (#32975) 2025-09-17 18:00:59 +01:00
private-key-secrets-manager Add support for reading private_key from AWS Secrets Manager (#31134) 2025-09-09 16:56:35 -05:00
update-go-1.25.1 Updated go to 1.25.1 (#32833) 2025-09-11 18:31:39 -05:00