Skip to content

chore: migrate npm/github-actions/docker-compose from Renovate to Dependabot#2328

Merged
s-hirano-ist merged 1 commit into
mainfrom
claude/dependabot-migration-renovate-XVRHL
May 22, 2026
Merged

chore: migrate npm/github-actions/docker-compose from Renovate to Dependabot#2328
s-hirano-ist merged 1 commit into
mainfrom
claude/dependabot-migration-renovate-XVRHL

Conversation

@s-hirano-ist

@s-hirano-ist s-hirano-ist commented May 22, 2026

Copy link
Copy Markdown
Owner

Move dependency updates that Dependabot supports natively into
.github/dependabot.yml (npm, github-actions, docker-compose) and slim
down Renovate to handle only what Dependabot cannot: mise, nvm, the
biome custom manager, and quarterly lockFileMaintenance.

Add a dependabot-auto-merge workflow that mirrors the previous Renovate
auto-merge policy: enable auto-merge for devDependencies (npm),
github-actions, and docker-compose non-major updates; production deps
and major updates stay manual.

Drop the self-hosted Renovate runner (renovate.yaml workflow) since the
remaining scope is small enough for Mend Cloud's Renovate App to handle
under its 3GB memory cap, especially with ignoreScripts already in place.

https://claude.ai/code/session_01CYmb4Y4iPCpjXMwxXsyxSh

Summary by CodeRabbit

リリースノート

  • 新機能

    • 依存ライブラリの自動更新監視機能を追加しました。
    • マイナーバージョン以下の依存ライブラリ更新について、自動マージ機能を実装しました。
  • Chores

    • 依存ライブラリ管理ツールの設定を最適化し、監視対象を調整しました。

…endabot

Move dependency updates that Dependabot supports natively into
.github/dependabot.yml (npm, github-actions, docker-compose) and slim
down Renovate to handle only what Dependabot cannot: mise, nvm, the
biome custom manager, and quarterly lockFileMaintenance.

Add a dependabot-auto-merge workflow that mirrors the previous Renovate
auto-merge policy: enable auto-merge for devDependencies (npm),
github-actions, and docker-compose non-major updates; production deps
and major updates stay manual.

Drop the self-hosted Renovate runner (renovate.yaml workflow) since the
remaining scope is small enough for Mend Cloud's Renovate App to handle
under its 3GB memory cap, especially with ignoreScripts already in place.

https://claude.ai/code/session_01CYmb4Y4iPCpjXMwxXsyxSh
@vercel

vercel Bot commented May 22, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
s-private Ready Ready Preview, Comment May 22, 2026 9:55pm

@github-actions

Copy link
Copy Markdown

Warning

actionlint の新しいバージョンがリリースされています。更新してください。
https://github.com/rhysd/actionlint/releases

  • 現在のバージョン: 1.7.11
  • 最新のバージョン: 1.7.12

@github-actions

Copy link
Copy Markdown

Warning

ghalint の新しいバージョンがリリースされています。更新してください。
https://github.com/suzuki-shunsuke/ghalint/releases

  • 現在のバージョン: 1.5.5
  • 最新のバージョン: 1.5.6

@coderabbitai

coderabbitai Bot commented May 22, 2026

Copy link
Copy Markdown

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 97a16788-ad75-41bd-85a5-6a396da263dc

📥 Commits

Reviewing files that changed from the base of the PR and between 8dea0f2 and aa3bd90.

📒 Files selected for processing (4)
  • .github/dependabot.yml
  • .github/renovate.json5
  • .github/workflows/dependabot-auto-merge.yaml
  • .github/workflows/renovate.yaml

Cache: Disabled due to data retention organization setting

Knowledge base: Disabled due to data retention organization setting


Walkthrough

このPRでは、npm・github-actions・docker-compose の依存更新管理を Renovate から Dependabot に移行します。新たに Dependabot v2 設定と自動マージワークフローを追加し、Renovate の管理対象を mise・nvm ランタイムのみに縮小する構成変更を実施。

Changes

Dependabot への移行と自動マージワークフロー追加

Layer / File(s) Summary
Dependabot 設定と自動マージワークフロー
.github/dependabot.yml, .github/workflows/dependabot-auto-merge.yaml
Dependabot v2 で npm・github-actions・docker-compose を週次監視し、npm は非メジャー更新をグループ化、docker-compose は s0hirano/embedding-api を無視。dependabot/fetch-metadata と GitHub CLI で Dependabot PR のメタデータを取得し、非メジャー更新のみを自動マージするワークフローを新規追加。
Renovate スコープ縮小と設定リファクタリング
.github/renovate.json5
enabledManagersmise / nvm のみに限定し、npm・github-actions・docker-compose 向けのルールを削除。branchConcurrentLimitprConcurrentLimit を削減し、node・pnpm ルールの matchManagers を npm から mise に変更。

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related issues

  • #2327: Dependabot への移行と Renovate の縮小化について同じ依存管理ファイルと設定を扱うため関連。

Possibly related PRs

  • s-hirano-ist/s-private#2223: .github/renovate.json5 の node・pnpm ルール領域を変更し、本 PR の mise 向けルール置換と同じ設定エリアで重複。
  • s-hirano-ist/s-private#2306: 本 PR が .github/workflows/renovate.yaml を削除する一方、2306 はセルフホストされた Renovate ワークフローを追加するため、同一ファイルで対立。
  • s-hirano-ist/s-private#2182: .github/renovate.json5 の同時実行制限と npm グループ化ルールを変更するため、本 PR の Renovate 設定リファクタリングと直接関連。

Poem

🐰 Dependencies, reorganized with care,
Dependabot now handles the npm affair,
Renovate shrinks to just mise and nvm,
Auto-merge squashes—workflow done slim,
Testing the gates of dependency helm! 🎯

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/dependabot-migration-renovate-XVRHL

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@github-actions

Copy link
Copy Markdown

✅ Code Duplication Report

Summary

Metric Value
Total Lines 23,745
Duplicate Lines 0
Duplication Rate 0.00%
Threshold 10%
Duplicate Blocks 48

✅ Code duplication rate is within the acceptable threshold.

📊 Detailed Report

Console Output

$ jscpd
Clone found (typescript):
 - /home/runner/work/s-private/s-private/packages/core/shared-kernel/events/system-error-event.ts [51:18 - 64:2] (13 lines, 85 tokens)
   /home/runner/work/s-private/s-private/packages/core/shared-kernel/events/system-warning-event.ts [50:20 - 63:2]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-input.stories.tsx [5:22 - 14:7] (9 lines, 149 tokens)
   /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-textarea.stories.tsx [5:25 - 14:7]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-input-with-button.stories.tsx [13:32 - 20:7] (7 lines, 107 tokens)
   /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-textarea.stories.tsx [5:25 - 12:11]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-dropdown-input.stories.tsx [6:30 - 15:15] (9 lines, 149 tokens)
   /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-textarea.stories.tsx [5:25 - 14:7]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-dropdown-input.stories.tsx [197:26 - 208:8] (11 lines, 95 tokens)
   /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-dropdown-input.stories.tsx [168:26 - 179:8]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-dropdown-input.stories.tsx [230:26 - 245:44] (15 lines, 134 tokens)
   /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-dropdown-input.stories.tsx [168:26 - 212:43]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx [45:29 - 56:31] (11 lines, 90 tokens)
   /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx [21:21 - 32:31]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx [56:39 - 71:26] (15 lines, 84 tokens)
   /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx [32:30 - 45:29]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx [71:26 - 90:25] (19 lines, 139 tokens)
   /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx [21:21 - 64:21]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx [108:46 - 119:25] (11 lines, 72 tokens)
   /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx [50:33 - 61:21]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/ui/dropdown-menu.stories.tsx [37:29 - 51:6] (14 lines, 106 tokens)
   /home/runner/work/s-private/s-private/packages/ui/ui/dropdown-menu.stories.tsx [21:21 - 35:2]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/ui/drawer.stories.tsx [92:6 - 104:55] (12 lines, 123 tokens)
   /home/runner/work/s-private/s-private/packages/ui/ui/drawer.stories.tsx [38:62 - 51:40]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/ui/dialog.stories.tsx [67:27 - 82:6] (15 lines, 138 tokens)
   /home/runner/work/s-private/s-private/packages/ui/ui/dialog.stories.tsx [23:21 - 38:6]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/ui/command.stories.tsx [89:54 - 108:20] (19 lines, 133 tokens)
   /home/runner/work/s-private/s-private/packages/ui/ui/command.stories.tsx [27:60 - 46:12]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/ui/card.stories.tsx [39:27 - 49:5] (10 lines, 89 tokens)
   /home/runner/work/s-private/s-private/packages/ui/ui/card.stories.tsx [19:21 - 29:5]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/forms/generic-form-wrapper.stories.tsx [291:25 - 304:18] (13 lines, 78 tokens)
   /home/runner/work/s-private/s-private/packages/ui/forms/generic-form-wrapper.stories.tsx [257:27 - 270:17]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/packages/ui/forms/generic-form-wrapper.stories.tsx [306:30 - 324:3] (18 lines, 164 tokens)
   /home/runner/work/s-private/s-private/packages/ui/forms/generic-form-wrapper.stories.tsx [271:22 - 289:3]

Clone found (typescript):
 - /home/runner/work/s-private/s-private/app/src/app/api/images/[contentType]/[id]/route.ts [13:27 - 21:19] (8 lines, 91 tokens)
   /home/runner/work/s-private/s-private/app/src/app/api/books/images/[contentType]/[path]/route.ts [12:29 - 20:15]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/common/layouts/nav/footer.stories.tsx [126:30 - 140:21] (14 lines, 118 tokens)
   /home/runner/work/s-private/s-private/app/src/components/common/layouts/nav/footer.stories.tsx [102:28 - 116:19]

Clone found (javascript):
 - /home/runner/work/s-private/s-private/app/src/components/common/layouts/cards/image-card-stack.tsx [23:16 - 44:25] (21 lines, 143 tokens)
   /home/runner/work/s-private/s-private/app/src/components/common/layouts/cards/link-card-stack.tsx [21:16 - 42:17]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/common/forms/actions/delete-button-with-modal.stories.tsx [95:65 - 107:15] (12 lines, 125 tokens)
   /home/runner/work/s-private/s-private/app/src/components/common/forms/actions/delete-button-with-modal.stories.tsx [75:4 - 87:16]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/common/features/search/search-card.stories.tsx [99:62 - 104:45] (5 lines, 82 tokens)
   /home/runner/work/s-private/s-private/app/src/components/common/features/search/search-card.stories.tsx [89:59 - 94:50]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/common/features/search/search-card.stories.tsx [109:57 - 114:47] (5 lines, 82 tokens)
   /home/runner/work/s-private/s-private/app/src/components/common/features/search/search-card.stories.tsx [89:59 - 94:50]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/common/features/search/search-card.stories.tsx [119:56 - 124:45] (5 lines, 82 tokens)
   /home/runner/work/s-private/s-private/app/src/components/common/features/search/search-card.stories.tsx [89:59 - 94:50]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/common/display/image/image-stack.tsx [139:27 - 154:8] (15 lines, 174 tokens)
   /home/runner/work/s-private/s-private/app/src/components/common/display/image/image-stack.tsx [95:53 - 110:7]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/app/[locale]/book/[slug]/page.tsx [8:96 - 21:40] (13 lines, 102 tokens)
   /home/runner/work/s-private/s-private/app/src/app/[locale]/note/[slug]/page.tsx [8:67 - 21:34]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/app/[locale]/(dumper)/images/page.tsx [10:69 - 23:27] (13 lines, 117 tokens)
   /home/runner/work/s-private/s-private/app/src/app/[locale]/(dumper)/images/viewer/page.tsx [5:77 - 18:31]

Clone found (typescript):
 - /home/runner/work/s-private/s-private/app/src/infrastructures/images/repositories/images-query-repository.ts [36:10 - 47:7] (11 lines, 83 tokens)
   /home/runner/work/s-private/s-private/app/src/infrastructures/notes/repositories/notes-query-repository.ts [33:12 - 44:8]

Clone found (typescript):
 - /home/runner/work/s-private/s-private/app/src/infrastructures/images/repositories/images-query-repository.ts [51:68 - 66:16] (15 lines, 125 tokens)
   /home/runner/work/s-private/s-private/app/src/infrastructures/notes/repositories/notes-query-repository.ts [45:40 - 60:16]

Clone found (typescript):
 - /home/runner/work/s-private/s-private/app/src/infrastructures/books/repositories/books-query-repository.ts [50:13 - 62:7] (12 lines, 90 tokens)
   /home/runner/work/s-private/s-private/app/src/infrastructures/notes/repositories/notes-query-repository.ts [32:9 - 44:8]

Clone found (typescript):
 - /home/runner/work/s-private/s-private/app/src/infrastructures/books/repositories/books-query-repository.ts [81:59 - 98:9] (17 lines, 142 tokens)
   /home/runner/work/s-private/s-private/app/src/infrastructures/images/repositories/images-query-repository.ts [51:55 - 62:9]

Clone found (typescript):
 - /home/runner/work/s-private/s-private/app/src/infrastructures/articles/repositories/articles-query-repository.ts [47:9 - 58:13] (11 lines, 83 tokens)
   /home/runner/work/s-private/s-private/app/src/infrastructures/notes/repositories/notes-query-repository.ts [33:12 - 44:8]

Clone found (typescript):
 - /home/runner/work/s-private/s-private/app/src/infrastructures/articles/repositories/articles-query-repository.ts [66:45 - 82:9] (16 lines, 126 tokens)
   /home/runner/work/s-private/s-private/app/src/infrastructures/notes/repositories/notes-query-repository.ts [46:42 - 68:9]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/images/server/images-counter.stories.tsx [17:45 - 37:3] (20 lines, 124 tokens)
   /home/runner/work/s-private/s-private/app/src/components/notes/server/notes-counter.stories.tsx [15:44 - 36:3]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/books/server/viewer-body.stories.tsx [11:57 - 23:49] (12 lines, 102 tokens)
   /home/runner/work/s-private/s-private/app/src/components/notes/server/viewer-body.stories.tsx [4:57 - 16:50]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/books/server/books-stack.stories.tsx [47:47 - 65:17] (18 lines, 108 tokens)
   /home/runner/work/s-private/s-private/app/src/components/notes/server/notes-stack.stories.tsx [68:37 - 86:15]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/books/server/books-stack.stories.tsx [69:5 - 86:17] (17 lines, 96 tokens)
   /home/runner/work/s-private/s-private/app/src/components/notes/server/notes-stack.stories.tsx [90:37 - 107:15]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/books/server/books-counter.stories.tsx [15:44 - 36:3] (21 lines, 125 tokens)
   /home/runner/work/s-private/s-private/app/src/components/notes/server/notes-counter.stories.tsx [15:44 - 36:3]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/books/client/books-form.tsx [13:38 - 23:20] (10 lines, 84 tokens)
   /home/runner/work/s-private/s-private/app/src/components/notes/client/note-form.tsx [13:36 - 23:19]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/articles/server/articles-stack.tsx [1:1 - 11:30] (10 lines, 90 tokens)
   /home/runner/work/s-private/s-private/app/src/components/notes/server/notes-stack.tsx [1:1 - 11:27]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/articles/server/articles-stack.stories.tsx [85:33 - 120:15] (35 lines, 205 tokens)
   /home/runner/work/s-private/s-private/app/src/components/articles/server/articles-stack.stories.tsx [42:21 - 77:15]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/components/articles/server/articles-counter.stories.tsx [15:47 - 36:3] (21 lines, 125 tokens)
   /home/runner/work/s-private/s-private/app/src/components/notes/server/notes-counter.stories.tsx [15:44 - 36:3]

Clone found (typescript):
 - /home/runner/work/s-private/s-private/app/src/application-services/books/get-books.ts [11:75 - 23:40] (12 lines, 109 tokens)
   /home/runner/work/s-private/s-private/app/src/application-services/notes/get-notes.ts [11:80 - 23:39]

Clone found (typescript):
 - /home/runner/work/s-private/s-private/app/src/application-services/books/delete-books.core.ts [36:23 - 49:24] (13 lines, 107 tokens)
   /home/runner/work/s-private/s-private/app/src/application-services/notes/delete-note.core.ts [36:22 - 49:24]

Clone found (typescript):
 - /home/runner/work/s-private/s-private/app/src/application-services/articles/load-more-articles.ts [1:1 - 9:29] (8 lines, 94 tokens)
   /home/runner/work/s-private/s-private/app/src/application-services/notes/load-more-notes.ts [1:1 - 9:26]

Clone found (typescript):
 - /home/runner/work/s-private/s-private/app/src/application-services/articles/delete-article.core.ts [36:25 - 49:27] (13 lines, 107 tokens)
   /home/runner/work/s-private/s-private/app/src/application-services/notes/delete-note.core.ts [36:22 - 49:24]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/app/error.tsx [3:50 - 18:8] (15 lines, 110 tokens)
   /home/runner/work/s-private/s-private/app/src/app/global-error.tsx [5:36 - 20:8]

Clone found (tsx):
 - /home/runner/work/s-private/s-private/app/src/app/error.tsx [23:5 - 36:3] (13 lines, 126 tokens)
   /home/runner/work/s-private/s-private/app/src/app/global-error.tsx [27:7 - 40:6]

┌────────────┬────────────────┬─────────────┬──────────────┬──────────────┬──────────────────┬───────────────────┐
│ Format     │ Files analyzed │ Total lines │ Total tokens │ Clones found │ Duplicated lines │ Duplicated tokens │
├────────────┼────────────────┼─────────────┼──────────────┼──────────────┼──────────────────┼───────────────────┤
│ typescript │ 151            │ 10282       │ 46300        │ 12           │ 149 (1.45%)      │ 1242 (2.68%)      │
├────────────┼────────────────┼─────────────┼──────────────┼──────────────┼──────────────────┼───────────────────┤
│ tsx        │ 153            │ 11170       │ 74443        │ 35           │ 482 (4.32%)      │ 4027 (5.41%)      │
├────────────┼────────────────┼─────────────┼──────────────┼──────────────┼──────────────────┼───────────────────┤
│ javascript │ 103            │ 2293        │ 14218        │ 1            │ 21 (0.92%)       │ 143 (1.01%)       │
├────────────┼────────────────┼─────────────┼──────────────┼──────────────┼──────────────────┼───────────────────┤
│ Total:     │ 407            │ 23745       │ 134961       │ 48           │ 652 (2.75%)      │ 5412 (4.01%)      │
└────────────┴────────────────┴─────────────┴──────────────┴──────────────┴──────────────────┴───────────────────┘
Found 48 clones.
time: 917.607ms

💡 Auto-refactor with AI: npx skills add kucherenko/jscpd
🎩 New: Gangsta Agents — discipline your AI coding → gangsta.page
💖 Sponsor jscpd → https://opencollective.com/jscpd

Duplicate Code Blocks

Duplicate 1

  • Lines: 14
  • Tokens: N/A
  • First occurrence: /home/runner/work/s-private/s-private/packages/core/shared-kernel/events/system-error-event.ts:51-64
  • Second occurrence: /home/runner/work/s-private/s-private/packages/core/shared-kernel/events/system-warning-event.ts:50-63

Duplicate 2

  • Lines: 10
  • Tokens: N/A
  • First occurrence: /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-input.stories.tsx:5-14
  • Second occurrence: /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-textarea.stories.tsx:5-14

Duplicate 3

  • Lines: 8
  • Tokens: N/A
  • First occurrence: /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-input-with-button.stories.tsx:13-20
  • Second occurrence: /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-textarea.stories.tsx:5-12

Duplicate 4

  • Lines: 10
  • Tokens: N/A
  • First occurrence: /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-dropdown-input.stories.tsx:6-15
  • Second occurrence: /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-textarea.stories.tsx:5-14

Duplicate 5

  • Lines: 12
  • Tokens: N/A
  • First occurrence: /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-dropdown-input.stories.tsx:197-208
  • Second occurrence: /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-dropdown-input.stories.tsx:168-179

Duplicate 6

  • Lines: 16
  • Tokens: N/A
  • First occurrence: /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-dropdown-input.stories.tsx:230-245
  • Second occurrence: /home/runner/work/s-private/s-private/packages/ui/forms/fields/form-dropdown-input.stories.tsx:168-212

Duplicate 7

  • Lines: 12
  • Tokens: N/A
  • First occurrence: /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx:45-56
  • Second occurrence: /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx:21-32

Duplicate 8

  • Lines: 16
  • Tokens: N/A
  • First occurrence: /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx:56-71
  • Second occurrence: /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx:32-45

Duplicate 9

  • Lines: 20
  • Tokens: N/A
  • First occurrence: /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx:71-90
  • Second occurrence: /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx:21-64

Duplicate 10

  • Lines: 12
  • Tokens: N/A
  • First occurrence: /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx:108-119
  • Second occurrence: /home/runner/work/s-private/s-private/packages/ui/ui/pagination.stories.tsx:50-61

... and 38 more duplicate blocks. Run pnpm jscpd locally for the full report.


📦 Full Report: Download the complete jscpd report from GitHub Actions Artifacts

@s-hirano-ist s-hirano-ist merged commit a8972fc into main May 22, 2026
21 of 22 checks passed
@s-hirano-ist s-hirano-ist deleted the claude/dependabot-migration-renovate-XVRHL branch May 22, 2026 21:56
@github-actions

Copy link
Copy Markdown

Coverage Report

Status Category Percentage Covered / Total
🔵 Lines 88.97% 1453 / 1633
🔵 Statements 88.63% 1567 / 1768
🔵 Functions 86.61% 427 / 493
🔵 Branches 73.85% 562 / 761
File CoverageNo changed files found.
Generated in workflow #3351 for commit aa3bd90 by the Vitest Coverage Report Action

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.

2 participants