Commit Graph
23017 Commits
Author SHA1 Message Date
Zay Hanlon 03ecdb1a30 Add troubleshooting section for customer infrastructure issues (#42809)
Added troubleshooting guidelines for managed cloud and self-hosted
customer infrastructure issues, including steps for log review and
escalation procedures.
2026-04-01 11:06:22 -04:00
Allen Houchins f8d73cf754 Add quarterly access review ritual for IT (#42806)
## Changes

- Added new quarterly access review ritual to IT rituals configuration
- Task is scheduled to start on 2026-04-01 with quarterly frequency
- Configured to automatically create issues using the
compliance-quarterly-access-review template
- Assigned to lppepper2 as DRI
- Tagged with `:help-it` label in confidential repo
2026-04-01 10:00:45 -05:00
kilo-code-bot[bot]andkiloconnect[bot] 7329c89a24 Remove European financial services case study page (#42803)
## Summary

- Deletes the case study page at
`/case-study/european-financial-services` by removing
`articles/european-financial-services.md`.
- The case study was dynamically discovered by the build system via its
`category: "case study"` meta tag, so removing the markdown file fully
removes the page and its card on the `/customers` listing page. No other
files reference it.

---

Built for [Ashish
Kuthiala](https://fleetdm.slack.com/archives/D0AG9JQ53GA/p1775052553517879)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-04-01 09:18:14 -05:00
Sam Pfluger 17bfa99f0f Update formatting of gtm-architecture (#42791) 2026-03-31 23:44:18 -05:00
johnjeremiah 12c2ef28de Adding contact sourced field values (#42790)
Adding data values for contact Source to the attribution framework
2026-03-31 22:21:59 -05:00
Sam Pfluger c62c39ff2f Capture eventbrite attendees in SFDC campaigns (#42788)
- Add documentation for historical events and salesforce campaigns.
- Moved and consolidated "Connecting Eventbrite registrations to
Salesforce campaigns (event ID key)"
2026-03-31 21:15:47 -05:00
Irena Reedy 5a96675056 Update marketing.rituals.yml (#42774) 2026-03-31 18:20:07 -05:00
Ashish Kuthiala 2dbae97237 update marketing handbook (#42786)
update broiler plate text
2026-03-31 18:18:12 -05:00
Irena Reedy 84c8431b77 Create design-platform.md (#42784) 2026-03-31 18:17:54 -05:00
Irena Reedy 4de4638df5 Update defense-and-engineering-company.md (#42785)
edited meta tag
2026-03-31 18:16:40 -05:00
Irena Reedy 79b70aba4f Create digital-asset-security.md (#42782) 2026-03-31 18:00:59 -05:00
Irena Reedy 544b76bd07 Create observability-platform-company.md (#42781) 2026-03-31 17:50:46 -05:00
Irena Reedy 9ed62cfca3 Create european-financial-services.md (#42777) 2026-03-31 17:49:43 -05:00
Irena Reedy 059126a52f Create defense-and-engineering-company.md (#42778) 2026-03-31 17:49:17 -05:00
Irena Reedy 7cee7514ae Create devops-platform.md (#42779) 2026-03-31 17:48:21 -05:00
Ashish Kuthiala 205afee0cb Update link to Fleet Champions Community spreadsheet (#42771) 2026-03-31 16:37:24 -05:00
Victor Lyuboslavsky e9ee26e70d Added Android cert activity logging (#42608)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #37546 

Noah approved design here:
https://fleetdm.slack.com/archives/C09HG9VMRSS/p1774895365069069?thread_ts=1774647818.613419&cid=C09HG9VMRSS
Docs: https://github.com/fleetdm/fleet/pull/42609

# 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`.

## 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**
* Certificate installation activity logging for Android hosts (success &
failure)
* "Installed certificate" activity type displayed in host activity feed
with status
* Host activity card enabled on Android host details page to show
installs
  * Detailed install modal with error detail reveal when failures occur
  * Upcoming activities tab disabled for Android hosts where unsupported
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-03-31 16:26:39 -05:00
aedf366fc0 Add setboolcheck linter: flag map[T]bool used as sets (#42631)
Motivation: add a check for a common issue I see humans and AI agents
making, so that we don't have to waste time on it in code reviews.
Resolves #42635 

Note: This lint check has been mostly AI generated. I don't think it
needs a thorough review because it is not production code and not even
test code. Any issues will be obvious from usage by contributors.

Add a custom go/analysis analyzer that detects map[T]bool variables
used as sets (where only the literal `true` is ever assigned) and
suggests using map[T]struct{} instead, which is the idiomatic Go
approach for sets — zero memory for values and unambiguous semantics.

The analyzer minimizes false positives by:
- Only flagging when ALL indexed assignments use the literal `true`
- Skipping variables initialized from function calls (unknown source)
- Skipping variables reassigned from unknown sources
- Skipping function parameters and exported package-level variables
- Skipping range loop variables

Integrated as an incremental linter (new/changed code only) to avoid
breaking existing code.

Running this check on our whole codebase flags valid cases:
```
     cmd/fleet/serve.go:306:2: map[string]bool used as a set; consider map[string]struct{} instead (setboolcheck)
        allowedHostIdentifiers := map[string]bool{                                                                                                                           
        ^                                                                                                                                                                    
     cmd/fleetctl/fleetctl/generate_gitops.go:189:3: map[string]bool used as a set; consider map[string]struct{} instead (setboolcheck)                                      
                handled := make(map[string]bool, len(renames)*2)                                                                                                             
                ^                                                                                                                                                            
     cmd/fleetctl/fleetctl/generate_gitops.go:1593:2: map[uint]bool used as a set; consider map[uint]struct{} instead (setboolcheck)
        m := make(map[uint]bool, len(ids))
```

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

## Summary by CodeRabbit

* **Chores**
* Added a new code analyzer to detect maps used as boolean sets and
recommend more efficient alternatives for better performance.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Scott Gress <scottmgress@gmail.com>
Co-authored-by: Scott Gress <scott@fleetdm.com>
2026-03-31 16:26:24 -05:00
kilo-code-bot[bot]andkiloconnect[bot] 19aa7af3e6 Update press boilerplate text in marketing handbook (#42770)
## Summary
- Updated the press boilerplate text in the marketing handbook page
(`handbook/marketing/README.md`) with refreshed messaging that
highlights Fleet's built-in AI capabilities, plain English
configuration, deployment flexibility, and Fleet Cloud option.

Built for [Ashish
Kuthiala](https://fleetdm.slack.com/archives/D0AG9JQ53GA/p1774990303517969)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-03-31 15:59:17 -05:00
Luke Heath ffd3534112 Update team members in product-groups.md (#42769) 2026-03-31 15:54:25 -05:00
Jonathan Katz 941c49b84e Filter errors that start with Couldn't add (#42764)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #42572

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

## 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)

- [x] QA'd all new/changed functionality manually
2026-03-31 16:33:55 -04:00
e35d07c96d Git ops workshop template update (#42729)
Updated GitOps Workshop issue template to replace post workshop happy
hours with dinners.
closes #15135

---------

Co-authored-by: johnjeremiah <jjeremiah@gmail.com>
Co-authored-by: Ashish Kuthiala <53918208+akuthiala@users.noreply.github.com>
2026-03-31 14:39:14 -05:00
RachelElysia b95af9a439 Fleet UI: Center empty/error states (#42736) 2026-03-31 15:24:44 -04:00
Josh Roskos 617cf71cbf Fix broken link for Okta testing guide (#42749)
Fixes broken link for Okta conditional access testing guide.
2026-03-31 14:48:30 -04:00
kitzyandSteven Palmesano c131c6aab7 Updates from cs offsite (#42750)
Updates to Android MDM documentation from the CS offsite.

---------

Co-authored-by: Steven Palmesano <3100993+spalmesano0@users.noreply.github.com>
2026-03-31 14:42:59 -04:00
Konstantin Sykulev e5877ccc78 OSV delta generation fix (#42697)
**Related issue:** Resolves #41571

Changing the way delta artifacts are generated.
`changed_files_today.txt` and `changed_files_yesterday.txt` will always
look back into git history for any commits added yesterday and today.

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

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

## Summary by CodeRabbit

## Release Notes

* **Bug Fixes**
* Improved repository synchronization to ensure local state accurately
reflects the remote main branch.
* Enhanced file change detection logic for more reliable identification
of modified files.
* Refined output file handling to maintain consistency across
synchronization cycles.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-03-31 13:21:06 -05:00
Ashish KuthialaandEric 8dfbc2ae21 update marketing handbook page about team roles (#42679)
Update marketing handbook page about team roles - removed duplicate
entries

---------

Co-authored-by: Eric <eashaw@sailsjs.com>
2026-03-31 12:33:25 -05:00
Noah Talerman 2af049dc2b Update EULA information for macOS hosts (#42730)
Clarified EULA display conditions for macOS hosts.
2026-03-31 10:42:03 -06:00
Nico 99a04132e3 use DropdownWrapper for sort dropdown in Host Reports tab (#42650)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #41533 

Follow-up of this [PR](https://github.com/fleetdm/fleet/pull/42017)
after this comment:
https://github.com/fleetdm/fleet/pull/42017#discussion_r2990919248

# Checklist for submitter

Changes file already included in previous PR.

## Testing

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

### Before

<img width="2553" height="992" alt="Screenshot 2026-03-30 at 11 07
54 AM"
src="https://github.com/user-attachments/assets/87153f0d-0b0c-41c4-90d7-9513148fbeec"
/>


### After

<img width="1517" height="990" alt="Screenshot 2026-03-30 at 11 35
49 AM"
src="https://github.com/user-attachments/assets/fde61505-1ba7-4010-a461-30632b7ff3f8"
/>

<img width="800" height="847" alt="Screenshot 2026-03-30 at 11 35 41 AM"
src="https://github.com/user-attachments/assets/6af400e6-42c1-46d4-8160-339cea323b8a"
/>
2026-03-31 13:01:11 -03:00
fleet-releaseandmostlikelee 9384a88e88 Update Fleet-maintained apps (#42716)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: mostlikelee <16102903+mostlikelee@users.noreply.github.com>
2026-03-31 10:45:33 -05:00
Jorge Falcon 34cb7ab6d1 Loadtest internal alb logging and osquery-perf scaling updates (#42581)
- Configures internal alb to log to the same bucket as the public alb
- Adds support for osquery-perf task size (cpu/memory) configuration
- Updates defaults for osquery-perf extra_flags
- Updates default enroll.sh loop sleep_time from 60s -> 300s
2026-03-31 11:15:07 -04:00
Isabell Reedy 035242dd77 Update receive-from-github.js (#42719) 2026-03-31 16:06:33 +01:00
Noah Talerman d1dedf6c0c Clarify Android software installation behavior (#42720)
Removed note about Android software installation issue.
2026-03-31 17:01:33 +02:00
Sam Pfluger 29f3e775ba Revise LinkedIn connection steps for CRM (#42718) 2026-03-31 09:38:42 -05:00
RachelElysia b4835077f2 Fleet UI: Fix opening dropdowns not rendering at a higher index and pushing UI (#42672) 2026-03-31 10:19:36 -04:00
fleet-releaseandiansltx f3c776bea9 Update Fleet-maintained apps (#42699)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: iansltx <472804+iansltx@users.noreply.github.com>
2026-03-31 09:18:44 -05:00
Scott Gress 29aa39a392 Update default fleet selected on dashboard and controls (#42688)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #40317

# 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

- [ ] Added/updated automated tests
With the current router we have in place, we can't really test `<Link>`
elements, so our ability to make useful automated tests is pretty
limited here. I extracted the fleet name sorting code into an exported
function and added some tests for that.
- [X] QA'd all new/changed functionality manually
- [X] verified that when All Fleets is selected in dropdown, navigating
to Controls switches to Workstations
- [X] verified that when another fleet is selected in dropdown,
navigating to Controls maintains that selection
- [X] verified that when a fleet is selected in dropdown, navigating to
the dashboard changes to All Fleets
- [X] verified that when "Unassigned" is present in the fleets dropdown,
it is at the bottom
- [X] verified that when using a permalink to the dashboard with a fleet
selected (e.g. `?fleet_id=1`), the correct fleet shows as selected
2026-03-31 09:11:51 -05:00
Scott Gress e62bdf17b6 Remove UI gating in GitOps mode for excepted entities (#42486)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #42184 

# 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), JS
inline code is prevented especially for url redirects, and untrusted
data interpolated into shell scripts/commands is validated against shell
metacharacters.
- [ ] If paths of existing endpoints are modified without backwards
compatibility, checked the frontend/CLI for any necessary changes

## Testing

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

For unreleased bug fixes in a release candidate, one of:

- [ ] Confirmed that the fix is not expected to adversely impact load
test results
- [ ] Alerted the release DRI if additional load testing is needed

## Database migrations

- [ ] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [ ] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [ ] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).

## New Fleet configuration settings

- [ ] Setting(s) is/are explicitly excluded from GitOps

If you didn't check the box above, follow this checklist for
GitOps-enabled settings:

- [ ] Verified that the setting is exported via `fleetctl
generate-gitops`
- [ ] Verified the setting is documented in a separate PR to [the GitOps
documentation](https://github.com/fleetdm/fleet/blob/main/docs/Configuration/yaml-files.md#L485)
- [ ] Verified that the setting is cleared on the server if it is not
supplied in a YAML file (or that it is documented as being optional)
- [ ] Verified that any relevant UI is disabled when GitOps mode is
enabled

## 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))
- [ ] If the change applies to only one platform, confirmed that
`runtime.GOOS` is used as needed to isolate changes
- [ ] 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

## Release Notes

* **New Features**
* Added support for GitOps exceptions per entity type (labels, software,
secrets), allowing specific areas to bypass GitOps mode restrictions
when configured.

* **Bug Fixes**
* Improved GitOps mode behavior to properly respect per-entity-type
exception settings across software, labels, and secrets management.

* **Tests**
  * Extended test coverage for GitOps exception handling scenarios.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-03-31 09:10:56 -05:00
Victor Lyuboslavsky a6157c13d6 Fix Windows Delete edge cases with labels. (#42632)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #42591

Docs updated here: https://github.com/fleetdm/fleet/pull/42653/changes

# Checklist for submitter

## 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

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

## Summary by CodeRabbit

* **Bug Fixes**
* Enhanced Windows MDM profile deletion and cleanup to properly handle
shared configuration settings across multiple profiles, preventing
unintended removal of settings required by other profiles.
* Improved reliability of profile management when multiple profiles use
overlapping configuration settings.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-03-31 08:59:16 -05:00
RachelElysia 30212bc20b Fleet UI: Add description to add/edit policies (#42692) 2026-03-31 09:35:37 -04:00
Carlo 8ca6ae1ca3 Immediately reject duplicate Android web-clips (#42704)
Fixes #42700
2026-03-31 09:34:12 -04:00
Lucas Manuel Rodriguez 93a782ab61 Add ignore to CVE found in fleetdm/fleetctl (#42711)
Fixes:
https://github.com/fleetdm/fleet/actions/runs/23783786066/job/69302104997

Test runs: 
- https://github.com/fleetdm/fleet/actions/runs/23798426124
- https://github.com/fleetdm/fleet/actions/runs/23798449109
2026-03-31 10:27:07 -03:00
Juan Fernandez 85c8d050d0 Add lock semantics around dev_mode.IsEnabled to avoid data races (#42646)
Add lock semantics around dev_mode.IsEnabled to as a fix for
[this](https://github.com/fleetdm/fleet/actions/runs/23728512273) data
race
2026-03-31 07:49:45 -04:00
jacobshandling c75e5d85c0 Return light software metadata when listing hosts filtered by software present only on a different team (#42519)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #39190

https://www.loom.com/share/3c1828f03c584756b7ed8f3ba75a1038

<img width="1840" height="1196" alt="Screenshot 2026-03-30 at 1 08
32 PM"
src="https://github.com/user-attachments/assets/592c9396-65b4-4723-99e7-63f9ee0264c1"
/>

- [x] Changes file added for user-visible changes in `changes/`
- [x] Added/updated automated tests
- [x] QA'd all new/changed functionality manually

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

## Summary by CodeRabbit

* **Bug Fixes**
* Resolved host filtering by software version when the version is not
available on the selected team; now returns software information instead
of an error.
  * Fixed a related UI issue caused by the original filtering behavior.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-03-30 21:33:21 -07:00
34ed4306b4 Consolidate to one quarterly event strategy meeting (#42408)
## Summary

- Replaces separate cadences for different event types (field/sales
events settled per sprint, conferences settled per quarter) with a
single quarterly event strategy meeting that covers all event types
(conferences, field/sales events, and GitOps workshops).
- Simplifies the meeting agenda from a two-step process to one decision
covering all events for the following quarter.

## Changes

In `handbook/marketing/event-execution.md`, the "Settle event strategy"
section was updated to:
- Remove the two separate settlement timelines (1 sprint for
field/sales, 1 quarter for conferences)
- Establish one quarterly meeting cadence for all event types
- Consolidate the meeting agenda into a single step instead of
"first...next..."

Built for
[mikermcneil](https://fleetdm.slack.com/archives/D0AFASLRHNU/p1774469541717269)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)

---------

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: Sam Pfluger <108141731+Sampfluger88@users.noreply.github.com>
Co-authored-by: Ashish Kuthiala <53918208+akuthiala@users.noreply.github.com>
2026-03-30 23:26:30 -05:00
Savannah Friendandkiloconnect[bot] cf960b7ce3 Update CEO travel instructions in README (#41563)
## Summary

Instead of removing the hotel check-in time block entirely, this PR
updates the CEO travel instructions to:
- Keep the 30-minute check-in time block, but never schedule it before
the hotel's official check-in time
- If the CEO arrives before the hotel's check-in time, call the hotel
ahead of time to request early check-in and note it in the calendar
event agenda
- If early check-in is not available, schedule the check-in at the
hotel's official check-in time

Built for [Savannah
Friend](https://fleetdm.slack.com/archives/D0AK3T404H3/p1774560399725619)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)

---------

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
2026-03-30 18:35:14 -05:00
Rachael Shaw 999e17877e Document default per-page for /os_versions API endpoint (#42703)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #38000
2026-03-30 18:02:23 -05:00
Noah Talerman df74bd1503 Fix typo in installation instructions (#42702) 2026-03-30 18:34:29 -04:00
Ian Littman c9d97d01ce Switch recommended Redis version to 7 (#42694)
We're keeping the tested version at 6 for now until we have a CI matrix
to test multiple versions. We run both 6.x and 7.x in production and if
we shipped 7+ code we'd break things.

This PR also fixes a spot I missed when mentioning MySQL version
compatibility.
2026-03-30 17:29:29 -05:00
Magnus Jensen 188dbcce0d Add missing space in note in Reference Architectures documentation (#42622) 2026-03-30 17:20:15 -05:00