Skip to content

feat!: Copier & Updater Aggregators + Frontend - #26

Open
PaulKMueller (PaulKMueller) wants to merge 29 commits into
mainfrom
updater-reports
Open

feat!: Copier & Updater Aggregators + Frontend#26
PaulKMueller (PaulKMueller) wants to merge 29 commits into
mainfrom
updater-reports

Conversation

@PaulKMueller

@PaulKMueller PaulKMueller (PaulKMueller) commented Aug 18, 2026

Copy link
Copy Markdown

Changes

To make this easier to review, here a brief overview of the changes:

Python Code & Setup:

  • The changes here relate to the following things:
    1. Include the static frontend in the python package (see workflows, pixi.toml, ...)
    2. Add quant-ranger command to export the static frontend (+ documentation)
    3. Introduce updater for copier dashboard to collect data
    4. Introduce aggregators for updater reports and copier data

Frontend Code:

  • frontend/:
    • Generic linting and formatting configuration as well as the main page layout
    • components/:
      • dashboard/:
        • Reusable components for the dashboards that the frontend shows for updater runs and copier data
      • data-table/:
        • Reusable table components building on tanstack-table for the tables shown on the dashboards
      • ui/: Generic components used all across the frontend (these are really lean in most cases)
    • copier/: Components and hooks specific to the copier dashboard
    • updaters/: Components and hooks specific to the updater dashboard
    • lib/: Application-wide reusable functionality (URL encoding/decoding, date formatting, ...)

@codecov

codecov Bot commented Aug 18, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (c50a3b4) to head (4fdcb73).

Additional details and impacted files
@@            Coverage Diff             @@
##              main       #26    +/-   ##
==========================================
  Coverage   100.00%   100.00%            
==========================================
  Files           49        53     +4     
  Lines         3077      3360   +283     
==========================================
+ Hits          3077      3360   +283     

☔ View full report in Codecov by Harness.
📢 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.

@PaulKMueller PaulKMueller (PaulKMueller) changed the title feat: add updater reports feat: Add updater reports Aug 18, 2026
@PaulKMueller
PaulKMueller (PaulKMueller) marked this pull request as draft August 18, 2026 16:54
Comment thread frontend/src/updaters/usePullRequests.ts Outdated
Comment thread frontend/src/updaters/FailureDetails.tsx Outdated
Comment thread frontend/src/updaters/FailureDetails.tsx Outdated
Comment thread frontend/src/updaters/LivePullRequestSection.tsx Outdated
Comment thread frontend/src/updaters/pull-request-age.ts
Comment thread frontend/src/updaters/pull-requests.ts Outdated
Comment thread frontend/src/updaters/usePullRequests.ts Outdated
Comment thread frontend/src/updaters/updater-dashboard-url.ts Outdated
@PaulKMueller
PaulKMueller (PaulKMueller) changed the base branch from copier-dashboard to main August 29, 2026 19:51
@PaulKMueller PaulKMueller (PaulKMueller) changed the title feat: Add updater reports feat!: Add updater reports Aug 29, 2026
@PaulKMueller PaulKMueller (PaulKMueller) changed the title feat!: Add updater reports feat!: Copier & Updater Aggregators + Frontend Aug 29, 2026
logger.info(f"Wrote updater results to {results_file}.")


def _github_workflow_url() -> str | None:

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Introduced because the new aggregators need this functionality to properly display and refer to clickable URLs in the frontend.
It makes existing code for zizmor easier as well.

@dataclass(frozen=True, slots=True)
class PullRequestResult:
updated: bool
number: int | None

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of just returning a bool when creating a PR, we return this object which also includes the PR number.
This is required to have the PR numbers available in the updater reports.

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

Labels

breaking enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants