Skip to content

Conversation

@samuelwei
Copy link
Collaborator

Introduce FrontendVersion middleware to backend to attach the current frontend version hash in the HTTP response headers. This allows the client to detect if the frontend version is outdated.

Create a new FrontendOutdatedDialog Vue component that watches for changes in the frontend version and prompts users to reload if they are running an outdated version. Integrate this component into the main application layout.

Update the Api service to set up an Axios interceptor to read the 'X-Frontend-Version' header from responses and store it in the settings store, triggering the version check logic.

Enhance user experience by ensuring they always use the latest client features and bug fixes.

Fixes #

Type

  • Bugfix
  • Feature
  • Documentation
  • Refactoring (e.g. Style updates, Test implementation, etc.)
  • Other (please describe):

Checklist

  • Code updated to current develop branch head
  • Passes CI checks
  • Is a part of an issue
  • Tests added for the bugfix or newly implemented feature, describe below why if not
  • Changelog is updated
  • Documentation of code and features exists

Changes

Other information

Introduce `FrontendVersion` middleware to backend to attach the
current frontend version hash in the HTTP response headers. This
allows the client to detect if the frontend version is outdated.

Create a new `FrontendOutdatedDialog` Vue component that watches
for changes in the frontend version and prompts users to reload
if they are running an outdated version. Integrate this component
into the main application layout.

Update the `Api` service to set up an Axios interceptor to read
the 'X-Frontend-Version' header from responses and store it in
the settings store, triggering the version check logic.

Enhance user experience by ensuring they always use the latest
client features and bug fixes.
@coderabbitai
Copy link

coderabbitai bot commented Jan 14, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link

codecov bot commented Jan 14, 2026

Codecov Report

❌ Patch coverage is 83.87097% with 5 lines in your changes missing coverage. Please review.
✅ Project coverage is 96.71%. Comparing base (5f23976) to head (d572cae).

Files with missing lines Patch % Lines
resources/js/components/FrontendOutdatedDialog.vue 60.00% 4 Missing ⚠️
app/Http/Middleware/FrontendVersion.php 87.50% 1 Missing ⚠️
Additional details and impacted files
@@              Coverage Diff              @@
##             develop    #2727      +/-   ##
=============================================
- Coverage      96.74%   96.71%   -0.04%     
- Complexity      1823     1825       +2     
=============================================
  Files            439      441       +2     
  Lines          12478    12509      +31     
  Branches        2080     2083       +3     
=============================================
+ Hits           12072    12098      +26     
- Misses           406      411       +5     

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

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@cypress
Copy link

cypress bot commented Jan 14, 2026

PILOS    Run #2731

Run Properties:  status check passed Passed #2731  •  git commit d572cae892: feat: add frontend version checking for outdated clients
Project PILOS
Branch Review handle-frontend-outdated
Run status status check passed Passed #2731
Run duration 07m 47s
Commit git commit d572cae892: feat: add frontend version checking for outdated clients
Committer Samuel Weirich
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 0
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 610
View all changes introduced in this branch ↗︎

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants