205 Commits
Author SHA1 Message Date
Noah Talerman 40bc83daa9 Add rachaelshaw (API design DRI) as auto reviewer for usage stasts (#50169)
- Context:
https://github.com/fleetdm/fleet/pull/49980#issuecomment-5121775909
2026-07-29 11:41:44 -07:00
Lucas Manuel RodriguezandEric df36ce891a Website: don't require an API key on Microsoft compliance proxy requests (#49434)
**Related issue:** Resolves #47699

## Testing

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

## What & why

Entra conditional access is becoming available to self-hosted Fleet
Premium instances, which don't have the shared `MS-API-KEY` that
cloud-managed customers use. This makes the `microsoft-proxy/*`
endpoints reachable without that key by dropping the `is-cloud-customer`
policy gate (and the now-unused shared-secret config comments / policy
file).

A replacement auth mechanism for the proxy is tracked separately in
#47702.

> Split out of #49414 so the website change can ship independently.


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

* **Security / Access Control**
* Updated Microsoft proxy access handling to bypass the prior
cloud-customer check for matching requests.
* **Configuration**
* Removed unused cloud-customer compliance proxy shared-secret settings.
* **Bug Fixes**
* Improved compliance partner tenant creation by detecting existing
tenants using the provided Entra tenant ID and corrected the success
message text.
* **Data Model**
* Removed uniqueness enforcement for stored fleet instance URLs to
prevent avoidable conflicts.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Eric <eashaw@sailsjs.com>
2026-07-20 15:38:28 -05:00
Luke Heath d91d8d7cc7 Remove outdated scrum ritual docs (#49578) 2026-07-20 11:06:15 -06:00
Lucas Manuel Rodriguez c4a66e6303 Update osquery schema and flags to 5.23.1 (#48587)
osquery [5.23.1](https://github.com/osquery/osquery/releases/tag/5.23.1)
was released by osquery publicly today, this updates our schema with the
changes in it.

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

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

## Summary by CodeRabbit

* **New Features**
* Updated schema support for certificate `subject2` and `issuer2` fields
on Linux and macOS.
* Documentation generation and download tooling now target osquery
`5.23.1`.

* **Bug Fixes**
* Clarified the `process_open_handles` table behavior by removing
outdated default-process wording.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-07-01 19:34:00 -03:00
Allen Houchins 1b4fd9132e Add allenhouchins as an articles maintainer (#48361) 2026-06-26 23:46:37 -04:00
Isabell Reedy 05f0c5e628 Update custom.js (#48111)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Chores**
* Updated GitHub review automation configuration, modifying approver
assignments for the handbook/marketing section and updating contributor
access for the website/views section.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-06-24 13:36:15 +01:00
Eric 0fa7566c42 Website: add maintainer for server/api_endpoints/api_endpoints.yml (#47857)
Changes:
- Added `rachaelshaw` as a maintainer for
`server/api_endpoints/api_endpoints.yml`.

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

## Summary by CodeRabbit

* **Chores**
* Updated internal maintainer configuration for API endpoints file
management.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-06-18 14:02:26 -05:00
Rachael Shaw a77e2bb642 Remove DRI for api_endpoints.yml from website config (#47529)
This didn't override the need for a @go codeowner review since they own
the directory it's in, so moved it to CODEOWNERS

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

## Summary by CodeRabbit

* **Chores**
  * Updated internal development configuration.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-06-12 11:48:11 -05:00
Noah Talerman 4b191314a9 Display names for API endpoints are inconsistent w/ API reference (#45721)
- Add @rachaelshaw as reviewer to every PR against the API endpoints
YAML
- "fleet-level X" v. "a fleet's X" 
  - Up to @rachaelshaw
2026-06-04 10:31:59 -04:00
Eric b911c82c30 Website: Update application form submission action (#46403)
Closes: https://github.com/fleetdm/confidential/issues/16057

Changes:
- Added `email-application-submitted`, an email template that is used to
reply to users who fill out the "Apply" form
- Updated the `deliver-application-submission` action to return an
`invalidEmailDomain` response if a user's email address is on the
bannedEmailDomainsForContactFormSubmissions list, and to send a "Thank
you for applying to Fleet" email to the user who submitted the form.
- Stubbed a new custom config variable: `applicationReplyEmailAddress`

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

* **New Features**
* Applicants receive a "Thanks for applying to Fleet" confirmation email
with a personalized greeting and ~7-day expectation.
* Added an application-submitted email template and preview using the
email layout.

* **Improvements**
* Added a hidden honeypot field to the application form; submissions
with it filled are silently discarded.
* Added email-domain validation with a specific form error and clearer
error rendering.
  * Redirected jobs to the internal handbook open-positions section.

* **Chores**
* Added a commented placeholder for an application reply email setting.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-06-02 12:36:26 -05:00
Sam Pfluger 86c63459ae Make Mike T maintainer and DRI of Brand section (#45953)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Chores**
* Updated documentation governance and approval process configurations.

<!-- review_stack_entry_start -->

[![Review Change
Stack](https://storage.googleapis.com/coderabbit_public_assets/review-stack-in-coderabbit-ui.svg)](https://app.coderabbit.ai/change-stack/fleetdm/fleet/pull/45953?utm_source=github_walkthrough&utm_medium=github&utm_campaign=change_stack)

<!-- review_stack_entry_end -->

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-05-20 19:35:08 -05:00
Noah Talerman cde372df11 Update schema owner from noahtalerman to rachaelshaw (#45464)
- @rachaelshaw is Product Designer for #g-orchestration:
https://github.com/fleetdm/fleet/pull/45208#issuecomment-4444439140
2026-05-14 13:01:23 -04:00
Lucas Manuel Rodriguez 4fa55e5e55 Update osquery schemas and flags to 5.23.0 (#44758)
https://github.com/osquery/osquery/releases/tag/5.23.0

PS: I see that the `yara` table was dropped in 5.23.0 in favor of
`yara_file` and `yara_process`.

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

## Summary by CodeRabbit

* **New Features**
* Added three new osquery query tables: `process_open_handles`
(Windows), `secureboot_certificates` (Linux), and `yara_events` for
expanded system visibility.
* Added new columns across existing tables to enhance data collection
capabilities.

* **Updates**
  * Upgraded osquery to version 5.23.0.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-05-06 09:16:12 -03:00
Eric d55b60d320 Website: update CRM helper (#44081)
Closes: https://github.com/fleetdm/fleet/issues/44066

Changes:
- updated the `update-or-create-contact-and-account` helper to:
- Save potential duplicate contacts with placeholder name values (`?
?`).
- Use the firstName and lastName values returned by the get-enriched
helper if a name is not provided.
   - Update contacts with placeholder name values if a name is provided.
 - Removed a domain from the lists of banned email domains.

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

## Summary by CodeRabbit

* **New Features**
* Enhanced Salesforce contact creation with automatic name derivation
from enrichment data.
* Improved duplicate detection allowing new contacts to be created with
flexible matching rules.
* Automatic replacement of placeholder names with verified data during
contact updates.

* **Chores**
  * Updated email domain blocklists configuration.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-04-23 15:26:02 -05:00
Sam Pfluger cb35c5a92d Add domain to blocked list (#44026)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Chores**
* Updated email domain restrictions across multiple submission and
validation processes.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-04-22 20:31:42 -05:00
Eric 275e21bcda Website: Update partners form, update action input validation (#43954)
Changes:
- Updated the input validation and added an invalidEmailDomain exit to
the deliver-deal-registration-submission and
deliver-partner-registration-submission actions
- Updated the input validation in the
deliver-whitepaper-download-request and deliver-webinar-access-request
actions
- Added error messages to the forms on the partners page for the added
exits
- Updated the `bannedEmailDomainsForCSRSigning` and
`bannedEmailDomainsForWebsiteSubmissions` config values

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

* **New Features**
* Blocked submissions from restricted email domains with a clear error
response and a prompt to use a work email.
* **Bug Fixes**
* Strengthened email-format and required-field validation across
registration and request forms.
  * Restricted partner registration type options to accepted values.
* **Chores**
  * Added a domain to the denylist used for website submissions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-04-22 11:02:06 -05:00
Isabell Reedy f3609de8ab Update HoP as DRI + maintainer for communications page (#43405)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Chores**
* Updated documentation ownership and auto-approval permissions for the
company communications handbook section to reflect current team
structure.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-04-10 16:03:43 +01:00
Eric 2ab76af34c Website: add maintainer and DRI for ee/fleet-agent-downloader to website custom config. (#43331)
Changes:
- Added the `ee/fleet-agent-downloader` directory to the
`githubRepoDRIByPath` and `githubRepoMaintainersByPath` config values to
the website's custom configuration, and removed
`ee/bulk-operations-dashboard` (which was removed in the PR that added
that directory).
2026-04-09 11:08:48 -05:00
Isabell Reedy 8bc84d9a2d Update custom.js (#42723) 2026-04-02 13:22:24 +01:00
Lucas Manuel Rodriguez 3135a5d1bd Update osquery schema and flags to 5.22.1 (#42364) 2026-03-25 16:44:03 -03:00
bd4db05e79 Add sampfluger88 as maintainer for Clay webhook and Salesforce helpers (#41922)
## Summary

- Adds `sampfluger88` to `githubRepoMaintainersByPath` for
`website/api/controllers/webhooks/receive-from-clay.js`
- Adds `sampfluger88` to `githubRepoMaintainersByPath` for
`website/api/helpers/salesforce`

These are new entries in the maintainers mapping in
`website/config/custom.js`, ensuring that changes to the Clay webhook
controller and Salesforce helper files are auto-approved for
`sampfluger88`.

Built for [Sam
Pfluger](https://fleetdm.slack.com/archives/D0AF8QFBVHB/p1773792660524399)
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>
2026-03-17 19:37:06 -05:00
Sam Pfluger 886be1c8c3 Add 'go-to-market' to issue template assignments (#41920) 2026-03-17 19:00:59 -05:00
f7c20c4731 Switch query generator to use Anthropic Sonnet on the backend (#41521)
## Summary

Closes #41466

- Adds Anthropic Claude API support to the `prompt.js` AI helper,
detecting `claude-*` model names and routing to the Anthropic Messages
API (`https://api.anthropic.com/v1/messages`) with proper authentication
headers
- Switches both LLM calls in the query generator
(`get-llm-generated-sql.js`) from OpenAI models
(`gpt-4o-mini-2024-07-18` for schema filtration, `o3-mini-2025-01-31`
for SQL generation) to `claude-sonnet-4-6-20260218`
- Adds `anthropicSecret` config placeholder in `custom.js` (set via
`sails_custom__anthropicSecret` env var in production)
- Updates the query generator UI to reference "Anthropic" instead of
"OpenAI"

### Changes

| File | What changed |
|------|-------------|
| `website/api/helpers/ai/prompt.js` | Added Anthropic API branch
alongside existing OpenAI logic; system prompts use Anthropic's
top-level `system` parameter |
| `website/api/controllers/query-generator/get-llm-generated-sql.js` |
Both model references changed to `claude-sonnet-4-6-20260218` |
| `website/config/custom.js` | Added `anthropicSecret` config
placeholder |
| `website/views/pages/admin/query-generator.ejs` | Updated copy from
"OpenAI" to "Anthropic" |

### Deployment notes

The `sails_custom__anthropicSecret` environment variable must be set
with an Anthropic API key before deploying this change.

---

Built for
[mikermcneil](https://fleetdm.slack.com/archives/D0AFASLRHNU/p1773278374183489?thread_ts=1773271495.702919&cid=D0AFASLRHNU)
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: Eric <eashaw@sailsjs.com>
2026-03-16 11:48:33 -05:00
Mike McNeilandAllen Houchins 2d78ca611a [merge after testing backwards compat.] Dogfood: teams => "fleets" and queries => "reports" (#39383)
Co-authored-by: Allen Houchins <32207388+allenhouchins@users.noreply.github.com>
2026-03-03 09:41:56 -06:00
Mike McNeilandEric 6630a0f875 Table docs: Less confusing parentheses + update DRIs (#40105)
Co-authored-by: Eric <eashaw@sailsjs.com>
2026-02-20 09:04:54 +00:00
Isabell Reedy 5dfd66ed75 Update custom.js DRI/maintainer for CEO page (#39622) 2026-02-10 19:45:14 +00:00
Sam PflugerandNoah Talerman 0fd7e024e6 Rename and update Go-To-Market groups to operations (#39187)
Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
2026-02-03 12:37:27 -06:00
Eric cf8b461e5d Website: add GitOps workshop landing page. (#38812)
Changes:
- Added a landing page that has links to upcoming citops workshops, and
a link to a form where users can request a GitOps workshop.
- Updated the contact page to display a GitOps workshop request form for
users who are linked to it from the GitOps workshop landing page.
- Added `deliver-gitops-workshop-request`, an action that sends details
of GitOps workshop request submissions to Salesforce.
- Added a new helper that creates campaign member objects in Salesforce.
- Added two new config variables used to get event details from the
Eventbrite API.
2026-01-27 22:18:46 +09:00
Sam Pfluger 40bd4ccc45 Updating confidential maintainers (#38668)
Removed 'sampfluger88' from '.github/workflows' code owners and added
code owner assignments for various issue templates, specifying
responsible users for each template.
2026-01-22 21:58:18 -06:00
Isabell ReedyandSam Pfluger 7470f8bac5 Update custom.js maintainers (#38591)
Co-authored-by: Sam Pfluger <108141731+Sampfluger88@users.noreply.github.com>
2026-01-21 14:03:54 -06:00
Isabell ReedyandSam Pfluger fcac359298 Handbook: org and responsibilities update (#38527)
Co-authored-by: Sam Pfluger <108141731+Sampfluger88@users.noreply.github.com>
2026-01-20 17:20:16 -07:00
Sam Pfluger c5c901a063 Update CODEOWNERS and custom.js for handbook ownership (#38490)
Moved several handbook path ownerships from CODEOWNERS to custom.js and
added corresponding entries in custom.js. Updated reviewer lists for
CODEOWNERS and custom.js files to include 'ireedy'. Adjusted ownership
for specific handbook sections to reflect current maintainers.
2026-01-19 12:22:17 -06:00
Sam Pfluger a9e70c288b Update contributors for various handbook sections (#38358) 2026-01-14 19:16:23 -06:00
Lucas Manuel Rodriguez ad31353efe Update osquery schema and flags to 5.21.0 (#38248) 2026-01-14 09:29:45 -03:00
Eric 7f23411c94 Website: Update VPP proxy endpoints (#38203) 2026-01-13 18:06:10 -06:00
Eric 35772b6ddc Website: (Microsoft compliance proxy) Add support for multiple compliance partner shared secret config variables. (#38284)
Related to: https://github.com/fleetdm/confidential/issues/13468

Changes:
- Updated the `is-cloud-customer` policy to support a second compliance
partner shared secret config variable.
2026-01-13 17:24:40 -06:00
Sam Pfluger 1d8fa437e5 Update code owners for various files (#38295) 2026-01-13 17:04:41 -06:00
Mike McNeil ce139eda61 Handbook: Consolidate writing.md page (#38143) 2026-01-10 13:04:17 -06:00
EricandIan Littman b3bd4686a3 Website: Add VPP metadata proxy (#37997)
For https://github.com/fleetdm/fleet/issues/37261

Changes:
- Added a new database model: `FleetInstanceUsingVpp`
- Added `/api/vpp/v1/register`: An API endpoint that validates provided
Fleet license keys, creates a database record for the proxy
registration, and returns a generated secret used to authenticate
requests to the other VPP proxy endpoint
- Added `/api/vpp/v1/metadata/:storeRegion`: An API endpoint that
forwards requests to the
`https://api.ent.apple.com/v1/catalog/${storeRegion}/stoken-authenticated-apps`
Apple API with a token generated using Fleet's Apple developer
credentials.

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2026-01-08 11:29:53 -06:00
Eric 44c707734d Website: Update version of osquery schema used to build osquery_fleet_schema.json (#36727)
Closes: https://github.com/fleetdm/fleet/issues/36620

Changes:
- Updated the website to use the osquery 5.20.0 schema when generating
osquery table documentation pages and osquery_fleet_schema.json
- Regenerated osquery_fleet_schema.json
2025-12-05 12:10:30 -06:00
Eric 6cfb251c81 Website: update banned email domain list (#36535)
Changes:
- Added two domains to the `bannedEmailDomainsForWebsiteSubmissions`
list
2025-12-01 18:20:28 -06:00
Mike McNeil c4dc63a5ef Add Ashish and John as auto-approvers for html edits (#36390) 2025-11-26 20:46:15 -06:00
Mike McNeil 9d42baaf0e DRIs: Update custom.js (#36074) 2025-11-20 11:13:54 -08:00
Luke Heath 093a54b959 Add Allen as maintainer for FMA (#35849) 2025-11-17 14:15:47 -06:00
Allen HouchinsandNoah Talerman 333e40a004 Update DRI for Fleet-maintained apps (#35784)
- @georgekarrv => @allenhouchins

---------

Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
2025-11-14 16:50:43 -06:00
1c1e19197c Contributing Fleet-maintained apps (#35235)
- Simplify steps. Why? Fewer handoffs / approvals
- #g-software EM reviews all PRs within 3 business days
- Commit to automated tests. No need to do manual testing because the CI
already installs the app and checks, via osquery, if the
install/uninstalls worked
- Remove issue template

Why now?
- https://github.com/fleetdm/confidential/issues/12844

---------

Co-authored-by: Martin Angers <martin.n.angers@gmail.com>
Co-authored-by: George Karr <georgekarrv@users.noreply.github.com>
2025-11-14 10:12:24 -06:00
Eric 739fce4ddd Website: Update email domains in config.custom.bannedEmailDomainsForWebsiteSubmissions (#35558)
Related to: https://github.com/fleetdm/confidential/issues/10999

Changes:
- added domains to the list of personal email domains that cannot be
used to submit forms on the Fleet website, and sorted the list
alphabetically.
2025-11-11 18:44:19 -06:00
Eric fef609ce13 Website: Update Fleet Premium trial management script (#35472)
Closes: #33798
Closes: #35223
Related to: https://github.com/fleetdm/fleet/issues/34618
Related to: https://github.com/fleetdm/fleet/issues/34611

Changes:
- Updated the `manage-fleet-premium-trial-instances` script to:
- Send a request to the Github API to trigger a workflow to create a DNS
and SES configuration for new Render trial instances, and send a request
to trigger a workflow to delete the DNS and SES configuration when trial
instances expire
- Use a new prompt to generate unique slugs for new Render trial
instances
   - Configure SES on new Fleet Premium trial instances
- Prefix licenses generated for Fleet Premium trial instances with
'Render-trial-`
2025-11-10 18:16:35 -06:00
Victor Lyuboslavsky 6eefc8ecb5 Add Security & compliance group to GitHub webhook. (#33850)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #33848



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

## Summary by CodeRabbit

- New Features
- Added support for the Security & Compliance project within the GitHub
integration, enabling tracking and visibility alongside existing
projects.

- Refactor
- Streamlined project mapping logic to improve consistency when
processing updates from GitHub; behavior for existing projects remains
unchanged.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-10-06 13:44:03 -05:00
Eric f188402296 Website: Add Docsearch public key to Website's custom configuration. (#33786)
Changes: 
- Added the Algolia Docsearch public search-only API key to the
website's custom configuration.

Note:
https://docsearch.algolia.com/docs/legacy/faq/#can-i-share-the-apikey-in-my-repo
2025-10-02 16:03:44 -05:00