[HOMEASSIST-7] Forgejo Actions CI for format, lint, typecheck, test and build #7

Merged
chris merged 2 commits from feature/HOMEASSIST-7 into main 2026-10-03 22:11:03 -06:00
Owner

Ticket

HOMEASSIST-7 Dashboards: Forgejo Actions CI for typecheck, lint and test

Summary

  • New .forgejo/workflows/ci.yml runs on pull requests and on pushes to main, on the ubuntu-latest homelab runner.
  • Steps: bun install --frozen-lockfile, then format:check, lint, typecheck, test and build as separate steps, through the root scripts. They fan out across all workspaces, so new dashboards are picked up automatically, and the unscoped build builds every dashboard that defines build.
  • Bun is pinned to 1.4.1. It accepts the committed lockfile under --frozen-lockfile, and the pin comment says to bump it together with Dockerfile.dev if that is ever pinned.
  • No secrets or variables needed. Build and test don't read HA_WWW_DIR or VITE_*.
  • The README gains a short ### CI section.
  • Verification: the full sequence passed locally on bun 1.4.1 (188 tests: ui 119, map 12, scripts 57). An independent Opus review also ran the exact CI steps from a clean git archive copy inside oven/bun:1.4.1 and every step passed.
  • Caveat: the workflow itself has not run on the Forgejo runner yet. The first run on this PR is the live check.
  • Known nit, left as is: @types/bun resolves to 1.4.2 while CI runs 1.4.1, which is the same as the design-system sibling.

🤖 Generated with Claude Code

https://claude.ai/code/session_01A6WV37dDVNs4Zhq7RQB4ku

## Ticket [HOMEASSIST-7](http://192.168.2.100:7123/home/browse/HOMEASSIST-7/) Dashboards: Forgejo Actions CI for typecheck, lint and test ## Summary - New `.forgejo/workflows/ci.yml` runs on pull requests and on pushes to main, on the `ubuntu-latest` homelab runner. - Steps: `bun install --frozen-lockfile`, then `format:check`, `lint`, `typecheck`, `test` and `build` as separate steps, through the root scripts. They fan out across all workspaces, so new dashboards are picked up automatically, and the unscoped build builds every dashboard that defines `build`. - Bun is pinned to 1.4.1. It accepts the committed lockfile under `--frozen-lockfile`, and the pin comment says to bump it together with `Dockerfile.dev` if that is ever pinned. - No secrets or variables needed. Build and test don't read `HA_WWW_DIR` or `VITE_*`. - The README gains a short `### CI` section. - Verification: the full sequence passed locally on bun 1.4.1 (188 tests: ui 119, map 12, scripts 57). An independent Opus review also ran the exact CI steps from a clean `git archive` copy inside `oven/bun:1.4.1` and every step passed. - Caveat: the workflow itself has not run on the Forgejo runner yet. The first run on this PR is the live check. - Known nit, left as is: `@types/bun` resolves to 1.4.2 while CI runs 1.4.1, which is the same as the design-system sibling. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01A6WV37dDVNs4Zhq7RQB4ku
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01A6WV37dDVNs4Zhq7RQB4ku
[HOMEASSIST-7] Document the CI workflow in the README.
Some checks failed
ci / check (pull_request) Successful in 13s
ticket-done / done (pull_request) Failing after 1s
d5386aa780
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01A6WV37dDVNs4Zhq7RQB4ku
chris merged commit 45f1293163 into main 2026-10-03 22:11:03 -06:00
chris deleted branch feature/HOMEASSIST-7 2026-10-03 22:11:03 -06:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
chris/home-assistant-dashboards!7
No description provided.