AutoFix用のカスタムコンテキスト
Aikidoでは、SASTルールに追加のカスタムコンテキストや指示を加えることで、AutoFixを好みに合わせて拡張できます。
一般的なユースケースは以下の通りです。
- 特定のエラーハンドリングやログ出力ロジックの導入
- カスタムコメントスタイルの追加
- AutoFixへの単体テストの組み込み
- コードリポジトリにない追加コンテキストの提供
- AutoFixの適用範囲の絞り込み
SASTルールレベルのカスタムコンテキスト
Section titled “SASTルールレベルのカスタムコンテキスト”SASTルール向けのCustom Code Contextに関する詳細なドキュメントはこちらをご覧ください。Aikidoは、課題のスキャン(AutoTriage)と修正(AutoFix)の両方でCustom Code Contextを使用します。
Custom Code Contextは、すべてのコードリポジトリに対して、またはリポジトリの一部に絞って設定できます。
グローバルカスタムコンテキスト
Section titled “グローバルカスタムコンテキスト”リポジトリごとのカスタムコンテキスト
コードリポジトリ内のすべてのAutoFixルールにカスタムコンテキストを提供したい場合は、コードリポジトリの .aikido ファイルに以下を追加します(.aikido ファイルの詳細はこちらを参照)
autofix:
fix_context:
- path: aikido-autofix-all.md
この例が機能するには、aikido-autofix-all.md がリポジトリのルートに存在し、コンテキストの内容が含まれている必要があります。
言語ごとのカスタムコンテキスト
設定を特定の言語に絞り込むには、以下のようにします。
autofix: fix_context: - path: aikido-autofix-javascript.md language: javascriptlanguageに指定できる値は以下の通りです。
- .net
- android
- c
- clojure
- dart
- elixir
- go
- ios
- java
- javascript
- kotlin
- php
- python
- ruby
- rust
- scala
- swift
- terraform
- typescript
- vb
- yaml