Skip to content

viewer summary does not surface crawl exclude settings (excludes/excludeKeywords/excludeUrls/maxExcludedDepth) #261

Description

@YusukeHirao

現象

viewer のサマリ画面(トップページ、summary-view.tsx)には
クロール起点(roots)は表示されるが、--exclude /
--exclude-keyword / --exclude-url / --max-excluded-depth
で設定した除外条件(excludes / excludeKeywords / excludeUrls /
maxExcludedDepth)が一切表示されない。他の画面(設定画面等)にも
表示箇所はなく、そもそも設定を確認できる画面が存在しない。

クロール除外の有無・内容はレポートの解釈(「なぜこのページが
0件なのか」等)に直結する情報であり、アーカイブを開いた人間が
UIから確認できないのは調査効率上の問題。

根本原因

表示層(summary-view.tsx)以前、データ取得層の時点で欠落している。

  • getSummary() (packages/@nitpicker/query/src/get-summary.ts:69-71)
    info テーブルの config から baseUrl/roots のみ取り出しており、
    excludes系は一切読んでいない
  • SummaryResult 型 (packages/@nitpicker/query/src/types.ts:551-)
    に excludes系のフィールドが存在しない
  • read model の viewer_summary テーブル
    (packages/@nitpicker/query/src/viewer-read-model/create-viewer-read-model-tables.ts:36-59)
    にも該当カラムがない(baseUrl/rootsと同様、意図的に持たせていない)

期待する挙動

サマリ画面(または新設の設定表示エリア)で除外設定を確認できる。

対応に必要な変更(3層)

  1. getSummary() / getViewerSummary() / SummaryResult 型に
    excludes系フィールドを追加
  2. viewer_summary read model テーブルにJSON列を追加
    (build-viewer-read-model.ts の該当箇所への追加が必要)
  3. summary-view.tsx に表示ブロックを追加

関連コード

  • packages/@nitpicker/viewer/web/routes/summary-view.tsx
    (現状の表示項目、roots は line 116-120 で表示済み)
  • packages/@nitpicker/query/src/get-summary.ts:69-71
  • packages/@nitpicker/query/src/types.ts:551-
  • packages/@nitpicker/query/src/viewer-read-model/create-viewer-read-model-tables.ts:36-59

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions