mirror of
https://github.com/thegeneralist01/archivr
synced 2026-10-09 12:55:00 +02:00
GET is read-only and gated exactly like entry detail, so a guest can read a summary only for an entry whose content they could already read. POST requires ROLE_USER, matching capture / tags / patch / rearchive; no auth roles change. Both the provider config and the content extraction resolve on the request thread, before spawn_blocking. That is what lets a missing env var come back as a synchronous 400 naming the exact variable, and an unsummarizable artifact (video, audio) as a 400 saying so, rather than becoming a background job the caller must poll only to learn about a config typo. The pending row is claimed before spawning so the 202 can name a summary_uid the client can poll immediately. summarize_entry owns the pending → running → completed/failed transitions for that same row — the cache key is identical, so both upserts resolve to one row — leaving the handler to catch only the case where it fails before recording anything. When !force and an identical cache key already completed, the existing row comes back as a 200 with no new work. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| archivr-cli | ||
| archivr-core | ||
| archivr-server | ||