Skip to content

web: Fix stale table rows#17940

Merged
GirlBossRush merged 1 commit intomainfrom
fix-stale-table-rows
Nov 25, 2025
Merged

web: Fix stale table rows#17940
GirlBossRush merged 1 commit intomainfrom
fix-stale-table-rows

Conversation

@GirlBossRush
Copy link
Contributor

@GirlBossRush GirlBossRush commented Nov 4, 2025

Details

This PR fixes a few rendering memoization issues which can result in stale table rows, along with some additional fixes to avoid unnecessary re-rendering of table elements.

Why no repeat directive?

While this initially seemed like a quick performance boost, I'm not so confident that the flexibility we expect of the table component is compatible with repeat's expectations of stable keys. This issue needs more thought before we introduce this again such as...

  • Refreshing the table on frequently updated data sets like logs
  • Possibly enforcing a abstract rowID(item: T) method which normalizes a unique key we can cache against.
  • How repeat handles expandable rows and how Lit can keep track of optional interpolated entries while iterating
  • Whether <ak-table> is doing too much to make sense of and in need of detangling

Why the guard directive?

For some parts of the table render, our confidence in regularity is much higher. Parts like whether to render a checkbox, expandable area, etc. I'm sure there is more we can lean on but we can see how this fairs on a smaller space

Related PRs

@GirlBossRush GirlBossRush requested a review from a team as a code owner November 4, 2025 21:15
@GirlBossRush GirlBossRush requested a review from fheisler November 4, 2025 21:15
@GirlBossRush GirlBossRush added bug Something isn't working a11y Features or issues related to accessibility labels Nov 4, 2025
@netlify
Copy link

netlify bot commented Nov 4, 2025

Deploy Preview for authentik-docs ready!

Name Link
🔨 Latest commit 00d37b5
🔍 Latest deploy log https://app.netlify.com/projects/authentik-docs/deploys/6926130098cca100082e428e
😎 Deploy Preview https://deploy-preview-17940--authentik-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify
Copy link

netlify bot commented Nov 4, 2025

Deploy Preview for authentik-integrations ready!

Name Link
🔨 Latest commit 00d37b5
🔍 Latest deploy log https://app.netlify.com/projects/authentik-integrations/deploys/69261300ae0aab000836ac7b
😎 Deploy Preview https://deploy-preview-17940--authentik-integrations.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify
Copy link

netlify bot commented Nov 4, 2025

Deploy Preview for authentik-storybook ready!

Name Link
🔨 Latest commit 00d37b5
🔍 Latest deploy log https://app.netlify.com/projects/authentik-storybook/deploys/692613003e792900086ae504
😎 Deploy Preview https://deploy-preview-17940--authentik-storybook.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@codecov
Copy link

codecov bot commented Nov 4, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.97%. Comparing base (9621082) to head (00d37b5).
⚠️ Report is 24 commits behind head on main.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #17940      +/-   ##
==========================================
- Coverage   92.97%   92.97%   -0.01%     
==========================================
  Files         894      894              
  Lines       48926    48926              
==========================================
- Hits        45490    45488       -2     
- Misses       3436     3438       +2     
Flag Coverage Δ
e2e 45.34% <ø> (-0.02%) ⬇️
integration 23.15% <ø> (+<0.01%) ⬆️
unit 91.11% <ø> (+<0.01%) ⬆️
unit-migrate 91.16% <ø> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@GirlBossRush GirlBossRush requested review from BeryJu and kensternberg-authentik and removed request for fheisler November 11, 2025 06:19
@GirlBossRush GirlBossRush force-pushed the fix-stale-table-rows branch 3 times, most recently from c200807 to b4fc3bf Compare November 17, 2025 15:32
@github-actions
Copy link
Contributor

github-actions bot commented Nov 17, 2025

authentik PR Installation instructions

Instructions for docker-compose

Add the following block to your .env file:

AUTHENTIK_IMAGE=ghcr.io/goauthentik/dev-server
AUTHENTIK_TAG=gh-00d37b5e6ed8d09880536a7b3864d104ac5450b1
AUTHENTIK_OUTPOSTS__CONTAINER_IMAGE_BASE=ghcr.io/goauthentik/dev-%(type)s:gh-%(build_hash)s

Afterwards, run the upgrade commands from the latest release notes.

Instructions for Kubernetes

Add the following block to your values.yml file:

authentik:
    outposts:
        container_image_base: ghcr.io/goauthentik/dev-%(type)s:gh-%(build_hash)s
global:
    image:
        repository: ghcr.io/goauthentik/dev-server
        tag: gh-00d37b5e6ed8d09880536a7b3864d104ac5450b1

Afterwards, run the upgrade commands from the latest release notes.

@GirlBossRush GirlBossRush removed the request for review from BeryJu November 20, 2025 16:16
@GirlBossRush GirlBossRush force-pushed the fix-stale-table-rows branch 2 times, most recently from 78448ad to 9284b2e Compare November 20, 2025 21:31
@github-project-automation github-project-automation bot moved this from Todo to In Progress in authentik Core Nov 21, 2025
@BeryJu BeryJu added the backport/version-2025.10 Add this label to PRs to backport changes to version-2025.10 label Nov 21, 2025
@GirlBossRush GirlBossRush changed the title web: Fix stale table rows, timestamps web: Fix stale table rows Nov 21, 2025
@BeryJu BeryJu added this to the Release 2025.10.3 milestone Nov 25, 2025
@GirlBossRush GirlBossRush enabled auto-merge (squash) November 25, 2025 20:35
@GirlBossRush GirlBossRush merged commit 171305c into main Nov 25, 2025
135 of 137 checks passed
@GirlBossRush GirlBossRush deleted the fix-stale-table-rows branch November 25, 2025 21:38
@github-project-automation github-project-automation bot moved this from In Progress to Done in authentik Core Nov 25, 2025
authentik-automation bot pushed a commit that referenced this pull request Nov 25, 2025
This cherry-pick has conflicts that need manual resolution.

Original PR: #17940
Original commit: 171305c
@authentik-automation
Copy link
Contributor

⚠️ Cherry-pick to version-2025.10 has conflicts: #18373

rissson pushed a commit that referenced this pull request Nov 27, 2025
…8373)

Co-authored-by: Teffen Ellis <592134+GirlBossRush@users.noreply.github.com>
rissson added a commit that referenced this pull request Nov 27, 2025
rissson added a commit that referenced this pull request Nov 27, 2025
…10) (#18407)

Fix stale table rows (cherry-pick #17940 to version-2025.10) (#1…"
@rissson rissson added backport/version-2025.10 Add this label to PRs to backport changes to version-2025.10 and removed backport/version-2025.10 Add this label to PRs to backport changes to version-2025.10 labels Nov 27, 2025
@BeryJu BeryJu mentioned this pull request Nov 27, 2025
authentik-automation bot pushed a commit that referenced this pull request Nov 27, 2025
This cherry-pick has conflicts that need manual resolution.

Original PR: #17940
Original commit: 171305c
@authentik-automation
Copy link
Contributor

⚠️ Cherry-pick to version-2025.10 has conflicts: #18408

rissson pushed a commit that referenced this pull request Nov 27, 2025
…8408)

* web: Table row refinements (#17659)

* web: Reset selection state after refresh.

* web: Only select row when not expandable.

* web: Only render expandable content when row is expanded.

* web: Use `repeat` directive.

* web: Fix nested pointer event detection.

* web: Fix issues surrounding stale table rows.

* Port row selector fix.

---------

Co-authored-by: Teffen Ellis <592134+GirlBossRush@users.noreply.github.com>
Co-authored-by: Teffen Ellis <teffen@goauthentik.io>
kensternberg-authentik added a commit that referenced this pull request Dec 11, 2025
* main: (58 commits)
  core: bump goauthentik.io/api/v3 from 3.2025120.5 to 3.2025120.7 (#18381)
  web/admin: add entitlement search (#18291)
  core: bump goauthentik/fips-debian from `8b7e8d0` to `8c4ec98` (#18361)
  website: bump the build group in /website with 3 updates (#18382)
  core: bump astral-sh/uv from 0.9.11 to 0.9.12 (#18383)
  root: improve testing helpers (#18379)
  website: bump the goauthentik group across 1 directory with 4 updates (#18378)
  website: bump the eslint group in /website with 3 updates (#18356)
  policies: use flow planner directly in PolicyAccessView to directly set flow context (#18372)
  providers/scim: fix PATCH for AWS (#18230)
  enterprise/providers/scim: fix OAuth (#18358)
  web: Fix stale table rows (#17940)
  web: Bump packages. (#18371)
  *: convert slugfields to textfields (#17411)
  outposts: set container healthcheck inline (#18298)
  web:  ESLint Typing Fixes  (#18362)
  core: bump golang.org/x/crypto from 0.43.0 to 0.45.0 (#18275)
  lifecycle/aws: bump aws-cdk from 2.1032.0 to 2.1033.0 in /lifecycle/aws (#18278)
  core: bump github.com/getsentry/sentry-go from 0.38.0 to 0.39.0 (#18353)
  ci: bump actions/setup-python from 6.0.0 to 6.1.0 in /.github/actions/setup (#18360)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

a11y Features or issues related to accessibility backport/version-2025.10 Add this label to PRs to backport changes to version-2025.10 bug Something isn't working

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants