# LegalOS 法改正ウォッチ CHANGELOG

すべての変更は本ファイルに記録されます。
日付フォーマット: YYYY-MM-DD（開発時刻基準）

---

## v0.6.6 - Phase 6L（初期取得設定の軽量化 + 個別削除機能）— 2026-05-23

### Changed
- **一般企業向けの初期取得設定を軽量化**。新規DB初期化時、または
  `app_state.source_enabled.*` が未設定の場合の初期 ON/OFF を見直し。
  - 初期 **ON**（9 ソース）: e-Gov パブリックコメント / 金融庁 /
    デジタル庁 / 厚生労働省 / 個人情報保護委員会 / 公正取引委員会 /
    消費者庁 / 国税庁 / 法務省
  - 初期 **OFF**（3 ソース）: 経済産業省 / 資源エネルギー庁 / 中小企業庁
  - OFF にした理由:
    - 経済産業省・中小企業庁: 接続失敗が起きやすい上、産業政策一般の
      情報がノイズとなり、一般企業のリーガル担当には不要なものが多い
    - 資源エネルギー庁: 再エネ・電気事業の専門領域で、一般企業には不要
  - 既存ユーザーの設定は **上書きしない**（`app_state` に明示的な
    "true"/"false" が入っている場合はそれを尊重）。
  - 「標準に戻す」ボタンも、この新しい初期設定（初期 OFF 3 件を含む）に
    戻すよう挙動を変更。
- **取得設定ダイアログ**の説明文を更新し、初期 OFF となるソースを
  明示。

### Added
- **左側一覧の右クリックメニューに「この情報を削除」を追加**。
  - メニュー末尾（区切り線の下）に配置。
  - 押下時は確認ダイアログを表示してから削除（誤操作防止）。
  - 削除対象: 選択中の **1 件のみ**（articles テーブルの該当レコード）。
  - 詳細ペインに同じ記事が表示されていた場合は空状態に戻す。
  - キーワード設定・取得設定・最終確認日時には影響しない。
- DB API: `app/db/database.py` に `delete_article(article_id: int) -> bool`
  を追加（記事が見つかれば True、未存在なら False を返す）。
- ヘルプの「使い方」タブに v0.6.6 の変更点（初期 OFF ソース・個別削除
  機能）を追記。

### Compatibility
- **DBスキーマ変更なし**。
- 既存ユーザーの取得設定（`app_state.source_enabled.*` の値）は維持。
- 既存ユーザーの記事・ステータス・ユーザーメモは維持。
- `services/fetcher.py` の `SOURCES` 構成・取得ロジック本体は無変更
  （初期 ON/OFF の判定ロジックのみ追加）。
- 法令取得ロジック・パース処理・重要度判定の挙動は無変更。

### Internal
- `services/fetcher.py`:
  - 新しい frozenset `DEFAULT_OFF_SOURCES = {"meti", "enecho", "sme"}` を追加。
  - 新しいヘルパ `_is_enabled_by_user(sid)` を追加（"true"/"false"/未設定
    の三状態を一元判定）。
  - `_resolve_enabled_sources()` から個別の `db.get_app_state()` 呼び出しを
    `_is_enabled_by_user(sid)` 経由に整理。
- 配布物: v0.5.5〜v0.6.5 の配布パッケージは削除せず保持。
- EXE 再ビルドは本フェーズでは未実施（ソース変更のみのリリース候補）。

---

## v0.6.5 - Phase 6J（配布前UX改善）— 2026-05-23

### Fixed
- **キーワード編集画面の初期サイズ**で「保存して閉じる」「キャンセル」
  ボタンが下に隠れる問題を修正。
  - 1180×760 → **1240×880**（画面の92%×90%を上限に自動調整）
  - 起動時に親ウィンドウ中央へ配置、最小サイズも 960×660 に拡大
- 一部失敗時のエラーメッセージが技術的すぎる問題を改善
  （`services/error_messages.py` 新規）。

### Changed
- **メイン画面上部の使い方案内（USAGE_HINT）を削除**し、ヘルプの
  「使い方」タブに統合。
- 同位置に **取得状態専用ラベル** を配置（待機中／取得中：金融庁
  （2/12）／取得完了：新規 N 件／一部失敗：N成功/M失敗）。長い
  ソース名は短縮表示（資源エネルギー庁 → 資源エネ庁 等）。
- **詳細ペインのステータス変更ドロップダウンを削除**し、表示のみに変更。
  「※ ステータスは左側一覧の右クリックメニューから変更できます。」と
  案内を併記。ユーザーメモ欄・メモ保存ボタンは維持。
- ヘルプの「使い方」タブを右クリック式ステータス変更に合わせて改訂、
  「一部取得失敗について」セクション追加。

### Added
- **左側一覧の右クリックメニュー** からステータスを 1 クリックで変更
  可能に（未読 / 確認済み / 保留 / 対応不要）。現在のステータスに ●
  マークを付けて視認性を確保。複数選択一括変更は将来対応の余地を
  `_update_article_status(article_id, status)` の小単位で残す。
- **エラーメッセージ humanize 化**（`services/error_messages.py`）:
  タイムアウト / Connection Reset / HTTP 403 / 404 / 5xx /
  DNS / SSL / 構造変更 / 両候補失敗 を判定し、利用者向けの
  「理由」「対応」表現に変換。
- **一部取得失敗ダイアログ**を利用者向け表現に整形:
  - 「⚠ 資源エネルギー庁  取得できませんでした
       理由：…  対応：…」形式
  - 末尾に「同じソースで失敗が続く場合は、上部の『取得設定』から
       一時的にOFFにできます」の誘導文
  - 「重要な情報は必ず公式サイトで直接確認してください」の補足

### Compatibility
- DBスキーマ変更なし
- 詳細ペインの `_on_status_changed` メソッドは互換のため残置
  （Combobox からは呼ばれない）

---

## v0.6.4 - Phase 6I（アプリアイコン設定）— 2026-05-23

### Added
- **アプリアイコンを設定**（`assets/LegalOS_Law_Watch.ico`）。
  - 7サイズ含む .ico（16 / 24 / 32 / 48 / 64 / 128 / 256 px）
  - デザイン: LegalOS シリーズ統一の濃紺バッジ（#1E2D4A）に
    白い書類アイコン + 青いチェック（#2563EB）
  - Pillow で生成（ベクター的に角丸矩形 + 多角形ポリゴン）
- EXE のウィンドウタイトル/タスクバー/ファイルエクスプローラに
  アイコン反映（PyInstaller の `icon=` 引数経由）。
- インストーラーのセットアップウィザード自体にも同じアイコン反映
  （Inno Setup `SetupIconFile`）。
- アンインストール時の表示アイコンも `{app}\LegalOS_Law_Watch.exe`
  から取得（既存設定）。

### Changed
- 機能変更なし（v0.6.3 からの差分はアイコン関連のみ）。

### Compatibility
- DBスキーマ変更なし。
- 既存DBユーザーへの影響なし。

---

## v0.6.3 - Phase 6G（データ管理）— 2026-05-23

### Added
- **データ管理ダイアログを追加**（`app/ui/data_management_dialog.py`）。
  メインツールバー右端（ヘルプの左隣）に「データ管理」ボタンを追加。
  - 取得済み記事件数 / 未読件数 / メモ付き件数を表示
  - 「取得済み情報をクリア」ボタンで一括削除可能（警告色で表示）
- **`database.clear_articles()` を追加**。
  - articles テーブルの全レコードを削除
  - app_state.last_checked を「未確認」に戻す
  - keywords テーブルは削除しない
  - app_state.source_enabled.* は削除しない
  - app_state.fetch_limit_mode は削除しない
  - 削除件数を返す
- `database.count_articles()` の戻り値に `memo_count`
  （`user_memo` が空でない記事数）を追加。
- ヘルプ「使い方」タブに「9. データ管理」セクション追加。

### Use case
- 試用後に一覧を整理したい
- 一覧表示が増えすぎてリセットしたい
- キーワード設定や取得設定は残したまま、取得結果だけクリアしたい

### Safety
- 削除前に確認ダイアログ（警告アイコン付き）を表示
- 削除内容を明示「取得済みの記事、ステータス、メモをすべて削除します。
  キーワード設定と取得設定は残ります。」
- 記事 0 件の状態で実行ボタンを押した場合は「削除対象なし」のみ表示
- 削除後に件数表示・最終確認日時・メイン画面の一覧を自動更新

### Compatibility
- DBスキーマ変更なし（新規関数追加のみ）
- 既存呼び出しコードは互換維持

---

## v0.6.2 - Phase 6E（一般企業向けソース追加）— 2026-05-23

### Added
- **取得対象ソースを 9 → 12 に拡張**。一般企業の管理部門で利用価値が
  高い 3 ソースを追加:
  - **国税庁**（`services/sources/nta_source.py`）
    - URL: `https://www.nta.go.jp/information/news/index.htm`
    - 電子帳簿保存法・インボイス制度・印紙税・通達等のお知らせ
  - **法務省**（`services/sources/moj_source.py`）
    - URL: `https://www.moj.go.jp/list_info.html`
    - 会社法・民法・商業登記・法制審議会等の新着情報
  - **中小企業庁**（`services/sources/sme_source.py`）
    - URL（第一候補）: `https://www.chusho.meti.go.jp/news/`
    - URL（第二候補）: `https://www.chusho.meti.go.jp/`
    - 下請法・価格転嫁・事業承継・補助金等の新着情報
    - 経産省と同ドメイン構造のため、環境によっては接続不可
      （その場合は他ソースに影響を与えず error として扱う）
- 取得設定画面で 12 ソースが表示される（`SOURCES` から動的読込のため
  ソースモジュール追加に応じて自動反映）。
- 重要度判定キーワードに「インボイス制度」「電子帳簿保存法」「印紙税」
  「通達」「会社法」「民法」「商業登記」「法制審議会」「事業承継」
  （高）と「お知らせ」「Q&A」「FAQ」「説明会」「資料」「相談窓口」
  「事例」「周知」（中）を追加。

### Compatibility
- DBスキーマ変更なし。
- 既存DBユーザーは新ソースが自動で取得対象に追加される
  （`source_enabled.nta/moj/sme` キーは未設定 → 既定でON）。
- 取得設定画面で個別にOFFにすれば対象から外せる。

---

## v0.6.1 - Phase 6C（取得設定追加）— 2026-05-23

### Added
- **取得設定ダイアログを追加**（`app/ui/source_settings_dialog.py`）。
  メイン画面ツールバーに「取得設定」ボタンを追加。
  - 9ソース個別にON/OFFをチェック切替可能（取得失敗するソースを一時的に外せる）
  - 取得件数を3段階で選択: 少なめ(各10件) / 標準(各30件) / 多め(各50件)
  - 「すべてON」「すべてOFF」「標準に戻す」のプリセットボタン
- **`services/fetcher.py` の `SOURCES` 各エントリに `id` / `description` を追加**。
  設定画面で固有IDで保存・参照、説明文を表示するため。
- **`fetcher.fetch_all_sources` を設定対応化**。
  - `app_state.source_enabled.<id>` で OFF にされたソースをスキップ
  - `app_state.fetch_limit_mode` (small/standard/large) で各ソースの
    `max_items` を動的に上書き
  - 進捗バーの分母は **有効ソース数**（OFFされたソースは含まれない）
- ヘルプ「使い方」タブに「取得設定」操作説明を追記。

### Saved keys in app_state
- `source_enabled.egov_pubcomment` … e-Gov パブリックコメント
- `source_enabled.fsa`              … 金融庁
- `source_enabled.digital`          … デジタル庁
- `source_enabled.mhlw`             … 厚生労働省
- `source_enabled.meti`             … 経済産業省
- `source_enabled.ppc`              … 個人情報保護委員会
- `source_enabled.jftc`             … 公正取引委員会
- `source_enabled.enecho`           … 資源エネルギー庁
- `source_enabled.caa`              … 消費者庁
- `fetch_limit_mode`                … "small" / "standard" / "large"

各キーが未設定の場合の既定値: 全ソースON / `standard`（既存ユーザー保護）。

### Compatibility
- DBスキーマは変更なし（`app_state` テーブルへの key/value 追加のみ）。
- 既存DBの動作は変更前と同じ（未設定キーは「全ON・standard」として解釈）。
- `fetch_all_sources()` の引数互換は維持（`progress_callback` も従来通り）。

---

## v0.6.0 - Phase 6A / 6A-2（キーワード拡充・検索絞込み）— 2026-05-23

### Added
- **初期キーワードを 114 → 約220件に拡張**。
  企業法務・再エネ寄りだけでなく、一般企業法務・管理部門でも使えるよう
  幅広い業種・分野をカバー。
- **キーワード編集画面のカテゴリを 9 → 16 カテゴリに再整理**。
  - 既存 9: 企業法務 / 契約実務 / 労務・コンプライアンス /
    個人情報・情報管理 / 取引規制 / 税務・会計 /
    再エネ・電力 / 環境・不動産 / 省庁・機関
  - 新規 7: 消費者法・広告 / IT・サイバー・AI / 金融・決済 /
    貿易・経済安全保障 / 製造・品質・製品安全 / 医療・ヘルスケア /
    建設・物流
- **追加した主な分野**:
  - 消費者法・広告: 通信販売・訪問販売・定期購入・ステマ・措置命令・
    課徴金納付命令・特商法表示 等
  - IT・サイバー・AI: 電気通信事業法・プロバイダ責任制限法・
    生成AI・AIガバナンス・デジタルプラットフォーム・クッキー 等
  - 金融・決済: 資金決済法・犯収法・割賦販売法・前払式支払手段・
    暗号資産・電子決済手段・AML・本人確認 等
  - 貿易・経済安全保障: 輸出管理・経済安全保障・サプライチェーン・
    技術流出・制裁・投資規制 等
  - 製造・品質・製品安全: 製造物責任法・PL法・電気用品安全法・
    リコール・化審法・SDS・GHS 等
  - 医療・ヘルスケア: 薬機法・医療法・健康増進法・食品衛生法・
    機能性表示食品・特定保健用食品 等
  - 建設・物流: 建設業法・建設リサイクル法・貨物自動車運送事業法・
    倉庫業法・建築士法・産業廃棄物 等

### Changed
- **`PRIMARY_KEYWORDS` を 35 → 42件に拡張**。一般企業法務で実務的に重要な
  以下 7 件を初期確認対象に追加:
  - 金融商品取引法 / 電気通信事業法 / 薬機法 / 廃棄物処理法 /
    製造物責任法 / 建設業法 / 資金決済法
- 既存ユーザーDBは変更しない（新規DB初期化時のみ拡充キーワードを投入、
  PRIMARY_KEYWORDS の 7 件追加は「主要法令のみ対象に戻す」ボタン押下時のみ
  反映）。

### Notes
- 初期確認対象（enabled=True）は依然として PRIMARY_KEYWORDS のみ。
  追加された約180件のキーワードはデフォルトで enabled=False。
- ユーザーは自社業界に応じてキーワード編集画面の「確認対象」チェックを
  ONにすることで段階的に監視範囲を広げられる。

### Phase 6A-2 追加（同 v0.6.0 内）
- **キーワード編集画面に検索ボックスを追加**。
  - 入力即時で部分一致絞り込み（NFKC正規化＋小文字化、matcher と同方針）
  - 検索対象は「キーワード・法令名」と「カテゴリ」
  - 「クリア」ボタンで検索文字列とカテゴリ絞り込みを同時リセット
- **キーワード編集画面にカテゴリ絞り込みプルダウンを追加**。
  - 「すべて」+ 16 カテゴリの計 17 種類
  - 検索ボックスと組み合わせて複合絞り込み可能
- **表示件数表示を追加**。
  - 「表示 N件 / 全233件（確認対象 42件）」
- **「表示中を対象にする」「表示中を対象外にする」ボタンを追加**。
  - 現在の絞り込み条件で表示されている行のみ一括変更
  - 既存の「全件を対象にする / 全件を対象外にする」は維持
- **既存ボタンのラベルを統一**。
  - 「すべて対象にする」→「全件を対象にする」
  - 「すべて対象外にする」→「全件を対象外にする」
- 検索・カテゴリ絞り込みを変更しても、未保存のチェック変更は内部
  `self._keywords` に保持される（再描画は表示のみで状態を失わない）。
- ダイアログ初期サイズを 1100×720 → 1180×760、最小サイズも拡大。

---

## v0.5.9 - Phase 5G（ボタン見切れ追加修正）— 2026-05-23

### Fixed
- **v0.5.8 でまだ残っていた上部ツールバーボタンの上下見切れを完全解消**。
  - 原因: 1段目ツールバーの `pack_propagate(False) + height=52` で
    固定された高さがボタン実寸より小さく、Frame が子要素を切り詰めていた。
  - 対応:
    - `pack_propagate(False)` を撤廃し、内部要素に応じた自動高さ調整に変更。
    - ttk.Style padding を 4要素指定に変更し、上下方向を 10px に拡大
      （`Accent.TButton`: `(16,10,16,10)` / `TButton`: `(14,10,14,10)`）。
    - 各ボタンの `pack(pady=...)` を 6 → 8 に拡大。
  - 対象ボタン: 更新確認・キーワード編集・CSV出力・ヘルプ。

### Build
- v0.5.9 として EXE 版 ZIP・インストーラー版を新規作成。
  - ZIP版:   `LegalOS_Law_Watch_v0.5.9_Free_EXE.zip`
  - Setup版: `LegalOS_Law_Watch_Setup_v0.5.9_Free.exe`
- v0.5.5〜v0.5.8 の配布物は引き続き並列保持。

---

## v0.5.8 - Phase 5G（ボタン見切れ修正・リンク先変更）— 2026-05-23

### Fixed
- **上部ツールバーのボタン文字下側が見切れる問題を修正**。
  ttk.Style の `Accent.TButton` / `TButton` の padding を
  `(10,5) / (8,4)` → `(14,8) / (12,8)` に拡大。
  フォントサイズを 9 → 10 に統一（Treeview と整合）。
  ツールバー高さを 44 → 52 px に引き上げ。
  対象ボタン: 更新確認・キーワード編集・CSV出力・ヘルプ。

### Changed
- **「LegalOSシリーズ一覧を見る」リンクのリンク先を Legal GPT トップに変更**。
  - URL: `https://legal-gpt.com/legalos/` → `https://legal-gpt.com/`
  - 表示文言: 「▶ LegalOSシリーズ一覧を見る」→「▶ Legal GPTトップページを見る」

### Build
- v0.5.8 として EXE 版 ZIP とインストーラー版を新規作成。
  - ZIP版:   `LegalOS_Law_Watch_v0.5.8_Free_EXE.zip`
  - Setup版: `LegalOS_Law_Watch_Setup_v0.5.8_Free.exe`
- v0.5.5 / v0.5.6 / v0.5.7 の配布物は引き続き並列保持。

---

## v0.5.7 - Phase 5F（画面微修正・進捗バー・配布形式追加）— 2026-05-23

### Fixed
- **一覧テーブルの文字下側が見切れる問題を修正**。
  Treeview の `rowheight` を 26 → 32 に拡大、body フォントを Yu Gothic UI 10 に
  統一、Heading に padding=(6,6) を追加。
- **詳細ペインの「重要度」欄で文字と★が縦方向に見切れる問題を修正**。
  `width=4` の固定幅を廃止して動的サイズに変更。フォントを 9→12 に拡大、
  `pady=3` の縦余白を確保。
- 詳細ペイン全体の `pad`（label/val_label）を `pady=3 → 5` に拡大し、
  各行の上下余白を確保（タイトル・種別・発信元・公表日・根拠URL）。

### Added
- **更新確認中の進捗バーを追加**（`ttk.Progressbar` determinate mode）。
  ツールバー右側にラベル付きで動的に表示・非表示される。
  ソース別の現在処理状況をリアルタイム表示。
  - 「取得中：金融庁（2/9）」のように現在ソース名と進捗を表示
  - 完了時に「取得完了」「一部取得失敗」「取得失敗」のいずれかを表示
  - 1.5 秒後に自動的に非表示
- **`services/fetcher.fetch_all_sources` に `progress_callback` 引数を追加**。
  - シグネチャ: `progress_callback(current_index, total, source_name, phase)`
  - phase = "start" / "done"
  - 既存呼び出しとの互換性維持（callback=None 時は従来通り動作）
  - callback 内の例外は握って処理続行

### Build
- **EXE 版 ZIP に加え、Inno Setup インストーラー版を追加配布**。
  - `installer/LegalOS_Law_Watch.iss` を新規作成
  - インストール先: `{localappdata}\LegalOS_Law_Watch`（管理者権限不要）
  - PrivilegesRequired=lowest
  - スタートメニューショートカット作成、デスクトップショートカットはオプション
  - 出力先: `dist/releases/installer/LegalOS_Law_Watch_Setup_v0.5.7_Free.exe`
- 配布形式が「ZIP版」「インストーラー版」の2系統に拡大。
  - ZIP版: `LegalOS_Law_Watch_v0.5.7_Free_EXE.zip` … 展開してEXEを直接起動
  - Setup版: `LegalOS_Law_Watch_Setup_v0.5.7_Free.exe` … 通常のWindowsアプリ
    のように導入・アンインストール可能

---

## v0.5.6 - Phase 5D / 5E（配布前UX改善・再ビルド）— 2026-05-23

### Changed
- **キーワード編集画面をチェック式UIに変更**。
  - 一覧の左列「確認対象」にチェック状態（☑ 対象 / ☐ 対象外）を表示。
  - チェック列クリックで対象/対象外を切替（従来のダブルクリック方式は廃止）。
  - 表示文言を「有効」→「確認対象」に統一。
  - ダイアログサイズを 1100×720 に拡大、行高 30px、列幅を調整。
- **初期確認対象を「主要法令35件」に変更**。
  - `app/db/database.py` に `PRIMARY_KEYWORDS`（企業法務17・再エネ電力9・環境不動産4・省庁機関5）を定義。
  - 新規DB初期化時のみ PRIMARY のみ enabled=True、他は enabled=False で投入。
  - 既存ユーザーDBの設定は保護される。
- **初期キーワードを 112 件 → 114 件 に更新**。
  - 「外為法」「電気事業法施行規則」を追加。
- **概要生成を改善**。
  - `services/summary_builder.py` 新規。RSS/HTML の description を優先（160字に整形）、無い場合はタイトル補足型を生成。
  - 「○○の公表情報です。確認してください。」の単調な固定文を廃止。
  - 各ソース（rss_source / egov_pubcomment / ppc / jftc / caa / enecho）が共通化。
- **メイン画面の詳細ペイン比率を調整**。
  - 左:右 = 60:40 → **68:32**（一覧を広く、詳細を読みやすく）。
  - 最小幅 760:460、`pack_propagate(False)` で最小幅維持、`after(80)` でサッシ初期位置を明示設定。

### Added
- **ヘルプダイアログを追加**（`app/ui/help_dialog.py`）。
  - 5タブ式（使い方／バージョン情報／免責事項／著作権・ライセンス／プライバシー）。
  - DISCLAIMER.txt / NOTICE.txt / PRIVACY.txt をアプリ内から読める。
  - frozen時は EXE 同階層 → _MEIPASS の順で文書を探索、UTF-8→cp932 にフォールバック。
- ツールバー右端に **「ヘルプ」ボタン**。
- ツールバー中央に **使い方ヒント** 「①更新確認 → ②気になる項目を選択 → ③根拠URLで公式情報を確認」を常時表示。
- **キーワード編集画面に3プリセットボタン**。
  - 「主要法令のみ対象に戻す」「すべて対象にする」「すべて対象外にする」。
  - 適用時は確認ダイアログを表示。
- **「LegalOSシリーズ一覧を見る」リンク** を詳細ペイン下部のシリーズ枠に追加（`https://legal-gpt.com/legalos/`）。
- **Windows DPI awareness 設定**（`main.py`）。`SetProcessDpiAwareness(2)` 失敗時は `SetProcessDPIAware()` にフォールバック。

### Build
- `build_exe.spec` の `hiddenimports` に `services.summary_builder` / `app.ui.help_dialog` を追加。
- 配布物 `dist/releases/LegalOS_Law_Watch_v0.5.6_Free.zip` を新規作成（v0.5.5 配布物は保持）。

---

## v0.5.5 - Phase 5A（配布前基本整理）— 2026-05-23

### Changed
- **ダミーデータの自動投入を廃止**。
  `initialize_db(insert_dummy_for_dev=False)` に変更し、配布版では
  記事テーブルが空のままで起動するようになった。
- 開発者向けに `insert_dummy_articles_for_dev()` を残置。

### Added
- 記事 0 件時の空状態案内行（「上部の『更新確認』を押してください」）。
- 同梱文書を追加。
  - `README_はじめに.txt`
  - `DISCLAIMER.txt`
  - `PRIVACY.txt`
  - `NOTICE.txt`
  - `CHANGELOG.md`

### Removed
- `requirements.txt` から未使用の `lxml` を除去（実装は html.parser を使用）。

### Build
- `build_exe.spec` を更新し、同梱文書 5 種を `datas` に追加。
- 新規サブモジュール（`html_source` / `meti_source` / `ppc_source` /
  `jftc_source` / `enecho_source` / `caa_source` / `fetcher` /
  `matcher` / `importance`）を `hiddenimports` に明示。

---

## v0.5.0 - Phase 4C — 2026-05-23

### Added
- **資源エネルギー庁** HTML 取得（第一候補 `/news/` + 第二候補
  `/notice/news_release/` fallback）。
- **消費者庁** HTML 取得（`/notice/archive/` 新着一覧）。
- 重要度キーワード追加: 再エネ特措法 / 電気事業法 / FIT / FIP /
  出力制御 / 容量市場 / 非化石証書 / 認定失効 / 景品表示法 /
  特定商取引法 / 消費者契約法 / 措置命令 / 課徴金納付命令 ほか。

### Stats
- 1 回の `fetch_all_sources` で 177 件取得・156 件 新規追加実績
  （9 ソース、クリーン状態）。

---

## v0.4.5 - Phase 4B — 2026-05-23

### Added
- **HTML 取得汎用ヘルパー** `services/sources/html_source.py`
  - `fetch_html` / `normalize_date` / `make_absolute_url` /
    `extract_candidates`
  - 日付正規化: 令和 / 平成 / 西暦 → `YYYY-MM-DD`
- **個人情報保護委員会** HTML 取得（トップページ新着）。
- **公正取引委員会** HTML 取得（トップページ新着）。

---

## v0.4.0 - Phase 4A — 2026-05-23

### Added
- **経済産業省** ハイブリッド取得 `services/sources/meti_source.py`
  - 優先: Atom フィード
    `https://www.meti.go.jp/ml_index_release_atom.xml`
  - 代替: HTML `https://www.meti.go.jp/press/`
  - 取得方式に応じて `source_type` を「省庁RSS」または「省庁HTML」で
    保存。
- 重要度キーワード追加: 閣議決定 / 勧告 / 業務改善 / 電力需給 /
  ガイダンス / とりまとめ / ロードマップ ほか。
- 種別フィルターに `省庁HTML` を追加。

---

## v0.3.6 - Phase 3.6 — 2026-05-23

### Changed
- 経済産業省 RSS 接続の試行と表現修正（試行環境からは接続不能のため
  `disabled` 維持）。

---

## v0.3.5 - Phase 3.5 — 2026-05-23

### Changed
- **照合ロジックから `source` を除外**（省庁 RSS の全件ヒット抑制）。
  - 結果: 同じキーワードで金融庁 RSS のヒット数 15 → 3（80% 減）。
  - 互換のため `match_keywords(source=...)` の引数自体は残置。

### Added
- フィルター 3 種追加（重要度 / 種別 / 発信元）。
- 「低重要度を隠す」チェックボックス。
- 件数表示を `表示 N件 / 全N件（未読 N件 / 全未読 N件）` に拡張。

---

## v0.3.0 - Phase 3 — 2026-05-22

### Added
- **複数ソース取得オーケストレーター** `services/fetcher.py`
  - `fetch_all_sources()` で全有効ソースを順次取得し、ソース別の
    集計結果リストを返す。
- **汎用 RSS 取得** `services/sources/rss_source.py`
  - RSS 2.0 / RDF/RSS 1.0 / Atom 1.0 の 3 形式対応。
- **金融庁** RSS (`fsaNewsListAll_rss2.xml`)。
- **デジタル庁** RSS (`rss/news.xml`)。
- **厚生労働省** RDF (`stf/news.rdf`)。
- 更新確認ダイアログをソース別集計表示に変更（一部失敗 / 全失敗 /
  完了 を区別）。

---

## v0.2.5 - Phase 2.5 — 2026-05-22

### Added
- 初期キーワードを 25 件 → **112 件**（9 カテゴリ）に拡充。
- ログを `RotatingFileHandler`（1 MB × 3 バックアップ）に変更。
- 取得範囲注意書きをフッターに追加。
- 更新確認結果ダイアログを 5 分岐（取得失敗 / 取得 0 件 / 一致なし
  / 新着なし / 完了）に。
- バージョン表記に `Free Edition（無料版）` を追加。

### Changed
- 照合ロジックを NFKC 正規化対応（`ＮＤＡ`↔`NDA`、半角・全角
  カタカナ等の表記揺れ吸収）。

### Fixed
- Phase 1 から残っていた `detail_pane.py` の `val_label` 重複呼出
  バグ（UI 起動不可だった）を修正。

---

## v0.2.0 - Phase 2 — 2026-05-22

### Added
- **e-Gov パブリックコメント** RSS 取得
  `services/sources/egov_pubcomment.py`
  - 取得元: `https://public-comment.e-gov.go.jp/rss/pcm_list.xml`
- `SourceItem` 共通データモデル `services/sources/base.py`。
- **キーワード照合** `services/matcher.py`。
- **重要度判定**（ルールベース）`services/importance.py`。
- DB マイグレーション機構（既存 DB に `source_type` /
  `external_id` / `fetched_at` カラム追加）。
- URL 重複排除付きの `db.upsert_articles()`。
- 更新確認ボタンを実動化（バックグラウンドスレッド + 結果ダイアログ）。
- ログ出力 `app/utils/logger.py`（`logs/app.log`）。

---

## v0.1.0 - Phase 1 — 2026-05-22

### Added
- 初版実装（外部通信なし）。
- Tkinter UI、SQLite、ダミーデータ 5 件、CSV 出力。
- 詳細ペイン、ステータス管理、ユーザーメモ保存。
- 既定ブラウザ起動による URL 確認。
- キーワード編集ダイアログ。
- 免責表示、LegalOS シリーズ紹介枠。

---

## License / Edition

- 本ソフトは無料配布版（**Free Edition**）です。
- 詳細は `DISCLAIMER.txt` / `PRIVACY.txt` / `NOTICE.txt` を参照。
