amenbo 0.1.4 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/README.en.md +188 -0
  2. package/README.md +13 -1
  3. package/dist/cache.d.ts +31 -1
  4. package/dist/cache.js +67 -7
  5. package/dist/cache.js.map +1 -1
  6. package/dist/cli.d.ts +3 -1
  7. package/dist/cli.js +59 -4
  8. package/dist/cli.js.map +1 -1
  9. package/dist/core.d.ts +6 -0
  10. package/dist/core.js +125 -38
  11. package/dist/core.js.map +1 -1
  12. package/dist/diff.d.ts +1 -1
  13. package/dist/diff.js +29 -9
  14. package/dist/diff.js.map +1 -1
  15. package/dist/errors.d.ts +11 -0
  16. package/dist/errors.js +13 -0
  17. package/dist/errors.js.map +1 -1
  18. package/dist/extract/dataSources.js +17 -4
  19. package/dist/extract/dataSources.js.map +1 -1
  20. package/dist/extract/outline.js +15 -1
  21. package/dist/extract/outline.js.map +1 -1
  22. package/dist/extract/pdf.js +2 -2
  23. package/dist/extract/pruning.d.ts +4 -2
  24. package/dist/extract/pruning.js +36 -7
  25. package/dist/extract/pruning.js.map +1 -1
  26. package/dist/extract/qualityScore.d.ts +3 -2
  27. package/dist/extract/qualityScore.js +8 -3
  28. package/dist/extract/qualityScore.js.map +1 -1
  29. package/dist/fetcher/browser.js +15 -1
  30. package/dist/fetcher/browser.js.map +1 -1
  31. package/dist/fetcher/http.d.ts +12 -1
  32. package/dist/fetcher/http.js +15 -4
  33. package/dist/fetcher/http.js.map +1 -1
  34. package/dist/fetcher/index.d.ts +6 -0
  35. package/dist/fetcher/index.js +18 -13
  36. package/dist/fetcher/index.js.map +1 -1
  37. package/dist/installBrowser.d.ts +11 -0
  38. package/dist/installBrowser.js +30 -0
  39. package/dist/installBrowser.js.map +1 -0
  40. package/dist/links.d.ts +12 -0
  41. package/dist/links.js +32 -17
  42. package/dist/links.js.map +1 -1
  43. package/dist/politeness.d.ts +23 -3
  44. package/dist/politeness.js +27 -6
  45. package/dist/politeness.js.map +1 -1
  46. package/dist/screenshot.d.ts +2 -0
  47. package/dist/screenshot.js +14 -4
  48. package/dist/screenshot.js.map +1 -1
  49. package/dist/server.d.ts +2 -0
  50. package/dist/server.js +67 -26
  51. package/dist/server.js.map +1 -1
  52. package/package.json +3 -6
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/core.d.ts CHANGED
@@ -8,6 +8,8 @@ export declare function resolvePackageVersion(): string;
8
8
  export declare function resolveCacheTtlMs(): number | undefined;
9
9
  export declare const cache: PageCache;
10
10
  export declare const politeness: PolitenessManager;
11
+ /** サーバー常駐プロセス向けの終了処理(exit/SIGINT/SIGTERM)を登録する。多重登録は行わない(冪等)。 */
12
+ export declare function registerCoreShutdownHandlers(): void;
11
13
  interface ScreenshotTileData {
12
14
  data: Buffer;
13
15
  }
@@ -66,6 +68,8 @@ export interface FetchToolInput {
66
68
  page?: number | undefined;
67
69
  max_tokens?: number | undefined;
68
70
  force_full?: boolean | undefined;
71
+ /** MCP progress notifications用(server.tsがprogressToken有無に応じて組み立てて渡す。CLIは渡さない)。 */
72
+ onProgress?: ((message: string) => void) | undefined;
69
73
  }
70
74
  export declare function handleFetchTool(input: FetchToolInput): Promise<Array<TextBlock | ImageBlock>>;
71
75
  export interface ScreenshotToolInput {
@@ -73,6 +77,8 @@ export interface ScreenshotToolInput {
73
77
  fullPage?: boolean | undefined;
74
78
  width?: number | undefined;
75
79
  scale?: number | undefined;
80
+ /** MCP progress notifications用(server.tsがprogressToken有無に応じて組み立てて渡す)。 */
81
+ onProgress?: ((message: string) => void) | undefined;
76
82
  }
77
83
  export declare function handleScreenshotTool(input: ScreenshotToolInput): Promise<Array<TextBlock | ImageBlock>>;
78
84
  export {};
package/dist/core.js CHANGED
@@ -57,29 +57,50 @@ export const cache = new PageCache(cacheTtlMs !== undefined ? { ttlMs: cacheTtlM
57
57
  // code-reviewer指摘: MCPサーバー単体運用時(CLIを使わない場合)でも、このstore注入により
58
58
  // waitTurn毎にSQLite I/O(host_requestsの読み取り+書き込み)が発生する。CLIとの
59
59
  // プロセス間共有が不要な単一プロセス運用ではインメモリのlastRequestAtだけで十分だったところに、
60
- // 常時わずかなディスクI/Oコストを払うトレードオフになる(better-sqlite3は同期I/Oで
60
+ // 常時わずかなディスクI/Oコストを払うトレードオフになる(node:sqliteも同期I/Oで
61
61
  // 小さな1行read/writeのため実測上は無視できるレベルだが、"低負荷優先"の設計原則上は
62
62
  // 意図的なトレードオフとして明記しておく)。
63
+ // レビュー指摘対応: robots.txtの取得結果もcache.ts(robots_cacheテーブル)へ永続化し、
64
+ // プロセス間で共有する(CLIバルク収集時にコマンド毎にrobots.txtを再取得する低負荷原則違反への対応)。
63
65
  export const politeness = new PolitenessManager({
64
66
  store: {
65
67
  getLastRequestAt: (host) => cache.getHostLastRequestAt(host),
66
68
  setLastRequestAt: (host, at) => cache.setHostLastRequestAt(host, at),
67
69
  },
70
+ robotsStore: {
71
+ get: (origin) => cache.getRobotsCache(origin),
72
+ set: (origin, body, fetchedAt) => cache.setRobotsCache(origin, body, fetchedAt),
73
+ },
68
74
  });
69
75
  // M2: cache.close()は同期処理なので'exit'イベント(非同期処理を待てない)内でも安全に呼べる。
70
76
  // 一方でSIGINT/SIGTERMはブラウザのクリーンアップ(非同期)を待ってから明示的にprocess.exit()する
71
77
  // 必要がある(fetcher/browser.tsのregisterCleanupHandlersと同様の理由。あちらは
72
78
  // getBrowser()が一度も呼ばれない=chromium未起動のセッションではリスナー登録自体が行われない
73
79
  // ため、ここでサーバー起点の終了処理として独立して登録しておく)。
74
- process.once("exit", () => {
75
- cache.close();
76
- });
77
- process.once("SIGINT", () => {
78
- void closeBrowser().finally(() => process.exit(0));
79
- });
80
- process.once("SIGTERM", () => {
81
- void closeBrowser().finally(() => process.exit(0));
82
- });
80
+ //
81
+ // レビュー指摘対応(Medium): 以前はこの登録をモジュールトップレベルで即時実行していたため、
82
+ // core.tsをimportするだけの全テスト(vitestワーカープロセス)にもSIGINT/SIGTERMハンドラ
83
+ // (closeBrowser().finally(() => process.exit(0)))が仕込まれてしまい、テスト中断時にvitestの
84
+ // クリーンアップより先にprocess.exit(0)を呼びうる副作用があった。登録処理を関数へ切り出し、
85
+ // MCPサーバー起動経路(server.ts runServer())からのみ呼ぶことで、importするだけでは
86
+ // ホストプロセスに影響しないようにする。CLI(cli.ts)はrun()のfinallyでclosBrowser/cache.close済み
87
+ // のため、この登録は不要(サーバー常駐プロセスのみが対象)。
88
+ let coreShutdownHandlersRegistered = false;
89
+ /** サーバー常駐プロセス向けの終了処理(exit/SIGINT/SIGTERM)を登録する。多重登録は行わない(冪等)。 */
90
+ export function registerCoreShutdownHandlers() {
91
+ if (coreShutdownHandlersRegistered)
92
+ return;
93
+ coreShutdownHandlersRegistered = true;
94
+ process.once("exit", () => {
95
+ cache.close();
96
+ });
97
+ process.once("SIGINT", () => {
98
+ void closeBrowser().finally(() => process.exit(0));
99
+ });
100
+ process.once("SIGTERM", () => {
101
+ void closeBrowser().finally(() => process.exit(0));
102
+ });
103
+ }
83
104
  const DEFAULT_MAX_TOKENS = 8000;
84
105
  const DEFAULT_PAGE = 1;
85
106
  const DEFAULT_SCREENSHOT_SCALE = 1.0;
@@ -100,8 +121,12 @@ class UnexpectedNotModifiedError extends AmenboError {
100
121
  }
101
122
  }
102
123
  /** URLとselectorの組から、新規取得・変換したMarkdownと品質スコア/pruning/アダプタ/ジオメトリ結果を作る。 */
103
- async function fetchAndExtract(url, selector, conditionalHeaders) {
104
- const fetchResult = await fetchPage(url, conditionalHeaders ? { headers: conditionalHeaders } : {});
124
+ async function fetchAndExtract(url, selector, conditionalHeaders, onProgress) {
125
+ // レビュー指摘対応: リダイレクトで別オリジンへ着地した場合、その着地先のrobots.txtも
126
+ // 確認する(guardedFetch内で着地先オリジンが変わった場合のみ呼ばれる。同一オリジン内
127
+ // リダイレクトや初回URLは呼び出し元のpoliteness.guardで確認済みのため二重チェックしない)。
128
+ const checkRobots = (targetUrl) => politeness.checkRobotsAllowed(targetUrl);
129
+ const fetchResult = await fetchPage(url, conditionalHeaders ? { headers: conditionalHeaders, onProgress, checkRobots } : { onProgress, checkRobots });
105
130
  if ("notModified" in fetchResult) {
106
131
  return { status: "not_modified" };
107
132
  }
@@ -123,8 +148,8 @@ async function fetchAndExtract(url, selector, conditionalHeaders) {
123
148
  // ジオメトリでも改善しなかった場合はHTTP tierの結果(body-fallback)をそのまま使う。
124
149
  if (!selector && fetchResult.tier === "http" && extracted.extractionMethod === "body-fallback") {
125
150
  try {
126
- await politeness.waitTurn(url); // 追加のブラウザ遷移が発生するため、律速のため再度順番を待つ
127
- const browserFetchResult = await fetchPage(url, { forceBrowser: true });
151
+ await politeness.waitTurn(url, onProgress); // 追加のブラウザ遷移が発生するため、律速のため再度順番を待つ
152
+ const browserFetchResult = await fetchPage(url, { forceBrowser: true, onProgress, checkRobots });
128
153
  if (!("notModified" in browserFetchResult) && !("handoff" in browserFetchResult)) {
129
154
  const browserExtracted = extractMarkdown(browserFetchResult.html, { url: browserFetchResult.finalUrl, geometry: browserFetchResult.geometry });
130
155
  if (browserExtracted.extractionMethod === "geometry") {
@@ -182,10 +207,16 @@ function pageFromCacheEntry(url, cached, cacheStatus) {
182
207
  * (同一URLでも抽出結果がselector毎に変わるため)。品質スコア/アダプタ判定結果もキャッシュ
183
208
  * メタデータへ保存し、'fresh'なキャッシュ応答時にも再フェッチ無しでmode:autoの判定を再現する。
184
209
  * 機能B: 非HTMLコンテンツ(ハンドオフ対象)を取得した場合は { kind: "handoff" } を返す。
210
+ *
211
+ * レビュー指摘対応: politeness.guard(robots.txt確認+レート制御待機)は「実際にサイトへ
212
+ * 取得しに行く」直前でのみ呼ぶ。キャッシュfresh応答時は実ネットワークアクセスが発生しない
213
+ * ため、outline→sectionの推奨フロー等でキャッシュヒットするたびに待機・robots再判定という
214
+ * 自己ペナルティが発生していた不具合の修正。selector指定時は必ずfetchするため常にguardする。
185
215
  */
186
- async function resolvePage(url, selector) {
216
+ async function resolvePage(url, selector, onProgress) {
187
217
  if (selector) {
188
- const result = await fetchAndExtract(url, selector, undefined);
218
+ await politeness.guard(url, onProgress);
219
+ const result = await fetchAndExtract(url, selector, undefined, onProgress);
189
220
  if (result.status === "not_modified") {
190
221
  throw new UnexpectedNotModifiedError(url);
191
222
  }
@@ -211,12 +242,15 @@ async function resolvePage(url, selector) {
211
242
  if (cached && cache.isFresh(cached)) {
212
243
  return pageFromCacheEntry(url, cached, "fresh");
213
244
  }
245
+ // 条件付きGET(304)も含め実際にサーバーへ通信するため、ここでguardする
246
+ // (キャッシュfresh応答で早期returnした場合はguardしない=上のコメント参照)。
247
+ await politeness.guard(url, onProgress);
214
248
  const conditionalHeaders = {};
215
249
  if (cached?.etag)
216
250
  conditionalHeaders["If-None-Match"] = cached.etag;
217
251
  if (cached?.lastModified)
218
252
  conditionalHeaders["If-Modified-Since"] = cached.lastModified;
219
- const result = await fetchAndExtract(url, undefined, Object.keys(conditionalHeaders).length > 0 ? conditionalHeaders : undefined);
253
+ const result = await fetchAndExtract(url, undefined, Object.keys(conditionalHeaders).length > 0 ? conditionalHeaders : undefined, onProgress);
220
254
  if (result.status === "not_modified") {
221
255
  if (!cached)
222
256
  throw new UnexpectedNotModifiedError(url);
@@ -287,16 +321,13 @@ async function resolveScreenshot(url, options) {
287
321
  // このあとcaptureTiledScreenshot内のnavigateSafelyでも検証するが、それより前段で
288
322
  // クリーンな型付きエラーとして早期に弾く)。
289
323
  assertHttpScheme(url);
290
- // 実URLへの独立したブラウザ遷移が発生するため、markdown抽出時とは別にpolitenessの順番待ちを行う。
291
- // ただし呼び出し元(handleFetchTool)で既にguard済みの場合はskipGuardで二重待機を避ける。
292
- if (!options.skipGuard) {
293
- await politeness.guard(url);
294
- }
295
324
  const cacheKey = computeScreenshotCacheKey(url, options.width, options.scale, options.fullPage);
296
325
  const cached = cache.getScreenshot(cacheKey);
297
326
  if (cached && cache.isFresh(cached)) {
298
327
  const tiles = readCachedTiles(cached.tilePaths);
299
328
  if (tiles) {
329
+ // レビュー指摘対応(#4と同型): キャッシュ済みタイルを返すだけならサイトへ取得しに行かない
330
+ // ため、guard(robots確認+レート制御待機)を行わない。実撮影に進む場合のみ下でguardする。
300
331
  return {
301
332
  finalUrl: cached.url,
302
333
  tiles,
@@ -308,6 +339,10 @@ async function resolveScreenshot(url, options) {
308
339
  }
309
340
  // PNGファイル欠損: キャッシュmiss扱いで下の再撮影へフォールスルーする
310
341
  }
342
+ // レビュー指摘対応: 実URLへの独立したブラウザ遷移が発生する直前でguardする(markdown取得時の
343
+ // guardとは別枠。handleFetchTool冒頭の共通guardは撤去済み)。キャッシュfresh返却時は通らない。
344
+ await politeness.guard(url, options.onProgress);
345
+ options.onProgress?.("スクリーンショットを撮影しています…");
311
346
  const captured = await captureTiledScreenshot(url, options);
312
347
  cache.setScreenshot({
313
348
  cacheKey,
@@ -437,7 +472,13 @@ export function buildScreenshotContent(page, screenshot, reason) {
437
472
  export function formatLinksResponse(url, result) {
438
473
  const header = [`url: ${url}`, `source: ${result.source}`, `count: ${result.links.length}${result.truncated ? " (truncated)" : ""}`].join("\n");
439
474
  const body = result.links.map((link) => (link.title ? `- ${link.title} — ${link.url}` : `- ${link.url}`)).join("\n");
440
- return `${header}\n\n${body || "(リンクが見つかりませんでした)"}`;
475
+ // レビュー指摘対応: 0件のとき、フィルタで全部落ちたのか(preFilterCount>0)、
476
+ // sitemap/RSS/ページ自体が空だったのか(preFilterCount===0)をエージェントが判別できるようにする。
477
+ // filter未指定時はpreFilterCount===links.lengthのためこの分岐には入らない。
478
+ const empty = result.preFilterCount > 0
479
+ ? `(リンクが見つかりませんでした。フィルタ前 ${result.preFilterCount} 件。filterに一致しませんでした)`
480
+ : "(リンクが見つかりませんでした)";
481
+ return `${header}\n\n${body || empty}`;
441
482
  }
442
483
  // ---- 機能B: 非HTMLコンテンツのハンドオフ応答 ----
443
484
  /**
@@ -507,17 +548,46 @@ function formatPdfTextResponse(title, finalUrl, cacheStatus, pdfPageCount, pagin
507
548
  ].join("\n");
508
549
  return `${header}\n\n${paginated.content}`;
509
550
  }
551
+ /** キャッシュ済みPDFエントリからテキスト応答を組み立てる(fresh応答/304再検証後の応答で共用)。 */
552
+ function formatPdfResponseFromCache(url, cached, maxTokens, page) {
553
+ const paginated = paginateMarkdown(cached.markdown, maxTokens, page);
554
+ const title = cached.metadata.title ?? null;
555
+ const finalUrl = cached.metadata.finalUrl ?? url;
556
+ const pdfPageCount = Number(cached.metadata.pdfPageCount ?? 0);
557
+ return formatPdfTextResponse(title, finalUrl, "fresh", pdfPageCount, paginated);
558
+ }
510
559
  /** PDFはキャッシュ層(§3-3等)を流用しつつ独立した経路で扱う。テキスト層があればMarkdown、無ければ画像タイル。 */
511
- async function handlePdfFetch(url, page, maxTokens) {
560
+ async function handlePdfFetch(url, page, maxTokens, onProgress) {
512
561
  const cached = cache.get(url);
513
562
  if (cached && cache.isFresh(cached)) {
514
- const paginated = paginateMarkdown(cached.markdown, maxTokens, page);
515
- const title = cached.metadata.title ?? null;
516
- const finalUrl = cached.metadata.finalUrl ?? url;
517
- const pdfPageCount = Number(cached.metadata.pdfPageCount ?? 0);
518
- return [{ type: "text", text: formatPdfTextResponse(title, finalUrl, "fresh", pdfPageCount, paginated) }];
563
+ return [{ type: "text", text: formatPdfResponseFromCache(url, cached, maxTokens, page) }];
564
+ }
565
+ // レビュー指摘対応: キャッシュfresh応答時は実ネットワークアクセスが発生しないため
566
+ // guardしない(resolvePageと同じ方針)。実際にPDFを取得しに行く直前でのみguardする。
567
+ await politeness.guard(url, onProgress);
568
+ // 低負荷原則対応: TTL失効後もキャッシュ(etag/last-modified)があれば条件付きGETで再検証する。
569
+ // HTML経路(resolvePage)は既にこの流儀で304時のフルDL+再パースを回避しているのに対し、
570
+ // PDF経路はTTL失効後は常にフルDL+全ページ再パースを行っており、20MB級の官公庁PDFで
571
+ // 内容不変でも毎回無駄なコストを払っていた不整合の修正。
572
+ const conditionalHeaders = {};
573
+ if (cached?.etag)
574
+ conditionalHeaders["If-None-Match"] = cached.etag;
575
+ if (cached?.lastModified)
576
+ conditionalHeaders["If-Modified-Since"] = cached.lastModified;
577
+ const binary = await httpGetBinary(url, {
578
+ maxBytes: DEFAULT_PDF_MAX_BYTES,
579
+ checkRobots: (targetUrl) => politeness.checkRobotsAllowed(targetUrl),
580
+ ...(Object.keys(conditionalHeaders).length > 0 ? { headers: conditionalHeaders } : {}),
581
+ });
582
+ if (binary.status === 304) {
583
+ if (!cached)
584
+ throw new UnexpectedNotModifiedError(url);
585
+ cache.touch(url);
586
+ // PDF応答フォーマットのcacheStatus型は"fresh"|"miss"のみのため、304再検証も
587
+ // "fresh"として表示する(HTML応答の"revalidated"相当だが、既存フォーマットは変更しない)。
588
+ return [{ type: "text", text: formatPdfResponseFromCache(url, cached, maxTokens, page) }];
519
589
  }
520
- const binary = await httpGetBinary(url, { maxBytes: DEFAULT_PDF_MAX_BYTES });
590
+ onProgress?.("PDFを解析しています…");
521
591
  const textResult = await extractPdfText(binary.bytes);
522
592
  if (textResult.hasTextLayer) {
523
593
  const markdown = markdownFromPdfText(textResult);
@@ -555,10 +625,15 @@ export async function handleFetchTool(input) {
555
625
  // 公開品質バグ修正: robots.txt取得(politeness.guard)より前にスキームを検証する(理由は
556
626
  // resolveScreenshotのコメント参照)。zodの.url()はスキームを制限しないため、ここでの
557
627
  // 検証が実質的な最初の関門になる。
628
+ //
629
+ // レビュー指摘対応: 以前はここで全mode共通の無条件politeness.guardを実行していたが、
630
+ // キャッシュfresh応答(実ネットワークアクセスが発生しない)でも毎回レート制御の待機と
631
+ // robots.txt再判定が走る自己ペナルティになっていた。guardは実際にサイトへ取得しに行く
632
+ // 各経路(resolvePage/handlePdfFetch/resolveScreenshot)の内部で、必要な箇所にのみ
633
+ // 個別に行う設計へ変更した(このファイル内の各所コメント参照)。
558
634
  assertHttpScheme(input.url);
559
- await politeness.guard(input.url);
560
635
  if (looksLikePdf(input.url, null)) {
561
- return handlePdfFetch(input.url, page, maxTokens);
636
+ return handlePdfFetch(input.url, page, maxTokens, input.onProgress);
562
637
  }
563
638
  // 公開品質バグ修正: mode: screenshot(section未指定時)はMarkdown抽出結果を一切使わないため、
564
639
  // resolvePage(素のHTTP GETを含む二段フェッチ)を経由せずブラウザへ直行する。
@@ -571,15 +646,25 @@ export async function handleFetchTool(input) {
571
646
  fullPage: true,
572
647
  width: DEFAULT_TILE_WIDTH,
573
648
  scale: DEFAULT_SCREENSHOT_SCALE,
574
- skipGuard: true, // 直前でこの関数冒頭のpoliteness.guard(input.url)を既に実行済み
649
+ onProgress: input.onProgress,
575
650
  });
576
651
  return buildScreenshotContent({ title: null }, screenshot, null);
577
652
  }
578
- const resolvedOrHandoff = await resolvePage(input.url, input.selector);
653
+ const resolvedOrHandoff = await resolvePage(input.url, input.selector, input.onProgress);
579
654
  // 機能B: 非HTMLコンテンツはMarkdown抽出・キャッシュ・mode/selector/section等を適用せず、
580
655
  // メタデータ+プレビュー+curl誘導のハンドオフ応答を返す(PDFのURL判定と同様の独立経路)。
656
+ //
657
+ // レビュー指摘対応: ただしcontent-typeでPDFと判明した場合(URL拡張子には現れない
658
+ // 官公庁の`/download?id=123`型ダウンロードエンドポイント等)は、行き止まりのハンドオフ
659
+ // 応答にせずhandlePdfFetch(既存のPDF専用経路)へ合流させる。関数冒頭のlooksLikePdf(input.url, null)
660
+ // はURL拡張子で早期判明する場合の経路であり、ここはcontent-type確定後にのみ判明する
661
+ // 場合の救済経路のため、拡張子ありのPDFが二重処理されることはない。
581
662
  if ("kind" in resolvedOrHandoff) {
582
- return [{ type: "text", text: formatHandoffResponse(resolvedOrHandoff.handoff, maxTokens) }];
663
+ const { handoff } = resolvedOrHandoff;
664
+ if (looksLikePdf(handoff.finalUrl, handoff.contentType)) {
665
+ return handlePdfFetch(input.url, page, maxTokens, input.onProgress);
666
+ }
667
+ return [{ type: "text", text: formatHandoffResponse(handoff, maxTokens) }];
583
668
  }
584
669
  const resolved = resolvedOrHandoff;
585
670
  // Phase 4 テンプレート学習: 定型ブロック(ヘッダ/フッタ/定型ナビ等)を表示直前に除去する。
@@ -611,11 +696,13 @@ export async function handleFetchTool(input) {
611
696
  // 二重に撮影・保存されてしまうため、両経路で必ずinput.urlを渡すよう統一する
612
697
  // (resolveScreenshot自身のブラウザナビゲーションが同じリダイレクトを辿るため実害は無い)。
613
698
  if (mode === "auto" && resolved.lowQuality) {
699
+ // レビュー指摘対応: resolvePage内のmarkdown取得guardとは別の、screenshotナビゲーションの
700
+ // ための独立したguardがresolveScreenshot内で行われる(=より正確な礼儀)。
614
701
  const screenshot = await resolveScreenshot(input.url, {
615
702
  fullPage: true,
616
703
  width: DEFAULT_TILE_WIDTH,
617
704
  scale: DEFAULT_SCREENSHOT_SCALE,
618
- skipGuard: true, // この関数冒頭のpoliteness.guard(input.url)を既に実行済み
705
+ onProgress: input.onProgress,
619
706
  });
620
707
  return buildScreenshotContent(resolved, screenshot, resolved.qualityReason);
621
708
  }
@@ -636,13 +723,13 @@ export async function handleFetchTool(input) {
636
723
  return [{ type: "text", text: formatMarkdownResponse(view, paginated, null, templateRemovedCount) }];
637
724
  }
638
725
  // テスト用export(既存スタイルに合わせた最小のテスト可能化。politeness.guard呼び出し回数の検証用)。
639
- // 独立screenshotツールは(fetchツールのmode: screenshot早期returnと異なり)事前guardを
640
- // 行わないため、resolveScreenshot自身が既定でguardする(skipGuard未指定)。
726
+ // 独立screenshotツールも含め、resolveScreenshotは常に自身でguardする。
641
727
  export async function handleScreenshotTool(input) {
642
728
  const screenshot = await resolveScreenshot(input.url, {
643
729
  fullPage: input.fullPage ?? true,
644
730
  width: input.width ?? DEFAULT_TILE_WIDTH,
645
731
  scale: input.scale ?? DEFAULT_SCREENSHOT_SCALE,
732
+ onProgress: input.onProgress,
646
733
  });
647
734
  return buildScreenshotContent({ title: null }, screenshot, null);
648
735
  }
package/dist/core.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
package/dist/diff.d.ts CHANGED
@@ -16,5 +16,5 @@ export interface DiffResult {
16
16
  */
17
17
  allSectionsChanged: boolean;
18
18
  }
19
- /** 旧Markdownと新Markdownを節単位(見出しテキスト+レベルをキー)で比較する。 */
19
+ /** 旧Markdownと新Markdownを節単位(見出しテキスト+レベル+出現順をキー)で比較する。 */
20
20
  export declare function diffMarkdown(oldMarkdown: string, newMarkdown: string): DiffResult;
package/dist/diff.js CHANGED
@@ -11,16 +11,36 @@ import { splitSections } from "./extract/outline.js";
11
11
  function sectionKey(section) {
12
12
  return `${section.level}::${section.heading}`;
13
13
  }
14
- /** 旧Markdownと新Markdownを節単位(見出しテキスト+レベルをキー)で比較する。 */
14
+ /**
15
+ * `${level}::${heading}` の基本キーに、同一キーの中での出現順インデックスを付与した
16
+ * 一意キーを一覧生成する。
17
+ *
18
+ * レビュー指摘対応: 「## お知らせ」「### Q」のように同一level+heading見出しが複数回
19
+ * 出現するページ(FAQ・更新履歴等、日本語Webで頻出)では、基本キーだけでは全て同じキーに
20
+ * 潰れてしまい、Mapが後勝ちで1つを残す他は消えてしまう。同名見出し同士は出現位置で
21
+ * 対応付けるのが妥当なため、出現順(0-indexed)をキーへ含めて位置的に対応付ける。
22
+ */
23
+ function buildOccurrenceKeys(sections) {
24
+ const occurrence = new Map();
25
+ return sections.map((section) => {
26
+ const base = sectionKey(section);
27
+ const index = occurrence.get(base) ?? 0;
28
+ occurrence.set(base, index + 1);
29
+ return `${base}::${index}`;
30
+ });
31
+ }
32
+ /** 旧Markdownと新Markdownを節単位(見出しテキスト+レベル+出現順をキー)で比較する。 */
15
33
  export function diffMarkdown(oldMarkdown, newMarkdown) {
16
34
  const oldSections = splitSections(oldMarkdown);
17
35
  const newSections = splitSections(newMarkdown);
18
- const oldByKey = new Map(oldSections.map((section) => [sectionKey(section), section]));
19
- const newKeys = new Set(newSections.map((section) => sectionKey(section)));
36
+ const oldKeys = buildOccurrenceKeys(oldSections);
37
+ const newKeys = buildOccurrenceKeys(newSections);
38
+ const oldByKey = new Map(oldSections.map((section, i) => [oldKeys[i], section]));
39
+ const newKeySet = new Set(newKeys);
20
40
  const sections = [];
21
41
  let unchangedCount = 0;
22
- for (const section of newSections) {
23
- const previous = oldByKey.get(sectionKey(section));
42
+ newSections.forEach((section, i) => {
43
+ const previous = oldByKey.get(newKeys[i] ?? "");
24
44
  if (!previous) {
25
45
  sections.push({ type: "added", level: section.level, heading: section.heading, content: section.content });
26
46
  }
@@ -32,12 +52,12 @@ export function diffMarkdown(oldMarkdown, newMarkdown) {
32
52
  else {
33
53
  unchangedCount++;
34
54
  }
35
- }
36
- for (const section of oldSections) {
37
- if (!newKeys.has(sectionKey(section))) {
55
+ });
56
+ oldSections.forEach((section, i) => {
57
+ if (!newKeySet.has(oldKeys[i] ?? "")) {
38
58
  sections.push({ type: "removed", level: section.level, heading: section.heading, content: "" });
39
59
  }
40
- }
60
+ });
41
61
  const allSectionsChanged = unchangedCount === 0 && (oldSections.length > 0 || newSections.length > 0);
42
62
  return { sections, allSectionsChanged };
43
63
  }
package/dist/diff.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"diff.js","sourceRoot":"","sources":["../src/diff.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,aAAa,EAAwB,MAAM,sBAAsB,CAAC;AAuB3E,SAAS,UAAU,CAAC,OAAmD;IACrE,OAAO,GAAG,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;AAChD,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,YAAY,CAAC,WAAmB,EAAE,WAAmB;IACnE,MAAM,WAAW,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAE/C,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACvF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE3E,MAAM,QAAQ,GAAkB,EAAE,CAAC;IACnC,IAAI,cAAc,GAAG,CAAC,CAAC;IAEvB,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;QACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7G,CAAC;aAAM,IAAI,QAAQ,CAAC,UAAU,KAAK,OAAO,CAAC,UAAU,EAAE,CAAC;YACtD,oDAAoD;YACpD,6CAA6C;YAC7C,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/G,CAAC;aAAM,CAAC;YACN,cAAc,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;IAED,MAAM,kBAAkB,GAAG,cAAc,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEtG,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../src/diff.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -59,6 +59,17 @@ export declare class BrowserLaunchError extends AmenboError {
59
59
  cause?: unknown;
60
60
  });
61
61
  }
62
+ /**
63
+ * Chromium遅延化(§4)対応: postinstallを廃止したため、`npx -y amenbo install-browser`を
64
+ * 未実行の環境ではChromiumが存在しない。BrowserLaunchErrorの単なる一種として握り潰さず、
65
+ * LLM/利用者が次に取るべき行動(install-browserコマンド)を明示するために型を分ける。
66
+ */
67
+ export declare class BrowserUnavailableError extends AmenboError {
68
+ readonly code = "BROWSER_UNAVAILABLE";
69
+ constructor(options?: {
70
+ cause?: unknown;
71
+ });
72
+ }
62
73
  /** Readability/Turndown等による本文抽出に失敗した。 */
63
74
  export declare class ExtractionError extends AmenboError {
64
75
  readonly url: string;