Enable PWA (Update Popup) and Deployment Issue

There used to be a popup that appeared with the message: A new version of the content is available.
However, after making the following changes to enable ToC on pages (How to enable ToC on the layout `page`? · cotes2020/jekyll-theme-chirpy · Discussion #2241 · GitHub), I just noticed the popup no longer appears, and the updated version of the site does not load automatically. Instead, I have to manually refresh the page using Ctrl + Shift + R.

Why is this happening? How can I fix it? Did something change in my updated setup that I should be concerned about?

Here is my modified template.

I have updated the GitHub action workflow .github/workflows/pages-deploy.yml:

# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.

# Sample workflow for building and deploying a Jekyll site to GitHub Pages
name: "Build and Deploy"

on:
  # Runs on pushes targeting the default branch
  push:
    branches: ["main"]

  # Allows you to run this workflow manually from the Actions tab
  workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
  contents: read
  pages: write
  id-token: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
  group: "pages"
  cancel-in-progress: false

jobs:
  # Build job
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Setup Node.js
        uses: actions/setup-node@v4.2.0
        with:
          node-version: '22.x' # Use Node.js 22.x LTS version

      - name: Install Dependencies (npm)
        run: npm install

      - name: Build assets
        run: npm run build # Run the build process for assets

      - name: Setup Ruby
        # https://github.com/ruby/setup-ruby/releases/tag/v1.207.0
        uses: ruby/setup-ruby@4a9ddd6f338a97768b8006bf671dfbad383215f4
        with:
          ruby-version: '3.1' # Not needed with a .ruby-version file
          bundler-cache: true # runs 'bundle install' and caches installed gems automatically
          cache-version: 0 # Increment this number if you need to re-download cached gems
          
      - name: Setup Pages
        id: pages
        uses: actions/configure-pages@v5

      - name: Build with Jekyll
        # Outputs to the './_site' directory by default
        run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}"
        env:
          JEKYLL_ENV: production

      - name: Upload artifact
        # Automatically uploads an artifact from the './_site' directory by default
        uses: actions/upload-pages-artifact@v3

  # Deployment job
  deploy:
    environment:
      name: github-pages
      url: ${{ steps.deployment.outputs.page_url }}
    runs-on: ubuntu-latest
    needs: build
    steps:
      - name: Deploy to GitHub Pages
        id: deployment
        uses: actions/deploy-pages@v4

this sounds like a caching issue - the browser is keeping a copy of the files and if the filenames are the same it is serving the existing one rather than downloading the new ones. Caching is good in general, but you need to be aware it is happening and come up with a cache busting plan, usually changing the filename of your css in some minor way like adding a query string to it with the date.

PWA was functioning correctly till yesterday.