-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfig.sample.jsonc
More file actions
265 lines (205 loc) · 16.2 KB
/
Copy pathconfig.sample.jsonc
File metadata and controls
265 lines (205 loc) · 16.2 KB
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
// nildiff — Annotated Configuration Sample
// nildiff — コメント付き設定サンプル
//
// Copy this file to config.json (remove comments — standard JSON does not allow comments).
// このファイルを config.json にコピーして使用してください(コメントを削除してください。標準 JSON ではコメントは使用できません)。
// All settings are optional. Omitted keys use the defaults shown below.
// すべての設定は省略可能です。省略されたキーは以下に示すデフォルト値を使用します。
//
// Environment variable overrides: prefix with FOLDERDIFF_ (e.g. FOLDERDIFF_MAXPARALLELISM=4).
// 環境変数オーバーライド: FOLDERDIFF_ プレフィックスを使用(例: FOLDERDIFF_MAXPARALLELISM=4)。
// CLI overrides: --threads, --no-il-cache, --skip-il, --no-timestamp-warnings, --creator, --creator-il-ignore-profile.
// CLI オーバーライド: --threads, --no-il-cache, --skip-il, --no-timestamp-warnings, --creator, --creator-il-ignore-profile。
// Use --print-config to display the effective configuration after all overrides.
// --print-config ですべてのオーバーライド適用後の有効設定を表示できます。
//
// JSON Schema is available for IDE autocompletion and real-time validation.
// IDE 補完とリアルタイムバリデーション用の JSON Schema が利用可能です。
// Add "$schema": "./doc/config.schema.json" (or adjust the relative path) to your config.json.
// config.json に "$schema": "./doc/config.schema.json"(相対パスは適宜調整)を追加してください。
{
// JSON Schema reference for IDE autocompletion (adjust path as needed)
// IDE 補完用の JSON Schema 参照(パスは必要に応じて調整してください)
"$schema": "./config.schema.json",
// --- Report Content / レポート内容 ---
// Include unchanged files in the report (default: true)
// レポートに未変更ファイルを含める(デフォルト: true)
"ShouldIncludeUnchangedFiles": true,
// Include ignored files in the report (default: true)
// レポートに無視されたファイルを含める(デフォルト: true)
"ShouldIncludeIgnoredFiles": true,
// Include assembly semantic changes (method-level diff) in the report (default: true)
// レポートにアセンブリセマンティック変更(メソッドレベル差分)を含める(デフォルト: true)
"ShouldIncludeAssemblySemanticChangesInReport": true,
// Include structured dependency changes for .deps.json files in the report (default: true)
// レポートに .deps.json ファイルの構造化された依存関係変更を含める(デフォルト: true)
"ShouldIncludeDependencyChangesInReport": true,
// Include the user-local checklist.json review checklist in Markdown/HTML reports (default: false)
// When false, a local checklist.json is ignored so audit reports do not silently depend on machine-local state.
// Markdown/HTML レポートにユーザーローカル checklist.json のレビューチェックリストを含める(デフォルト: false)
// false の場合、監査レポートが端末ローカル状態へ暗黙依存しないよう checklist.json は無視されます。
"ShouldIncludeReviewChecklist": false,
// Check NuGet package versions against known vulnerabilities via the NuGet V3 vulnerability API (default: false)
// Requires network access. When enabled, the dependency changes table shows a "Vulnerabilities" column
// indicating advisories affecting old/new versions (resolved vs. newly introduced).
// NuGet V3 脆弱性 API を使って NuGet パッケージバージョンの既知脆弱性をチェックする(デフォルト: false)
// ネットワークアクセスが必要。有効時、依存関係変更テーブルに「Vulnerabilities」列が追加され、
// 旧/新バージョンに影響するアドバイザリ(解消済み vs. 新規導入)が表示されます。
"EnableNuGetVulnerabilityCheck": false,
// Include IL cache hit/miss statistics in the report (default: false)
// レポートに IL キャッシュのヒット/ミス統計を含める(デフォルト: false)
"ShouldIncludeILCacheStatsInReport": false,
// Generate an interactive HTML report alongside the Markdown report (default: true)
// Markdown レポートに加えてインタラクティブ HTML レポートを生成する(デフォルト: true)
"ShouldGenerateHtmlReport": true,
// Generate a structured JSON audit log with SHA256 integrity hashes (default: true)
// SHA256 整合性ハッシュ付き構造化 JSON 監査ログを生成する(デフォルト: true)
"ShouldGenerateAuditLog": true,
// Generate an SBOM (Software Bill of Materials) listing all components in the compared folders (default: false)
// 比較対象フォルダ内の全コンポーネントを一覧化する SBOM(ソフトウェア部品表)を生成する(デフォルト: false)
"ShouldGenerateSbom": false,
// SBOM output format: "CycloneDX" (CycloneDX 1.5 JSON) or "SPDX" (SPDX 2.3 JSON) (default: "CycloneDX")
// SBOM 出力形式: "CycloneDX"(CycloneDX 1.5 JSON)または "SPDX"(SPDX 2.3 JSON)(デフォルト: "CycloneDX")
"SbomFormat": "CycloneDX",
// Output full IL disassembly text to Reports/<label>/IL/ (default: true)
// IL 逆アセンブルテキスト全文を Reports/<label>/IL/ に出力する(デフォルト: true)
"ShouldOutputILText": true,
// Show file timestamps (old → new) in the report (default: true)
// レポートにファイルタイムスタンプ(old → new)を表示する(デフォルト: true)
"ShouldOutputFileTimestamps": true,
// Warn when a "new" file has an older timestamp than the "old" file (default: true)
// 「new」ファイルのタイムスタンプが「old」ファイルより古い場合に警告する(デフォルト: true)
"ShouldWarnWhenNewFileTimestampIsOlderThanOldFileTimestamp": true,
// --- IL Comparison / IL 比較 ---
// Skip IL comparison entirely; only SHA256 + text comparison (default: false)
// IL 比較を完全にスキップし SHA256 + テキスト比較のみ行う(デフォルト: false)
// CLI override: --skip-il
"SkipIL": false,
// Whether to ignore MVID (Module Version ID) lines during IL comparison (default: true).
// Set to false to detect recompilation even when source code is identical.
// IL 比較時に MVID 行を無視するかどうか(デフォルト: true)。
// false にするとソースコード同一でも再コンパイルを検出できる。
"ShouldIgnoreMVID": true,
// Ignore IL lines containing these strings during comparison (default: false)
// 比較時にこれらの文字列を含む IL 行を無視する(デフォルト: false)
"ShouldIgnoreILLinesContainingConfiguredStrings": false,
// Strings to ignore — only used when ShouldIgnoreILLinesContainingConfiguredStrings is true
// Strings shorter than 4 characters trigger a safety warning in both console output and reports.
// 無視する文字列 — ShouldIgnoreILLinesContainingConfiguredStrings が true の場合のみ使用
// 4 文字未満の文字列はコンソールとレポートに安全性警告を出力する。
// Maintainer CLI profile: --creator (default) or --creator-il-ignore-profile buildserver-winforms
// メンテナー用 CLI プロファイル: --creator(既定)または --creator-il-ignore-profile buildserver-winforms
"ILIgnoreLineContainingStrings": [],
// --- File Extensions / ファイル拡張子 ---
// Extensions to skip entirely (not compared, listed as Ignored) (defaults: .cache, .DS_Store, .db, .ilcache, .log, .pdb)
// 比較をスキップする拡張子(比較されず Ignored としてリスト)(デフォルト: .cache, .DS_Store, .db, .ilcache, .log, .pdb)
"IgnoredExtensions": [".cache", ".DS_Store", ".db", ".ilcache", ".log", ".pdb"],
// Extensions treated as text files for line-by-line comparison
// 行単位テキスト比較の対象とする拡張子
// (defaults: .asax, .aspx, .bat, .c, .cmd, .config, .cpp, .cs, .css, .csv, .html, .js, .json, .md, .ps1, .py, .sh, .sql, .ts, .tsx, .txt, .xml, .yaml, .yml, ... and many more)
// (デフォルト: .asax, .aspx, .bat, .c, .cmd, .config, .cpp, .cs, .css, .csv, .html, .js, .json, .md, .ps1, .py, .sh, .sql, .ts, .tsx, .txt, .xml, .yaml, .yml, ... 他多数)
"TextFileExtensions": [".config", ".cs", ".css", ".html", ".js", ".json", ".md", ".ps1", ".py", ".sh", ".sql", ".ts", ".tsx", ".txt", ".xml", ".yaml", ".yml"],
// --- Parallelism / 並列処理 ---
// Maximum threads for file comparison (0 = auto-detect based on CPU cores) (default: 0)
// ファイル比較の最大スレッド数(0 = CPU コア数に基づく自動検出)(デフォルト: 0)
// CLI override: --threads <N>
"MaxParallelism": 0,
// File size threshold (KiB) above which text diff uses parallel chunk comparison (default: 512)
// テキスト差分が並列チャンク比較を使用するファイルサイズ閾値(KiB)(デフォルト: 512)
"TextDiffParallelThresholdKilobytes": 512,
// Chunk size (KiB) for parallel text diff (default: 64)
// 並列テキスト差分のチャンクサイズ(KiB)(デフォルト: 64)
"TextDiffChunkSizeKilobytes": 64,
// Additional memory budget (MiB) for parallel text diff buffers (0 = unlimited) (default: 0)
// 並列テキスト差分バッファの追加メモリ予算(MiB、0 = 無制限)(デフォルト: 0)
"TextDiffParallelMemoryLimitMegabytes": 0,
// Treat text files as mismatches when SHA256 differs, even if decoded line content matches (default: true)
// SHA256 が異なるテキストファイルは、デコード後の行内容が一致しても不一致として扱う(デフォルト: true)
// Set false to allow normalized line comparison to ignore line endings, BOMs, and encoding-only differences.
// false にすると、正規化された行比較で改行コード、BOM、エンコーディングのみの差分を無視できます。
"ShouldTreatTextByteDifferencesAsMismatch": true,
// --- IL Cache / IL キャッシュ ---
// Enable in-memory + disk IL disassembly cache (default: true)
// メモリ + ディスク IL 逆アセンブルキャッシュを有効にする(デフォルト: true)
// CLI override: --no-il-cache
"EnableILCache": true,
// Absolute path for the IL disk cache directory (default: "" = %LOCALAPPDATA%/FolderDiffIL4DotNet/ILCache)
// IL ディスクキャッシュディレクトリの絶対パス(デフォルト: "" = %LOCALAPPDATA%/FolderDiffIL4DotNet/ILCache)
"ILCacheDirectoryAbsolutePath": "",
// Interval (seconds) for periodic IL cache statistics logging (default: 60)
// IL キャッシュ統計の定期ログ出力間隔(秒)(デフォルト: 60)
"ILCacheStatsLogIntervalSeconds": 60,
// Maximum disk cache files (default: 1000)
// ディスクキャッシュの最大ファイル数(デフォルト: 1000)
"ILCacheMaxDiskFileCount": 1000,
// Maximum disk cache size in MiB (default: 512)
// ディスクキャッシュの最大サイズ(MiB)(デフォルト: 512)
"ILCacheMaxDiskMegabytes": 512,
// Memory budget (MB) for the in-memory IL cache. Default is 256; set 0 to restore unlimited mode (entry-count limit only)
// メモリ内 IL キャッシュのメモリ予算(MB)。デフォルトは 256。0 を指定すると無制限(エントリ数上限のみ)に戻る
"ILCacheMaxMemoryMegabytes": 256,
// Number of files per SHA256 precompute batch (default: 2048)
// SHA256 プリコンピュートのバッチあたりのファイル数(デフォルト: 2048)
"ILPrecomputeBatchSize": 2048,
// --- Network Shares / ネットワーク共有 ---
// Optimize for network-share folders: skip precompute, use sequential I/O (default: false)
// ネットワーク共有フォルダ向けに最適化: プリコンピュートスキップ、逐次 I/O 使用(デフォルト: false)
"OptimizeForNetworkShares": false,
// Auto-detect whether old/new folders are on network shares (default: true)
// old/new フォルダがネットワーク共有上にあるか自動検出する(デフォルト: true)
"AutoDetectNetworkShares": true,
// --- Disassembler / 逆アセンブラ ---
// Minutes to blacklist a failing disassembler before retrying (default: 10)
// 失敗した逆アセンブラを再試行までブラックリストに入れる分数(デフォルト: 10)
"DisassemblerBlacklistTtlMinutes": 10,
// Timeout (seconds) for each disassembler process invocation. 0 = no timeout (default: 60)
// 各逆アセンブラプロセス実行のタイムアウト(秒)。0 = タイムアウトなし(デフォルト: 60)
"DisassemblerTimeoutSeconds": 60,
// --- Inline Diff (HTML report) / インライン差分(HTML レポート) ---
// Enable inline diff in HTML report (default: true)
// HTML レポートでインライン差分を有効にする(デフォルト: true)
"EnableInlineDiff": true,
// Context lines around each diff hunk (0 = show only changed lines) (default: 4)
// 各差分ハンクの前後に表示するコンテキスト行数(0 = 変更行のみ)(デフォルト: 4)
"InlineDiffContextLines": 4,
// Maximum edit distance for diff computation; skip diff for very different files (default: 4000)
// 差分計算の最大編集距離。非常に異なるファイルの差分計算をスキップ(デフォルト: 4000)
"InlineDiffMaxEditDistance": 4000,
// Maximum diff lines to process (default: 10000)
// 処理する最大差分行数(デフォルト: 10000)
"InlineDiffMaxDiffLines": 10000,
// Maximum output lines in the rendered diff (default: 10000)
// レンダリングされた差分の最大出力行数(デフォルト: 10000)
"InlineDiffMaxOutputLines": 10000,
// Render inline diffs lazily (on-demand when expanded) (default: true)
// インライン差分を遅延レンダリングする(展開時にオンデマンド)(デフォルト: true)
"InlineDiffLazyRender": true,
// --- Spinner / スピナー ---
// Custom spinner animation frames (default: null = built-in 10-frame braille animation)
// カスタムスピナーアニメーションフレーム(デフォルト: null = 組み込み 10 コマのブライユアニメーション)
"SpinnerFrames": null,
// --- Logging / ログ ---
// Number of log file generations to keep (default: 5)
// 保持するログファイル世代数(デフォルト: 5)
"MaxLogGenerations": 5,
// --- Plugin / プラグイン ---
// Directories to scan for plugin subdirectories (default: [] = plugin loading disabled)
// プラグインサブディレクトリをスキャンするディレクトリ(デフォルト: [] = プラグイン読み込み無効)
// Example opt-in: ["./plugins"]
// opt-in 例: ["./plugins"]
"PluginSearchPaths": [],
// Plugin IDs to load from configured search paths. Empty array = all found plugins only after PluginSearchPaths is explicit (default: [])
// 設定済み検索パスから読み込むプラグイン ID。空配列 = PluginSearchPaths 明示時のみ見つかった全プラグイン(デフォルト: [])
"PluginEnabledIds": [],
// Per-plugin configuration (key = plugin ID, value = plugin-specific JSON object)
// プラグインごとの設定(キー = プラグイン ID、値 = プラグイン固有の JSON オブジェクト)
"PluginConfig": {},
// When true, only plugins whose DLL SHA-256 hash matches PluginTrustedHashes are loaded (default: true)
// Set false only for trusted local plugin-development paths.
// true の場合、DLL の SHA-256 ハッシュが PluginTrustedHashes と一致するプラグインのみを読み込む(デフォルト: true)
// 信頼済みローカルのプラグイン開発パスに限り false を明示してください。
"PluginStrictMode": true,
// Map of plugin ID to trusted SHA-256 hash (hex). Only used when PluginStrictMode is true.
// プラグイン ID から信頼済み SHA-256 ハッシュ(16進数)へのマップ。PluginStrictMode が true の場合のみ使用。
"PluginTrustedHashes": {}
}