smart-web-mcp 0.6.1 → 0.7.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 (41) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/README.md +3 -0
  3. package/dist/assessment.d.ts +19 -0
  4. package/dist/assessment.js +52 -0
  5. package/dist/assessment.js.map +1 -0
  6. package/dist/composition.d.ts +27 -0
  7. package/dist/composition.js +26 -0
  8. package/dist/composition.js.map +1 -0
  9. package/dist/dev-runtime.js +13 -1
  10. package/dist/dev-runtime.js.map +1 -1
  11. package/dist/lib.d.ts +4 -1
  12. package/dist/lib.js +2 -0
  13. package/dist/lib.js.map +1 -1
  14. package/dist/shared.d.ts +45 -0
  15. package/dist/shared.js +2 -0
  16. package/dist/shared.js.map +1 -1
  17. package/dist/smartcrawl/linkedin-profile.d.ts +34 -0
  18. package/dist/smartcrawl/linkedin-profile.js +161 -0
  19. package/dist/smartcrawl/linkedin-profile.js.map +1 -0
  20. package/dist/smartcrawl.d.ts +5 -12
  21. package/dist/smartcrawl.js +65 -138
  22. package/dist/smartcrawl.js.map +1 -1
  23. package/dist/smartfetch/assets.d.ts +1 -1
  24. package/dist/smartfetch/assets.js +1 -1
  25. package/dist/smartfetch/assets.js.map +1 -1
  26. package/dist/smartfetch/pipeline.d.ts +50 -0
  27. package/dist/smartfetch/pipeline.js +93 -0
  28. package/dist/smartfetch/pipeline.js.map +1 -0
  29. package/dist/smartfetch/provider-types.d.ts +17 -0
  30. package/dist/smartfetch/providers/article.js +11 -2
  31. package/dist/smartfetch/providers/article.js.map +1 -1
  32. package/dist/smartfetch/providers/commerce.js +65 -6
  33. package/dist/smartfetch/providers/commerce.js.map +1 -1
  34. package/dist/smartfetch/providers/index.d.ts +3 -2
  35. package/dist/smartfetch/providers/index.js +32 -1
  36. package/dist/smartfetch/providers/index.js.map +1 -1
  37. package/dist/smartfetch.js +134 -5
  38. package/dist/smartfetch.js.map +1 -1
  39. package/dist/smartsearch.js +43 -5
  40. package/dist/smartsearch.js.map +1 -1
  41. package/package.json +6 -3
@@ -69,7 +69,7 @@ export function discoverAssets(pageUrl, htmlOrText, post, outboundLinks) {
69
69
  if (absolute)
70
70
  pushAsset(assets, absolute, item.source);
71
71
  }
72
- for (const url of dedupeUrls(outboundLinks)) {
72
+ for (const url of dedupeUrls(Array.isArray(outboundLinks) ? outboundLinks : [])) {
73
73
  const absolute = absolutizeUrl(url, pageUrl);
74
74
  if (absolute)
75
75
  pushAsset(assets, absolute, "outbound");
@@ -1 +1 @@
1
- {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/smartfetch/assets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/smartfetch/assets.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ import { type AdapterResult, type ResolvedTarget, type SmartfetchOutput, type Target } from "../shared.js";
2
+ import type { ResolvedSmartfetchProvider } from "./provider-types.js";
3
+ export declare function buildResolveStage(input: {
4
+ url: string;
5
+ requestedTarget: Target;
6
+ finalTarget: ResolvedTarget;
7
+ validated: boolean;
8
+ blockedReason?: string;
9
+ finalUrl?: string;
10
+ }): {
11
+ blocked_reason?: string;
12
+ status: "ok" | "failed";
13
+ requested_target: Target;
14
+ final_target: ResolvedTarget;
15
+ validated_url: string;
16
+ final_url: string;
17
+ };
18
+ export declare function buildAcquireStage(input: {
19
+ attempts: string[];
20
+ active: AdapterResult;
21
+ usedBrowser: boolean;
22
+ usedArchive: boolean;
23
+ }): {
24
+ status: "ok" | "failed" | "partial";
25
+ strategy: string;
26
+ attempts: string[];
27
+ final_method: string;
28
+ final_url: string;
29
+ used_browser: boolean;
30
+ used_archive: boolean;
31
+ };
32
+ export declare function buildNormalizeStage(input: {
33
+ provider: ResolvedSmartfetchProvider;
34
+ partial: boolean;
35
+ }): {
36
+ status: "ok" | "partial";
37
+ provider_id: string;
38
+ provider_target: "generic" | "reddit_post" | "x_post" | "threads_post" | "instagram_post" | "telegram_post" | "dcinside_post" | "youtube_video" | "naver_blog" | "naver_cafe_post" | "tistory_post" | "velog_post" | "hackernews_post" | "linkedin_post";
39
+ capabilities: import("./provider-types.js").SmartfetchCapability[];
40
+ };
41
+ export declare function assessSmartfetchOutput(input: {
42
+ url: string;
43
+ requestedTarget: Target;
44
+ finalTarget: ResolvedTarget;
45
+ active: AdapterResult;
46
+ provider: ResolvedSmartfetchProvider;
47
+ output: Pick<SmartfetchOutput, "partial" | "errors" | "post" | "thread" | "comments" | "outbound_links"> & {
48
+ url: string;
49
+ };
50
+ }): import("../shared.js").RetrievalAssessment;
@@ -0,0 +1,93 @@
1
+ import { createAssessment, createHandoffSuggestion, detectAuthLikeText, detectInteractiveLikeText, firstMeaningfulBlockedReason } from "../assessment.js";
2
+ import { needsDynamicCrawl } from "../shared.js";
3
+ function safeText(value) {
4
+ return String(value || "").trim();
5
+ }
6
+ function providerSignals(provider) {
7
+ return provider.capabilities.map((item) => `provider:${item}`);
8
+ }
9
+ export function buildResolveStage(input) {
10
+ return {
11
+ status: input.validated ? "ok" : "failed",
12
+ requested_target: input.requestedTarget,
13
+ final_target: input.finalTarget,
14
+ validated_url: input.validated ? input.url : "",
15
+ final_url: input.finalUrl || input.url,
16
+ ...(input.blockedReason ? { blocked_reason: input.blockedReason } : {}),
17
+ };
18
+ }
19
+ export function buildAcquireStage(input) {
20
+ const methods = input.attempts.filter(Boolean);
21
+ return {
22
+ status: input.active.ok ? "ok" : methods.length > 0 ? "partial" : "failed",
23
+ strategy: methods[0] || input.active.method || "none",
24
+ attempts: methods,
25
+ final_method: input.active.method,
26
+ final_url: input.active.final_url || "",
27
+ used_browser: input.usedBrowser,
28
+ used_archive: input.usedArchive,
29
+ };
30
+ }
31
+ export function buildNormalizeStage(input) {
32
+ return {
33
+ status: input.partial ? "partial" : "ok",
34
+ provider_id: input.provider.id,
35
+ provider_target: input.provider.targetFamily,
36
+ capabilities: input.provider.capabilities,
37
+ };
38
+ }
39
+ export function assessSmartfetchOutput(input) {
40
+ const errors = input.output.errors;
41
+ const post = (input.output.post || {});
42
+ const postStatus = safeText(post.status);
43
+ const postText = safeText(post.text || post.description || post.title);
44
+ const blockedReason = firstMeaningfulBlockedReason([
45
+ ...errors,
46
+ postStatus && postStatus !== "ok" ? postStatus : undefined,
47
+ input.active.error,
48
+ ]);
49
+ const hasMeaningfulContent = Boolean(postText) || input.output.thread.length > 0 || input.output.comments.length > 0 || input.output.outbound_links.length > 0;
50
+ const authRequiredLikely = Boolean(input.provider.policy.likelyAuthwall
51
+ || detectAuthLikeText(`${blockedReason} ${postStatus} ${postText}`)
52
+ || errors.some((item) => /authwall|login|forbidden/i.test(`${item.code} ${item.message}`)));
53
+ const interactiveFlowLikely = Boolean((input.provider.capabilities.includes("interactive_surface") && (input.output.partial || !hasMeaningfulContent || Boolean(blockedReason)))
54
+ || detectInteractiveLikeText(`${blockedReason} ${postText} ${input.active.content}`)
55
+ || (!input.active.ok && !authRequiredLikely)
56
+ || (needsDynamicCrawl(input.active) && input.finalTarget === "generic" && (input.output.partial || !hasMeaningfulContent)));
57
+ const confidence = authRequiredLikely || (!hasMeaningfulContent && input.output.partial)
58
+ ? "low"
59
+ : input.output.partial || errors.length > 0 || input.provider.capabilities.includes("requires_browser")
60
+ ? "medium"
61
+ : "high";
62
+ const signals = [
63
+ ...providerSignals(input.provider),
64
+ input.output.partial ? "result:partial" : "result:complete",
65
+ hasMeaningfulContent ? "content:present" : "content:sparse",
66
+ authRequiredLikely ? "auth:likely" : "auth:unlikely",
67
+ interactiveFlowLikely ? "interactive:likely" : "interactive:unlikely",
68
+ blockedReason ? `blocked:${blockedReason}` : "",
69
+ ];
70
+ const needsHandoff = confidence === "low" || authRequiredLikely || interactiveFlowLikely;
71
+ const recommendedHandoff = needsHandoff
72
+ ? createHandoffSuggestion({
73
+ tool: "web_task",
74
+ mode: "read",
75
+ url: input.url,
76
+ reason: authRequiredLikely
77
+ ? "Deterministic fetch likely hit an authwall or protected page"
78
+ : interactiveFlowLikely
79
+ ? "Deterministic fetch likely needs interactive browser traversal"
80
+ : "Deterministic fetch returned low-confidence extraction",
81
+ goal: `Open ${input.url} in a real browser, navigate as needed, and return the primary content plus key metadata as structured JSON.`,
82
+ })
83
+ : null;
84
+ return createAssessment({
85
+ confidence,
86
+ blocked_reason: blockedReason,
87
+ auth_required_likely: authRequiredLikely,
88
+ interactive_flow_likely: interactiveFlowLikely,
89
+ signals,
90
+ recommended_handoff: recommendedHandoff,
91
+ });
92
+ }
93
+ //# sourceMappingURL=pipeline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/smartfetch/pipeline.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,11 @@
1
1
  import type { AdapterResult, ResolvedTarget, ToolError } from "../shared.js";
2
+ export type SmartfetchCapability = "article_extract" | "community_post" | "commerce_catalog" | "seed_metadata" | "requires_browser" | "supports_assets" | "auth_likely" | "interactive_surface" | "canonical_url" | "search_backfill";
3
+ export type SmartfetchProviderPolicy = {
4
+ crossOriginMode?: "same_origin" | "allow";
5
+ preserveCanonicalUrl?: boolean;
6
+ relayStyle?: boolean;
7
+ likelyAuthwall?: boolean;
8
+ };
2
9
  export type SmartfetchNormalization = {
3
10
  post: Record<string, unknown> | null;
4
11
  thread: Record<string, unknown>[];
@@ -30,6 +37,16 @@ export type SmartfetchContext = {
30
37
  };
31
38
  export type SmartfetchProvider = {
32
39
  id: string;
40
+ targetFamily?: ResolvedTarget | "generic";
41
+ priority?: number;
42
+ capabilities?: SmartfetchCapability[];
43
+ policy?: SmartfetchProviderPolicy;
33
44
  matches: (url: string, target: ResolvedTarget) => boolean;
34
45
  normalize: (context: SmartfetchContext) => Promise<SmartfetchNormalization> | SmartfetchNormalization;
35
46
  };
47
+ export type ResolvedSmartfetchProvider = SmartfetchProvider & {
48
+ targetFamily: ResolvedTarget | "generic";
49
+ priority: number;
50
+ capabilities: SmartfetchCapability[];
51
+ policy: SmartfetchProviderPolicy;
52
+ };
@@ -1,14 +1,23 @@
1
1
  import { extractFromHtml } from "@extractus/article-extractor";
2
2
  import { dedupeUrls, extractMetaDescription, extractMetaProperty, extractTitleFromHtml, extractUrls, stripTags } from "../../shared.js";
3
+ function stripNonContentBlocks(html) {
4
+ return String(html || "")
5
+ .replace(/<script\b[^>]*>[\s\S]*?<\/script>/gi, " ")
6
+ .replace(/<style\b[^>]*>[\s\S]*?<\/style>/gi, " ")
7
+ .replace(/<noscript\b[^>]*>[\s\S]*?<\/noscript>/gi, " ")
8
+ .replace(/<template\b[^>]*>[\s\S]*?<\/template>/gi, " ")
9
+ .replace(/<!--([\s\S]*?)-->/g, " ");
10
+ }
3
11
  function cleanText(input) {
4
12
  return String(input || "").replace(/\s+/g, " ").trim();
5
13
  }
6
14
  export async function extractArticleFields(html, url) {
15
+ const sanitizedHtml = stripNonContentBlocks(html);
7
16
  const fallbackTitle = extractMetaProperty(html, "og:title") || extractTitleFromHtml(html);
8
17
  const fallbackDescription = extractMetaProperty(html, "og:description") || extractMetaDescription(html);
9
- const fallbackText = stripTags(html);
18
+ const fallbackText = stripTags(sanitizedHtml);
10
19
  try {
11
- const article = await extractFromHtml(html, url, {
20
+ const article = await extractFromHtml(sanitizedHtml, url, {
12
21
  contentLengthThreshold: 200,
13
22
  descriptionLengthThreshold: 120,
14
23
  });
@@ -1 +1 @@
1
- {"version":3,"file":"article.js","sourceRoot":"","sources":["../../../src/smartfetch/providers/article.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"article.js","sourceRoot":"","sources":["../../../src/smartfetch/providers/article.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAE9D,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAavI,SAAS,qBAAqB,CAAC,IAAY;IACzC,OAAO,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;SACtB,OAAO,CAAC,qCAAqC,EAAE,GAAG,CAAC;SACnD,OAAO,CAAC,mCAAmC,EAAE,GAAG,CAAC;SACjD,OAAO,CAAC,yCAAyC,EAAE,GAAG,CAAC;SACvD,OAAO,CAAC,yCAAyC,EAAE,GAAG,CAAC;SACvD,OAAO,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;AACvC,CAAC;AAED,SAAS,SAAS,CAAC,KAAa;IAC9B,OAAO,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;AACxD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,IAAY,EAAE,GAAW;IAClE,MAAM,aAAa,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAA;IACjD,MAAM,aAAa,GAAG,mBAAmB,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAA;IACzF,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,CAAC,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACvG,MAAM,YAAY,GAAG,SAAS,CAAC,aAAa,CAAC,CAAA;IAE7C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,aAAa,EAAE,GAAG,EAAE;YACxD,sBAAsB,EAAE,GAAG;YAC3B,0BAA0B,EAAE,GAAG;SAChC,CAAC,CAAA;QACF,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QACxE,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,CAAA;QACvD,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAA;QACrD,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC,CAAA;QAC7D,OAAO;YACL,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,aAAa,CAAC,CAAC;YACzD,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,IAAI,mBAAmB,CAAC,CAAC;YAC3E,IAAI,EAAE,WAAW,IAAI,YAAY;YACjC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU;SAClD,CAAA;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,KAAK,EAAE,aAAa;YACpB,WAAW,EAAE,mBAAmB;YAChC,IAAI,EAAE,YAAY;YAClB,SAAS,EAAE,UAAU;SACtB,CAAA;IACH,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAA0B,EAAE,KAA+B;IACpG,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;IAC/E,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,OAAO;QACL,IAAI,EAAE;YACJ,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;YAClC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,wBAAwB;YAC5C,GAAG,KAAK;SACT;QACD,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,EAAE;QACZ,cAAc,EAAE,UAAU,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7F,OAAO,EAAE,CAAC,EAAE;QACZ,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;KAC9B,CAAA;AACH,CAAC"}
@@ -51,6 +51,18 @@ function blockedCommercePage(html) {
51
51
  return false;
52
52
  return /(access denied|you don'?t have permission|이 페이지에 접근할 수 있는 권한이 없습니다|이페이지에접근할수있는권한이없습니다|powered and protected by privacy|akamai)/i.test(haystack);
53
53
  }
54
+ function allowedKoreanCoupangHost(host) {
55
+ return host === "www.coupang.com" || host === "coupang.com" || host === "m.coupang.com";
56
+ }
57
+ function wrongMarketCoupangHost(url) {
58
+ try {
59
+ const host = new URL(url).hostname.toLowerCase();
60
+ return host.endsWith("coupang.com") && !allowedKoreanCoupangHost(host);
61
+ }
62
+ catch {
63
+ return false;
64
+ }
65
+ }
54
66
  function productUrlPattern(site) {
55
67
  return site === "amazon"
56
68
  ? /\/dp\//i
@@ -150,6 +162,8 @@ function canonicalProductUrl(url, site) {
150
162
  }
151
163
  if (site === "coupang") {
152
164
  const match = parsed.pathname.match(/^(\/vp\/products\/\d+)/i);
165
+ if (allowedKoreanCoupangHost(parsed.hostname.toLowerCase()))
166
+ return `https://www.coupang.com${match?.[1] || parsed.pathname}`;
153
167
  return `${parsed.origin}${match?.[1] || parsed.pathname}`;
154
168
  }
155
169
  return `${parsed.origin}${parsed.pathname}`;
@@ -392,6 +406,7 @@ async function searchFallbackResults(url, query, timeoutMs) {
392
406
  async function normalizeCommerce(context) {
393
407
  const site = commerceSiteForUrl(context.resolvedUrl || context.url);
394
408
  const html = String(context.active.content || "");
409
+ const rawUrl = context.url;
395
410
  const url = context.resolvedUrl || context.url;
396
411
  const query = queryFromUrl(url);
397
412
  const host = (() => {
@@ -402,14 +417,43 @@ async function normalizeCommerce(context) {
402
417
  return "site";
403
418
  }
404
419
  })();
420
+ const blocked = blockedCommercePage(html);
421
+ const wrongMarket = site === "coupang" && (wrongMarketCoupangHost(rawUrl) || wrongMarketCoupangHost(url));
422
+ if (wrongMarket) {
423
+ context.errors.push({ category: "block", code: "commerce_wrong_market_host", message: "Localized Coupang host differs from the canonical www.coupang.com product surface; treat this as reference evidence, not a final verified buy link." });
424
+ }
405
425
  if (isProductLike(url, html)) {
426
+ if (blocked) {
427
+ context.errors.push({ category: "block", code: "commerce_page_blocked", message: "Storefront blocked direct product extraction; product details could not be verified." });
428
+ return {
429
+ post: {
430
+ url: canonicalProductUrl(url, site),
431
+ title: `Blocked product page on ${host}`,
432
+ text: "The storefront returned an anti-bot or blocked page, so product details could not be verified from this URL.",
433
+ kind: "commerce_product",
434
+ },
435
+ thread: [],
436
+ comments: [],
437
+ outbound_links: dedupeUrls([canonicalProductUrl(url, site)]),
438
+ partial: true,
439
+ errors: context.errors,
440
+ method: "commerce_product",
441
+ };
442
+ }
406
443
  const detailed = productDetailsFromJsonLd(html, url, site) || productFallbackFromHtml(html, url, site);
444
+ const post = wrongMarket
445
+ ? {
446
+ ...detailed.post,
447
+ title: `Wrong-market Coupang host: ${host} — ${detailed.post.title}`,
448
+ text: `Warning: this Coupang URL resolved to a localized/non-Korean host and should be treated as reference evidence, not a final verified buy link.\n${detailed.post.text}`,
449
+ }
450
+ : detailed.post;
407
451
  return {
408
- post: detailed.post,
452
+ post,
409
453
  thread: [],
410
454
  comments: [],
411
455
  outbound_links: detailed.links,
412
- partial: false,
456
+ partial: wrongMarket,
413
457
  errors: context.errors,
414
458
  method: "commerce_product",
415
459
  };
@@ -417,7 +461,7 @@ async function normalizeCommerce(context) {
417
461
  if (isSearchLike(url, html)) {
418
462
  let items = [...itemsFromJsonLd(html, url, site), ...productFromStructuredAnchors(context, site), ...productFromAnchorMap(html, url, site)];
419
463
  items = dedupeByUrl(items);
420
- if (items.length === 0 && blockedCommercePage(html) && query) {
464
+ if (items.length === 0 && blocked && query) {
421
465
  context.errors.push({ category: "block", code: "commerce_page_blocked", message: "Storefront blocked direct extraction; using fallback search results when possible." });
422
466
  try {
423
467
  const searchResults = context.runSmartsearch
@@ -446,12 +490,12 @@ async function normalizeCommerce(context) {
446
490
  thread: threadFromItems(items),
447
491
  comments: [],
448
492
  outbound_links: dedupeUrls(items.map((item) => item.url)),
449
- partial: blockedCommercePage(html) || items.some((item) => item.source === "search_fallback"),
493
+ partial: wrongMarket || blocked || items.some((item) => item.source === "search_fallback"),
450
494
  errors: context.errors,
451
495
  method: items.some((item) => item.source === "search_fallback") ? "commerce_search_fallback" : "commerce_extract",
452
496
  };
453
497
  }
454
- if (blockedCommercePage(html) && query) {
498
+ if (blocked && query) {
455
499
  const summary = buildSearchSummary(query, host, []);
456
500
  return {
457
501
  post: {
@@ -470,7 +514,22 @@ async function normalizeCommerce(context) {
470
514
  };
471
515
  }
472
516
  }
473
- return normalizeArticleLike(context, { kind: "commerce_generic" });
517
+ const generic = await normalizeArticleLike(context, { kind: "commerce_generic" });
518
+ if (wrongMarket) {
519
+ return {
520
+ ...generic,
521
+ post: generic.post
522
+ ? {
523
+ ...generic.post,
524
+ title: `Wrong-market Coupang host: ${host}${generic.post.title ? ` — ${generic.post.title}` : ""}`,
525
+ text: `Warning: this Coupang URL resolved to a localized/non-Korean host and should be treated as reference evidence, not a final verified buy link.${generic.post.text ? `\n${generic.post.text}` : ""}`,
526
+ }
527
+ : generic.post,
528
+ partial: true,
529
+ errors: context.errors,
530
+ };
531
+ }
532
+ return generic;
474
533
  }
475
534
  export const commerceProvider = {
476
535
  id: "commerce",
@@ -1 +1 @@
1
- {"version":3,"file":"commerce.js","sourceRoot":"","sources":["../../../src/smartfetch/providers/commerce.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commerce.js","sourceRoot":"","sources":["../../../src/smartfetch/providers/commerce.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  import type { ResolvedTarget } from "../../shared.js";
2
- import type { SmartfetchProvider } from "../provider-types.js";
3
- export declare function resolveSmartfetchProvider(url: string, target: ResolvedTarget): SmartfetchProvider;
2
+ import type { ResolvedSmartfetchProvider } from "../provider-types.js";
3
+ export declare function listSmartfetchProviders(): ResolvedSmartfetchProvider[];
4
+ export declare function resolveSmartfetchProvider(url: string, target: ResolvedTarget): ResolvedSmartfetchProvider;
@@ -14,7 +14,38 @@ import { velogProvider } from "./velog.js";
14
14
  import { xProvider } from "./x.js";
15
15
  import { youtubeProvider } from "./youtube.js";
16
16
  const providers = [hackernewsProvider, redditProvider, xProvider, threadsProvider, instagramProvider, telegramProvider, dcinsideProvider, youtubeProvider, naverBlogProvider, naverCafeProvider, tistoryProvider, velogProvider, linkedinProvider, commerceProvider, genericProvider];
17
+ const providerDefaults = {
18
+ hackernews: { targetFamily: "hackernews_post", priority: 90, capabilities: ["community_post", "supports_assets"], policy: { crossOriginMode: "allow" } },
19
+ reddit: { targetFamily: "reddit_post", priority: 90, capabilities: ["community_post", "supports_assets", "canonical_url"], policy: { crossOriginMode: "allow", preserveCanonicalUrl: true } },
20
+ x: { targetFamily: "x_post", priority: 95, capabilities: ["community_post", "seed_metadata", "supports_assets", "canonical_url"], policy: { crossOriginMode: "allow", preserveCanonicalUrl: true } },
21
+ threads: { targetFamily: "threads_post", priority: 90, capabilities: ["community_post", "supports_assets", "canonical_url"], policy: { crossOriginMode: "allow", preserveCanonicalUrl: true } },
22
+ instagram: { targetFamily: "instagram_post", priority: 90, capabilities: ["community_post", "supports_assets", "canonical_url"], policy: { crossOriginMode: "allow", preserveCanonicalUrl: true } },
23
+ telegram: { targetFamily: "telegram_post", priority: 90, capabilities: ["community_post", "supports_assets", "canonical_url"], policy: { crossOriginMode: "allow", preserveCanonicalUrl: true } },
24
+ dcinside: { targetFamily: "dcinside_post", priority: 90, capabilities: ["community_post", "requires_browser"], policy: { crossOriginMode: "same_origin" } },
25
+ youtube: { targetFamily: "youtube_video", priority: 95, capabilities: ["seed_metadata", "supports_assets", "canonical_url"], policy: { crossOriginMode: "allow", preserveCanonicalUrl: true } },
26
+ "naver-blog": { targetFamily: "naver_blog", priority: 90, capabilities: ["article_extract", "requires_browser", "canonical_url"], policy: { crossOriginMode: "same_origin", preserveCanonicalUrl: true } },
27
+ "naver-cafe": { targetFamily: "naver_cafe_post", priority: 90, capabilities: ["community_post", "requires_browser", "auth_likely"], policy: { crossOriginMode: "same_origin", likelyAuthwall: true } },
28
+ tistory: { targetFamily: "tistory_post", priority: 85, capabilities: ["article_extract", "canonical_url"], policy: { preserveCanonicalUrl: true } },
29
+ velog: { targetFamily: "velog_post", priority: 85, capabilities: ["article_extract", "canonical_url"], policy: { preserveCanonicalUrl: true } },
30
+ linkedin: { targetFamily: "linkedin_post", priority: 95, capabilities: ["community_post", "auth_likely", "search_backfill", "canonical_url"], policy: { crossOriginMode: "same_origin", likelyAuthwall: true, preserveCanonicalUrl: true } },
31
+ commerce: { targetFamily: "generic", priority: 80, capabilities: ["commerce_catalog", "requires_browser", "interactive_surface", "supports_assets"], policy: { crossOriginMode: "same_origin" } },
32
+ generic: { targetFamily: "generic", priority: 10, capabilities: ["article_extract", "supports_assets"], policy: {} },
33
+ };
34
+ function withProviderDefaults(provider) {
35
+ const defaults = providerDefaults[provider.id] ?? providerDefaults.generic;
36
+ return {
37
+ ...provider,
38
+ targetFamily: provider.targetFamily || defaults.targetFamily,
39
+ priority: provider.priority ?? defaults.priority,
40
+ capabilities: provider.capabilities || defaults.capabilities,
41
+ policy: provider.policy || defaults.policy,
42
+ };
43
+ }
44
+ export function listSmartfetchProviders() {
45
+ return providers.map(withProviderDefaults).sort((left, right) => right.priority - left.priority);
46
+ }
17
47
  export function resolveSmartfetchProvider(url, target) {
18
- return providers.find((provider) => provider.matches(url, target)) || genericProvider;
48
+ const matched = listSmartfetchProviders().find((provider) => provider.matches(url, target));
49
+ return matched || withProviderDefaults(genericProvider);
19
50
  }
20
51
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/smartfetch/providers/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,MAAM,SAAS,GAAyB,CAAC,kBAAkB,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAA;AAE3S,MAAM,UAAU,yBAAyB,CAAC,GAAW,EAAE,MAAsB;IAC3E,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,eAAe,CAAA;AACvF,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/smartfetch/providers/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,MAAM,SAAS,GAAyB,CAAC,kBAAkB,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAA;AAE3S,MAAM,gBAAgB,GAA8G;IAClI,UAAU,EAAE,EAAE,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE;IACxJ,MAAM,EAAE,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE;IAC7L,CAAC,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,gBAAgB,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE;IACpM,OAAO,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE;IAC/L,SAAS,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE;IACnM,QAAQ,EAAE,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE;IACjM,QAAQ,EAAE,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,aAAa,EAAE,EAAE;IAC3J,OAAO,EAAE,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,eAAe,EAAE,iBAAiB,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE;IAC/L,YAAY,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,iBAAiB,EAAE,kBAAkB,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,aAAa,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE;IAC1M,YAAY,EAAE,EAAE,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE;IACtM,OAAO,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,iBAAiB,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE;IACnJ,KAAK,EAAE,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,iBAAiB,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE;IAC/I,QAAQ,EAAE,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,gBAAgB,EAAE,aAAa,EAAE,iBAAiB,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE;IAC5O,QAAQ,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,aAAa,EAAE,EAAE;IACjM,OAAO,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;CACrH,CAAA;AAED,SAAS,oBAAoB,CAAC,QAA4B;IACxD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,gBAAgB,CAAC,OAAQ,CAAA;IAC3E,OAAO;QACL,GAAG,QAAQ;QACX,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,YAAY;QAC5D,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ;QAChD,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,YAAY;QAC5D,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM;KAC3C,CAAA;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;AAClG,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,GAAW,EAAE,MAAsB;IAC3E,MAAM,OAAO,GAAG,uBAAuB,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAA;IAC3F,OAAO,OAAO,IAAI,oBAAoB,CAAC,eAAe,CAAC,CAAA;AACzD,CAAC"}