Header Relay
기능 추가 및 변경
- Profile に固定 Cookie と追跡 Cookie を追加できるようになりました。対象オリジンのレスポンスに含まれる
Set-Cookieから登録済み Cookie の値を自動取得し、次回以降の対象リクエストでCookieヘッダーを完全に置き換えます。送信候補が 0 件のリクエストでは Chrome が生成したCookieをそのまま通します。 固定/追跡 Cookie 名の登録、Max-AgeとExpiresによる削除判定、複数 Profile の決定的な統合順、同名 Cookie 競合時の DNR Session Ruleset 停止、URL Probe への最終Cookie値表示を含みます。Fixed HeaderCookieは自動的に専用の固定 Cookie へ変換され、変換できない設定は移行時の問題として保持されます。監査ログには Cookie 名と処理結果のみを記録し、値と元のSet-Cookieは記録しません。cookies権限は追加していません。 - 管理画面のプロファイル切替・新規作成とナビゲーションを整理し、ヘッダー設定の統合画面と URL プローブ・監査ログ・JSON 編集の高度な設定タブを追加しました。移行時の問題は必要な場合だけ Cookie 画面に表示します。
수정
- Cookie 機能: Excluded Path を持つ origin で、除外パスの Chrome 既存 Cookie が意図せず上書きされる問題を修正。この場合はその origin の Cookie 送信を行わず、Runtime Status と URL Probe に警告を表示します。あわせて Popup の選択肢が
name=value形式のまま表示されることがある移行時の問題を修正。 - ルール適用に失敗したときの挙動を改善。不要になったルールが残る場合は自動で削除を再試行し、それでも失敗した場合は「古いルールが送信され続けている可能性」を Runtime Status に表示します。Popup にも同じ警告をインライン表示します(全 8 ロケール対応)。
기능 추가 및 변경
- UI の対応言語にスペイン語・フランス語・ドイツ語・簡体字中国語・繁体字中国語を追加
수정
- Popup の設定ボタンの遷移先を
manage.html#/settingsからmanage.html#/(Profile 概要)に変更。ユーザが Popup から manage を開く目的は主に Profile 操作であり、UI 設定ではないため。
기능 추가 및 변경
- 監査ログにリクエスト URL を永続化しないように変更。URL はオリジン一致判定のためメモリ上でのみ処理し、直近ログへの表示用に現在のブラウザセッション中だけ session storage(メモリのみ)へ保持、ブラウザ終了時に破棄する。アップグレード時には IndexedDB の監査ログストアを再作成し、旧バージョンが保存した URL 入りログを完全に削除する。
- Profile を削除できるようにし、UI にコンパクト表示モードを追加した。
- 管理画面のプロファイル一覧から各プロファイルを削除できるようにした(プロファイルが 1 つだけのときは削除ボタンを表示しない)。削除すると取得済みの値も破棄し、選択中プロファイルを削除した場合は先頭のプロファイルへ切り替える。
- 管理画面の Settings セクションに「コンパクト表示」トグルを追加した。設定は
uiDensityとして保存され、Popup・管理画面の行やコントロールの余白を詰めて表示する。表示のみの設定で、適用されるヘッダーには影響しない。
- manage.html をブラウザの拡張機能オプションページ (options_ui) として開けるようにした。Profile 管理を既定表示とし、拡張機能全体の設定は同じ画面のサイドバーから開ける。
- キャプチャしたヘッダー値を管理画面でデフォルトマスク表示に変更し、「表示」「コピー」の明示的な操作を追加。あわせて、Popup からの固定ヘッダー値更新時に監査ログへ新旧の値が記録されていた問題を修正し、ヘッダー値が監査ログへ混入しないことをテストで保証するようにした。
- 監査ログを障害解析に必要な診断イベントのみに最小化。ユーザー操作履歴にあたる
profile_enabled/profile_disabled/fixed_header_value_updatedと成功時のsession_clearedを記録しないように変更(session_clearedは DNR 同期失敗時のみ warn として記録)。 - ホスト権限を
optional_host_permissionsへ移行。インストール時に全サイトへのアクセス権限(<all_urls>)を要求せず、Target Origin の保存・Profile の有効化・「アクセスを許可」ボタンの操作時に、対象ホストへの権限だけを要求するように変更。未許可のオリジンには DNR ルールを生成せず(fail-closed)、権限の付与・取消を検知してルールを自動再同期する。管理画面にはオリジンごとの権限状態(許可済み / 要許可 / 非対応)と許可ボタンを表示し、Popup には要許可オリジンの警告を表示する。どのプロファイルからも使われなくなったホスト権限は確認付きで解除を提案する。 - 機密ヘッダーに警告と安全な禁止ルールを追加し、取得値のセッション限定保持・削除タイミングを明確化しました。ホスト権限取消時は影響するプロファイルの取得値を自動消去します。
수정
- localhost の HTTP 通信を追加の権限許可なしで扱えるようにする
- Compact 表示を管理画面サイドバーの Settings セクションに集約し、Popup と管理画面ヘッダーを簡潔にするとともにトグルを小型化しました。サイドバー下部から Homepage と Buy Me a Coffee も開けます。
기능 추가 및 변경
- 複数の Profile を同時に有効化できるようにしました。
- Profile の「選択(管理画面で編集中)」と「有効化(ブラウザへ適用)」を分離しました。管理画面の Profile 一覧では、行の選択と有効化トグルが別の操作になります。トグルは即時反映されます。
- 有効な Profile 群をコンパイルし、単一の DNR Session Ruleset として適用します。DNR 生成・URL Probe・Runtime Status は同じコンパイル結果を参照するため、Probe の表示と実際の挙動が一致します。
- Captured Header と Session を Profile 単位で保持するようになりました。ある Profile を無効化・保存しても、他の Profile の取得済みヘッダーは保持されます。
- 同一 Origin・同一 Header Name を複数の有効 Profile が付与する場合は競合として検出し、DNR ルールを適用せずにエラーを表示します(fixed/captured の組み合わせを問いません)。
- URL Probe は一致した全ての有効 Profile と、最終的に付与されるヘッダーを表示します。Overview に有効 Profile 数・DNR ルール総数・コンパイルエラー/警告の Runtime Status を追加しました。
- popup は全 Profile の一覧とトグル、有効 Profile 全体の固定ヘッダー・取得値を表示します。
- 既存設定は自動で移行されます(
activeProfileId→selectedProfileId)。各 Profile の enabled 値はそのまま維持されます。
- Popup から、現在のタブに適用される固定ヘッダーの値を変更できるようにしました。管理画面の固定ヘッダー設定に「ポップアップに表示」を追加し、入力形式(テキスト / 選択肢)と選択肢の Label・Value・並び順を設定できます。公開したヘッダーだけが Popup に表示され、既存の固定ヘッダーは初期状態で非表示のままです。値の変更は対象ヘッダーのみを部分更新し、Compiler と DNR 同期を経て即時反映されます。
기능 추가 및 변경
- 除外パスのマッチングを前方一致から glob(全体一致)に変更。
*は同一パスセグメント内、**はセグメントを跨ぐ任意、?は 1 文字に一致し、パターンは pathname 全体に一致する(配下すべてを対象にするには/assets/**のように指定)。DNR ルールの regexFilter も同じ glob セマンティクスで生成する。あわせて除外パステスターが無効化中のプロファイルでも対象オリジン・除外判定を評価できるよう修正。 また、プロファイル名の編集中にサイドバーの表示名が即時変更されていた挙動を修正し、保存後に反映されるようにした。 - manage 画面ヘッダーを簡素化: プロファイル名・有効/無効バッジ・未保存バッジを削除し、保存ボタンを未保存時に強調表示へ変更。プライバシーリンクをサイドバー最下部へ移動。
- 管理画面の保存状態をセクション単位に分離。対象オリジン・固定ヘッダー・取得ヘッダー・除外パス・プロファイル基本情報の各セクションが独立した未保存状態と保存ボタンを持つようになり、変更したセクションだけを個別に保存できる。保存時は該当セクションのみをストレージへ書き込み、DNR ルールを再構築する。ヘッダーのグローバル保存ボタンと「未保存の変更」表示は廃止した。
기능 추가 및 변경
- 管理画面の情報設計と Application Shell を再構成し、未保存 Draft の URL プローブ、除外パスの共有検証と判定テスター、監査ログ展開状態の保持、空の初期設定、未保存変更の保護を追加しました。
- 管理画面を Popup と共通の iOS 風デザインに統一し、ダークモードとアクセシビリティに対応しました。
- 管理画面にセクション単位の URL ルーティングを導入し、直接表示やブラウザの戻る・進む操作に対応しました。
- i18n 対応を追加(デフォルト: 英語、日本語・韓国語をサポート)。UI 文字列と manifest を browser.i18n(
_locales)で多言語化
수정
- Popup UI をコンパクト化(幅 480px、行高さ 36px、セクション間余白縮小)し、セクション構成を Fixed Headers / Captured Headers に再編
- プライバシーポリシーページを拡張機能内から外部サイト(hsblabs.github.io)へのリンクに変更。UI の言語設定(ja/ko/その他)に応じて対応する言語ページへ遷移する。