Skip to content

Phase 2: Automate Lighthouse Audits and Track Quality Metrics - #939

Draft
ckenst with Copilot wants to merge 9 commits into
mainfrom
copilot/phase-2-automate-lighthouse-audits
Draft

Phase 2: Automate Lighthouse Audits and Track Quality Metrics#939
ckenst with Copilot wants to merge 9 commits into
mainfrom
copilot/phase-2-automate-lighthouse-audits

Conversation

Copilot AI commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Implemented automated Lighthouse audits during CI/CD pipeline to record Performance, Accessibility, and SEO scores per released version. Metrics are persisted in an append-only format to support future trend analysis and quality tracking.

Changes

New Workflows & Scripts

  • .github/workflows/lighthouse-audit.yml: GitHub Actions workflow triggered on release tags (v*) or manual dispatch

    • Builds Jekyll site and serves locally via Python's built-in http.server
    • Runs Lighthouse CLI with CI-optimized settings (--no-sandbox, simulated throttling)
    • Persists metrics to _data/quality_log.yml with [skip-version] guard to prevent CI loops
    • Implements 3-tier version resolution (manual input → git tag → VERSION.txt fallback)
  • tools/lighthouse_audit.rb: Ruby script for Lighthouse coordination

    • Accepts version and site URL parameters
    • Executes Lighthouse, parses JSON output, extracts three scores
    • Appends metrics to quality log with comprehensive error handling
    • Includes JSON parsing exception handling and version validation
  • _data/quality_log.yml: Append-only YAML quality metrics log

    • Stores version, release_date, commit_sha, Performance/Accessibility/SEO scores, and workflow run URL

Modified Workflows

  • .github/workflows/deploy.yml: Added [skip-version] flag detection to skip version bump/tag creation for metrics-only commits, preventing deployment loops

Documentation

  • ROADMAP.md: Marked Phase 2 Lighthouse Tracking complete with implementation details and design rationale (local site serving, Ruby script, YAML format, version precedence)

Example Quality Log Entry

- version: '1631'
  release_date: '2026-09-07'
  commit_sha: abc123def456
  performance: 85
  accessibility: 92
  seo: 88
  workflow_run_url: https://github.com/TestingConferences/testingconferences.github.io/actions/runs/12345

Design Notes

  • Local site serving: Ensures repeatable audits without external dependencies or production traffic
  • Append-only format: Preserves historical data for Phase 4 trend visualization
  • [skip-version] guard: Metrics commits skip version increment, preventing cascading CI runs
  • Manual trigger support: workflow_dispatch enables testing and recovery workflows
  • Robust validation: Tag format checking, version fallback chain, comprehensive error messages

Copilot AI and others added 8 commits September 7, 2026 00:31
Co-authored-by: ckenst <6896787+ckenst@users.noreply.github.com>
Co-authored-by: ckenst <6896787+ckenst@users.noreply.github.com>
…ssages

Co-authored-by: ckenst <6896787+ckenst@users.noreply.github.com>
…kflow and script

Co-authored-by: ckenst <6896787+ckenst@users.noreply.github.com>
…ntation

Co-authored-by: ckenst <6896787+ckenst@users.noreply.github.com>
…mprove JSON error handling

Co-authored-by: ckenst <6896787+ckenst@users.noreply.github.com>
…umentation

Co-authored-by: ckenst <6896787+ckenst@users.noreply.github.com>
…sing and input descriptions

Co-authored-by: ckenst <6896787+ckenst@users.noreply.github.com>
Copilot AI changed the title [WIP] Automate Lighthouse audits and track quality metrics Phase 2: Automate Lighthouse Audits and Track Quality Metrics Sep 7, 2026
Copilot AI requested a review from ckenst September 7, 2026 00:41
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.

Phase 2: Automate Lighthouse Audits and Track Quality Metrics

2 participants