Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 7 additions & 6 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,13 @@
# npm(kotlin-js-store/yarn.lock)は version updates の対象に含めない。lockfile は KGP が
# JS/wasm テストランナー用に生成する成果物であり、宣言元の package.json はリポジトリに存在しないため、
# Dependabot の更新 PR は次の kotlinUpgradeYarnLock で失われる。alerts は次の基準で捌く。
# 1. 上流の宣言レンジ内に修正版がある場合: kotlinUpgradeYarnLock で lockfile を再生成して追随する
# (両ビルドで実行し、生成物は LF へ正規化する)
# 2. レンジ内に修正版が無い場合: tolerable_risk として dismiss する。npm 依存は runtime-api の
# 配布物に入らず(生成 package.json は依存ゼロ、公開先は Maven Central のみ)、
# 処理する入力も CI 内の自リポジトリのテスト成果物に限られる。resolutions による
# major 跨ぎの強制上書きは、上流が検証していない組み合わせをテストランナーへ注入することになるため採らない
# 1. 上流の宣言レンジ内に修正版がある場合: lockfile を作り直して追随する(手順は CLAUDE.md)。
# 上流の解決へ合わせる通常の更新と同じ操作であり、alert 固有の手当ては要らない
# 2. レンジ内に修正版が無い場合: tolerable_risk として dismiss し、上流が追随するのを待つ。npm 依存は
# runtime-api の配布物に入らず(生成 package.json は依存ゼロ、公開先は Maven Central のみ)、
# 処理する入力も CI 内の自リポジトリのテスト成果物に限られる。resolutions による major 跨ぎの
# 強制上書きは、上流が検証していない組み合わせをテストランナーへ注入するため、重大な脆弱性に
# 上流が追随しないときに限って検討する
version: 2
updates:
# integration-test は独立した Gradle ビルドだが、その settings はルートビルドを composite 参照するため、
Expand Down
13 changes: 9 additions & 4 deletions .github/workflows/kotlin-prerelease.yml
Original file line number Diff line number Diff line change
Expand Up @@ -86,11 +86,16 @@ jobs:
# kotlin-js-store/yarn.lock はカタログの宣言版で解決した npm 依存を固定したものであり、
# 版を差し替えると一致せず kotlinStoreYarnLock が失敗する。マイナー更新では両ビルドの
# ロックを作り直して取り込む必要があり、横断ビルドはその作り直しまでを含めて先行検証する
# (ここで作り直した結果は取り込まない)。ビルドと同じ起動に混ぜると作り直しと照合の順序が
# 定まらないため、起動を分ける
- run: ./gradlew kotlinUpgradeYarnLock $KOTLIN_OVERRIDE
# (ここで作り直した結果は取り込まない)。作り直しは取り込み時と同じ手順で行い、毎回新規の
# チェックアウトで走るため消すのは保存側のロックだけでよい。ビルドと同じ起動に混ぜると
# 作り直しと照合の順序が定まらないため、起動を分ける
- run: |
rm kotlin-js-store/yarn.lock
./gradlew kotlinUpgradeYarnLock $KOTLIN_OVERRIDE
- run: ./gradlew build $KOTLIN_OVERRIDE
- run: ./gradlew -p integration-test kotlinUpgradeYarnLock $KOTLIN_OVERRIDE
- run: |
rm integration-test/kotlin-js-store/yarn.lock
./gradlew -p integration-test kotlinUpgradeYarnLock $KOTLIN_OVERRIDE
- run: >-
./gradlew -p integration-test build $KOTLIN_OVERRIDE
-x :gradle-integration:test -x :maven-integration:test
Expand Down
3 changes: 3 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@
作業ツリーに未コミットの変更があるときは、切り替える前に扱いを確認する
- コミットは変更の意味合い毎に分割する
- ライブラリの版を変える必要があるときは、先に提案する
- npm の lockfile は上流が解決する状態に合わせる。更新は両ビルドの `kotlin-js-store/yarn.lock` と
`build/js` / `build/wasm` のロックを消してから `kotlinUpgradeYarnLock` を実行し、生成物を LF へ正規化する。
消さないとレンジを満たしている解決が残り、版は動かない
- CI ワークフローを変更したら、push する前にローカルで検証する(YAML のパース・`run` スクリプトの空撃ち・判定の期待値)
- 変更後はファイル名・コメント・資料まで整合させる。変更量を抑える表面的な追記より全体の整合性を優先する

Expand Down
12 changes: 6 additions & 6 deletions integration-test/kotlin-js-store/yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@ ansi-regex@^5.0.1:
integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==

ansi-regex@^6.2.2:
version "6.2.2"
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.2.2.tgz#60216eea464d864597ce2832000738a0589650c1"
integrity sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==
version "6.3.0"
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.3.0.tgz#247c8e7b70a1a43b10ce14c0226fcbf58e8815d5"
integrity sha512-WpDfL7NO6j7tH88IDBNVdUJxDh9nmCteAVW9dsep846XdwF4naCBK+/tGLX3KJgcpgMRXCFlTM2hKGoK9FsdrQ==

ansi-styles@^4.0.0, ansi-styles@^4.1.0:
version "4.3.0"
Expand Down Expand Up @@ -248,9 +248,9 @@ jackspeak@^3.1.2:
"@pkgjs/parseargs" "^0.11.0"

js-yaml@^4.1.0:
version "4.3.1"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.3.1.tgz#01216c001d67f48e2cd560d708c7af21090a3848"
integrity sha512-CY6crGq313MX8GkwvB7tzgp99vjQxY1++5y10/BKN/GUfHqWaOGQMNZkBvqSzsZKWk/ijwHlWzzkLulsGHhjWQ==
version "4.3.2"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.3.2.tgz#8e44fb14a2643c59726bb15787b5f1512cb3d3fb"
integrity sha512-SFNOvSJ+Dgf/9An904Yx+CgSlIPCkIpao4qo51lpee25TIRejdH3rhR4EZMGoNx3/TP3O+wzWuiTFl4sqbltzA==
dependencies:
argparse "^2.0.1"

Expand Down
12 changes: 6 additions & 6 deletions kotlin-js-store/yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@ ansi-regex@^5.0.1:
integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==

ansi-regex@^6.2.2:
version "6.2.2"
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.2.2.tgz#60216eea464d864597ce2832000738a0589650c1"
integrity sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==
version "6.3.0"
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.3.0.tgz#247c8e7b70a1a43b10ce14c0226fcbf58e8815d5"
integrity sha512-WpDfL7NO6j7tH88IDBNVdUJxDh9nmCteAVW9dsep846XdwF4naCBK+/tGLX3KJgcpgMRXCFlTM2hKGoK9FsdrQ==

ansi-styles@^4.0.0, ansi-styles@^4.1.0:
version "4.3.0"
Expand Down Expand Up @@ -248,9 +248,9 @@ jackspeak@^3.1.2:
"@pkgjs/parseargs" "^0.11.0"

js-yaml@^4.1.0:
version "4.3.1"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.3.1.tgz#01216c001d67f48e2cd560d708c7af21090a3848"
integrity sha512-CY6crGq313MX8GkwvB7tzgp99vjQxY1++5y10/BKN/GUfHqWaOGQMNZkBvqSzsZKWk/ijwHlWzzkLulsGHhjWQ==
version "4.3.2"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.3.2.tgz#8e44fb14a2643c59726bb15787b5f1512cb3d3fb"
integrity sha512-SFNOvSJ+Dgf/9An904Yx+CgSlIPCkIpao4qo51lpee25TIRejdH3rhR4EZMGoNx3/TP3O+wzWuiTFl4sqbltzA==
dependencies:
argparse "^2.0.1"

Expand Down