Commit Graph
20964 Commits
Author SHA1 Message Date
Ian Littman 72e55a4459 Optionally output database table sizes after migrations complete (#38620)
Resolves #35314.

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

- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)

## Testing

- [x] QA'd all new/changed functionality manually
2026-01-26 17:55:55 -06:00
RachelElysiaandJahziel Villasana-Espinoza 5a550c1630 Fleet UI: Allow users from other teams to see software title name (#32277)
## Issue
Closes #30340 

## Description
- Switching teams was dropping software name in the list host API if the
team did not have that software title
- Allow teams without a software title access to software title name
- Also fixes FE to use `display_name` over `name` in host table filter
UI

# Checklist for submitter

## Testing

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

---------

Co-authored-by: Jahziel Villasana-Espinoza <jahziel@fleetdm.com>
2026-01-26 18:11:59 -05:00
Victor Lyuboslavsky 07949df530 Improved OpenTelemetry error handling (#38757)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #38756 

- Changed to NOT mark many client errors as exceptions
- Instead, added client_error and server_error metrics that can be used
to alert on unusual error rates

# 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

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

## Summary by CodeRabbit

* **New Features**
* Added separate metrics for distinguishing between client and server
errors, enhancing observability and monitoring capabilities.

* **Bug Fixes**
* Client request errors no longer incorrectly appear in error tracking
as exceptions; improved accuracy of error reporting to external
services.
* Adjusted logging levels for authentication and enrollment operations
to provide clearer diagnostics.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-26 17:07:32 -06:00
Dante Catalfamo a7dd3926e3 Conditional access host bypass (#38542)
**Related issue:** Resolves #37280
2026-01-26 17:58:31 -05:00
Rosanna Schaefer 0efe9fa198 Update README.md (#38755)
Fixed spelling error "commision" to "commission."

<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #

# 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

- [ ] 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))
2026-01-26 16:40:53 -06:00
Victor Lyuboslavsky 089cf9a3ba Added LoadDefaultSchema to platform testing utils to make test setup easier. (#38706)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #38234

Minor developer experience improvement for tests using MySQL.
This is a code review follow up.
2026-01-26 16:02:12 -06:00
Noah Talerman 89fb977695 mdm_bridge is only supported for device-scoped commands (#38015)
- Clarify that `mdm_bridge` is only supported for device-scoped commands
- Also add example query
- Context:
https://github.com/fleetdm/fleet/issues/37905#issuecomment-3719060086
2026-01-26 15:58:01 -06:00
Victor Lyuboslavsky 83624c0b57 ADR-0008: Migrate from go-kit/log to slog (#38751) 2026-01-26 15:50:31 -06:00
Josh Roskos 8e18d34534 Specify local admin account management for macOS (#38814)
Slack thread:
https://fleetdm.slack.com/archives/C02A8BRABB5/p1769463177334939?thread_ts=1769462565.832019&cid=C02A8BRABB5

Updates public roadmap to specify create and manage local admin accounts
for macOS.
2026-01-26 16:47:46 -05:00
Noah Talerman 4bbd4ee370 Update usage description for fleetctl apply (#38131)
- To mirror the docs:
https://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/cli/fleetctl-apply.md

<img width="1102" height="148" alt="Screenshot 2026-01-09 at 4 15 19 PM"
src="https://github.com/user-attachments/assets/1b8bc5c4-312c-44ae-9fa3-b737b6795ad0"
/>

- Context: https://github.com/fleetdm/fleet/issues/38130
2026-01-26 16:37:38 -05:00
Noah Talerman 07d44f9b95 Update story template (#38738) 2026-01-26 15:27:39 -06:00
Victor Lyuboslavsky 9702bf2928 Updated modular monolith architecture README with the patterns uncovered so far (#38533) 2026-01-26 15:25:55 -06:00
Martin Angers 529694d1ad Flaky test fix: use mock server for FMA manifest instead of hitting github. (#38805) 2026-01-26 16:23:01 -05:00
Jonathan Katz 98ba7cee02 Fail in-house app installs when host unenrolls (#38803)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #38704 
Cancels upcoming activities and marks the current in-house app install
as failed, to match the existing behaviour for vpp installs.

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

- [ ] 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
- [ ] 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-01-26 15:45:52 -05:00
Ian Littman b0cc254f92 Add note about 301 error code on VPP installs (#38496)
Credit @eliottha for diagnosing this issue that we ran into when testing
#32461.
2026-01-26 15:29:27 -05:00
Noah Talerman 0c3293dd3c API reference: Human friendly docs for API endpoints that take multipart/form-data (#37674)
- During Product office hours on 2025-12-23, we learned that no one on
the call knew what the current request body format was for API endpoints
that take `multipart/form-data`
- We think the updated format is more friendly for humans who are using
curl/Postman
- We later learned that this the current format is the raw request
(formatted by a browser or curl command)
- Also update "form" to "body" in the "Parameters" table. We learned
that the form data is actually part the body. Postman's UI shows this.
2026-01-26 15:22:24 -05:00
Luke Heath 604f04a8c3 Remove duplicate section (#38808) 2026-01-26 14:12:19 -06:00
Victor Lyuboslavsky 686a1cfe65 Fixed unnecessary error logging when no CPE match is found (#38754)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #35447

# 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

* **Bug Fixes**
* Suppressed unnecessary error logging when no CPE match is found for
software items such as VSCode extensions and JetBrains plugins,
resulting in cleaner application logs.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-26 13:52:52 -06:00
RachelElysia d5cea5c1ae Fleet UI: Do not allow clicking on run script if globally disabled (#38787) 2026-01-26 14:45:15 -05:00
Konstantin Sykulev 5385978700 Fixed false positive git CVEs (#38657)
This was due to the fact that homebrew splits the git and gitk packages
into two. However, the nvd feed attributes cves exclusively to a "git"
package.

**Related issue:** Resolves #35191

- [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
2026-01-26 12:35:08 -06:00
Magnus Jensen a44195841e add windows mdm migration (#38782)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves
https://github.com/fleetdm/confidential/issues/13775

# 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
- [x] QA'd all new/changed functionality manually
2026-01-26 13:31:05 -05:00
Allen Houchins 03bd3651ef Add IdP department labels (#38783)
This pull request introduces new department-based host labels to the IT
and Security configuration, allowing hosts to be categorized according
to the department of their end user. The main change is the addition of
seven new label definitions and their inclusion in the `default.yml`
configuration.

**Department label additions:**

* Updated `it-and-security/default.yml` to include references to seven
new department label files, enabling department-based host
categorization.

**New department label definitions:**

* Added `department-information-technology.yml` to define a label for
hosts belonging to the Information Technology department.
* Added `department-sales.yml`, `department-marketing.yml`,
`department-engineering.yml`, `department-people.yml`,
`department-finance.yml`, and `department-product-design.yml` to define
labels for hosts in Sales, Marketing, Engineering, People, Finance, and
Product Design departments, respectively.
[[1]](diffhunk://#diff-dd6b63c2483cf179831fd7b3192a75f25d9eadfcba8309737ce3406912df74eaR1-R6)
[[2]](diffhunk://#diff-aec6aaa00d0b092d0a427d819f61a4df9c00b5ba67d8438757c5f038860697f2R1-R6)
[[3]](diffhunk://#diff-060b9bf1ab3202940dadc644616890ab99bcd81e37808ec099ff29ba064687adR1-R6)
[[4]](diffhunk://#diff-ef0c2b34df74cf1cd1c32165d3c88f85b29a8d67a02e2b837f2f544e02ad2573R1-R6)
[[5]](diffhunk://#diff-f491ad729d54f56ac51eaa4576f2a2c8a077a16c4abe623198ed6f3b14d03004R1-R6)
[[6]](diffhunk://#diff-ce077a969811b6e57400a23a7d6cb3d40b8ebd6b6733ebd4f3f1fe7558f5fe2dR1-R6)
2026-01-26 12:29:57 -06:00
Victor Lyuboslavsky 063c16cffd Added conditional_access.cert_serial_format server option to allow specifying the Okta conditional access certificate serial format. (#38697)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #38549

Associated documentation update PR:
https://github.com/fleetdm/fleet/pull/38702

# Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)

## Testing

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

* **New Features**
* Introduced conditional_access.cert_serial_format to choose certificate
serial number format (hex or decimal); hex is default.
  * SSO certificate serial parsing now respects the configured format.

* **Bug Fixes**
* Improved parsing and error handling for certificate serial numbers
across formats.

* **Tests**
* Added unit tests for configuration validation and serial-number
parsing for both hex and decimal.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-26 12:21:10 -06:00
Eric 8f1f42a5c9 Website: Update GitHub webhook reviews (#38780)
Closes: https://github.com/fleetdm/fleet/issues/38750

Changes:
- Updated the website's GitHub webhook to not attempt to approve pull
requests opened by fleet-release
2026-01-26 12:16:48 -06:00
Jorge Falcon 9a8991ad64 Dogfood: Fix AWS Backup Role permissions to unblock cross-region replication (#38784)
- Adds permissions to fix/allow cross-region replication os Aurora and
S3 backups.
2026-01-26 12:59:32 -05:00
Magnus Jensen 5656dcf801 improve missing label error message (#38636)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #37183 

Software request:
```json
{
    "message": "Bad request",
    "errors": [
        {
            "name": "base",
            "reason": "Couldn't update. Label \"non-existing-label\" doesn't exist. Please remove the label from the software."
        }
    ],
    "uuid": "3a9a4da3-d7af-4ed5-8b39-73e9f465f103"
}
```

Config profile:
```json
{
    "message": "Bad request",
    "errors": [
        {
            "name": "base",
            "reason": "Couldn't update. Label \"non-existent-label\" doesn't exist. Please remove the label from the configuration profile."
        }
    ],
    "uuid": "ea842e7b-d4eb-4b59-bf24-32ad66d538dd"
}
```

# 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
2026-01-26 12:55:26 -05:00
Marko Lisica 560a4ee14d Update Android version requirement to 14 (#38712)
We officially support the last two major versions. The latest version is
Android 16, and the most recent stable version was released six months
ago.
2026-01-26 11:54:03 -06:00
Victor Lyuboslavsky 7458100167 Added inlined dependencies vulnerability scanning (#38729)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #31605

I manually scanned our inlined dependencies for vulnerabilities and did
not find any relevant ones.

I added a dummy directory pointing at the source of our inlined
dependencies so that automated vuln scanning tools can scan them. I did
not include Kolide since the code was heavily adapted and only included
a few tables.



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

## Summary by CodeRabbit

* **New Features**
* Established infrastructure for automated vulnerability scanning of
inlined third-party dependencies in Go and JavaScript environments, with
comprehensive documentation and configuration to enable scanning via
standard tools.

* **Chores**
* Updated gitignore configuration to refine dependency file tracking
across the project.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-26 11:24:46 -06:00
Victor Lyuboslavsky ae1f846739 Switched to lighter weight authz unit tests for activity bounded context. (#38735)
<!-- Add the related story/sub-task/bug number, like Resolves #123, or
remove if NA -->
**Related issue:** Resolves #38234

This came up in activity bounded context code review.

Following existing patterns, authz testing will be in `policy_test.go`,
and integration tests will simply cover connectivity (not exhaustive
authz).



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

## Summary by CodeRabbit

* **Tests**
* Enhanced authorization test coverage for activity operations with
improved validation scenarios.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-26 11:20:21 -06:00
cf468cbfe3 Update on-call engineer handbook entries (#38641)
For [38235](https://github.com/fleetdm/fleet/issues/38235)

---------

Co-authored-by: Sharon Katz <121527325+sharon-fdm@users.noreply.github.com>
Co-authored-by: Ian Littman <iansltx@gmail.com>
2026-01-26 10:06:43 -06:00
Noah Talerman 82807d7797 Roadmap preview: January 2026 (#36020)
DONE: @noahtalerman:
- ~~Record video~~
- ~~Move October 2025 edits out into a separate PR so we can merge
ASAP~~
- ~~Once video is posted to YouTube, embed the video. Filed a
`:help-marketing` request to get help putting the video on YouTube:
https://github.com/fleetdm/confidential/issues/13908~~
2026-01-26 11:02:19 -05:00
fleet-releaseandallenhouchins e9cce98876 Update Fleet-maintained apps (#38776)
Automated ingestion of latest Fleet-maintained app data.

Co-authored-by: allenhouchins <32207388+allenhouchins@users.noreply.github.com>
2026-01-26 09:36:44 -06:00
RachelElysia a2f9321ce8 Fleet UI: Fix location modal gap (#38722) 2026-01-26 10:18:32 -05:00
Allen Houchins 76990c86ca Update cisco_jabber_version_transformer.go (#38762)
This pull request makes a minor update to the Cisco Jabber version
transformer. The version reported by the transformer is incremented from
"15.2.0" to "15.2.1" to match the latest app version.

- Updated the `CiscoJabberVersionTransformer` in
`cisco_jabber_version_transformer.go` to set `app.Version` to "15.2.1"
instead of "15.2.0".
2026-01-26 09:12:05 -06:00
RachelElysia 2acf3ac45f Fleet UI: Update link to a primary button (#38637) 2026-01-26 09:36:19 -05:00
RachelElysia c5514978ca Fleet UI: Fixed broken disk space sort header on hosts table (#38732) 2026-01-26 09:35:43 -05:00
RachelElysia 6593137088 Fleet UI: Allow users to scroll through disabled yml fields (#38715) 2026-01-26 09:35:22 -05:00
RachelElysia e2019890b4 Fleet UI: Bold page name in error msg (#38730) 2026-01-26 09:34:37 -05:00
e6a1dad805 Recommend fleetctl binary from GitHub over npm (#37733)
Getting the `fleetctl` binary from our script or GitHub Releases is
easier than directing users to install and manage it with Node/npm.

Also, removed the statement that the binary is for Windows and Linux,
since it works on macOS too.

---------

Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
2026-01-26 08:01:10 -06:00
kitzy 501f72e02e Pin MySQL and Redis images in docker-compose.yml (#38759) 2026-01-25 14:09:30 -08:00
Katheryn Satterlee 37fec8d655 Update query for Fleet osquery policy (#38456)
The policy currently returns a value in both a good and bad state.
Updated to use `SELECT 1`
2026-01-25 16:04:07 -05:00
Konstantin Sykulev c513b3f518 Optimizing certificate template batch delete auth (#38650)
- [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)

## Testing

- [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**
* Enhanced authorization validation for certificate template batch
deletion operations, ensuring all templates belong to the specified team
before allowing deletion.

* **Tests**
* Added authorization verification tests for certificate template
deletion to prevent cross-team unauthorized access.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-01-24 17:47:17 -06:00
c64e87baae Update Fleet-maintained apps (#38745)
Automated ingestion of latest Fleet-maintained app data.

---------

Co-authored-by: mostlikelee <16102903+mostlikelee@users.noreply.github.com>
Co-authored-by: Allen Houchins <32207388+allenhouchins@users.noreply.github.com>
2026-01-24 12:02:39 -06:00
Sam Pfluger ef76a87469 Fix link for 'Finish what you start' section (#38739)
Updated the link for 'Just fix it' to point to the correct GitLab
handbook section.

Closes https://github.com/fleetdm/confidential/issues/13121
2026-01-23 20:48:52 -06:00
Mike McNeil 5e820f28f1 Handbook: Minor fixes (heading hierarchy, capitalization) (#38742) 2026-01-23 17:43:41 -06:00
Carlo 9f1640415f Populate LastInstall for failed installs (#38655)
Fixes #30392. Fixes Host Software API not returning execution IDs for failed install/uninstall attempts, preventing users from viewing failure details in the software library page.
2026-01-23 18:07:28 -05:00
Eric 4cae77302a Website: update article category page (#38707)
Related to: https://github.com/fleetdm/confidential/issues/13527

Changes:
- Changed the name of the /articles page to "Blogs"
- Updated the blogs category to exclude guides
- Added a link to /guides to the sidebar on article category pages
2026-01-23 16:48:43 -06:00
Noah Talerman f6e9c203aa Product groups: Bug triage (#38737)
- Up to the Product designer to get reproduction steps
2026-01-23 17:16:16 -05:00
Isabell ReedyandSam Pfluger 781842a650 Handbook: Add "Retire a KPI" (#38689)
Co-authored-by: Sam Pfluger <108141731+Sampfluger88@users.noreply.github.com>
2026-01-23 16:00:26 -06:00
Eric c4f8ded657 Website: Update values to match CRM picklist values (#38734)
Changes:
- Updated the accepted `intentSingal` values in the receive-from-clay
webhook and the createHistoricalEvent helper to match the picklist
values in Salesforce
- updated a "most recent/source channel details" value set in the
updateOrCreateContactAndAccount helper to match the picklist value in
Salesforce.
2026-01-23 15:35:33 -06:00