> For the complete documentation index, see [llms.txt](https://help.aikido.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.aikido.dev/docs/docs-ja/autofix-to/automation-and-merging/breaking-changes-and-upgrade-impact-analysis.md).

# 破壊的変更とアップグレード影響分析

## 互換性を破る変更

Aikido は、ライブラリの変更履歴を確認して、バージョンアップに互換性を破る変更が含まれているかを評価します。

Aikido のフィードでオープンソースの依存関係の issue をクリックすると、issue の詳細がポップアップ表示され、問題を修正するために必要な最小のバージョンアップグレードが示されます。以下の Spring Security の例では、CVE-2023-34034 は version 6.1.0 から version 6.1.2 にアップグレードすることで修正できます。Aikido は、この更新には互換性を破る変更がないと判断しており、そのことは次の :white\_check\_mark:.

<figure><img src="/files/a59234e04813b21e8afad90297ff58aa066099db" alt=""><figcaption></figcaption></figure>

次をクリックすると :white\_check\_mark: 詳細と変更履歴へのリンクが表示されます。この場合、互換性を破る変更はありません。

<figure><img src="/files/57935b0d5a80bfe86c613cc468c828b79785bdb0" alt=""><figcaption></figcaption></figure>

次の Tomcat の version 8.5.11 から version 9.0.99 へのアップグレードのように互換性を破る変更がある場合、Aikido は :warning: アイコンを表示します。

<figure><img src="/files/8cdeec35b07fa9f7f6a04c4eb274b1d845d49c25" alt=""><figcaption></figcaption></figure>

次をクリックすると :warning: 互換性を破る変更の説明と変更履歴へのリンクが表示されます。

<figure><img src="/files/fe552b0691734f3cf79abb1ae5cd7c6934f7d7ac" alt=""><figcaption></figcaption></figure>

## アップグレード影響分析

依存関係の更新に互換性を破る変更が含まれていても、それがコードに影響するとは限りません。互換性を破る変更が、コードベースで使われていない関数に含まれている場合もあります。アップグレード影響分析では、ライブラリの使用箇所をコードベース全体からスキャンすることで、互換性を破る変更がコードベースに影響するかどうかをさらに詳しく判定します。

Aikido AutoFix は、プルリクエストが作成されるとアップグレード影響分析を実行します。プルリクエストの説明には分析結果が含まれ、次の 3 つのカテゴリのいずれかに分類されます。

* ライブラリアップグレードに互換性を破る変更はありません :white\_check\_mark:
* 互換性を破る変更はありますが、コードベースには影響しません :white\_check\_mark:
* 互換性を破る変更がコードベースに影響するため、手動での対処が必要です :warning:

次の例では、mongoose が version 5.13.21 から 6.13.6 に更新されています。プルリクエストには、コードベースに影響する互換性を破る変更が 2 件あることが示され、影響を受けるファイルとその影響の内容が示されています:

<figure><img src="/files/6583f14bd672ad8e63726cc7923728cce3e8d64b" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.aikido.dev/docs/docs-ja/autofix-to/automation-and-merging/breaking-changes-and-upgrade-impact-analysis.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
