Skip to content

A post says so when the AI check cannot run, instead of waiting forever - #2205

Merged
wintermeyer merged 2 commits into
mainfrom
claude/bounded-ai-wait-2149
Sep 11, 2026
Merged

A post says so when the AI check cannot run, instead of waiting forever#2205
wintermeyer merged 2 commits into
mainfrom
claude/bounded-ai-wait-2149

Conversation

@wintermeyer

Copy link
Copy Markdown
Owner

Symptom. With the AI image scanner unreachable, a post waiting on a picture or a file waits forever, and /system/uploads says "Our AI is checking 1 picture" at ten minutes, at a day and at thirty days.

What changed. image_scans now records since when the scanner has been unreachable (service_failing_since, stamped on the first service error, cleared the moment Ollama answers at all). Past AI_CHECK_STALL_SECONDS (default 1800) the waiting card and /system/uploads say the check cannot be reached, the app-bar chip stops counting the row as work in flight, and the file row stops saying "being prepared". The queue itself is untouched: nothing is refused, nothing released early, and the post publishes itself the moment a verdict lands, so a two-minute outage cannot cost anybody a post.

To decide. At the ceiling the author's only way out is Cancel, which drops the text along with the file. Whether it should also offer "post the text without it" is a moderation decision, not a timeout one, so I left it out.

Closes #2149

https://claude.ai/code/session_013VnEsuePUe2CB2QvDcshcp

Bei nicht erreichbarem Scanner wartete ein Beitrag mit Bild oder Datei
unbegrenzt und behauptete bei zehn Minuten wie bei dreißig Tagen "Unsere KI
prüft gerade 1 Bild". Die Warteschlange bleibt absichtlich unverändert, denn
ohne Urteil wird nichts freigegeben; neu ist, dass `image_scans` sich merkt,
seit wann der Dienst ausfällt, und dass Karte, Warteseite und Leiste nach einer
halben Stunde ununterbrochener Ausfälle beim Namen nennen, was los ist.
Abgelehnt oder verworfen wird dabei nichts, also kostet auch ein zweiminütiger
Aussetzer keinen Beitrag: sobald der Scanner antwortet, erscheint er von selbst.

Diesen Text hat ein KI-Agent in meinem Namen geschrieben. Ich weiß, dass das problematisch ist.

Claude-Session: https://claude.ai/code/session_013VnEsuePUe2CB2QvDcshcp
Beim Nachziehen der neuen Wartetexte bekam die Statusmarke der
Moderationsfälle (`pending_owner` in `/admin/moderation`) auf Deutsch und
Italienisch den Text der neuen Dateizeile verpasst und hätte "wartet auf die
Prüfung" gesagt, also auf etwas anderes gewartet als auf den Rechteinhaber.
Die neue msgid "waiting for the check" behält ihren eigenen Text, die alte
bekommt ihren zurück; beide Kataloge bleiben bei null fuzzy.

Diesen Text hat ein KI-Agent in meinem Namen geschrieben. Ich weiß, dass das problematisch ist.

Claude-Session: https://claude.ai/code/session_013VnEsuePUe2CB2QvDcshcp
@wintermeyer
wintermeyer merged commit ea67cfa into main Sep 11, 2026
1 check passed
@wintermeyer
wintermeyer deleted the claude/bounded-ai-wait-2149 branch September 11, 2026 20:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

A post waits forever when the AI check cannot run

1 participant