smart-web-mcp 1.0.0 → 1.1.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.
- package/CHANGELOG.md +8 -0
- package/dist/smartfetch/providers/github-issue.d.ts +3 -0
- package/dist/smartfetch/providers/github-issue.js +101 -0
- package/dist/smartfetch/providers/github-issue.js.map +1 -0
- package/dist/smartfetch/providers/index.js +3 -1
- package/dist/smartfetch/providers/index.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,7 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on Keep a Changelog[^1] and this project uses SemVer.
|
|
6
6
|
|
|
7
7
|
## Unreleased
|
|
8
|
+
* Read public GitHub issue originals and their first 100 API comments with exact issue/comment identity validation. A missing, malformed or rate-limited API response stays partial rather than presenting page chrome as a complete discussion; threads beyond the first page remain incomplete.
|
|
8
9
|
* Resolve quote-only searches scoped to a full public article URL from its primary original body when the phrase is absent from search-index metadata. Preserve exact URL and snippet provenance; do not accept navigation text, extra unsupported terms, redirects, private/local-only requests, or an unverified original. Exact npm packages retain their existing metadata route.
|
|
9
10
|
* Read a requested HTML section fragment from its unique section, heading, or leading empty alias within the primary content, including nested subsections, rather than presenting the unrelated beginning of a long reference page. Missing or changed-document anchors remain partial; other fragment layouts are not claimed supported.
|
|
10
11
|
* Keep an ordinary authored article as its original body instead of converting it to a paper solely because it names an author. Academic enrichment still applies when DOI/PubMed/journal identity or an academic host supplies paper evidence; generic article body coverage no longer becomes falsely partial from appended author metadata.
|
|
@@ -399,6 +400,13 @@ The format is based on Keep a Changelog[^1] and this project uses SemVer.
|
|
|
399
400
|
- Korean public API helpers now validate outbound URLs and redirects before fetching, blocking localhost, private, and reserved targets unless `network.allowPrivateHosts` is explicitly enabled.
|
|
400
401
|
- CI now declares read-only default repository permissions, Dependabot auto-merge pins the reusable workflow without forwarding all caller secrets, and the workflow check enforces those guards.
|
|
401
402
|
|
|
403
|
+
## [1.1.0](https://github.com/jojo-labs/smart-web/compare/v1.0.0...v1.1.0) (2026-10-03)
|
|
404
|
+
|
|
405
|
+
|
|
406
|
+
### Features
|
|
407
|
+
|
|
408
|
+
* recover public GitHub issue body and comments ([#681](https://github.com/jojo-labs/smart-web/issues/681)) ([63998fa](https://github.com/jojo-labs/smart-web/commit/63998fa57e269b1badd56f00fd486a104ad75ef6))
|
|
409
|
+
|
|
402
410
|
## [1.0.0](https://github.com/jojo-labs/smart-web/compare/v0.44.1...v1.0.0) (2026-10-03)
|
|
403
411
|
|
|
404
412
|
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { SmartfetchNormalization, SmartfetchProvider } from "../provider-types.js";
|
|
2
|
+
export declare function normalizeGithubIssuePayload(url: string, issue: unknown, rows: unknown): SmartfetchNormalization;
|
|
3
|
+
export declare const githubIssueProvider: SmartfetchProvider;
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { fetchProviderJson } from "../provider-policy.js";
|
|
2
|
+
import { normalizeArticleLike } from "./article.js";
|
|
3
|
+
const HEADERS = { accept: "application/vnd.github+json", "user-agent": "smart-web-mcp" };
|
|
4
|
+
function issueIdentity(url) {
|
|
5
|
+
try {
|
|
6
|
+
const parsed = new URL(url);
|
|
7
|
+
const match = /^\/([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+)\/issues\/([1-9]\d*)\/?$/.exec(parsed.pathname);
|
|
8
|
+
if (parsed.protocol !== "https:" || parsed.hostname !== "github.com" || !match || match[1] === "." || match[2] === ".")
|
|
9
|
+
return null;
|
|
10
|
+
return { owner: match[1], repo: match[2], number: Number(match[3]), canonical: `https://github.com/${match[1]}/${match[2]}/issues/${match[3]}`,
|
|
11
|
+
api: `https://api.github.com/repos/${match[1]}/${match[2]}/issues/${match[3]}` };
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
function record(value) {
|
|
18
|
+
return value && typeof value === "object" && !Array.isArray(value) ? value : null;
|
|
19
|
+
}
|
|
20
|
+
function issueData(url, value) {
|
|
21
|
+
const identity = issueIdentity(url);
|
|
22
|
+
const data = record(value);
|
|
23
|
+
if (!identity || !data || data.number !== identity.number || data.html_url !== identity.canonical
|
|
24
|
+
|| typeof data.title !== "string" || !data.title.trim()
|
|
25
|
+
|| data.body !== null && typeof data.body !== "string"
|
|
26
|
+
|| !Number.isSafeInteger(data.comments) || data.comments < 0
|
|
27
|
+
|| data.pull_request !== undefined)
|
|
28
|
+
return null;
|
|
29
|
+
return { identity, data };
|
|
30
|
+
}
|
|
31
|
+
export function normalizeGithubIssuePayload(url, issue, rows) {
|
|
32
|
+
const valid = issueData(url, issue);
|
|
33
|
+
const failure = (code, message) => ({
|
|
34
|
+
post: null, thread: [], comments: [], outbound_links: [], partial: true,
|
|
35
|
+
errors: [{ category: "parse_error", code, message }], method: "github_public_api",
|
|
36
|
+
});
|
|
37
|
+
if (!valid)
|
|
38
|
+
return failure("github_issue_identity_mismatch", "Public issue metadata did not match the requested issue");
|
|
39
|
+
const { identity, data } = valid;
|
|
40
|
+
if (!Array.isArray(rows))
|
|
41
|
+
return failure("github_comments_invalid", "Public comment response is not a list");
|
|
42
|
+
const seen = new Set();
|
|
43
|
+
const comments = [];
|
|
44
|
+
for (const value of rows) {
|
|
45
|
+
const row = record(value);
|
|
46
|
+
const user = record(row?.user);
|
|
47
|
+
if (!row || !Number.isSafeInteger(row.id) || row.id <= 0 || seen.has(row.id)
|
|
48
|
+
|| row.issue_url !== identity.api || row.html_url !== `${identity.canonical}#issuecomment-${row.id}`
|
|
49
|
+
|| typeof row.body !== "string" || typeof user?.login !== "string") {
|
|
50
|
+
return failure("github_comment_identity_mismatch", "A public comment could not be bound to the requested issue");
|
|
51
|
+
}
|
|
52
|
+
seen.add(row.id);
|
|
53
|
+
comments.push({ id: String(row.id), text: row.body, author: user.login, url: row.html_url,
|
|
54
|
+
created_at: typeof row.created_at === "string" ? row.created_at : null });
|
|
55
|
+
}
|
|
56
|
+
const declared = data.comments;
|
|
57
|
+
const complete = comments.length === declared;
|
|
58
|
+
return {
|
|
59
|
+
post: { url: identity.canonical, title: data.title, text: data.body || "", author: record(data.user)?.login || "",
|
|
60
|
+
status: "ok", comment_coverage: { declared_count: declared, collected_count: comments.length, complete } },
|
|
61
|
+
thread: [], comments, outbound_links: [], partial: !complete,
|
|
62
|
+
errors: complete ? [] : [{ category: "parse_error", code: "github_comments_incomplete", message: `Collected ${comments.length} of ${declared} declared public comments` }],
|
|
63
|
+
method: "github_public_api",
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
export const githubIssueProvider = {
|
|
67
|
+
id: "github-issue",
|
|
68
|
+
matches: (url, target) => target === "generic" && Boolean(issueIdentity(url)),
|
|
69
|
+
async normalize(context) {
|
|
70
|
+
const expected = issueIdentity(context.url);
|
|
71
|
+
const deadline = context.deadlineAt ?? Date.now() + context.timeoutMs;
|
|
72
|
+
const errors = [];
|
|
73
|
+
if (!expected || issueIdentity(context.resolvedUrl)?.canonical !== expected.canonical) {
|
|
74
|
+
errors.push({ category: "parse_error", code: "github_issue_identity_mismatch", message: "Acquired URL does not match the requested issue" });
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
const request = async (url) => fetchProviderJson(url, Math.max(1, deadline - Date.now()), { headers: HEADERS }, { mode: "relay", sourceUrl: context.url, deadlineAt: deadline });
|
|
78
|
+
const issue = await request(expected.api);
|
|
79
|
+
if (issue.ok && issueData(context.url, issue.data)) {
|
|
80
|
+
const count = issue.data.comments;
|
|
81
|
+
const comments = count ? await request(`${expected.api}/comments?per_page=100`) : null;
|
|
82
|
+
if (!comments || comments.ok) {
|
|
83
|
+
const normalized = normalizeGithubIssuePayload(context.url, issue.data, comments?.data ?? []);
|
|
84
|
+
if (normalized.post)
|
|
85
|
+
return { ...normalized, errors: [...context.errors, ...normalized.errors] };
|
|
86
|
+
errors.push(...normalized.errors);
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
errors.push(comments.error);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
else if (!issue.ok)
|
|
93
|
+
errors.push(issue.error);
|
|
94
|
+
else
|
|
95
|
+
errors.push({ category: "parse_error", code: "github_issue_identity_mismatch", message: "Public issue metadata did not match the requested issue" });
|
|
96
|
+
}
|
|
97
|
+
const fallback = await normalizeArticleLike(context);
|
|
98
|
+
return { ...fallback, partial: true, errors: [...fallback.errors, ...errors], method: fallback.method };
|
|
99
|
+
},
|
|
100
|
+
};
|
|
101
|
+
//# sourceMappingURL=github-issue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"github-issue.js","sourceRoot":"","sources":["../../../src/smartfetch/providers/github-issue.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ import { clienProvider } from "./clien.js";
|
|
|
9
9
|
import { codeforcesProvider } from "./codeforces.js";
|
|
10
10
|
import { dcinsideProvider } from "./dcinside.js";
|
|
11
11
|
import { genericProvider } from "./generic.js";
|
|
12
|
+
import { githubIssueProvider } from "./github-issue.js";
|
|
12
13
|
import { hackernewsProvider } from "./hackernews.js";
|
|
13
14
|
import { instagramProvider } from "./instagram.js";
|
|
14
15
|
import { jungolProvider } from "./jungol.js";
|
|
@@ -32,7 +33,7 @@ import { wikipediaProvider } from "./wikipedia.js";
|
|
|
32
33
|
import { wikidocsProvider } from "./wikidocs.js";
|
|
33
34
|
import { xProvider } from "./x.js";
|
|
34
35
|
import { youtubeProvider } from "./youtube.js";
|
|
35
|
-
const providers = [hackernewsProvider, redditProvider, xProvider, threadsProvider, instagramProvider, telegramProvider, dcinsideProvider, ppomppuProvider, clienProvider, blindPostProvider, youtubeProvider, naverMapProvider, naverMapSearchProvider, kakaoMapProvider, naverBlogProvider, naverCafeProvider, tistoryProvider, velogProvider, linkedinProvider, algumonProvider, namuwikiProvider, wikipediaProvider, wikidocsProvider, solvedacProvider, acmicpcProvider, codeforcesProvider, atcoderProvider, qojProvider, jungolProvider, arxivProvider, archiveProvider, sciencedirectProvider, commerceProvider, genericProvider];
|
|
36
|
+
const providers = [hackernewsProvider, redditProvider, xProvider, threadsProvider, instagramProvider, telegramProvider, dcinsideProvider, ppomppuProvider, clienProvider, blindPostProvider, youtubeProvider, naverMapProvider, naverMapSearchProvider, kakaoMapProvider, naverBlogProvider, naverCafeProvider, tistoryProvider, velogProvider, linkedinProvider, githubIssueProvider, algumonProvider, namuwikiProvider, wikipediaProvider, wikidocsProvider, solvedacProvider, acmicpcProvider, codeforcesProvider, atcoderProvider, qojProvider, jungolProvider, arxivProvider, archiveProvider, sciencedirectProvider, commerceProvider, genericProvider];
|
|
36
37
|
const providerDefaults = {
|
|
37
38
|
hackernews: { targetFamily: "hackernews_post", priority: 90, capabilities: ["community_post", "supports_assets"], policy: { crossOriginMode: "allow" } },
|
|
38
39
|
reddit: { targetFamily: "reddit_post", priority: 90, capabilities: ["community_post", "supports_assets", "canonical_url"], policy: { crossOriginMode: "allow", preserveCanonicalUrl: true } },
|
|
@@ -53,6 +54,7 @@ const providerDefaults = {
|
|
|
53
54
|
tistory: { targetFamily: "tistory_post", priority: 85, capabilities: ["article_extract", "canonical_url"], policy: { preserveCanonicalUrl: true, allowJinaReader: true, allowArchiveFallback: true } },
|
|
54
55
|
velog: { targetFamily: "velog_post", priority: 85, capabilities: ["article_extract", "canonical_url"], policy: { preserveCanonicalUrl: true, allowJinaReader: true, allowArchiveFallback: true } },
|
|
55
56
|
linkedin: { targetFamily: "linkedin_post", priority: 95, capabilities: ["community_post", "auth_likely", "search_backfill", "canonical_url"], policy: { crossOriginMode: "same_origin", likelyAuthwall: true, preserveCanonicalUrl: true } },
|
|
57
|
+
"github-issue": { targetFamily: "generic", priority: 90, capabilities: ["community_post", "canonical_url"], policy: { crossOriginMode: "allow", preserveCanonicalUrl: true } },
|
|
56
58
|
algumon: { targetFamily: "algumon_deal", priority: 90, capabilities: ["community_post", "canonical_url"], policy: { preserveCanonicalUrl: true } },
|
|
57
59
|
namuwiki: { targetFamily: "namuwiki_article", priority: 85, capabilities: ["article_extract", "canonical_url"], policy: { preserveCanonicalUrl: true, allowJinaReader: true, allowArchiveFallback: true } },
|
|
58
60
|
wikipedia: { targetFamily: "wikipedia_article", priority: 85, capabilities: ["article_extract", "canonical_url"], policy: { preserveCanonicalUrl: true, allowJinaReader: true, allowArchiveFallback: true } },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/smartfetch/providers/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,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,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACpD,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,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACjD,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,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,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,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,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,aAAa,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/smartfetch/providers/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "smart-web-mcp",
|
|
3
3
|
"mcpName": "io.github.jojo-labs/smart-web",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.1.0",
|
|
5
5
|
"packageManager": "npm@11.9.0",
|
|
6
6
|
"description": "Local MCP for web search, direct-URL fetch, site crawling, docs export, and bounded smartbrowser local browser actions.",
|
|
7
7
|
"homepage": "https://github.com/jojo-labs/smart-web",
|