Commit Graph
17874 Commits
Author SHA1 Message Date
Eric d53448618c Disable storybook steps in website-related GH workflows (#31723)
Related to: https://github.com/fleetdm/fleet/issues/31720

Changes:
- Commented out the step that builds Storybook in the "Test Fleet
website" and "Deploy Fleet website" workflows. There is an error caused
by an incompatible version of a Storybook dependency that is preventing
these workflows from running.
2025-08-08 10:57:46 -05:00
Victor Lyuboslavsky 002c381c97 Refactored and fixed Fleet Desktop menu. (#31649)
Fixes #31129 

Also refactored some of the menu code into its own package with tests.

# Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.

## Testing

- [x] Added/updated automated tests
- [x] QA'd all new/changed functionality manually

## fleetd/orbit/Fleet Desktop

- [x] Verified compatibility with the latest released version of Fleet
(see [Must
rule](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/workflows/fleetd-development-and-release-strategy.md))
- [x] Verified that fleetd runs on macOS, Linux and Windows
- [x] Verified auto-update works from the released version of component
to the new version (see [tools/tuf/test](../tools/tuf/test/README.md))


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Bug Fixes**
* The "Self-service" option in the Fleet Desktop menu is now hidden when
the device is offline.

* **Refactor**
* The Fleet Desktop menu system has been restructured for improved
reliability and maintainability. Menu items are now managed through a
unified menu manager, resulting in a cleaner and more consistent user
experience.

* **New Features**
* Introduced a new menu manager to dynamically update menu items based
on connection status and device policies.
* Added a system tray menu factory for consistent menu item creation and
interaction.

* **Tests**
* Added comprehensive tests to ensure correct menu behavior and state
transitions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-08 17:50:11 +02:00
Luke Heath 5de6391205 Update jsdom to get form-data fix (#31716) 2025-08-08 10:46:51 -05:00
Mitch FranceseandRachael Shaw 6d5927c95c Update yaml-files.md (#31413)
Added a section discussing how pathing works within Fleet’s GitOps to
help clear up any confusion. This was requested by a customer in the
Fleet Slack channel:


https://fleetdm.slack.com/archives/C05LE08TUD7/p1753812814755329?thread_ts=1753804250.222989&cid=C05LE08TUD7

---------

Co-authored-by: Rachael Shaw <r@rachael.wtf>
2025-08-08 10:32:20 -05:00
RachelElysia 974bc00862 Fleet UI: Shows right status for vpp apps installed manually (#31674) 2025-08-08 11:05:54 -04:00
Lucas Manuel Rodriguez e37e14f78d Generate new osquery 5.18.1 flags, catch up VEX report (#31648)
Adding new flags added to osquery 5.18.1.
2025-08-08 10:49:23 -03:00
Victor Lyuboslavsky 58eef867e0 Update MySQL versions we test with to 8.4.6 and 9.4.0 (#31694)
Fixes #31693

Manually forced a run for MySQL 8.4.6 to validate.

# Checklist for submitter

- Changes not needed since this is not a product change.

## Testing

- [x] Added/updated automated tests
2025-08-08 07:19:06 +02:00
Noah Talerman c108d68feb Update starter scripts for all Fleet instances (#31711)
The top level scripts aren't applied so I removed them for now. More
context:
https://github.com/fleetdm/fleet/issues/29741#issuecomment-3165325722
2025-08-07 19:13:32 -05:00
William Theaker dbde8e2e2b Minor custom package wording change (#31717)
> Currently, shell scripts are supported.

this sounds to me like shell scripts might not be supported in the
future.
2025-08-07 19:09:42 -05:00
Sam Pfluger c274d615f4 Make Mike-T CODEOWNER of articles (#31724) 2025-08-07 19:08:51 -05:00
RachelElysiaandIan Littman 59f628783c Fleet UI: Show temporary "Updated" status while waiting for software inventory update (#31702)
## Issue
Closes #31629 

## Description 
- Added temporary "Updated" status requires a new UI status and to check
refetch time stamps against `last_install` WITH updates available to
ensure showing "Updated" instead of "Updates available'
- wrote tests
- Added temporary "Installed" status requires a new UI status and to
check refetch time stamps against `last_install` to ensure "installed"
vs. "whatever other status would show"
- wrote tests
- Added temporary "---" status requires a new UI status and to check
refetch time stamps against `last_uninstall` to ensure "---" vs.
"whatever other status would show"
- wrote tests
- Added tooltips to all 3 temporary statuses to ensure users know it's a
temporary status "Fleet successfully [installed/uninstalled/updated]
software and is fetching latest software inventory."

## Screenrecording of mini feature
It works!
https://fleetdm.zoom.us/clips/share/6EPbQs2_R4mqWaqbNpd1iQ
All 3 temporary statuses (watch in 2x)
https://fleetdm.zoom.us/clips/share/iRSdgb5HQ6uEJv3wkhmXtA

# Checklist for submitter

## Testing

- [x] Added/updated automated tests

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

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2025-08-07 16:35:41 -05:00
Mitch Francese e4d093d5a8 Add edge case scenario and how to resolve it. (#31655)
### Summary  
This PR adds documentation for an edge case in Intune: certain policies
may appear in the NodeCache without a proper Boolean value
(`ExpectedValue: -1`), which can lead to confusion when verifying the
CSP policy application.

### What changed  
- Added a **note** explaining the `-1` value in the NodeCache.  
- A PowerShell example was included to detect the issue.  
- Added guidance on verifying the runtime state of the setting.  
- Linked to the related GitHub
[issue](https://github.com/fleetdm/confidential/issues/9817) for further
context.

### Why this is needed  
When dogfooding the original guide, we identified that some policies
applied via Intune don’t explicitly set a value in the registry. Without
this clarification, users may get failures when creating CSPs for Fleet
as it expects a positive value. This update helps avoid confusion and
provides a reliable way to verify policy state.
2025-08-07 16:30:47 -05:00
Lucas Manuel Rodriguez ca17e88db0 Add missing sso 4.71.0 api change (#31656)
We missed adding the API changes (new HTTP cookie added for security
hardening) for the SSO APIs in v4.71.0.

PS: Also took the chance at fixing a couple of typos.
2025-08-07 16:30:08 -05:00
dependabot[bot] 4b24d38abd Bump golang.org/x/net from 0.33.0 to 0.38.0 in /tools/github-manage (#31715) 2025-08-07 15:10:53 -05:00
George Karr df5e42a54c Github Manager (#31540)
New tool to help with github management. Read all about it in the
[README](https://github.com/fleetdm/fleet/blob/gkarr-gm/tools/github-manage/README.md)
on this branch.
2025-08-07 15:00:36 -05:00
Dante Catalfamo 0c6a6d2743 Add batch scheduling API (#31681)
#31522
2025-08-07 15:36:49 -04:00
Lucas Manuel Rodriguez 12f2ee6ad1 Fixes to the offline indicator (#31685)
#31592

There's still some QA to be done for edge cases and re-connects, but
this is ready for review.

<img width="341" height="103" alt="Screenshot 2025-08-07 at 11 19 33 AM"
src="https://github.com/user-attachments/assets/01e48ca2-8ab1-412c-be01-8e806a5a8b1c"
/>

Changes:
- To improve UX I'm now using `HEAD /api/fleet/device/ping` API every 10
seconds for connectivity/offline check (instead of the expensive
DesktopSummary one every 5 minutes). This is to address feedback from a
customer:
> "If the internet is not connected and we reconnect with an ethernet
connection for example, it would be good to try to see if we can refresh
it text from the offline indicator given that's not the case anymore.
- It might take up to 1m for Fleet Desktop to show the offline indicator
(we check every 10s with ping and now we are adding 6 more requests in 1
minute to make sure just one bad request doesn't unnecessarily display
the offline indicator).
- Requests without proper public IP were being incorrectly rate limited
(all under the same bucket). So we will now not make these requests and
instead log a WARNING. This is a-ok as the recommended approach to
deploy Fleet is with a TLS terminator that will add the public IP of the
request before sending it to Fleet.

---

- [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
- [ ] Where appropriate, [automated tests simulate multiple hosts and
test for host
isolation](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/reference/patterns-backend.md#unit-testing)
(updates to one hosts's records do not affect another)

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

## fleetd/orbit/Fleet Desktop

- [ ] Verified compatibility with the latest released version of Fleet
(see [Must
rule](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/workflows/fleetd-development-and-release-strategy.md))
- [ ] Verified that fleetd runs on macOS, Linux and Windows
- [ ] Verified auto-update works from the released version of component
to the new version (see [tools/tuf/test](../tools/tuf/test/README.md))


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Bug Fixes**
* Improved accuracy in identifying client public IP addresses, reducing
incorrect rate limiting for Fleet Desktop users.
* Offline indicator is now less sensitive to brief network
interruptions, reducing false offline signals and allowing faster
recovery when connectivity is restored.
  * Updated offline message for clearer status communication.

* **New Features**
* Enhanced error messages and logging for rate limiting events,
providing clearer feedback when limits are reached.

* **Tests**
* Expanded test coverage for rate limiting, including scenarios with
missing public IPs and improved assertions for error handling.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-07 16:24:13 -03:00
Victor Lyuboslavsky da38efa526 Disabled GitHub checks for CodeRabbit. (#31692) 2025-08-07 13:22:08 -05:00
Luke Heath 3d474b1916 Set line-height on .data-set class (#31659) 2025-08-07 13:19:59 -05:00
dependabot[bot] 11532eff33 Bump form-data from 4.0.1 to 4.0.4 in /ee/bulk-operations-dashboard (#31706) 2025-08-07 13:19:28 -05:00
Luke Heath f9f6b508e7 Bump web app vulnerability dependencies (#31705) 2025-08-07 13:17:33 -05:00
Juan Fernandez 2df3c6229f Added ability to determine if TPM PIN is set (#31622)
For #31180.

Added new detail query, only executed if TPM PIN enforcement is
required, for determining whether a BitLocker PIN is set. The result of
the new detail query is used for setting the tpm_pin_set column on the
host_disks table.
2025-08-07 13:55:44 -04:00
Sam Pfluger a0b855e25b Add "My PRs" to managed bookmarks (#31704) 2025-08-07 12:24:48 -05:00
Victor Lyuboslavsky 59fa01f66b Speculative fix for calendar/webhook authz issue (#31642)
Fixes #30918 

Could not reproduce the issue and do not see the issue in Dogfood logs
anymore. The fix is speculative, but I'm pretty confident.

Added comprehensive tests covering webhook error cases.

# Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.

## Testing

- [x] Added/updated automated tests


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Bug Fixes**
* Improved authorization checks for calendar webhook endpoints to
prevent server errors when authorization is missing.

* **Tests**
* Added comprehensive tests covering various error and edge cases for
calendar webhook handling, ensuring improved reliability and robustness.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-07 17:30:56 +02:00
dependabot[bot] 73adad9330 Bump form-data from 2.5.3 to 2.5.5 in /.github/actions/eng-metrics (#31113) 2025-08-07 10:22:18 -05:00
dependabot[bot] e8370cae1a Bump form-data from 4.0.0 to 4.0.4 in /ee/fleetd-chrome (#31115) 2025-08-07 10:21:36 -05:00
Victor Lyuboslavsky aac478001b Added additional logging information for Windows MDM discovery endpoint. (#31691)
Fixes #31690 

No functional changes: extra logging and refactoring

# Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **New Features**
* Enhanced error messages for Windows MDM discovery, providing more
detailed information about unsupported request versions.
* **Bug Fixes**
* Improved logging for errors encountered during the Windows MDM
discovery process, aiding in issue diagnosis.
* **Refactor**
* Streamlined the Windows MDM discovery endpoint to centralize
validation and response logic for better maintainability.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-07 17:05:15 +02:00
RachelElysia aae6147487 Fleet UI: VPP Token All teams option bug fix (#31587) 2025-08-07 09:00:51 -04:00
Noah Talerman aa02ec6f2b Marketing ritual: Update content calendar (#31620) 2025-08-07 02:52:02 -05:00
Victor Lyuboslavsky b2636d86ba Host identity cert renewal: added IANA number and jitter (#31579)
Fixes #30476 

Minor tweaks to host identity cert renewal feature: added IANA number
and jitter

Mostly doc changes



<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Documentation**
* Added comprehensive documentation on managing custom OID extensions,
including structure, usage examples, and security considerations.
* Updated certificate renewal documentation to clarify timing details
and corrected the OID value to match Fleet’s assigned namespace.

* **Bug Fixes**
* Corrected the OID used for certificate renewal extensions to the
proper Fleet-assigned value.

* **New Features**
* Introduced random jitter (up to 30 minutes) to certificate renewal
timing to reduce simultaneous renewal requests.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-07 08:24:47 +02:00
Victor Lyuboslavsky 75f7ab2d97 Updating CIS policies for macOS 15, 14, and 13 (#31553)
Fixes #31106 

Details of the changes done
- for macOS 15:
https://github.com/fleetdm/fleet/issues/31106#issuecomment-3155384061
- for macOS 14:
https://github.com/fleetdm/fleet/issues/31106#issuecomment-3155691097
- for macOS 13:
https://github.com/fleetdm/fleet/issues/31106#issuecomment-3155763952

# Checklist for submitter
- [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] QA'd all new/changed functionality manually


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Added new security policies for macOS 15, including controls for Apple
Intelligence features such as external intelligence extensions, writing
tools, mail summarization, and notes summarization.
* Introduced a policy to ensure sleep and display sleep are enabled on
Apple Silicon devices.

* **Improvements**
* Enhanced and clarified descriptions for several existing macOS CIS
policies, including Bluetooth Sharing, Siri, NFS Server, password
policies, and filename extension visibility.
* Updated policy queries and resolutions to align with the latest CIS
Benchmark version 1.1.0 and current macOS settings.
* Standardized resolution instructions and improved contributor
attribution across policies.

* **Bug Fixes**
* Corrected and clarified policy names and descriptions, such as
renaming Siri policy to ensure it is disabled and focusing on
world-writable folders instead of files.

* **Removals**
  * Removed the policy requiring auto-update to be enabled for macOS 15.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-08-07 08:24:01 +02:00
Scott Gress 1ae5167a06 Allow worker to filter queue by job type (#31556)
for #31518 

# Details

This PR updates the jobs package with a new `GetFilteredQueuedJobs`
method which accepts a list of job names to return from the `jobs`
table, rather than returning all jobs matching the other criteria. It
also updates the `worker` package to use this new method instead of
`GetQueuedJobs`.

The purpose of this update is to allow us to add multiple workers which
process different kinds of jobs, while sharing the same `jobs` table and
framework.

I chose to add the new `GetFilteredQueuedJobs` method rather than
updating `GetQueuedJobs` because the latter is used in a bunch of tests
that would need to be updated. `GetQueuedJobs` now calls
`GetFilteredQueuedJobs` with an empty list, which is interpreted as
"return all jobs".

# Checklist for submitter

## Testing

- [X] Added/updated automated tests

- [ ] QA'd all new/changed functionality manually
There shouldn't be any functional change here, but if someone has a Jira
or Zendesk integration set up to easily test with, that'd be good.
2025-08-06 17:22:48 -05:00
Konstantin Sykulev bea64800c9 Test for false positive for CVE-2025-6554 on mac and linux (#31677)
fixes #30682

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

## Testing

- [x] Added/updated automated tests
- [x] QA'd all new/changed functionality manually
2025-08-06 16:21:11 -05:00
George Karr 2311664ba1 Update .coderabbit.yaml (#31678) 2025-08-06 15:40:50 -05:00
Allen Houchins a27eced4b3 Update 1Password macOS version number to 8.11.4 (#31614) 2025-08-06 15:12:19 -05:00
RachelElysia 9ac650c24c Fleet UI: Add back uninstall script content for uninstalls with no script output (#31669) 2025-08-06 15:34:11 -04:00
RachelElysia b136084e8c Fleet UI: Fix clientside url source of truth bug (#31664) 2025-08-06 15:33:27 -04:00
RachelElysia d812991429 Fleet UI: Stop propogation of clickable parent on a custom link (#31662) 2025-08-06 15:33:07 -04:00
RachelElysia 6168370a66 Fleet UI: Better responsive breakpoints, truncate software name cell (#31627) 2025-08-06 15:32:52 -04:00
Luke Heath a33a39a6de Add coderabbit.ai configuration file (#31673) 2025-08-06 13:40:06 -05:00
Jordan Montgomery 175dbb6c93 keep "migrate to fleet" around, but disabled, during token refresh (#31665)
Followup PR to further address #31387 by closing the small gap that
exists during the token refresh and disabling but otherwise keeping
"migrate to fleet" in the tray app.


- [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.

- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [x] If paths of existing endpoints are modified without backwards
compatibility, checked the frontend/CLI for any necessary changes

## Testing

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

## fleetd/orbit/Fleet Desktop

- [x] Verified compatibility with the latest released version of Fleet
(see [Must
rule](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/workflows/fleetd-development-and-release-strategy.md))
- [x] If the change applies to only one platform, confirmed that
`runtime.GOOS` is used as needed to isolate changes
- [x] Verified that fleetd runs on macOS, Linux and Windows
- [x] Verified auto-update works from the released version of component
to the new version (see [tools/tuf/test](../tools/tuf/test/README.md))
2025-08-06 14:22:31 -04:00
Scott GressandGabriel Hernandez 6a268f173c Add banners for Windows hosts that need to set BitLocker PIN (#31453)
for #31196 

# Checklist for submitter

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

- [ ] 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.
Will add changelog when feature is complete.

## Testing

> Note - to enable the "require bitlocker pin" ui, compile front end
with:
```
SHOW_BITLOCKER_PIN_OPTION=true NODE_ENV=development yarn run webpack --progress --watch
```
- [X] Added/updated automated tests
- [X] QA'd all new/changed functionality manually

I had to add/remove the `tpm_pin_set` flag in the db manually, but by
doing that I was able to get the banners to appear, when running
https://github.com/fleetdm/fleet/pull/31451.

<img width="1158" height="128" alt="image"
src="https://github.com/user-attachments/assets/f3e4dc62-5e1f-410a-a684-11aee3e29f50"
/>

---

<img width="833" height="375" alt="image"
src="https://github.com/user-attachments/assets/b178f203-1399-4dd1-b743-558bd77b175b"
/>

---

<img width="1160" height="199" alt="image"
src="https://github.com/user-attachments/assets/cf86380c-d84c-47fd-b62f-349f0a4bb718"
/>

---------

Co-authored-by: Gabriel Hernandez <ghernandez345@gmail.com>
2025-08-06 13:13:36 -05:00
Victor Lyuboslavsky afd4bd1b35 Live office hours announcement (#31641)
Life office hours announcement article
2025-08-06 13:13:03 -05:00
Dante Catalfamo 8dd5df1d06 Add script that backs up and restores DB when switching branches (#31197)
If this script is added as the `post-checkout` git hook, if the branch
you're switching to has different migrations from the one you're coming
from, it will automatically dump the current db, and restore the dump
from the last time you visited this branch. If no dump exists, it just
leaves the DB as-is
2025-08-06 13:34:51 -04:00
Jordan Montgomery f1662e1da6 Mark dep assignments as failed on certain server errors (#31523)
Putting this up for comments

On certain errors(like a network error, perhaps even Apple ratelimiting)
we previously would drop assignments during the DEP sync and leave the
host_dep_assignments row null and the assignment unset on the Apple
side. Because of how the sync works it is entirely possible when this
happens that we would happily go along, update the cursor and never
return to resync these devices unless and until the admin did something
that forced a resync like changing something about the cloud config
profile.

Now any devices that for any reason don't get returned by the response
get marked as failed so that our logic for retrying and processing
cooldowns picks them up for later retry.

Explanation here as far as what I think is going wrong:
https://github.com/fleetdm/fleet/issues/31385#issuecomment-3145117080

# Checklist for submitter

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

- [ ] 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.

- [ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [ ] If paths of existing endpoints are modified without backwards
compatibility, checked the frontend/CLI for any necessary changes

## Testing

- [x] Added/updated automated tests
- [x] Where appropriate, [automated tests simulate multiple hosts and
test for host
isolation](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/reference/patterns-backend.md#unit-testing)
(updates to one hosts's records do not affect another)

- [x] QA'd all new/changed functionality manually
2025-08-06 13:15:43 -04:00
Victor Lyuboslavsky 96507ad1a5 Fixed potential panic in error handler when Redis is down. (#31643) 2025-08-06 17:14:31 +02:00
RachelElysia 6feb13a09c Fleet UI: Ensure icon id uniqueness (#31625) 2025-08-06 09:11:27 -04:00
Magnus Jensen 28a5871894 add certificate source and path if user source to osquery-perf (#31645)
fixes: #30992

# Checklist for submitter

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

## Testing

- [x] QA'd all new/changed functionality manually
2025-08-06 14:38:59 +02:00
Magnus Jensen c76c95c6a2 Fix pending unlock not going away after canceling unlock script (#31644)
fixes: #30857 

This PR also adds the canceled check for Lock and Wipe scripts, even
though they can not be canceled as it stands today.

# 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
- [x] QA'd all new/changed functionality manually
2025-08-06 14:38:50 +02:00
Magnus Jensen 20c282f1a5 Fail DDM profiles if response is UnknownDeclarationType (#31606)
fixes: #30835 

<img width="763" height="201" alt="image"
src="https://github.com/user-attachments/assets/66345ff7-46bd-4321-86a5-17031ffb2888"
/>


# 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
- [x] QA'd all new/changed functionality manually
2025-08-06 14:38:25 +02:00