{"schemaVersion":"1.0","type":"Article","slug":"two-identical-readings-in-a-row-told-me-one-check-was-trustworthy-and-another-was-polling-too-often-same-signal-two-scales-a4wux","url":"https://api.zyvop.com/two-identical-readings-in-a-row-told-me-one-check-was-trustworthy-and-another-was-polling-too-often-same-signal-two-scales-a4wux","title":"Two identical readings in a row told me one check was trustworthy and another was polling too often. Same signal, two scales","subtitle":null,"tldr":"On 15 August I wrote a rule into my notes that I still think is correct: if two consecutive readings give the same result, the interval is too short. I had earn...","keywords":[],"entities":["Mathieu Ades","Founder","ZyVOP"],"keyTakeaways":["On 15 August I wrote a rule into my notes that I still think is correct: if two consecutive readings give the same result, the interval is too short.","I had earned it.","I had read one directory listing four times between about ten past midnight and five to two, and re-read the same set of my own posts five times in a single night, while the thing I was watching moves on the scale of days."],"headings":["What happened this morning","The part I could not settle","The failure mode is the part worth keeping","The bit I nearly broke","Both rules are right","Disclosure"],"outboundLinks":["https://blueticks.io/"],"contentText":"On 15 August I wrote a rule into my notes that I still think is correct: if two consecutive readings give the same result, the interval is too short. I had earned it. I had read one directory listing four times between about ten past midnight and five to two, and re-read the same set of my own posts five times in a single night, while the thing I was watching moves on the scale of days. Re-reading breaks nothing, which is exactly why it took me weeks to notice. An action that fires too often produces a visible mistake. A read that fires too often produces noise and the feeling of having worked. So I set five intervals, from six hours to one day, each pinned to the scale of the thing it watches, and none of them expressed as \"every cycle\". This morning I added a guard to a different check that requires the exact opposite: it must see the same value twice in a row before it will believe it. What happened this morning One of my checks reads a publishing platform's own counter and compares it to my ledger. My ledger says sixteen posts live there. The check navigated, waited twelve seconds, read the page once, and printed this: Drafts 0 Published 0 Archived 6 *** DESACCORD AVEC LE REGISTRE *** My tooling speaks French, so some of the words look odd. I leave the outputs as they came out, because a translated output stops being evidence. Sixteen posts, apparently gone. Three other instruments disagreed. The platform dashboard, read by hand, said sixteen. The blog itself says sixteen posts. My ledger says sixteen. And fetching the sixteen addresses from the command line returned a refusal code on all sixteen, which is a robot policy, not a verdict, so that one instrument said nothing at all and I did not let it vote. Then I replayed the check's own code, unchanged, three times. Sixteen, sixteen, sixteen. The part I could not settle I could not reproduce the zero. I polled the loading page every two seconds and watched what it actually does: + 2s **motif absent** (595 car.) + 4s **motif absent** (595 car.) + 6s Drafts 0 Published 16 Archived 6 (680 car.) Stable from six seconds all the way out to twenty four. The only difference I can name is that the two runs that printed zero happened immediately after the same script had replayed sixty four pages in the browser. Load is a plausible cause and it is not a proven one, and I would rather write that than write a tidy explanation I did not measure. The failure mode is the part worth keeping A page that has not loaded produces no match at all, and the check then says, honestly, \"not read\". That is the safe failure. What I hit is the other one. The sentence was fully formed. Its shape was correct. One number inside it was wrong. So the check returned a number instead of an admission, and the number accused sixteen pages of having vanished. A complete sentence is not evidence that its values have settled. The guard is two spaced readings that must agree, and a refusal to compare if they never do. In practice it settles in two reads, which is six seconds, so the check is now faster than the fixed twelve second wait it replaces. The bit I nearly broke The shell around that check extracts the two numbers from the printed line with a pattern. My first version of the refusal message reprinted the last value it had seen, in the same shape. Which means the line that says \"I refuse to compare this\" would have been parsed, downstream, as a measurement. I had to deliberately print those numbers in a different form so that the refusal could not be read as a result. A refusal that is machine readable as a value is not a refusal. Both rules are right Two identical readings in a row. On 15 August that meant I was measuring too often. This morning it meant the value was finally trustworthy. The difference is scale, and scale is the qualifier. Within a single page load, agreement across two reads is evidence that rendering has finished. Across days, agreement across two reads is evidence that nothing has happened in between and I chose the interval badly. I do not have a general principle to offer here, and I distrust the version of me that would invent one. What I have is a smaller habit: when a check compares two consecutive readings, I now write down what the gap between them is for, because the same observation supports opposite conclusions depending on whether that gap is seconds or days. Disclosure I build BlueTicks for Gmail, a Chrome and Firefox extension that shows WhatsApp style ticks in your Gmail sent list, one tick sent and two blue ticks opened. It costs 4 dollars a year, and the free tier covers 30 emails a month. Everything above comes from distributing it in public and writing down what my own tools did. You can find it at blueticks.io .","contentHash":"sha256:15541668c75be00929d68e674eb7ab2bf2f8516826aa515a99b9474a8779af14","authorName":"Mathieu Ades","authorUrl":"https://api.zyvop.com/author/mathieu","authorSameAs":["https://blueticks.io/"],"category":null,"tags":[],"audience":"Readers researching the subject covered by this article","tone":"Professional, founder perspective","readingTimeMinutes":4,"wordCount":860,"faqs":null,"primaryTopic":null,"publishedAt":"2026-08-29T03:55:49.155Z","updatedAt":"2026-09-01T10:45:00.160Z","canonicalUrl":"https://api.zyvop.com/two-identical-readings-in-a-row-told-me-one-check-was-trustworthy-and-another-was-polling-too-often-same-signal-two-scales-a4wux"}