--- slug: flags-that-look-alike passed: 2026-10-18 by: the assay line (research/assay-line/claude-1018b/), Claude fixer (claude-opus-5-5) directed by claude-assaying-boyle-1014; source record by a Claude agent (claude-sonnet-5-5), checked by a Claude agent (claude-opus-5-5) checked: 99 confirmed: 71 wrong: 17 # 12 WRONG + 5 MINOR unverifiable: 1 observed: 10 stale: 0 --- This was a directed repair pass over the 17 triage items in research/assay-line/claude-1018b/flags-that-look-alike/triage.json, read at 7b4abfb3b8 (the checker read the layer at 0169ff7cb1). The checker raised twelve WRONG lines and five MINOR. The fixer re-read the evidence for every WRONG line (the page's own matrix.u16, manifest.json, matrix-index.json and raw/gallery.html snapshot, report.mjs, the layer's verifier run, and the BBC article of 2004-04-14) and found all twelve held, so all twelve were fixed, with six dated Corrected lines on the page and seven mirrored in the markdown body (the seventh covers a sentence that exists only in the markdown body). The five MINOR lines are tier B and sit in no sentence being fixed, so they are listed and declined. The claim lines below are the checker's, verbatim. ## Claims - CONFIRMED | Keep It Simple ("so simple that a child can draw it from memory") | http://web.archive.org/web/20210614160131if_/https://nava.org/digital-library/design/GFBF_English.pdf | [nava-simple] PDF text p. 3: "1. Keep It Simple / The flag should be so simple that a child can / draw it from memory . . ." (tool said UNREADABLE because it does not read PDFs; I downloaded and pdftotext'd it) - CONFIRMED | continue through Use 2-3 Basic Colors and No Lettering or Seals, and end with Be Distinctive or Be Related | http://web.archive.org/web/20210614160131if_/https://nava.org/digital-library/design/GFBF_English.pdf | [nava-principles] p. 3: "3. Use 2-3 Basic Colors", "4. No Lettering or Seals", "5. Be Distinctive or Be Related" - CONFIRMED | Design principles: Ted Kaye (comp.), "Good" Flag, "Bad" Flag, NAVA, (c) 2006, 2020 | http://web.archive.org/web/20210614160131if_/https://nava.org/digital-library/design/GFBF_English.pdf | [nava-citation] p. 2: "(c) 2006, 2020 North American Vexillological Association"; cover: "compiled by ted kaye" - CONFIRMED | The standard guidance on flag design is Ted Kaye's | http://web.archive.org/web/20210614160131if_/https://nava.org/digital-library/design/GFBF_English.pdf | [nava-standard] authorship confirmed ("This guide was compiled by Ted Kaye ... who is solely responsible for its content"). "The standard" is the page's characterisation; no source says it, but it is NAVA's own published guide and the one cited across Wikipedia's flag articles (Wikipedia NAVA article: "a general purpose guidebook to effective flag design"). Not a finding - CONFIRMED | What the booklet does say, under principle 5: "Sometimes the good designs are already 'taken'." | http://web.archive.org/web/20210614160131if_/https://nava.org/digital-library/design/GFBF_English.pdf | [nava-taken] p. 12: "Sometimes the good designs are already "taken"." The tool's word-for-word mismatch is only the inner double quotes rendered as single quotes inside a quotation, which is ordinary nesting, not a misquote - CONFIRMED | It concedes scarcity without ever connecting it to principle 1. | http://web.archive.org/web/20210614160131if_/https://nava.org/digital-library/design/GFBF_English.pdf | [nava-p1-scarcity] I read all 8 PDF pages (pdftotext); no sentence links scarcity of designs to simplicity. Positive control: the same text finds "taken" (p. 12) and "Maryland" (p. 14). Note for a fair reader: the booklet does link complexity and indistinctness the other way round (p. 5 West Virginia "no" caption, p. 13 Vermont "virtually indistinguishable from 20 other U.S. state flags, all with a seal") - CONFIRMED | Maryland's "complicated heraldic quarters produce a memorable and distinctive flag" | http://web.archive.org/web/20210614160131if_/https://nava.org/digital-library/design/GFBF_English.pdf | [nava-maryland] printed p. 14: "Maryland's complicated heraldic quarters produce a memorable and distinctive flag." - CONFIRMED | The one place it comes close is a list of exceptions on page 14 | http://web.archive.org/web/20210614160131if_/https://nava.org/digital-library/design/GFBF_English.pdf | [nava-p14] printed p. 14 "All rules have exceptions. ... But depart from these five principles only with caution and purpose." It is the only place complexity is credited with distinctiveness - MINOR | the pairs NAVA's own design booklet names as offenders | http://web.archive.org/web/20210614160131if_/https://nava.org/digital-library/design/GFBF_English.pdf | [nava-offenders] Indonesia/Monaco and Indonesia/Poland are in a "no" caption (p. 13: "exactly the same as Monaco's ... Upside-down it is the same as Poland"). But the third NAVA pair in research/flags-at-a-distance/prereg.mjs NAVA_NAMED, Liberia / United States, is a YES example: "Founded by free African Americans, Liberia reflects that heritage with a similar yet distinctive flag." (rendered spread 12-13, Liberia under "YES"). No figure changes: FOTW also names Liberia / United States, so 66 stands. The source record also mislabels Liberia as a "no" example - CONFIRMED | Kaye states in Raven 8 (2001) that the principles "are generally non-overlapping as well as all-encompassing." | http://web.archive.org/web/20210505164650id_/https://nava.org/digital-library/raven/Raven_v08_2001_p011-038.pdf | [kaye-nonoverlap] E. B. Kaye, "Good Flag, Bad Flag, and the Great NAVA Flag Survey of 2001", Raven 8, pp. 12-13: "I believe it condenses the best thinking on flag design into five basic principles ... The principles are generally non-overlapping as well as all-encompassing." The source record said no source could be found; NAVA's own digital-library PDF is in the Wayback Machine - CONFIRMED | Kaye states in Raven 8 (2001) | https://api.crossref.org/works/10.5840/raven200182 | [kaye-raven-citation] Crossref: Raven: A Journal of Vexillology, vol. 8, pp. 11-38, 2001, Edward B. Kaye; the PDF above is the same article - CONFIRMED | Model: X. Zhang and B. A. Wandell, "A spatial extension of CIELAB for digital color image reproduction", SID Symposium Digest 27 (1996) 731-734. | http://web.archive.org/web/20010516153145id_/http://white.stanford.edu/~brian/scielab/compare/compare.html | [zw-citation] the authors' own reference list (Zhang and Wandell, "Color image fidelity metrics evaluated using image distortion maps", preprint on the S-CIELAB site), ref. 8: "X. Zhang and B. A. Wandell, 'A spatial extension to CIELAB for digital color image reproduction,' in Society for Information Display Symposium Technical Digest, vol. 27, pp. 731-734, SID, 1996." Volume, pages and year match; the authors write "to CIELAB" there and "of CIELAB" in the 1997 journal version, so the title wording is not a finding. The source record said none could be found - CONFIRMED | Model: X. Zhang and B. A. Wandell, "A spatial extension of CIELAB for digital color image reproduction" | https://api.crossref.org/works/10.1889/1.1985127 | [zw-reprint] Crossref: same title and authors, J. Soc. Inf. Display 5(1), 1997, 61-63; confirms title and authors only - CONFIRMED | Threshold: Mahy, Van Eycken & Oosterlinck, Color Res. Appl. 19(2) 1994. | https://api.crossref.org/works/10.1111/j.1520-6378.1994.tb00070.x | [mahy-citation] Crossref: Color Research & Application 19(2), pp. 105-121, April 1994, Mahy, Van Eycken, Oosterlinck - CONFIRMED | Mahy, Van Eycken and Oosterlinck (Color Research & Application 19(2), 1994, 105-121) | https://api.crossref.org/works/10.1111/j.1520-6378.1994.tb00070.x | [mahy-citation-body] as above - CONFIRMED | 2.3 deltaE*ab is the just-noticeable colour difference reported by Mahy, Van Eycken and Oosterlinck | https://arxiv.org/pdf/cs/0109116 | [mahy-2-3] Sharma and Trussell, "Digital Color Imaging", IEEE TIP 6(7) 1997 (arXiv copy): "a deltaE*ab value of around 2.3 corresponds to a JND [70]", where [70] is "M. Mahy, L. Van Eyckden, and A. Oosterlinck, 'Evaluation of uniform color spaces developed after the adoption of CIELAB and CIELUV,' Color Res. Appl., vol. 19, no. 2, pp. 105-121, Apr. 1994." Mahy's abstract does not state 2.3 and the full text is paywalled, so this is the standard secondary attribution, not the primary - CONFIRMED | separates an image into light/dark, red/green and blue/yellow channels, blurs each by the spatial sensitivity of that channel in degrees of visual angle, and only then computes CIELAB | https://raw.githubusercontent.com/wandell/SCIELAB-1996/cacbc977c07a29c3e92a1aec849ee63bba72e6bf/scielab.m | [scielab-channels] scielab.m converts to the opponent representation, filters the "BW", "RG" and "BY" planes, then "Computing CIELAB differences" - CONFIRMED | S-CIELAB, the 1996 model | http://web.archive.org/web/20010516153145id_/http://white.stanford.edu/~brian/scielab/compare/compare.html | [scielab-1996] the authors date the model paper 1996 (SID Digest vol. 27); scielab.m header "Xuemei Zhang 1/28/96" - CONFIRMED | the three channels have wildly different bandwidths: a red-and-green boundary dissolves at a distance where a light-and-dark one is still crisp | https://raw.githubusercontent.com/wandell/SCIELAB-1996/cacbc977c07a29c3e92a1aec849ee63bba72e6bf/separableFilters.m | [scielab-bandwidths] computed from the published weights and half-widths (not just the narrow half-widths the source record compared): the filters fall to half amplitude at about 8.9 (BW), 3.6 (RG) and 2.1 (BY) cycles per degree, and at 8 cpd pass 0.57, 0.21 and 0.08. A factor of 2.5 to 4 in bandwidth supports the sentence; the record's "within a factor of two" reading ignores the weights on the broad Gaussians - CONFIRMED | S-CIELAB is Zhang & Wandell's, and the authors released their MATLAB. | https://raw.githubusercontent.com/wandell/SCIELAB-1996/cacbc977c07a29c3e92a1aec849ee63bba72e6bf/README.txt | [authors-matlab] README: "the first implementation of S-CIELAB ... (X. Zhang and B. Wandell)"; the 1998 S-CIELAB page by Xuemei Zhang offers "Download the Matlab code for S-CIELAB" (Wayback 19991001191120) - CONFIRMED | Its padding routine refuses to pad by more than half the image | https://raw.githubusercontent.com/wandell/SCIELAB-1996/cacbc977c07a29c3e92a1aec849ee63bba72e6bf/pad4conv.m | [pad4conv-half] "If kernel is larger than image, than just pad all side with half the image size"; separableConv.m (the 2-D path scielab.m uses) calls pad4conv on both passes - CONFIRMED | A spatial filter preserves the average of whatever it blurs, so a uniform difference in hue never washes out. | https://raw.githubusercontent.com/wandell/SCIELAB-1996/cacbc977c07a29c3e92a1aec849ee63bba72e6bf/separableFilters.m | [filters-sum-to-1] "the weights are normalized to sum to 1"; x1 weights 1.00327 + 0.114416 - 0.117686 = 1. Unit DC gain is the mathematical property the sentence states - CONFIRMED | the eye's filters span about a degree | https://raw.githubusercontent.com/wandell/SCIELAB-1996/cacbc977c07a29c3e92a1aec849ee63bba72e6bf/separableFilters.m | [filters-span-degree] "Limit the width of filters to 1 degree visual angle"; the broad chromatic components have half-widths 0.826 and 0.645 degrees - MINOR | whose blues are not (#002664 against #002b7f) | https://en.wikipedia.org/wiki/Flag_of_Chad | [chad-hex-wp] Wikipedia's colour table gives Chad's indigo as #00205B, not #002664; #002664 is the fill in the Commons SVG the study measured. The claim (the blues differ) holds under either value; a reader who checks Wikipedia will find a different hex, so the page could say the values are the Commons files' - CONFIRMED | (#002664 against #002b7f) | https://en.wikipedia.org/wiki/Flag_of_Romania | [romania-hex-wp] "Hexadecimal #002B7F" - CONFIRMED | (#002664 against #002b7f) | https://upload.wikimedia.org/wikipedia/commons/4/4b/Flag_of_Chad.svg | [chad-hex-commons] fetched with curl (197 bytes): path "M0 0h300v600H0z" fill="#002664" (tool said UNREADABLE: it strips XML tags) - CONFIRMED | (#002664 against #002b7f) | https://upload.wikimedia.org/wikipedia/commons/7/73/Flag_of_Romania.svg | [romania-hex-commons] fetched with curl (297 bytes): rect x="0" fill="#002B7F" - CONFIRMED | (#002664 against #002b7f) | research/flags-at-a-distance/svg/chad.svg | [chad-hex-data] byte-identical in content to the live Commons file - CONFIRMED | (#002664 against #002b7f) | research/flags-at-a-distance/svg/romania.svg | [romania-hex-data] identical to the live Commons file - CONFIRMED | Chad and Romania, whose layouts are identical | https://upload.wikimedia.org/wikipedia/commons/4/4b/Flag_of_Chad.svg | [chad-romania-layout] both SVGs are 3:2 with three equal vertical bands; Wikipedia Flag of Chad: "almost identical to the national flag of Romania" - CONFIRMED | Chad and Romania, whose layouts are identical | https://en.wikipedia.org/wiki/Flag_of_Romania | [chad-romania-both] "three equal vertical bands colored blue (at the flagpole), yellow, and red" - CONFIRMED | El Salvador and Honduras, two blue-white-blue tribands differing by the device in the middle | research/flags-at-a-distance/png/grid/el-salvador.png | [elsal-honduras] the measured El Salvador flag is the civil ensign (Civil_Ensign_of_El_Salvador.svg), whose device is the motto "DIOS UNION LIBERTAD", not the coat of arms the source record quotes; Honduras has five blue stars. "Different device in the middle" holds for the flag actually measured - CONFIRMED | two blue-white-blue tribands carrying different devices in the middle | https://en.wikipedia.org/wiki/Flag_of_Honduras | [elsal-honduras-body] "A horizontal triband of blue (top and bottom) and white with five blue five-pointed stars" - CONFIRMED | Egypt a gold Eagle of Saladin | https://en.wikipedia.org/wiki/Flag_of_Egypt | [alf-egypt] colour table lists "Gold" (#ffcd00) beside red, white, black; the measured render shows a gold eagle (research/flags-at-a-distance/png/grid/egypt.png) - CONFIRMED | Iraq the takbir in green script | https://en.wikipedia.org/wiki/Flag_of_Iraq | [alf-iraq] "the takbir in green Kufic script, centered on the white stripe" - CONFIRMED | Yemen nothing at all | https://en.wikipedia.org/wiki/Flag_of_Yemen | [alf-yemen] "A horizontal tricolour of red, white, and black"; render shows no charge - CONFIRMED | Three of the five are the Arab Liberation tricolours, which share a red-white-black horizontal triband | https://en.wikipedia.org/wiki/Arab_Liberation_Flag | [alf-triband] red, white, black horizontal tricolour, modified by Egypt and Iraq - CONFIRMED | Andorra's civil flag is a blue-yellow-red vertical tricolour with nothing on it | research/flags-at-a-distance/svg/andorra.svg | [andorra-civil-wp] Flag_of_Andorra_(civil).svg: three bands #0018a8, #fedf00, #d0103a, no charge; the 2026-08-14 gallery snapshot (research/flags-at-a-distance/raw/gallery.html) captions it "Civil flag of Andorra" - WRONG | Andorra's civil flag ... which is to say it is Chad's flag and Romania's | research/flags-at-a-distance/matrix.u16 | [andorra-chad] the page's own matrix, which measures Andorra's civil flag (manifest.json key "andorra"), puts it 30.32 from Chad and 23.74 from Romania at 2.2 degrees (far end 16.19 and 9.68), against 12.77 (6.64) for Chad / Romania; page-data.json mostConfusable "Andorra / Romania" rank 43. Its bands are 32:36:32, its blue #0018a8, its shape 7:10. The Wikipedia sentence the source record cites ("the same goes for Moldova and Andorra's flags") is about the tricolours arising independently, not about identity; Britannica says Andorra "is distinguished by its centrally placed coat of arms" - CONFIRMED | Andorra, Argentina, Haiti and Spain were taken from rows the page captions "Civil flag of..." | research/flags-at-a-distance/raw/gallery.html | [spain-national] snapshot rows: "Civil flag of Spain" (Flag_of_Spain_(civil).svg) then "National flag of Spain" (Flag_of_Spain.svg); the other three are "Civil flag of X" then "State flag of X" - WRONG | Four flags that were the wrong flag. Andorra, Argentina, Haiti and Spain ... (presented as caught and corrected) | research/flags-at-a-distance/manifest.json | [civil-captions-data] in the shipped corpus three of the four are STILL the civil flags: manifest.json flags[] "andorra" = Flag_of_Andorra_(civil).svg, "argentina" = Flag_of_Argentina_(civil).svg, "haiti" = Flag_of_Haiti_(civil).svg; only "spain" became Flag_of_Spain.svg. analyse.mjs reads png/grid/.png, and those grid PNGs show no arms (contact sheet made in scratch). The committed contact-andorra-argentina-haiti-spain.png shows the ARMS versions, so the correction the log describes was later undone by variants.mjs's header-cell rule. The page's own section 7 table prints "Used here: Civil flag of Andorra" - CONFIRMED | Both flags are in the corpus either way. | research/flags-at-a-distance/manifest.json | [verify-four-wrong] all 16 alternates are in manifest.json variants[], svg/ and png/grid/ (16 *-alt files). They are not in the 195-flag matrix (matrix-index.json has no -alt key); see the added "Also measured" line - WRONG | Wikipedia's gallery lists sixteen states twice, once for the flag citizens fly and once for the flag the government flies | research/flags-at-a-distance/raw/gallery.html | [sixteen-wp] the page's own 2026-08-14 snapshot also lists Costa Rica, Liechtenstein, Monaco, Nigeria, Norway, Poland and Tuvalu twice ("National flag of X" then "State flag of X", e.g. "State flag of Poland" = Flag_of_Poland_(with_coat_of_arms).svg) and San Marino ("National flag of San Marino" then "Civil flag of San Marino"): 24 states, not 16. variants.mjs counts only states whose rows say "Civil flag of" followed by State/National, and San Marino's civil row comes second. No measured flag changes (the header-cell rule takes the national row for all eight), but the count is wrong - WRONG | Sixteen countries have two flags, and it changes the answer | research/flags-at-a-distance/raw/gallery.html | [sixteen-data] section 7 heading; same error as above: by the source the page used, at least 24 states are listed with a citizens' and a government flag - CONFIRMED | unless the other row is captioned "National flag of X", which happens once, for Spain | research/flags-at-a-distance/raw/gallery.html | [rule-spain-once] in the snapshot every other "National flag of X" caption (Costa Rica, Liechtenstein, Lithuania, Monaco, Nigeria, Norway, Poland, San Marino, Tuvalu) is on the header row; only Spain's is on the second row - CONFIRMED | The corpus is the 193 UN member states plus the two permanent observers, the Holy See and the State of Palestine, which is 195. | research/flags-at-a-distance/raw/gallery.html | [gallery-universe] snapshot: "As of 2024, the UN currently includes 193 member states and 2 permanent observer states: Palestine and Vatican City" - CONFIRMED | it is the one Wikipedia's Gallery of sovereign state flags uses | research/flags-at-a-distance/raw/gallery.html | [gallery-uses-universe] section "Flags of UN member states and General Assembly non-member observer states" (the requested title redirects to "List of national flags of sovereign states", which manifest.json notes) - MINOR | the parse was cross-checked against the UN's own member list, with zero states unmatched in either direction | research/flags-at-a-distance/manifest.json | [un-crosscheck] zero unmatched is right ("unMembersWithNoFlagRow": [], "flagRowsNotMatchedToUnMemberOrObserver": []), but the list is Wikipedia's article: crossCheck.url https://en.wikipedia.org/wiki/Member_states_of_the_United_Nations, raw/un-members.html title "Member states of the United Nations - Wikipedia", not the UN's own list - CONFIRMED | Ten entities the source lists separately under "Flags of de facto states" were dropped, across eleven rows because Transnistria carries two | research/flags-at-a-distance/raw/gallery.html | [de-facto-ten] snapshot de facto table: Abkhazia, Cook Islands, Kosovo, Niue, Northern Cyprus, Sahrawi Arab Democratic Republic, Somaliland, South Ossetia, Taiwan, Transnistria, "Russian flag used for Transnistria": 11 rows, 10 entities, matching the page's list - CONFIRMED | Each is recorded by name, with its reason, in manifest.json. | research/flags-at-a-distance/manifest.json | [de-facto-data] dropped[]: the 11 de facto rows, each with a reason - CONFIRMED | the Flags of the World reference page Country flags almost identical (last modified 2019) | https://www.crwflags.com/FOTW/FLAGs/xf-like.html | [fotw-2019] "Last modified: 2019-01-23 by rob raeside"; its 25 groups match prereg.mjs FOTW exactly - CONFIRMED | Taiwan's flag appears in the vexillological source this page is validated against, grouped there with Samoa | https://www.crwflags.com/FOTW/FLAGs/xf-like.html | [fotw-taiwan-samoa] "Samoa-Taiwan-Myanmar (former)" - CONFIRMED | Britannica's Flags That Look Alike | http://web.archive.org/web/20260922184652id_/https://www.britannica.com/list/flags-that-look-alike | [britannica] title "Flags That Look Alike", nine sets whose headings match prereg.mjs BRITANNICA (13 pairs) - CONFIRMED | Wherever a pre-registered pair named something outside the 195, the pair was dropped rather than quietly counted, and the dropped names are listed in prereg.mjs. | research/flags-at-a-distance/prereg.mjs | [prereg-dropped] OUT_OF_CORPUS: Puerto Rico, Red Cross Committee, Taiwan, Myanmar (former); expandPairs reports drops - OBSERVED | committed before analyse.mjs was ever run against the corpus | git show 9c51df384eb:research/flags-at-a-distance/prereg.mjs | [prereg-order-md] commit 9c51df384eb (2026-08-14 14:59:45) adds prereg.mjs with analyse.mjs and its message states the order; the corpus repair ran at 15:03:44 (manifest.json repair.ranUtc), the matrix was generated 15:26:25 (matrix-index.json) and committed in 92dcfcf397c 15:50:32; prereg.mjs has no later commit. The log's and ledger's commit id 80d01403d does not exist in this repository - OBSERVED | That list was committed to this repository before the analysis was ever run against the corpus, and the commit order is the evidence. | git show 9c51df384eb:research/flags-at-a-distance/prereg.mjs | [prereg-order] same record as above - CONFIRMED | 66 pairs named by Flags of the World (2019), Britannica, and NAVA's own booklet | research/flags-at-a-distance/prereg.mjs | [prereg-66] recounted by hand: FOTW 65 testable pairs after drops, Britannica adds Norway / Iceland only, NAVA adds none (all three already in FOTW): 66; page-data.json distinctNamedPairs 66 - CONFIRMED | They come back at median rank 128.5 of 18,915, AUC 0.9024. | public/strata/flags-that-look-alike/page-data.json | [auc-median] recreated by the pinned verifier: "66 pairs, median rank 128.5, AUC 0.9024" - CONFIRMED | headed by Monaco / Singapore at rank 4 | public/strata/flags-that-look-alike/page-data.json | [monaco-singapore] highRankNotNamed[0] rank 4 - CONFIRMED | Jordan / Palestine at 13 | public/strata/flags-that-look-alike/page-data.json | [jordan-palestine] rank 13, preRegistered false - CONFIRMED | Only five pairs in 18,915 ever cross the just-noticeable line | public/strata/flags-that-look-alike/page-data.json | [five-merge] verifier recreated: Dominican Republic / United Kingdom; Egypt / Iraq; Egypt / Yemen; El Salvador / Honduras; Iraq / Yemen - CONFIRMED | three of those are the Arab Liberation tricolours (Egypt, Iraq, Yemen) | public/strata/flags-that-look-alike/page-data.json | [three-arab] trulyMerge - CONFIRMED | That pair converges too, to 6.6, and stops there forever | public/strata/flags-that-look-alike/page-data.json | [chad-romania-6-6] plateau 6.64, merges false; verifier "settles at 6.64" - CONFIRMED | those two flags are 79.6 apart up close | public/strata/flags-that-look-alike/page-data.json | [last-row-79] nearDelta 79.56 - CONFIRMED | each is a single dot roughly three arc minutes across | public/strata/flags-that-look-alike/page-data.json | [last-row-arcmin] last rung 0.05 degrees = 3 arc minutes; merge only at that rung (mergeAngleDeg 0.0544) - CONFIRMED | This page walks all 18,915 pairs of the world's national flags away from you, one step at a time | public/strata/flags-that-look-alike/page-data.json | [ladder-24] pairCount 18915 = 195 x 194 / 2, 24 rungs - CONFIRMED | detail r = 0.529 | public/strata/flags-that-look-alike/page-data.json | [detail-r] selfDistance pearson 0.5287; verifier recreated - CONFIRMED | colours r = 0.381 | public/strata/flags-that-look-alike/page-data.json | [colours-r] 0.3813 - CONFIRMED | Median distinctiveness rises monotonically from 25.7 for two-colour flags to 50.5 for five-colour flags. | public/strata/flags-that-look-alike/page-data.json | [median-25-50] 25.68, 31.95, 38.43, 50.5; the claim stops at five, where monotonicity ends (6 colours 39.07) - CONFIRMED | so two-colour flags are the least distinctive on earth | public/strata/flags-that-look-alike/page-data.json | [two-colour-least] lowest median of every colour band present (no one-colour flags in the corpus) - WRONG | Ranked by how large a pair can be and still be merged. | public/strata/flags-that-look-alike/page-data.json | [dist-def] the table is ranked by "ascending by mean S-CIELAB deltaE at 2.20 degrees" (rankingDefinition). Ranked by merge size, El Salvador / Honduras (merges at 0.216 deg) would be first, not fifth behind Iraq / Yemen (0.179); and 55 of the table's 60 rows never merge at all - OBSERVED | identical to 2.3e-13 where no deviation applies | research/flags-at-a-distance/cross-check.json | [agree-2-3e-13] cell "agree" maxAbsDiff 2.2915e-13; Octave is not installed here, so the run itself was not recreated; the pinned verifier reads the record and prints "agree 2.3e-13" - OBSERVED | the port is off by 3.7e-12 and the published reference by 17.14 | research/flags-at-a-distance/cross-check.json | [port-off] adjudication referenceError 17.137, portError 3.72e-12 - CONFIRMED | That code is vendored unmodified in this repository and run under GNU Octave | https://raw.githubusercontent.com/wandell/SCIELAB-1996/cacbc977c07a29c3e92a1aec849ee63bba72e6bf/scielab.m | [octave-diff] I compared all 20 .m files in research/flags-at-a-distance/octave/ with upstream at cacbc977 using cmp: 20 identical; run-reference.m is the repository's own (404 upstream). cross-check.json: "GNU Octave, version 8.4.0" - OBSERVED | Measured, the error reached 8.28 at the far end against a 2.3 threshold. | research/flags-at-a-distance/decimation-check.json | [decim-8-28] row 0.1 deg, step 20, grid 10x6, maxAbsDiff 8.2786; verifier prints "worst error 8.28" - CONFIRMED | the standard error of an average over sixty points | research/flags-at-a-distance/decimation-check.json | [decim-sixty] grid "10x6" = 60 - CONFIRMED | every pair is computed from all 24,576 samples | research/flags-at-a-distance/analyse.mjs | [all-samples] "const DECIMATE = 1"; matrix-index.json grid 192x128 = 24,576 - OBSERVED | Seventy-two flags that were not flags. | research/flags-at-a-distance/manifest.json | [seventy-two] repair: "repaired": 72, ranUtc 15:03:44; counts still show svgFetchedOk 123 of 195 from the first run - OBSERVED | 72 of the 195 "flags" were 1,966-byte HTML error pages | not kept: the error pages were overwritten before the first commit (9c51df384eb adds no svg/ files); described in research/flags-at-a-distance/repair-fetch.mjs and memory/log.d/2026-08-14T2330Z-far-enough-away.md | [error-pages-1966] the byte count is in the record but not checkable - OBSERVED | The first fetch wrote every HTTP response body to disk under a .svg name without checking what it was. | research/flags-at-a-distance/repair-fetch.mjs | [first-fetch] header comment and the builder's log say so - OBSERVED | It was caught by making a contact sheet and looking at it. | research/flags-at-a-distance/contact-andorra-argentina-haiti-spain.png | [contact-sheet] the committed sheet shows the four ARMS versions, and memory/log.d/2026-08-14T2330Z-far-enough-away.md records the catch - WRONG | Had this gone unnoticed the headline here would have been a spectacular near-tie between four countries, and it would have been false. | research/flags-at-a-distance/matrix.u16 | [four-way-tie] it did go uncorrected for Andorra (the matrix measures the civil flag), and the shipped matrix shows no near-tie: Andorra / Romania is rank 43 (deltaE 23.74 at 2.2 deg, far end 9.68), Andorra / Chad 30.32 (16.19). The counterfactual is contradicted by the page's own data - OBSERVED | 19/19 in verify-far-enough-away.mjs, which re-derives every published figure from matrix.u16 without reading report.json | recreated: node verify-far-enough-away.mjs (pinned copy in scratch with research/the-exponent-between-number-and-light/pngread.mjs beside it) | [verify-19] "19 passed, 0 failed", exit 0 - WRONG | The far end of every curve is separately shown to equal the plain CIELAB distance between the two flags' mean colours, to two decimals, from the PNGs. | public/checks/verify-far-enough-away.mjs | [far-end-curve] the check tests four pairs, not every curve, with tolerance 0.35 (eq(got, truth, 0.35, ...)), and its own output for the headline pair is "chad/romania 6.64 vs 6.31", a 0.33 gap, not agreement to two decimals. Text is in src/content/strata/flags-that-look-alike.md line 69 (the md body, which the site does not render) - WRONG | to two decimals, from the PNGs | public/checks/verify-far-enough-away.mjs | [far-end-tol] same check: tolerance 0.35, Chad / Romania off by 0.33 - CONFIRMED | Ordinary acuity resolves about one arc minute | https://en.wikipedia.org/wiki/Visual_acuity | [acuity-1-arcmin] 20/20 "defined as the ability to resolve two points of light separated by a visual angle of one minute of arc" - CONFIRMED | which is 85.6 mm by international standard | https://en.wikipedia.org/wiki/ISO/IEC_7810 | [bank-card] ID-1 85.60 x 53.98 mm - CONFIRMED | Red-green colour deficiency, which affects a substantial share of men | https://en.wikipedia.org/wiki/Color_blindness | [colour-deficiency] "up to 1 in 12 males (8%)" - CONFIRMED | By default the page assumes about 33 pixels to a degree, which is what a 96 dpi display gives at 50 cm. | public/strata/flags-that-look-alike/app.js | [33-ppd] arithmetic: 2 x 500 mm x tan(0.5 deg) = 8.73 mm; 96/25.4 = 3.78 px/mm; 33.0 px per degree; app.js line 154 says the same - CONFIRMED | Nyquist governs reconstruction, not the standard error of a mean over sixty points. | research/flags-at-a-distance/decimation-check.json | [nyquist] the measured failure (8.28 at 0.1 deg) is what carries the point. The stated mechanism is loose: per-pixel deltaE is a nonlinear function of the filtered channels and so is not band-limited even when they are, which is the sharper reason decimation fails; not a finding - WRONG | (folklore) "Overstated. What is attested, via BBC News 2004-04-14 as quoted by Wikipedia, is that Chad asked in 2004 that the UN examine the issue and that President Iliescu refused to change Romania's flag." | http://news.bbc.co.uk/2/hi/europe/3626821.stm | [folklore-un-wp] the BBC article (retrieved now) says the opposite of "attested": "His comments follow unconfirmed reports in the Romanian media that Chad has called on the UN to examine the issue", and Romania's Foreign Ministry "had received no official notification from Chad regarding any move to raise the issue with the UN". Iliescu's refusal is confirmed ("The tricolour belongs to us. We will not give up the tricolour."). Text lives in research/flags-at-a-distance/prereg.mjs UNVERIFIED_FOLKLORE and page-data.json unverifiedFolklore - CONFIRMED | (folklore) "on 2025-05-18 the Romanian presidential candidate George Simion posted a Chad flag emoji while claiming victory (Stirile PRO TV, 2025-05-19)" | https://stirileprotv.ro/divers/george-simion-za-devenit-presedinte-al-ciadului-pagina-de-wikipedia-a-tarii-a-fost-modificata-foto.html | [folklore-simion-wp] published 19-05-2025: on Sunday evening (18 May 2025) Simion wrote on X "I am the New President of" "dupa care a pus un emoji cu ... drapelul Ciadului" (then put an emoji of the flag of Chad). The emoji detail the source record could not confirm from Wikipedia is in the primary - CONFIRMED | (folklore) "Monaco formally protested Indonesia's flag in 1952." / "Not confirmed. English Wikipedia carries one undated sentence ... sourced to a single BBC Magazine piece of 2005-05-11 that could not be retrieved from this host." | http://news.bbc.co.uk/1/hi/magazine/4535873.stm | [folklore-monaco-none] Wikipedia Flag of Indonesia carries the sentence and the BBC Magazine 2005-05-11 citation as stated. The BBC piece (retrievable now) has only Michael Faul's remark "Monaco complained bitterly about it ... But Monaco was not a member of the UN and was small enough to be ignored", with no date and no formal protest, so "Not confirmed" for a 1952 formal protest stands. The source record did not examine this item - WRONG | (added) "Which means the model can then name the pairs whose designs are identical and whose only remaining difference is how long the flag is." (section 5; page-data note "these pairs are identical as designs. What separates them on a real flagpole is the shape of the cloth and nothing else.") | research/flags-at-a-distance/report.mjs | section 5 lists the first 20 of the top-60 pairs whose aspect ratios differ by more than 2% (report.mjs lines 319-341); nothing tests that the designs are identical. The list includes Monaco / Singapore (Singapore's crescent and stars), El Salvador / Honduras (different devices, as section 4 itself says), Afghanistan / Cyprus (black shahada against a copper map), Switzerland / Tunisia, Hungary / India, Afghanistan / Japan, Sudan / Yemen; its own "deltaE as designs" column runs 8.4 to 23.2 (contact sheet made in scratch) - WRONG | (added) "Also measured" (section 7 table column, beside each state's alternate flag) | research/flags-at-a-distance/matrix-index.json | the 16 alternates are fetched and rendered but never measured: matrix-index.json holds 195 flags and no -alt key; analyse.mjs, report.mjs, webdata.mjs and features.mjs contain no reference to variants or alternates (positive control: the same grep finds 15 hits in variants.mjs); page-data.json carries only their captions. variants.mjs promises "BOTH ARE THEN MEASURED ... exactly what the coat of arms is worth in delta-E", which was not done - MINOR | (added) "Flag files: Wikimedia Commons, via Wikipedia's Gallery of sovereign state flags" and "build the corpus from Wikimedia Commons" | research/flags-at-a-distance/manifest.json | 8 of the 195 measured files come from English Wikipedia's local file store, not Commons: brazil, france, india, italy, japan, poland, russia, sweden (sourceUrl upload.wikimedia.org/wikipedia/en/...) - UNVERIFIABLE | (added) (folklore) "Australian and New Zealand flags were swapped at a Rio 2016 medal ceremony." / "Not confirmed. CNN hedges with "apparently"; the New Zealand Herald headline is a question; the cited URL returns 404." | one WebSearch: found an Arkansas Democrat-Gazette item of 2018-07-26 (pressreader) saying the flags were "apparently even swapped" at a Rio medal ceremony, which fits the hedge; could not locate the CNN original, the NZ Herald headline or the 404 URL | the page claims nothing positive here; partial support only - MINOR | (added) dek: "every measure of simplicity correlates positively with distinctiveness, so two-colour flags are the least distinctive on earth" | public/strata/flags-that-look-alike/page-data.json | the four measures (colour count, ink density, described bytes, detail) grow with COMPLEXITY; read literally, "simplicity correlates positively with distinctiveness" says simple flags are more distinctive, the reverse of the finding (r = +0.38 for colours means more colours, more distinct). The "so" clause and the body make the intended meaning clear; same wording in the md body and the verifier title - WRONG | (added) verifier check "the four flags that were silently the wrong flag are the right flag now" (public/checks/verify-far-enough-away.mjs line 88, printed "ok" in the 19/19) | public/checks/verify-far-enough-away.mjs | the check tests only Spain's file, the count of 16 two-flag states and that alternates exist; it cannot fail on Andorra, Argentina or Haiti, which are still the civil flags its title calls wrong. A green line asserting something the shipped corpus contradicts ## Findings - [fixed] andorra-civil-is-chad-flag (K3): "Andorra's civil flag ... which is to say it is Chad's flag and Romania's" recast as "the same three colours in the same order as Chad's and Romania's" in index.html and the md body; the matrix puts it 30.32 from Chad and 23.74 from Romania at 2.2 degrees (rank 43), against 12.77 for Chad / Romania. Corrected line added. - [fixed] civil-flags-presented-as-corrected (K4): the "Four flags that were the wrong flag" paragraph now says the four were first taken from civil rows, the contact sheet caught it, and under the section 7 rule Spain is measured with its arms while Andorra, Argentina and Haiti are measured as their civil flags (manifest.json). Index.html and md body. Corrected line added. - [fixed] two-flag-state-count (K5): "lists sixteen states twice" now "twenty-four", per the gallery snapshot's own captions; the eight not tabulated are said to be measured by their national (header-cell) row, and "Both flags are in the corpus" is scoped to the sixteen. variants.mjs header comment amended to match. Corrected line added. - [fixed] two-flag-state-count (K6): section 7 heading "Sixteen countries have two flags" now "Some countries have two flags" (anchor id kept). Covered by the same Corrected line as K5. - [fixed] section4-ranking-definition (K8): "Ranked by how large a pair can be and still be merged" now "Ranked by how far apart the two flags still are at 2.2 deg wide (mean deltaE), closest first", matching page-data.json rankingDefinition. Corrected line added. - [fixed] near-tie-counterfactual (K9): the sentence "Had this gone unnoticed the headline here would have been a spectacular near-tie between four countries" removed from index.html and the md body; the shipped matrix contains Andorra's civil flag and shows no near-tie. Covered by the K4 Corrected line. - [fixed] far-end-check-overstated (K10): md body "The far end of every curve ... to two decimals" now "For four pairs ... to within 0.35 (Chad / Romania: 6.64 against 6.31)"; the verifier's check title (verify-far-enough-away.mjs at the repository root, the source of the published copy in public/checks/) now says the same. Corrected line in the md body (the sentence is not on the rendered page). - [fixed] far-end-check-overstated (K11): same sentence as K10, "to two decimals" replaced by "to within 0.35". - [fixed] chad-un-request-attested (K12): folklore finding in prereg.mjs UNVERIFIED_FOLKLORE (amendment stated in the file, as its header asks; public/checks copy mirrored) now quotes the BBC's "unconfirmed reports in the Romanian media" and the Foreign Ministry's "no official notification", with Iliescu's refusal as the attested part; page-data.json regenerated with report.mjs and webdata.mjs. Corrected line added. - [fixed] proportion-pairs-identical-designs (K13): section 5 heading now "Pairs the shape of the cloth also separates" and its text no longer says the designs are identical; report.mjs proportionOnly note recast (and regenerated into page-data.json). Corrected line added. - [fixed] alternates-also-measured (K14): section 7 column "Also measured" renamed "Also kept", with the text saying only the primary is measured; variants.mjs "BOTH ARE THEN MEASURED" comment corrected. Covered by the K5 Corrected line. - [fixed] verifier-four-flags-right-now (K17): verify-far-enough-away.mjs (repository root, the source of the published copy in public/checks/) check retitled "the four flags first taken from the civil row are the files the page says it measures" and now asserts Spain's national file, Andorra/Argentina/Haiti's civil files, and the page sentence saying so (made to fail on purpose by mutating either assertion: both went red). - [declined] nava-offenders-liberia (K1, MINOR): Liberia / United States is a YES example in the NAVA booklet, not an offender; no figure changes because FOTW names the pair too. Tier B, listed. - [declined] chad-hex-source (K2, MINOR): #002664 is the Commons file's fill (the one measured); Wikipedia's table gives #00205B. The claim that the blues differ holds. Tier B, listed. - [declined] un-list-is-wikipedia (K7, MINOR): "the UN's own member list" is Wikipedia's Member states of the United Nations article; zero unmatched is right. Tier B, listed. - [declined] corpus-not-all-commons (K15, MINOR): 8 of 195 files came from English Wikipedia's local file store, not Commons. Tier B, listed. - [declined] simplicity-measure-wording (K16, MINOR): "every measure of simplicity correlates positively" reads literally as the reverse of the finding; the following clause carries the meaning. Tier B, listed.