docs: drop the last references to cover scraping (#60)
Review follow-ups. The README's adapter reference and the userscript
testing skill still described a scrape that no longer exists, and the
manga test stub kept a querySelectorAll whose only caller was the
deleted coverFromPage. The handler comment's premise ("every installed
userscript still sends one") stops being true the moment a Reader
reinstalls, so it now says older copies may.
This commit is contained in:
@@ -14,7 +14,7 @@ parsers, helpers. UI, network, and storage behaviour are verified on-device.
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
node --check userscript/manga-bookmark.user.js # parse check, silent on success
|
node --check userscript/manga-bookmark.user.js # parse check, silent on success
|
||||||
node --test userscript/test/logic.test.js # 14 tests as of 2026-07-28
|
node --test userscript/test/logic.test.js # 35 tests as of 2026-08-10
|
||||||
```
|
```
|
||||||
|
|
||||||
Run both before every commit that touches the userscript.
|
Run both before every commit that touches the userscript.
|
||||||
|
|||||||
@@ -261,8 +261,10 @@ an API.
|
|||||||
|
|
||||||
## Adapter reference (verified live 2026-07-24)
|
## Adapter reference (verified live 2026-07-24)
|
||||||
|
|
||||||
The site adapters key everything off URL regex, with `title`/`cover` from
|
The site adapters key everything off URL regex, with `title` from `og:title`
|
||||||
`og:title` / `og:image`. Confirmed against live pages via Playwright:
|
(or the page's own heading where a site ships none). No adapter reads a cover:
|
||||||
|
the backend acquires, stores and serves every Cover from its own origin
|
||||||
|
(ADR-0007). Confirmed against live pages via Playwright:
|
||||||
|
|
||||||
| Site | Series URL | Chapter URL | `series_id` |
|
| Site | Series URL | Chapter URL | `series_id` |
|
||||||
|------|-----------|-------------|-------------|
|
|------|-----------|-------------|-------------|
|
||||||
|
|||||||
@@ -51,11 +51,11 @@ func (h *Handler) Put(w http.ResponseWriter, r *http.Request) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
// A body may carry a cover, and it is discarded here rather than
|
// A body may carry a cover, and it is discarded here rather than
|
||||||
// rejected: every installed userscript still sends one, and ADR-0004's
|
// rejected: an older installed userscript may still send one, and
|
||||||
// compatibility argument depends on those scripts continuing to work. The
|
// ADR-0004's compatibility argument depends on those scripts continuing
|
||||||
// Cover is acquired server-side (ADR-0007), so the field is permanently
|
// to work. The Cover is acquired server-side (ADR-0007), so the field is
|
||||||
// inert - not pending removal, and not a value any later code should
|
// permanently inert - not pending removal, and not a value any later code
|
||||||
// start reading.
|
// should start reading.
|
||||||
b.Cover = ""
|
b.Cover = ""
|
||||||
|
|
||||||
// Path key is authoritative; derive site/series_id from it when the body
|
// Path key is authoritative; derive site/series_id from it when the body
|
||||||
|
|||||||
@@ -41,9 +41,6 @@ globalThis.document = {
|
|||||||
const v = metaTags[m[1]];
|
const v = metaTags[m[1]];
|
||||||
return v == null ? null : { getAttribute: () => v };
|
return v == null ? null : { getAttribute: () => v };
|
||||||
},
|
},
|
||||||
querySelectorAll() {
|
|
||||||
return [];
|
|
||||||
},
|
|
||||||
addEventListener() {},
|
addEventListener() {},
|
||||||
get title() {
|
get title() {
|
||||||
return docTitle;
|
return docTitle;
|
||||||
|
|||||||
Reference in New Issue
Block a user