Skip to content

Conversation

ZedLi
Copy link
Collaborator

@ZedLi ZedLi commented Aug 29, 2025

Description

A proof of concept at using sqlite to load the various filter options in session recordings page. Previously, we were loading all session recordings to then filter down the various filter options we need which takes a huge amount of time just returning all the data to filter.

This PR has a few notable changes:

  1. A simple attempt at establishing a pattern for using SELECT statements. This will be useful in the future for joins/subquery support.
  2. Expanded usage of searching to be able to pass instead of just a string, an object that lets a consumer choose which columns to search on.
  3. Decouple our filters from being loaded from the route model hook which is a departure from our convention. This has the benefit of actually letting the page first load and having the filters load async so the page doesn't wait for the filters to finish. This is also much faster to query for each individual filter option from SQLite rather than returning all data to filter in application code.
    • Having the queries be async does have some downsides in the scenario where there's a lot of filter options and a user might be waiting for the options to load if they're fast on clicking them but that also means the user wasn't waiting for filter options just for the page to load

Screenshots (if appropriate)

How to Test

Use this cluster and try loading session recordings compared to before this PR.

Checklist

  • I have added before and after screenshots for UI changes
  • I have added JSON response output for API changes
  • I have added steps to reproduce and test for bug fixes in the description
  • I have commented on my code, particularly in hard-to-understand areas
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • I have added a11y-tests label to run a11y audit tests if needed

PCI review checklist

  • I have documented a clear reason for, and description of, the change I am making.
  • If applicable, I've documented a plan to revert these changes if they require more than reverting the pull request.
  • If applicable, I've documented the impact of any changes to security controls.
    Examples of changes to security controls include using new access control methods, adding or removing logging pipelines, etc.

@ZedLi ZedLi self-assigned this Aug 29, 2025
Copy link

vercel bot commented Aug 29, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
boundary-ui Ready Ready Preview Comment Sep 3, 2025 5:49pm
boundary-ui-desktop Ready Ready Preview Comment Sep 3, 2025 5:49pm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant