Skip to content

chore: add self-hosted Renovate dependency updates - #91

Merged
0xjcf merged 7 commits into
betafrom
fas/renovate-dependency-currency
Jul 9, 2026
Merged

chore: add self-hosted Renovate dependency updates#91
0xjcf merged 7 commits into
betafrom
fas/renovate-dependency-currency

Conversation

@0xjcf

@0xjcf 0xjcf commented Jul 9, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add a self-hosted Renovate workflow that uses the repository RENOVATE_TOKEN secret and targets beta.
  • Add Renovate policy for grouped state-library updates, devDependency and example updates, protected package runtime/peer dependency ranges, no automerge, and weekly lockfile maintenance.
  • Document the dependency-update policy and clean the duplicate FAS tracker entry for this task.

Verification

  • npx --yes --package renovate renovate-config-validator renovate.json
  • ruby -e 'require "yaml"; YAML.load_file(".github/workflows/renovate.yml")'
  • fas validate-task
  • .fas/scripts/verify.sh --full
  • coderabbit review --agent -t committed --base beta -c AGENTS.md (0 issues)

Summary by CodeRabbit

  • New Features

    • Added automated dependency update runs on a weekly schedule with manual trigger support.
    • Introduced a dependency update dashboard and review flow for larger updates.
  • Documentation

    • Expanded contribution guidance with dependency update expectations and review process details.
  • Chores

    • Added configuration to group related updates, limit update scope, and keep lockfiles current.

@coderabbitai

coderabbitai Bot commented Jul 9, 2026

Copy link
Copy Markdown

Review Change Stack

Walkthrough

Adds a Renovate GitHub Actions workflow (manual/weekly trigger) and a renovate.json configuration controlling scheduling, grouping, and update scope. Documents the policy in CONTRIBUTING.md and updates related task tracker files reflecting status changes.

Changes

Renovate Dependency Automation

Layer / File(s) Summary
Renovate workflow
.github/workflows/renovate.yml
New workflow triggered manually or weekly (cron) runs the Renovate GitHub Action with restricted permissions, token auth, and environment variables for platform, logging, and onboarding behavior.
Renovate configuration rules
renovate.json
New config extends recommended defaults, targets the beta branch, sets schedule/concurrency limits, disables automerge, enables only the npm manager, ignores changeset paths, and defines packageRules grouping state-library updates and restricting runtime/peer dependency and example/doc-site updates.
Docs and task tracking updates
CONTRIBUTING.md, .fas/TASKS.md, .fas/tasks/add-renovate-for-ongoing-dependency-currency-so-state-lib-ve.md
Adds a Dependency Updates section to CONTRIBUTING.md describing Renovate’s schedule, scope, and manual release policy; updates the task title, adds a Scope Amendments entry, and changes task status/owner to review/reviewer.

Estimated code review effort: 2 (Simple) | ~10 minutes

Poem

A rabbit hops through weekly checks,
Renovate scans for stale specs,
Config in hand, branch set to beta,
Docs updated—nice and neater!
🐇⚙️📦 Hop, patch, repeat.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: adding self-hosted Renovate dependency updates.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fas/renovate-dependency-currency

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

@codecov

codecov Bot commented Jul 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 91.02%. Comparing base (2f86faa) to head (5b08806).
⚠️ Report is 13 commits behind head on beta.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             beta      #91      +/-   ##
==========================================
- Coverage   91.25%   91.02%   -0.24%     
==========================================
  Files          33       34       +1     
  Lines        1830     1972     +142     
  Branches      498      540      +42     
==========================================
+ Hits         1670     1795     +125     
- Misses        150      167      +17     
  Partials       10       10              
Flag Coverage Δ
unittests 91.02% <ø> (-0.24%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.
see 1 file with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@0xjcf

0xjcf commented Jul 9, 2026

Copy link
Copy Markdown
Owner Author

@CodeRabbit review

@coderabbitai

coderabbitai Bot commented Jul 9, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🧹 Nitpick comments (3)
renovate.json (1)

11-11: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

enabledManagers: ["npm"] excludes the github-actions manager, so the pinned action version in renovate.yml won't be auto-updated.

Since the workflow pins renovatebot/github-action@v46.1.18 and (per the earlier comment) ideally also pins renovate-version, consider adding "github-actions" to enabledManagers so Renovate keeps its own action/version pins current, rather than requiring manual bumps.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@renovate.json` at line 11, The Renovate configuration only enables the npm
manager, so it will not update pinned GitHub Actions references used by the
project itself. Update the Renovate config to include the github-actions manager
alongside npm, and ensure the existing Renovate workflow pinning in the
renovate.yml setup (for the renovatebot/github-action and renovate-version
references) is covered so those versions stay auto-updated.
.github/workflows/renovate.yml (2)

27-27: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value

Consider using github.repository instead of hardcoding the repo slug.

RENOVATE_REPOSITORIES: 0xjcf/ignite-element duplicates information already known to the workflow context and will silently point at the wrong repo if the repo is ever renamed/forked.

♻️ Proposed change
-          RENOVATE_REPOSITORIES: 0xjcf/ignite-element
+          RENOVATE_REPOSITORIES: ${{ github.repository }}
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/renovate.yml at line 27, The Renovate workflow is
hardcoding the repository slug in RENOVATE_REPOSITORIES, which duplicates
workflow context and can break on rename or fork. Update the renovate job
configuration to derive the repo from github.repository instead of a fixed
owner/repo value, and keep the change localized to the renovate environment
setup in the workflow.

20-29: 🩺 Stability & Availability | 🔵 Trivial | ⚡ Quick win

Pin renovate-version to a full semver or checksum. Leaving it unset uses the action’s default Renovate image tag, so the runtime can drift between runs and break reproducibility.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/renovate.yml around lines 20 - 29, The Renovate GitHub
Action setup is not pinned to a specific Renovate runtime, so it can drift
between runs. Update the existing `Run self-hosted Renovate` job in
`renovatebot/github-action@v46.1.18` to set the `renovate-version` input
explicitly to a full semver or checksum, keeping the current `with` block and
`RENOVATE_*` env settings intact.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In @.github/workflows/renovate.yml:
- Line 27: The Renovate workflow is hardcoding the repository slug in
RENOVATE_REPOSITORIES, which duplicates workflow context and can break on rename
or fork. Update the renovate job configuration to derive the repo from
github.repository instead of a fixed owner/repo value, and keep the change
localized to the renovate environment setup in the workflow.
- Around line 20-29: The Renovate GitHub Action setup is not pinned to a
specific Renovate runtime, so it can drift between runs. Update the existing
`Run self-hosted Renovate` job in `renovatebot/github-action@v46.1.18` to set
the `renovate-version` input explicitly to a full semver or checksum, keeping
the current `with` block and `RENOVATE_*` env settings intact.

In `@renovate.json`:
- Line 11: The Renovate configuration only enables the npm manager, so it will
not update pinned GitHub Actions references used by the project itself. Update
the Renovate config to include the github-actions manager alongside npm, and
ensure the existing Renovate workflow pinning in the renovate.yml setup (for the
renovatebot/github-action and renovate-version references) is covered so those
versions stay auto-updated.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: fb5c5fc5-404c-4f97-9167-dcb016fec5cd

📥 Commits

Reviewing files that changed from the base of the PR and between 523af86 and 5b08806.

📒 Files selected for processing (5)
  • .fas/TASKS.md
  • .fas/tasks/add-renovate-for-ongoing-dependency-currency-so-state-lib-ve.md
  • .github/workflows/renovate.yml
  • CONTRIBUTING.md
  • renovate.json

@0xjcf
0xjcf merged commit a10248f into beta Jul 9, 2026
6 checks passed
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.

1 participant