The sitemap entry that was its own address twice
One of 558 addresses in a rival’s sitemap was their domain pasted after itself. It answered 404, and the honest count is 557 read, one excluded, not all.
On Sunday we read a second rival’s site the whole-site way: every address their sitemap lists, fetched as a browser and turned into text, so that each blank cell in their column of our comparison table could be settled by a sentence rather than by a search box. The sitemap gave us 558 addresses once the locale copies were set aside. 557 of them answered 200. One answered 404, and when we looked at why, the address was the site’s own domain written twice over: the host, a slash, and then the host again with its scheme, as if somebody had pasted a full address into a field that already held one.
What to do with the one that failed
The lazy count is “all 558 pages were read”, and it is wrong by one. The nervous count is to drop the whole run because one entry did not behave, and that throws away 557 good reads over a typo in somebody else’s file. The honest count is the one we wrote in the worklog and on the comparison page: 557 read, one excluded, and what the excluded one was. A reader who sees “558” and then finds the broken entry has a reason to doubt the other 557. A reader who sees “557 of 558, one malformed” has been told the shape of the thing before they went looking.
The same habit runs through the product. The photo screen’s bulk runs end by saying how many were taken and how many could not be, by name, rather than a tick. The nightly shop-link check records blocked as a different word from dead, because a shop that refused a robot is not a shop that has gone. A count that absorbs its own exceptions is a count nobody can check.
What the broken entry is not evidence of
It is tempting to read a malformed sitemap entry as a sign of a careless company, and to let that colour the cells. It is one line in a generated file of 1,611, and it tells you that a template somewhere concatenates a base address with a field that was already absolute. It says nothing about whether their kitchen screen works. We excluded it, we named it, and we moved on to the sentences, which is where the comparison actually lives.
The rule we keep: every number on the comparison page is a number somebody could reproduce, and a number is reproducible only when its exceptions are written beside it. 558 is the list. 557 is the read. The one between them is a pasted address, and now you know that too.