Research: which Sites publish a machine-readable completion marker #129

Closed
opened 2026-08-19 19:01:13 +07:00 by sulthan · 2 comments
Owner

Part of #114

Question

For each of the six Sites, does the Series page publish a completion signal a Poll could
read, and how trustworthy does that signal look?

Surfaced by #124, which fixed the boundary this research serves: series.finished_at is
owner-written only, and a Site's marker may never write it. The owner wants the dashboard to
suggest "potentially finished" — with no false positives — so the containment rules
cannot be designed before we know which signals actually exist.

The six Sites, as registered in the backend: asurascans.com, demonicscans.org,
comix.to, kagane.to (manga) and novelfull.com, lightnovelworld.net (novels).

To find, per Site, against live pages:

  • Whether the Series page carries an explicit status field (Ongoing / Completed / Hiatus /
    Dropped), where it sits in the markup, and how stable that location looks next to the
    selectors the existing adapter already relies on.
  • Whether the signal is a distinct value or free text, and what the full observed vocabulary
    is. "Completed" and "End" and "Finished" may all appear, and a Site may publish a status
    that means the translation stopped, not the work ended.
  • Whether a hiatus or dropped marker is distinguishable from a completion marker. They
    are the false-positive engine: a hiatus Series must keep being Polled.
  • Whether the marker appears anywhere other than the Series page (a chapter-list "END" row,
    a badge on a listing page) and whether the Series page alone is enough.
  • Sample at least two Series per Site — one plainly ongoing, one plainly complete — and
    quote the markup, so a later session can judge selector fragility without re-fetching.

Constraints that shape the fetch, not the decision:

  • comix.to and kagane.to are only readable through the CDP sidecar (BROWSER_WS_URL),
    and comix is read as an in-tab fetch() of the Series URL rather than a rendered DOM.
    novelfull sits behind a challenge that is a live, time-varying fact. A Site that cannot be
    read today is a finding, not a failure — record the date and what was attempted.
  • Report facts only. Where the observation lands in the schema, how it is presented, and how
    false positives are contained is the follow-up grilling ticket, not this one.
Part of #114 ## Question For each of the six Sites, does the Series page publish a completion signal a Poll could read, and how trustworthy does that signal look? Surfaced by #124, which fixed the boundary this research serves: `series.finished_at` is owner-written only, and a Site's marker may never write it. The owner wants the dashboard to *suggest* "potentially finished" — with **no false positives** — so the containment rules cannot be designed before we know which signals actually exist. The six Sites, as registered in the backend: **asurascans.com**, **demonicscans.org**, **comix.to**, **kagane.to** (manga) and **novelfull.com**, **lightnovelworld.net** (novels). To find, per Site, against live pages: - Whether the Series page carries an explicit status field (Ongoing / Completed / Hiatus / Dropped), where it sits in the markup, and how stable that location looks next to the selectors the existing adapter already relies on. - Whether the signal is a distinct value or free text, and what the full observed vocabulary is. "Completed" and "End" and "Finished" may all appear, and a Site may publish a status that means *the translation stopped*, not *the work ended*. - **Whether a hiatus or dropped marker is distinguishable from a completion marker.** They are the false-positive engine: a hiatus Series must keep being Polled. - Whether the marker appears anywhere other than the Series page (a chapter-list "END" row, a badge on a listing page) and whether the Series page alone is enough. - Sample at least two Series per Site — one plainly ongoing, one plainly complete — and quote the markup, so a later session can judge selector fragility without re-fetching. Constraints that shape the fetch, not the decision: - **comix.to and kagane.to are only readable through the CDP sidecar** (`BROWSER_WS_URL`), and comix is read as an in-tab `fetch()` of the Series URL rather than a rendered DOM. novelfull sits behind a challenge that is a live, time-varying fact. A Site that cannot be read today is a finding, not a failure — record the date and what was attempted. - Report facts only. Where the observation lands in the schema, how it is presented, and how false positives are contained is the follow-up grilling ticket, not this one.
sulthan added the wayfinder:research label 2026-08-19 19:01:13 +07:00
Author
Owner

. demonic and novelfull are binary — a stalled series reads Ongoing forever (safe, but cannot surface stalled). Caveat for #130: comix/kagane need the browser sidecar on every poll today; novelfull needs it whenever its time-varying challenge is up (it was up today).

Details, markup quotes, and adapter anchors per Site in the note.
EOF
)

. demonic and novelfull are binary — a stalled series reads Ongoing forever (safe, but cannot surface stalled). Caveat for #130: comix/kagane need the browser sidecar on every poll today; novelfull needs it whenever its time-varying challenge is up (it was up today). Details, markup quotes, and adapter anchors per Site in the note. EOF )
Author
Owner

Research done; full note on branch research/completion-markers, file docs/research/completion-markers.md (fetched live 2026-08-19; every claim cited).

Verdict per Site — is there a completion signal a Poll can read?

Site Status signal on Series page Fixed vocabulary Hiatus/dropped != completed Adapter cost
asurascans.com Yes — visible Status block + JSON in astro-island props {ongoing, completed, hiatus, dropped} Yes — 4 distinct values Low-Medium
demonicscans.org Yes — info-block Status li pair exactly {Ongoing, Completed} No — not expressible Medium
comix.to Yes — status key in initial-data JSON (the blob the adapter already parses) {releasing, finished, on_hiatus} observed; 5 in filter incl. discontinued Yes Low
kagane.to Yes — TWO fields in the API JSON the adapter already fetches: publication_status + upload_status {Ongoing, Completed, Hiatus} observed (99-series sample) Hiatus yes; dropped unobserved Low
novelfull.com Yes — info-panel link into /status/ taxonomy exactly {Ongoing, Completed} (OnGoing/Ongoing alias; Hiatus/Dropped 404) No — not expressible Medium
lightnovelworld.net Yes — .sertostat class-named span AND JSON-LD creativeWorkStatus {Ongoing, Completed, Hiatus} Yes — PotentialActionStatus != CompletedActionStatus Low-Medium

Bottom line: all six Sites publish an explicit, machine-readable completion marker — no Poll has to guess from update absence. kagane is the only Site separating work status from translation/upload status (proved divergent on "'Cause Calypso Can": publication Ongoing, upload Hiatus).

False-positive verdict

No Site's status is owner-written series.finished_at — all values are site-editorial. But none forces a guess: a Poll that triggers only on the completed/finished value and treats everything else as not-completed has no false-positive path on any Site. The only misinterpretation risk is a false negative: asura's dropped/hiatus and kagane's upload_status are translation-state vocabulary (asura's dropped Demon King stops at ch. 14 while the work continues). demonic and novelfull are binary — a stalled series reads "Ongoing" forever (safe, but cannot surface stalled). Caveat for #130: comix/kagane need the browser sidecar on every poll today; novelfull needs it whenever its time-varying challenge is up (it was up today).

Details, markup quotes, and adapter file:line anchors per Site in the note.

Research done; full note on branch `research/completion-markers`, file `docs/research/completion-markers.md` (fetched live 2026-08-19; every claim cited). ## Verdict per Site — is there a completion signal a Poll can read? | Site | Status signal on Series page | Fixed vocabulary | Hiatus/dropped != completed | Adapter cost | |---|---|---|---|---| | asurascans.com | Yes — visible Status block + JSON in astro-island props | {ongoing, completed, hiatus, dropped} | Yes — 4 distinct values | Low-Medium | | demonicscans.org | Yes — info-block Status li pair | exactly {Ongoing, Completed} | No — not expressible | Medium | | comix.to | Yes — status key in initial-data JSON (the blob the adapter already parses) | {releasing, finished, on_hiatus} observed; 5 in filter incl. discontinued | Yes | Low | | kagane.to | Yes — TWO fields in the API JSON the adapter already fetches: publication_status + upload_status | {Ongoing, Completed, Hiatus} observed (99-series sample) | Hiatus yes; dropped unobserved | Low | | novelfull.com | Yes — info-panel link into /status/<value> taxonomy | exactly {Ongoing, Completed} (OnGoing/Ongoing alias; Hiatus/Dropped 404) | No — not expressible | Medium | | lightnovelworld.net | Yes — .sertostat class-named span AND JSON-LD creativeWorkStatus | {Ongoing, Completed, Hiatus} | Yes — PotentialActionStatus != CompletedActionStatus | Low-Medium | Bottom line: **all six Sites publish an explicit, machine-readable completion marker** — no Poll has to guess from update absence. kagane is the only Site separating *work* status from *translation/upload* status (proved divergent on "'Cause Calypso Can": publication Ongoing, upload Hiatus). ## False-positive verdict No Site's status is owner-written series.finished_at — all values are site-editorial. But none forces a guess: **a Poll that triggers only on the completed/finished value and treats everything else as not-completed has no false-positive path on any Site.** The only misinterpretation risk is a false *negative*: asura's dropped/hiatus and kagane's upload_status are translation-state vocabulary (asura's dropped Demon King stops at ch. 14 while the work continues). demonic and novelfull are binary — a stalled series reads "Ongoing" forever (safe, but cannot surface stalled). Caveat for #130: comix/kagane need the browser sidecar on every poll today; novelfull needs it whenever its time-varying challenge is up (it was up today). Details, markup quotes, and adapter file:line anchors per Site in the note.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sulthan/mangaBookmark#129