Skip to content

Commit e2edd25

Browse files
committed
docs: add missing config settings to README tables and DEVELOPER_GUIDE groups
README.md (EN + JA config tables) were missing 6 settings: - DisassemblerBlacklistTtlMinutes (default: 10) - EnableInlineDiff (default: true) - InlineDiffContextLines (default: 0) - InlineDiffMaxInputLines (default: 1000) - InlineDiffMaxOutputLines (default: 500) - ShouldGenerateHtmlReport (default: true) DEVELOPER_GUIDE.md configuration groups table (EN + JA) was also missing these plus ShouldIncludeILCacheStatsInReport, SkipIL, MaxLogGenerations, and SpinnerFrames. Added new Inline diff, Report output, and Logging / UX groups; extended IL behavior and Inclusion and report shape groups accordingly. https://claude.ai/code/session_0174R4FzjudFBdynScKbhX6m
1 parent 6f7ea03 commit e2edd25

2 files changed

Lines changed: 70 additions & 4 deletions

File tree

README.md

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -328,16 +328,46 @@ Override only the settings you want to change. For example:
328328
<td><code>true</code></td>
329329
<td>Auto-detects network paths and enables optimization mode as needed.</td>
330330
</tr>
331+
<tr id="config-en-disassemblerblacklistttlminutes">
332+
<td><code>DisassemblerBlacklistTtlMinutes</code></td>
333+
<td><code>10</code></td>
334+
<td>Minutes before a blacklisted disassembler tool — one that has failed <code>DISASSEMBLE_FAIL_THRESHOLD</code> (3) times consecutively — is removed from the blacklist and retried on the next call.</td>
335+
</tr>
331336
<tr id="config-en-skipil">
332337
<td><code>SkipIL</code></td>
333338
<td><code>false</code></td>
334339
<td>When <code>true</code>, skips IL decompilation and IL diff for .NET assemblies. MD5-mismatched assemblies are treated as binary diffs. Equivalent to the <code>--skip-il</code> CLI flag.</td>
335340
</tr>
341+
<tr id="config-en-enableinlinediff">
342+
<td><code>EnableInlineDiff</code></td>
343+
<td><code>true</code></td>
344+
<td>When <code>true</code>, text-mismatched and IL-mismatched files in the HTML report include an expandable inline diff showing added and removed lines.</td>
345+
</tr>
346+
<tr id="config-en-inlinediffcontextlines">
347+
<td><code>InlineDiffContextLines</code></td>
348+
<td><code>0</code></td>
349+
<td>Number of unchanged context lines to show above and below each changed hunk in inline diffs. <code>0</code> shows only the changed lines themselves.</td>
350+
</tr>
351+
<tr id="config-en-inlinediffmaxinputlines">
352+
<td><code>InlineDiffMaxInputLines</code></td>
353+
<td><code>1000</code></td>
354+
<td>Maximum line count of either file before inline diff is skipped for that entry. Guards against very large files causing slow HTML rendering.</td>
355+
</tr>
356+
<tr id="config-en-inlinediffmaxoutputlines">
357+
<td><code>InlineDiffMaxOutputLines</code></td>
358+
<td><code>500</code></td>
359+
<td>Maximum number of output lines produced by a single inline diff. When exceeded, the diff is truncated and a note is shown in the report.</td>
360+
</tr>
336361
<tr id="config-en-spinnerframes">
337362
<td><code>SpinnerFrames</code></td>
338363
<td><code>["|", "/", "-", "\\"]</code></td>
339364
<td>Array of strings used for the console spinner animation. Each element is one frame in the rotation, so multi-character strings (e.g. block characters, emoji) are supported. Must contain at least one element. Setting <code>null</code> restores the default.</td>
340365
</tr>
366+
<tr id="config-en-shouldgeneratehtmlreport">
367+
<td><code>ShouldGenerateHtmlReport</code></td>
368+
<td><code>true</code></td>
369+
<td>When <code>true</code>, generates <code>diff_report.html</code> alongside <code>diff_report.md</code>. The HTML file is a self-contained interactive review document with checkboxes, text inputs, localStorage auto-save, and a download function that bakes the current review state into a portable snapshot. Set to <code>false</code> to produce only the Markdown report.</td>
370+
</tr>
341371
</tbody>
342372
</table>
343373

@@ -703,16 +733,46 @@ flowchart TD
703733
<td><code>true</code></td>
704734
<td>ネットワーク共有を自動検出して最適化モードを必要時に有効化。</td>
705735
</tr>
736+
<tr id="config-ja-disassemblerblacklistttlminutes">
737+
<td><code>DisassemblerBlacklistTtlMinutes</code></td>
738+
<td><code>10</code></td>
739+
<td>連続失敗回数が <code>DISASSEMBLE_FAIL_THRESHOLD</code>(3 回)に達してブラックリスト入りした逆アセンブラツールが、ブラックリストから除外されて再試行されるまでの分数。</td>
740+
</tr>
706741
<tr id="config-ja-skipil">
707742
<td><code>SkipIL</code></td>
708743
<td><code>false</code></td>
709744
<td><code>true</code> の場合、.NET アセンブリの IL 逆アセンブルと IL 差分比較をまるごとスキップします。MD5 不一致のアセンブリはバイナリ差分として扱います。CLI フラグ <code>--skip-il</code> と同等。</td>
710745
</tr>
746+
<tr id="config-ja-enableinlinediff">
747+
<td><code>EnableInlineDiff</code></td>
748+
<td><code>true</code></td>
749+
<td><code>true</code> の場合、HTML レポートのテキスト不一致・IL 不一致ファイルに、追加行・削除行を示す折り畳み式インライン差分を表示します。</td>
750+
</tr>
751+
<tr id="config-ja-inlinediffcontextlines">
752+
<td><code>InlineDiffContextLines</code></td>
753+
<td><code>0</code></td>
754+
<td>インライン差分で各変更ハンクの前後に表示する未変更コンテキスト行数。<code>0</code> では変更行のみを表示します。</td>
755+
</tr>
756+
<tr id="config-ja-inlinediffmaxinputlines">
757+
<td><code>InlineDiffMaxInputLines</code></td>
758+
<td><code>1000</code></td>
759+
<td>いずれかのファイルの行数がこの値を超えた場合、そのエントリのインライン差分をスキップします。非常に大きいファイルによる HTML レンダリングの遅延を防ぎます。</td>
760+
</tr>
761+
<tr id="config-ja-inlinediffmaxoutputlines">
762+
<td><code>InlineDiffMaxOutputLines</code></td>
763+
<td><code>500</code></td>
764+
<td>1 件のインライン差分で生成する最大出力行数。超過した場合は差分を打ち切り、レポートに注記を表示します。</td>
765+
</tr>
711766
<tr id="config-ja-spinnerframes">
712767
<td><code>SpinnerFrames</code></td>
713768
<td><code>["|", "/", "-", "\\"]</code></td>
714769
<td>コンソールスピナーアニメーションに使用する文字列の配列。各要素が 1 フレームになるため、複数文字のフレーム(ブロック文字・絵文字など)も指定できます。1 件以上必須です。<code>null</code> を指定すると既定値に戻ります。</td>
715770
</tr>
771+
<tr id="config-ja-shouldgeneratehtmlreport">
772+
<td><code>ShouldGenerateHtmlReport</code></td>
773+
<td><code>true</code></td>
774+
<td><code>true</code> の場合、<code>diff_report.md</code> と並んで <code>diff_report.html</code> を生成します。HTML ファイルはチェックボックス・テキスト入力・localStorage 自動保存・ダウンロード機能を持つ自己完結型インタラクティブレビュードキュメントです。<code>false</code> にすると Markdown レポートのみを生成します。</td>
775+
</tr>
716776
</tbody>
717777
</table>
718778

doc/DEVELOPER_GUIDE.md

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -374,11 +374,14 @@ The nested `DiffSummaryStatistics` sealed record (`AddedCount`, `RemovedCount`,
374374

375375
| Group | Keys | Purpose |
376376
| --- | --- | --- |
377-
| Inclusion and report shape | [`IgnoredExtensions`](../README.md#configuration-table-en), [`TextFileExtensions`](../README.md#configuration-table-en), [`ShouldIncludeUnchangedFiles`](../README.md#configuration-table-en), [`ShouldIncludeIgnoredFiles`](../README.md#configuration-table-en), [`ShouldOutputFileTimestamps`](../README.md#configuration-table-en), [`ShouldWarnWhenNewFileTimestampIsOlderThanOldFileTimestamp`](../README.md#configuration-table-en) | Controls scope, report verbosity, and timestamp-regression warnings. Note: `ShouldOutputFileTimestamps` is purely supplementary — timestamps are never used in comparison logic; results (Unchanged / Modified / etc.) are determined solely by file content. |
378-
| IL behavior | [`ShouldOutputILText`](../README.md#configuration-table-en), [`ShouldIgnoreILLinesContainingConfiguredStrings`](../README.md#configuration-table-en), [`ILIgnoreLineContainingStrings`](../README.md#configuration-table-en) | Controls IL normalization and artifact output |
377+
| Inclusion and report shape | [`IgnoredExtensions`](../README.md#configuration-table-en), [`TextFileExtensions`](../README.md#configuration-table-en), [`ShouldIncludeUnchangedFiles`](../README.md#configuration-table-en), [`ShouldIncludeIgnoredFiles`](../README.md#configuration-table-en), [`ShouldIncludeILCacheStatsInReport`](../README.md#configuration-table-en), [`ShouldOutputFileTimestamps`](../README.md#configuration-table-en), [`ShouldWarnWhenNewFileTimestampIsOlderThanOldFileTimestamp`](../README.md#configuration-table-en) | Controls scope, report verbosity, and timestamp-regression warnings. Note: `ShouldOutputFileTimestamps` is purely supplementary — timestamps are never used in comparison logic; results (Unchanged / Modified / etc.) are determined solely by file content. |
378+
| IL behavior | [`ShouldOutputILText`](../README.md#configuration-table-en), [`ShouldIgnoreILLinesContainingConfiguredStrings`](../README.md#configuration-table-en), [`ILIgnoreLineContainingStrings`](../README.md#configuration-table-en), [`SkipIL`](../README.md#configuration-table-en), [`DisassemblerBlacklistTtlMinutes`](../README.md#configuration-table-en) | Controls IL normalization, artifact output, and disassembler reliability (blacklist TTL) |
379+
| Inline diff | [`EnableInlineDiff`](../README.md#configuration-table-en), [`InlineDiffContextLines`](../README.md#configuration-table-en), [`InlineDiffMaxInputLines`](../README.md#configuration-table-en), [`InlineDiffMaxOutputLines`](../README.md#configuration-table-en) | Controls inline diff rendering in the HTML report |
379380
| Parallelism | [`MaxParallelism`](../README.md#configuration-table-en), [`TextDiffParallelThresholdKilobytes`](../README.md#configuration-table-en), [`TextDiffChunkSizeKilobytes`](../README.md#configuration-table-en), [`TextDiffParallelMemoryLimitMegabytes`](../README.md#configuration-table-en) | Controls CPU usage, chunk sizing, and optional memory budget for large-text comparison |
380381
| Cache | [`EnableILCache`](../README.md#configuration-table-en), [`ILCacheDirectoryAbsolutePath`](../README.md#configuration-table-en), [`ILCacheStatsLogIntervalSeconds`](../README.md#configuration-table-en), [`ILCacheMaxDiskFileCount`](../README.md#configuration-table-en), [`ILCacheMaxDiskMegabytes`](../README.md#configuration-table-en), [`ILPrecomputeBatchSize`](../README.md#configuration-table-en) | Controls IL cache lifetime, storage, and large-tree precompute batching |
381382
| Network-share mode | [`OptimizeForNetworkShares`](../README.md#configuration-table-en), [`AutoDetectNetworkShares`](../README.md#configuration-table-en) | Prevents high-I/O behavior on slower remote storage |
383+
| Report output | [`ShouldGenerateHtmlReport`](../README.md#configuration-table-en) | Controls whether the interactive HTML review report is generated alongside the Markdown report |
384+
| Logging / UX | [`MaxLogGenerations`](../README.md#configuration-table-en), [`SpinnerFrames`](../README.md#configuration-table-en) | Controls log file retention and the console spinner animation |
382385

383386
Additional internal defaults:
384387
- [`ProgramRunner`](../ProgramRunner.cs) currently applies non-configurable IL cache defaults from [`Common/Constants.cs`](../Common/Constants.cs): `2000` memory entries, `12` hours TTL, and `60` seconds for internal stats logs. Cross-project byte/timestamp literals reused by both projects live in [`FolderDiffIL4DotNet.Core/Common/CoreConstants.cs`](../FolderDiffIL4DotNet.Core/Common/CoreConstants.cs).
@@ -918,11 +921,14 @@ catch (Exception ex)
918921

919922
| グループ | 主なキー | 目的 |
920923
| --- | --- | --- |
921-
| 対象範囲とレポート形状 | [`IgnoredExtensions`](../README.md#configuration-table-ja), [`TextFileExtensions`](../README.md#configuration-table-ja), [`ShouldIncludeUnchangedFiles`](../README.md#configuration-table-ja), [`ShouldIncludeIgnoredFiles`](../README.md#configuration-table-ja), [`ShouldOutputFileTimestamps`](../README.md#configuration-table-ja), [`ShouldWarnWhenNewFileTimestampIsOlderThanOldFileTimestamp`](../README.md#configuration-table-ja) | 比較対象、レポート粒度、更新日時逆転警告の制御。`ShouldOutputFileTimestamps` は純粋な補助情報であり、更新日時は比較ロジックには一切使用しない。Unchanged / Modified 等の判定はファイル内容のみで行われる。 |
922-
| IL 関連 | [`ShouldOutputILText`](../README.md#configuration-table-ja), [`ShouldIgnoreILLinesContainingConfiguredStrings`](../README.md#configuration-table-ja), [`ILIgnoreLineContainingStrings`](../README.md#configuration-table-ja) | IL 正規化と成果物出力の制御 |
924+
| 対象範囲とレポート形状 | [`IgnoredExtensions`](../README.md#configuration-table-ja), [`TextFileExtensions`](../README.md#configuration-table-ja), [`ShouldIncludeUnchangedFiles`](../README.md#configuration-table-ja), [`ShouldIncludeIgnoredFiles`](../README.md#configuration-table-ja), [`ShouldIncludeILCacheStatsInReport`](../README.md#configuration-table-ja), [`ShouldOutputFileTimestamps`](../README.md#configuration-table-ja), [`ShouldWarnWhenNewFileTimestampIsOlderThanOldFileTimestamp`](../README.md#configuration-table-ja) | 比較対象、レポート粒度、更新日時逆転警告の制御。`ShouldOutputFileTimestamps` は純粋な補助情報であり、更新日時は比較ロジックには一切使用しない。Unchanged / Modified 等の判定はファイル内容のみで行われる。 |
925+
| IL 関連 | [`ShouldOutputILText`](../README.md#configuration-table-ja), [`ShouldIgnoreILLinesContainingConfiguredStrings`](../README.md#configuration-table-ja), [`ILIgnoreLineContainingStrings`](../README.md#configuration-table-ja), [`SkipIL`](../README.md#configuration-table-ja), [`DisassemblerBlacklistTtlMinutes`](../README.md#configuration-table-ja) | IL 正規化・成果物出力・逆アセンブラ信頼性(ブラックリスト TTL)の制御 |
926+
| インライン差分 | [`EnableInlineDiff`](../README.md#configuration-table-ja), [`InlineDiffContextLines`](../README.md#configuration-table-ja), [`InlineDiffMaxInputLines`](../README.md#configuration-table-ja), [`InlineDiffMaxOutputLines`](../README.md#configuration-table-ja) | HTML レポートでのインライン差分表示を制御 |
923927
| 並列度 | [`MaxParallelism`](../README.md#configuration-table-ja), [`TextDiffParallelThresholdKilobytes`](../README.md#configuration-table-ja), [`TextDiffChunkSizeKilobytes`](../README.md#configuration-table-ja), [`TextDiffParallelMemoryLimitMegabytes`](../README.md#configuration-table-ja) | CPU 利用、チャンク粒度、大きいテキスト比較時の任意メモリ予算を制御 |
924928
| キャッシュ | [`EnableILCache`](../README.md#configuration-table-ja), [`ILCacheDirectoryAbsolutePath`](../README.md#configuration-table-ja), [`ILCacheStatsLogIntervalSeconds`](../README.md#configuration-table-ja), [`ILCacheMaxDiskFileCount`](../README.md#configuration-table-ja), [`ILCacheMaxDiskMegabytes`](../README.md#configuration-table-ja), [`ILPrecomputeBatchSize`](../README.md#configuration-table-ja) | IL キャッシュの寿命、保存先、大規模ツリー向け事前計算バッチを制御 |
925929
| ネットワーク共有向け | [`OptimizeForNetworkShares`](../README.md#configuration-table-ja), [`AutoDetectNetworkShares`](../README.md#configuration-table-ja) | 遅いストレージでの高 I/O 挙動抑制 |
930+
| レポート出力 | [`ShouldGenerateHtmlReport`](../README.md#configuration-table-ja) | Markdown レポートと並行してインタラクティブ HTML レビューレポートを生成するかを制御 |
931+
| ログ / UX | [`MaxLogGenerations`](../README.md#configuration-table-ja), [`SpinnerFrames`](../README.md#configuration-table-ja) | ログファイルの保持世代数とコンソールスピナーアニメーションを制御 |
926932

927933
補足の内部既定値:
928934
- [`ProgramRunner`](../ProgramRunner.cs) は、[`Common/Constants.cs`](../Common/Constants.cs) で定義した IL キャッシュ内部既定値として、メモリ `2000` 件、TTL `12` 時間、内部統計ログ `60` 秒を使います。両プロジェクトで共通利用するバイト換算値と日時フォーマットは [`FolderDiffIL4DotNet.Core/Common/CoreConstants.cs`](../FolderDiffIL4DotNet.Core/Common/CoreConstants.cs) にあります。

0 commit comments

Comments
 (0)