doxa-maps/data/tables
doxa-maps-88655c70 799345cba2 Give the film links a destination: 2,049 real per-language deep links
Last tick established that ?languageId= is ignored by the site — a real id and a bogus id
render the same generic library — so 2,087 groups had a film link that did not take them
to the film. Arclight publishes the missing piece: media-components/1_jf-0-0/languages/<id>
returns a shareUrl, and that IS a deep link — jesusfilm.org/watch/jesus/<language-slug>.

2,082 of 2,087 languages now carry one; 304 existing links were upgraded in place and the
rest were written as deep links from the start. The 5 with no shareUrl keep the old URL
and their tooltip says so, rather than every group getting the same hedge.

FETCHED, NOT DERIVED, and that was the judgement call. The slug looks derivable — "Pashto,
Southern" -> pashto-southern, and 8 of 8 sampled names transformed correctly. Eight is not
2,087, and a wrong slug is not a broken link but a link to SOMEONE ELSE'S language, which
is the worst failure available here. So the API was asked 2,087 times, rate-limited at
250ms, cached and resumable so it is asked once. 5 missing, 0 wrong.

★ AND THIS CHECK CAN FAIL, which none of the previous jesusfilm checks could. A real slug
returns a page carrying the media component id `1_jf-0-0`; a bogus slug returns 0 of them.
Sampled 8 deep links: 8 real, 0 bad, and the bogus control returns 0 hits. In a browser
the Bhilali link renders "FEATURE FILM JESUS · Watch now · 128 min FHD" while the bogus
slug renders "404 PAGE NOT FOUND". That is the first time a jesusfilm URL has been
verified rather than assumed in either direction.

THE TOOLTIP PROBE FAILED ON THIS COMMIT, correctly: it asserted the old caveat wording, so
fixing the links broke the test that described the defect. It now asserts the CONTRACT —
a deep link must NOT carry the caveat and a legacy link MUST — which survives the next
change to the words.

SOURCES-CHECKED-AND-REJECTED.md records the shareUrl endpoint and the `1_jf-0-0`
discriminator, so the next agent inherits the answer instead of the dead end.

Verified: coverage gate, pins, table and deep-link probes all pass; the film chip on
German renders the real deep link with the accurate tooltip.
2026-09-24 06:09:11 +00:00
..
arclight-index.json Harvest the whole Arclight catalogue: film coverage 306 -> 2,087 languages 2026-09-24 04:08:30 +00:00
arclight-share-urls.json Give the film links a destination: 2,049 real per-language deep links 2026-09-24 06:09:11 +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 Stop claiming Scripture in a language recorded as "Undetermined" 2026-09-24 05:22:59 +00:00
ebible-index.json List every link, including the 377 languages no pin speaks 2026-09-24 05:13:57 +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 Give the film links a destination: 2,049 real per-language deep links 2026-09-24 06:09:11 +00:00
index.json Stop claiming Scripture in a language recorded as "Undetermined" 2026-09-24 05:22:59 +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 Give the film links a destination: 2,049 real per-language deep links 2026-09-24 06:09:11 +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