Backfill-script voor reacties, en de volgorde-eis die ik gemist had
VOLGORDE-CORRECTIE op het plan in shaer-9e9: de backfill hoort TUSSEN fase 1 en
fase 2, niet ergens bij fase 0. Zodra de lezers naar de tussentabel wijzen
verdwijnen reacties die alleen in de kolommen staan uit beeld -- stil, want een
ontbrekende rij is geen fout. Mijn plan noemde de backfill-statements wel maar
zei niet wanneer ze moeten draaien.
Het script vult de tussentabel aan vanuit ap_timeline.liked/boosted. Idempotent
(INSERT OR IGNORE + de UNIQUE), met --dry-run, en het faalt met exit 1 als er
achteraf nog een vlag zonder tegenhanger is of als het aantal toegevoegde rijen
afwijkt van de meting vooraf. Dat laatste is het punt: je wilt kunnen zien dat je
precies het gemeten aantal hebt aangevuld en niet meer.
De controle kijkt per SOORT, niet per rij. Een post kan een like-rij in de
tussentabel hebben en toch een boost-vlag missen; de samenvattende meting uit
fase 0 telt die als "in orde" en dit script niet.
Gedraaid op dev: 13 rijen aangevuld (10 like, 3 boost), tussentabel 3 -> 16,
daarna nul vlaggen zonder tegenhanger en nul tussentabel-rijen zonder vlag. Er
staat een backup naast de database (database.sqlite.voor-backfill).
De oorspronkelijke reactiedatum is niet te herstellen -- wanneer je reageerde is
nergens vastgelegd, dus de backfill-rijen dragen de datum van nu. Dat staat ook
in de kop van het script.
Co-Authored-By: Claude Opus 5 <noreply@…>