doxa-maps/data/tables
doxa-maps-88655c70 f9808d0c8b Harvest the whole Arclight catalogue: film coverage 306 -> 2,087 languages
Same shape as the eBible finding, same cause. Arclight was ALREADY a checked pool and
only 306 language codes carried a film link, while the catalogue lists 2,330 media
languages with 2,087 carrying a feature film. Being inside a pool is not the same as
having been read.

COVERAGE: pins with a real URL 6,985 -> 8,935, 56.4% -> 72.2%. Language codes 2,068 ->
3,196. 1,950 pins lift off "nothing found" and 1,214 move to Scripture AND film. The
resource table grows 1,497 -> 3,043 rows across 2,307 languages.

★ THE VERIFICATION HAD TO BE REDONE, and that is the part worth keeping. The obvious
check is to sample watch URLs and confirm 200. Ten of ten passed. The check was
worthless: https://www.jesusfilm.org/watch/?languageId=<id> is a single-page app and
answers 200 for EVERY id — measured, `0` and `abcdef` both return 200. A check that
cannot fail proves nothing, and that one would have certified 1,781 links on a status
code that is always 200.

The API discriminates where the page does not: media-languages/<id> returns a real
counts.featureFilm for a genuine language and 404 for a bogus one. So existence is
established from the API and the watch URL is the deep link for a language already
confirmed. Re-verified that way: 10/10 sampled languages carry featureFilm >= 1, and
the negative control — a bogus id — returns featureFilm 0, so the check can fail and
does, on the case that should fail.

featureFilm >= 1 IS THE COVERAGE TEST, not roster membership: 21 of the 2,330 listed
media languages have no feature film and are dropped. Only featureFilm is taken;
Arclight also carries short films and other media that were not screened.

FILL, NEVER OVERWRITE, as with eBible — a curated film_url stands, and the catalogue
only supplies a link where there was none. 1,695 of the codes had no row in the
resources table at all.

Verified: all browser probes pass — pins, table, deep link — 12,379 pins rendered, and
the map now reads green across Papua New Guinea, Indonesia, Brazil and Central Africa
where it was red, leaving the remaining red concentrated in the Sahel, the Horn, north
India and Central Asia. The pin table is 1.1MB but 281KB gzipped; the four repeated
pool strings compress 4:1, so interning them would buy nothing on the wire.
2026-09-24 04:08:30 +00:00
..
arclight-index.json Harvest the whole Arclight catalogue: film coverage 306 -> 2,087 languages 2026-09-24 04:08:30 +00:00
city-bridge-opportunities.json Data out of public/ (phase 2): posters + tables live in data/ 2026-09-16 01:37:52 +00:00
country-connectivity.json Data out of public/ (phase 2): posters + tables live in data/ 2026-09-16 01:37:52 +00:00
deaf-gap.json Data out of public/ (phase 2): posters + tables live in data/ 2026-09-16 01:37:52 +00:00
door43-index.json Add Door43 as a third pool, so 240 groups stop reading "nothing found" 2026-09-24 03:18:27 +00:00
ebible-index.json Harvest the whole eBible catalogue, not a tenth of it 2026-09-24 04:01:04 +00:00
gaps-and-opportunities.json Public data ships without working notes; unused data files stay out of the drop-in 2026-09-16 20:16:08 -05:00
gospel-access-vs-growth.json Data out of public/ (phase 2): posters + tables live in data/ 2026-09-16 01:37:52 +00:00
gospel-by-country.json Data out of public/ (phase 2): posters + tables live in data/ 2026-09-16 01:37:52 +00:00
gospel-link-verification.json Public data ships without working notes; unused data files stay out of the drop-in 2026-09-16 20:16:08 -05:00
gospel-resource-links.json Harvest the whole Arclight catalogue: film coverage 306 -> 2,087 languages 2026-09-24 04:08:30 +00:00
index.json Harvest the whole Arclight catalogue: film coverage 306 -> 2,087 languages 2026-09-24 04:08:30 +00:00
internet-by-country.json Data out of public/ (phase 2): posters + tables live in data/ 2026-09-16 01:37:52 +00:00
key-cities-admin-n.json Public data ships without working notes; unused data files stay out of the drop-in 2026-09-16 20:16:08 -05:00
key-cities.json Data out of public/ (phase 2): posters + tables live in data/ 2026-09-16 01:37:52 +00:00
languages-by-country.json Public data ships without working notes; unused data files stay out of the drop-in 2026-09-16 20:16:08 -05:00
languages-per-city.json Data out of public/ (phase 2): posters + tables live in data/ 2026-09-16 01:37:52 +00:00
messaging-channels.json Data out of public/ (phase 2): posters + tables live in data/ 2026-09-16 01:37:52 +00:00
network-operators.json Data out of public/ (phase 2): posters + tables live in data/ 2026-09-16 01:37:52 +00:00
open-doors.json Public data ships without working notes; unused data files stay out of the drop-in 2026-09-16 20:16:08 -05:00
people-group-pins.json Harvest the whole Arclight catalogue: film coverage 306 -> 2,087 languages 2026-09-24 04:08:30 +00:00
people-group-resources.json Public data ships without working notes; unused data files stay out of the drop-in 2026-09-16 20:16:08 -05:00
platform-reachability.json Data out of public/ (phase 2): posters + tables live in data/ 2026-09-16 01:37:52 +00:00
social-platforms.json Data out of public/ (phase 2): posters + tables live in data/ 2026-09-16 01:37:52 +00:00