Commit a4e477c
feat!: migrate to Biome + Lefthook + Vitest + esbuild + Node 24 (#8)
* feat!: migrate to Biome + Lefthook + Vitest + esbuild + Node 24
Brings the action in line with the org's modern toolchain template
(mirroring reside-eng/npm-dependency-stats-action#1655):
- Replace ESLint 8 + Prettier 3 + Husky + lint-staged + @side/eslint-config-*
+ @side/prettier-config with @biomejs/biome 2.4.15 + lefthook 2.1.8.
- Replace @vercel/ncc with esbuild 0.28.0 — bundle output is now
dist/index.mjs (ESM) with a createRequire banner for CommonJS deps.
- Add Vitest 4.1.7 + @vitest/coverage-v8 plus smoke tests for action.ts
and github.ts (80% line coverage, gate set at 75%).
- Bump Node engine ^24.0.0, @tsconfig/node24, @types/node@^24,
TypeScript ^6.0.3 (required by @tsconfig/node24's lib values).
- action.yml: runs.using node20 -> node24, main dist/index.js -> dist/index.mjs.
- Bump cycjimmy/semantic-release-action v2.7.0 -> v6.0.0 and
semantic_version ^18 -> ^25 in the release workflow.
- gitignore dist/ on main (release workflow continues to force-commit the
rebuilt bundle to the v<major> branch, matching the reference template).
- Add Claude Code scaffolding: AGENTS.md, CLAUDE.md stub,
.claude/{agents,commands}/.gitkeep, .claude/settings.json permissions,
.vscode/extensions.json, .github/workflows/claude-code.yml.
BREAKING CHANGE: action.yml now uses node24 runtime and dist/index.mjs
entrypoint. Consumers must pin to @v2 (the new major branch produced by
semantic-release). Existing @v1 consumers are unaffected.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* docs(agents): trim AGENTS.md to load-bearing content only
Drops three sections that don't change agent behaviour at execution time:
- Release: version pins and trigger branches aren't load-bearing for dev
work; the dist/ ownership rule (the one piece that mattered) is now
folded into Conventions.
- Atlassian: already declared in ~/.claude/CLAUDE.md and the parent
Side/CLAUDE.md; no Atlassian touchpoints in this repo anyway.
- Side org context: already declared in the parent Side/CLAUDE.md.
Adds the non-obvious things an agent would otherwise rediscover:
- The two action modes (upsert vs create-only) and the parent-selector
behaviour.
- A pointer to the reorderTableRows quirk in src/action.ts.
- The module-load side effect in src/github.ts (why tests mock
@actions/core before importing it).
- The feat!: / BREAKING CHANGE: rule for triggering major bumps.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* ci: upload test coverage to Coveralls
The pre-migration verify.yml and release.yml had a commented-out
Coveralls upload step waiting for tests to exist. Now that we have 11
tests at 80% line coverage, wire it up:
- vitest.config.ts: add 'lcov' to coverage.reporter so coverage/lcov.info
is produced (Coveralls default input path). Keeps 'text' for local CLI
output.
- verify.yml + release.yml: add Coveralls upload step
(coverallsapp/github-action@v2.3.6, SHA-pinned) immediately after the
test step.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* ci: add claude code review action
---------
Co-authored-by: Eddie Leffler <757524+hershmire@users.noreply.github.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-authored-by: Mathieu Di-Majo <mathieu.dimajo@gmail.com>1 parent 204cab6 commit a4e477c
29 files changed
Lines changed: 2040 additions & 3219 deletions
File tree
- .claude
- agents
- commands
- .github/workflows
- dist
- src
Whitespace-only changes.
Whitespace-only changes.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
This file was deleted.
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
| 18 | + | |
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| |||
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
43 | | - | |
| 43 | + | |
44 | 44 | | |
45 | | - | |
46 | | - | |
| 45 | + | |
| 46 | + | |
47 | 47 | | |
48 | | - | |
49 | | - | |
| 48 | + | |
| 49 | + | |
50 | 50 | | |
51 | | - | |
52 | | - | |
| 51 | + | |
| 52 | + | |
53 | 53 | | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
58 | 58 | | |
59 | 59 | | |
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
63 | | - | |
| 63 | + | |
64 | 64 | | |
65 | 65 | | |
66 | | - | |
| 66 | + | |
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
| 6 | + | |
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
23 | | - | |
| 23 | + | |
24 | 24 | | |
25 | | - | |
26 | | - | |
| 25 | + | |
| 26 | + | |
27 | 27 | | |
28 | | - | |
29 | | - | |
| 28 | + | |
| 29 | + | |
30 | 30 | | |
31 | | - | |
32 | | - | |
| 31 | + | |
| 32 | + | |
33 | 33 | | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
0 commit comments