Build and register the AniList ingestor #48

Closed
opened 2026-07-22 16:15:04 +02:00 by thecrealm · 1 comment
Owner

M5/D48 (resolves part of Q-7). Register AniList in the source registry (§11.3.2) with permission basis 'official public GraphQL API terms', scoped to anime claim kinds, on an interval schedule; build the ingestor service per §11.3.3 (one credential = one source, CR-3). Normalize: anime series/season/episode work structure (part-of with ordinals, §13.4), airing schedule → episode release claims (date + status, §11.6.2), manga→anime adaptation relations, studios as collective agents, external ids (AniList id; MAL id if present) for the §11.4.2 identifier rung. Honor rate limits; content-hash dedup and idempotent replay per CR-17. Acceptance: scheduled runs record observations idempotently against live AniList; reconciliation candidates for a real seasonal anime appear in the Curator worklist; dashboard (§11.3.4) shows the source healthy.

M5/D48 (resolves part of Q-7). Register AniList in the source registry (§11.3.2) with permission basis 'official public GraphQL API terms', scoped to anime claim kinds, on an interval schedule; build the ingestor service per §11.3.3 (one credential = one source, CR-3). Normalize: anime series/season/episode work structure (part-of with ordinals, §13.4), airing schedule → episode release claims (date + status, §11.6.2), manga→anime adaptation relations, studios as collective agents, external ids (AniList id; MAL id if present) for the §11.4.2 identifier rung. Honor rate limits; content-hash dedup and idempotent replay per CR-17. Acceptance: scheduled runs record observations idempotently against live AniList; reconciliation candidates for a real seasonal anime appear in the Curator worklist; dashboard (§11.3.4) shows the source healthy.
Author
Owner

Scope amendment (structured decision, D50): AniList feeds work-level claims only — 'airing schedule → episode release claims' from the original body is out: releases are German-market entities (market concept, stream offerings) and AniList's schedule is the JP broadcast, so there is no honest claim shape for it on a work observation. Episode releases + availability windows arrive via TMDB (#50) and curation (#52); JP airing data stays available in the raw payloads. Also decided under this issue: §13.4 gains a dedicated work property 'studio'; observations gain an optional entity-type hint (D50).

Scope amendment (structured decision, D50): AniList feeds work-level claims only — 'airing schedule → episode release claims' from the original body is out: releases are German-market entities (market concept, stream offerings) and AniList's schedule is the JP broadcast, so there is no honest claim shape for it on a work observation. Episode releases + availability windows arrive via TMDB (#50) and curation (#52); JP airing data stays available in the raw payloads. Also decided under this issue: §13.4 gains a dedicated work property 'studio'; observations gain an optional entity-type hint (D50).
thecrealm 2026-07-22 16:44:58 +02:00
  • closed this issue
  • removed the
    now
    label
Sign in to join this conversation.
No labels
M0
M1
M2
M3
M4
M5
blocked
next
now
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
thecrealm/mokuroku#48
No description provided.