Skip to content

Commit 9728a32

Browse files
sgf36claude
andcommitted
Rebuild apps.html and android-privacy.html, which the pipeline had stopped touching
Deploying the campaign-link change reported the live site out of step: 1 of 159 FAILED: FAIL apps.html (content differs: live 7,616 chars, repo 7,988) apps.html and android-privacy.html were dropped from config.PAGES at some point. Both still carry the pipeline's marker comments and android-privacy still has its legal banner, so both were built by it once. Nothing announced the loss: they simply stopped being rebuilt and stopped being uploaded, and every deploy since has reported success while leaving them exactly as they were. The visible cost was that the App Store links on apps.html stayed bare through the change that was meant to fix them — in all sixteen languages. That is the same failure the comment beside the easy-post page list already describes: "a page missing from this list is built and uploaded nowhere, which is how apps.html sat unpublished while everything reported success." The identical bug was sitting in the entry below it. Both pages are back in the list (see sgf36/site-tooling), their units are in translation memory, and the whole site rebuilds to 0 units left English. One exception worth naming rather than hiding: the Telugu privacy page has one unit the validator rejected twice for a tag mismatch. It does not appear in the rendered page and the live page does not carry it either, so nothing regresses, but the counter reads 1 rather than 0. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
1 parent acd45ab commit 9728a32

96 files changed

Lines changed: 1938 additions & 1517 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

web/android-privacy.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636

3737

3838

39-
<link rel="canonical" href="https://wren.spencerfields.com/android-android-privacy.html"><!-- i18n:begin --><link rel="alternate" hreflang="x-default" href="https://wren.spencerfields.com/android-android-android-privacy.html"><link rel="alternate" hreflang="en" href="https://wren.spencerfields.com/android-android-android-privacy.html"><link rel="alternate" hreflang="zh" href="https://wren.spencerfields.com/zh/android-android-android-privacy.html"><link rel="alternate" hreflang="hi" href="https://wren.spencerfields.com/hi/android-android-android-privacy.html"><link rel="alternate" hreflang="es" href="https://wren.spencerfields.com/es/android-android-android-privacy.html"><link rel="alternate" hreflang="ar" href="https://wren.spencerfields.com/ar/android-android-android-privacy.html"><link rel="alternate" hreflang="fr" href="https://wren.spencerfields.com/fr/android-android-android-privacy.html"><link rel="alternate" hreflang="bn" href="https://wren.spencerfields.com/bn/android-android-android-privacy.html"><link rel="alternate" hreflang="pt" href="https://wren.spencerfields.com/pt/android-android-android-privacy.html"><link rel="alternate" hreflang="id" href="https://wren.spencerfields.com/id/android-android-android-privacy.html"><link rel="alternate" hreflang="ur" href="https://wren.spencerfields.com/ur/android-android-android-privacy.html"><link rel="alternate" hreflang="ru" href="https://wren.spencerfields.com/ru/android-android-android-privacy.html"><link rel="alternate" hreflang="de" href="https://wren.spencerfields.com/de/android-android-android-privacy.html"><link rel="alternate" hreflang="ja" href="https://wren.spencerfields.com/ja/android-android-android-privacy.html"><link rel="alternate" hreflang="mr" href="https://wren.spencerfields.com/mr/android-android-android-privacy.html"><link rel="alternate" hreflang="te" href="https://wren.spencerfields.com/te/android-android-android-privacy.html"><link rel="alternate" hreflang="sv" href="https://wren.spencerfields.com/sv/android-android-android-privacy.html"><!-- i18n:end --></head>
39+
<link rel="canonical" href="https://wren.spencerfields.com/android-privacy.html"><!-- i18n:begin --><link rel="alternate" hreflang="x-default" href="https://wren.spencerfields.com/android-privacy.html"><link rel="alternate" hreflang="en" href="https://wren.spencerfields.com/android-privacy.html"><link rel="alternate" hreflang="ar" href="https://wren.spencerfields.com/ar/android-privacy.html"><link rel="alternate" hreflang="bn" href="https://wren.spencerfields.com/bn/android-privacy.html"><link rel="alternate" hreflang="de" href="https://wren.spencerfields.com/de/android-privacy.html"><link rel="alternate" hreflang="es" href="https://wren.spencerfields.com/es/android-privacy.html"><link rel="alternate" hreflang="fr" href="https://wren.spencerfields.com/fr/android-privacy.html"><link rel="alternate" hreflang="hi" href="https://wren.spencerfields.com/hi/android-privacy.html"><link rel="alternate" hreflang="id" href="https://wren.spencerfields.com/id/android-privacy.html"><link rel="alternate" hreflang="ja" href="https://wren.spencerfields.com/ja/android-privacy.html"><link rel="alternate" hreflang="mr" href="https://wren.spencerfields.com/mr/android-privacy.html"><link rel="alternate" hreflang="pt" href="https://wren.spencerfields.com/pt/android-privacy.html"><link rel="alternate" hreflang="ru" href="https://wren.spencerfields.com/ru/android-privacy.html"><link rel="alternate" hreflang="sv" href="https://wren.spencerfields.com/sv/android-privacy.html"><link rel="alternate" hreflang="te" href="https://wren.spencerfields.com/te/android-privacy.html"><link rel="alternate" hreflang="ur" href="https://wren.spencerfields.com/ur/android-privacy.html"><link rel="alternate" hreflang="zh" href="https://wren.spencerfields.com/zh/android-privacy.html"><!-- i18n:end --></head>
4040

4141

4242

@@ -136,7 +136,7 @@
136136

137137

138138

139-
<!-- i18n:begin --><details class="i18n-picker"><summary><span aria-hidden="true">🌐</span> English</summary><ul><li><span aria-current="true" class="i18n-current">English</span></li><li><a href="zh/android-privacy.html" lang="zh" hreflang="zh">简体中文</a></li><li><a href="hi/android-privacy.html" lang="hi" hreflang="hi">हिन्दी</a></li><li><a href="es/android-privacy.html" lang="es" hreflang="es">Español</a></li><li><a href="ar/android-privacy.html" lang="ar" hreflang="ar">العربية</a></li><li><a href="fr/android-privacy.html" lang="fr" hreflang="fr">Français</a></li><li><a href="bn/android-privacy.html" lang="bn" hreflang="bn">বাংলা</a></li><li><a href="pt/android-privacy.html" lang="pt" hreflang="pt">Português</a></li><li><a href="id/android-privacy.html" lang="id" hreflang="id">Bahasa Indonesia</a></li><li><a href="ur/android-privacy.html" lang="ur" hreflang="ur">اردو</a></li><li><a href="ru/android-privacy.html" lang="ru" hreflang="ru">Русский</a></li><li><a href="de/android-privacy.html" lang="de" hreflang="de">Deutsch</a></li><li><a href="ja/android-privacy.html" lang="ja" hreflang="ja">日本語</a></li><li><a href="mr/android-privacy.html" lang="mr" hreflang="mr">मराठी</a></li><li><a href="te/android-privacy.html" lang="te" hreflang="te">తెలుగు</a></li><li><a href="sv/android-privacy.html" lang="sv" hreflang="sv">Svenska</a></li></ul></details><style>.i18n-picker{margin:.75rem 0 1.25rem;font-size:.9rem;border:1px solid currentColor;border-radius:6px;padding:.4rem .7rem;display:inline-block;opacity:.75}.i18n-picker[open]{display:block}.i18n-picker:hover{opacity:1}.i18n-picker summary{cursor:pointer;list-style:none}.i18n-picker summary::-webkit-details-marker{display:none}.i18n-picker summary::after{content:' \25BE'}.i18n-picker[open] summary::after{content:' \25B4'}.i18n-picker ul{list-style:none;padding:.75rem 0 .15rem;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.4rem .9rem}.i18n-picker li{margin:0}.i18n-picker a{text-decoration:none}.i18n-picker a:hover{text-decoration:underline}.i18n-current{font-weight:700}</style><!-- i18n:end --><header class="hero">
139+
<!-- i18n:begin --><details class="i18n-picker"><summary><span aria-hidden="true">🌐</span> English</summary><ul><li><span aria-current="true" class="i18n-current">English</span></li><li><a href="ar/android-privacy.html" lang="ar" hreflang="ar">العربية</a></li><li><a href="bn/android-privacy.html" lang="bn" hreflang="bn">বাংলা</a></li><li><a href="de/android-privacy.html" lang="de" hreflang="de">Deutsch</a></li><li><a href="es/android-privacy.html" lang="es" hreflang="es">Español</a></li><li><a href="fr/android-privacy.html" lang="fr" hreflang="fr">Français</a></li><li><a href="hi/android-privacy.html" lang="hi" hreflang="hi">हिन्दी</a></li><li><a href="id/android-privacy.html" lang="id" hreflang="id">Bahasa Indonesia</a></li><li><a href="ja/android-privacy.html" lang="ja" hreflang="ja">日本語</a></li><li><a href="mr/android-privacy.html" lang="mr" hreflang="mr">मराठी</a></li><li><a href="pt/android-privacy.html" lang="pt" hreflang="pt">Português</a></li><li><a href="ru/android-privacy.html" lang="ru" hreflang="ru">Русский</a></li><li><a href="sv/android-privacy.html" lang="sv" hreflang="sv">Svenska</a></li><li><a href="te/android-privacy.html" lang="te" hreflang="te">తెలుగు</a></li><li><a href="ur/android-privacy.html" lang="ur" hreflang="ur">اردو</a></li><li><a href="zh/android-privacy.html" lang="zh" hreflang="zh">简体中文</a></li></ul></details><style>.i18n-picker{margin:.75rem 0 1.25rem;font-size:.9rem;border:1px solid currentColor;border-radius:6px;padding:.4rem .7rem;display:inline-block;opacity:.75}.i18n-picker[open]{display:block}.i18n-picker:hover{opacity:1}.i18n-picker summary{cursor:pointer;list-style:none}.i18n-picker summary::-webkit-details-marker{display:none}.i18n-picker summary::after{content:' \25BE'}.i18n-picker[open] summary::after{content:' \25B4'}.i18n-picker ul{list-style:none;padding:.75rem 0 .15rem;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.4rem .9rem}.i18n-picker li{margin:0}.i18n-picker a{text-decoration:none}.i18n-picker a:hover{text-decoration:underline}.i18n-current{font-weight:700}</style><!-- i18n:end --><header class="hero">
140140

141141

142142

web/apps.html

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636

3737

3838

39-
<link rel="canonical" href="https://wren.spencerfields.com/apps.html"><!-- i18n:begin --><link rel="alternate" hreflang="x-default" href="https://wren.spencerfields.com/apps.html"><link rel="alternate" hreflang="en" href="https://wren.spencerfields.com/apps.html"><link rel="alternate" hreflang="zh" href="https://wren.spencerfields.com/zh/apps.html"><link rel="alternate" hreflang="hi" href="https://wren.spencerfields.com/hi/apps.html"><link rel="alternate" hreflang="es" href="https://wren.spencerfields.com/es/apps.html"><link rel="alternate" hreflang="ar" href="https://wren.spencerfields.com/ar/apps.html"><link rel="alternate" hreflang="fr" href="https://wren.spencerfields.com/fr/apps.html"><link rel="alternate" hreflang="bn" href="https://wren.spencerfields.com/bn/apps.html"><link rel="alternate" hreflang="pt" href="https://wren.spencerfields.com/pt/apps.html"><link rel="alternate" hreflang="id" href="https://wren.spencerfields.com/id/apps.html"><link rel="alternate" hreflang="ur" href="https://wren.spencerfields.com/ur/apps.html"><link rel="alternate" hreflang="ru" href="https://wren.spencerfields.com/ru/apps.html"><link rel="alternate" hreflang="de" href="https://wren.spencerfields.com/de/apps.html"><link rel="alternate" hreflang="ja" href="https://wren.spencerfields.com/ja/apps.html"><link rel="alternate" hreflang="mr" href="https://wren.spencerfields.com/mr/apps.html"><link rel="alternate" hreflang="te" href="https://wren.spencerfields.com/te/apps.html"><link rel="alternate" hreflang="sv" href="https://wren.spencerfields.com/sv/apps.html"><!-- i18n:end --></head>
39+
<link rel="canonical" href="https://wren.spencerfields.com/apps.html"><!-- i18n:begin --><link rel="alternate" hreflang="x-default" href="https://wren.spencerfields.com/apps.html"><link rel="alternate" hreflang="en" href="https://wren.spencerfields.com/apps.html"><link rel="alternate" hreflang="ar" href="https://wren.spencerfields.com/ar/apps.html"><link rel="alternate" hreflang="bn" href="https://wren.spencerfields.com/bn/apps.html"><link rel="alternate" hreflang="de" href="https://wren.spencerfields.com/de/apps.html"><link rel="alternate" hreflang="es" href="https://wren.spencerfields.com/es/apps.html"><link rel="alternate" hreflang="fr" href="https://wren.spencerfields.com/fr/apps.html"><link rel="alternate" hreflang="hi" href="https://wren.spencerfields.com/hi/apps.html"><link rel="alternate" hreflang="id" href="https://wren.spencerfields.com/id/apps.html"><link rel="alternate" hreflang="ja" href="https://wren.spencerfields.com/ja/apps.html"><link rel="alternate" hreflang="mr" href="https://wren.spencerfields.com/mr/apps.html"><link rel="alternate" hreflang="pt" href="https://wren.spencerfields.com/pt/apps.html"><link rel="alternate" hreflang="ru" href="https://wren.spencerfields.com/ru/apps.html"><link rel="alternate" hreflang="sv" href="https://wren.spencerfields.com/sv/apps.html"><link rel="alternate" hreflang="te" href="https://wren.spencerfields.com/te/apps.html"><link rel="alternate" hreflang="ur" href="https://wren.spencerfields.com/ur/apps.html"><link rel="alternate" hreflang="zh" href="https://wren.spencerfields.com/zh/apps.html"><!-- i18n:end --></head>
4040

4141

4242

@@ -136,7 +136,7 @@
136136

137137

138138

139-
<!-- i18n:begin --><details class="i18n-picker"><summary><span aria-hidden="true">🌐</span> English</summary><ul><li><span aria-current="true" class="i18n-current">English</span></li><li><a href="zh/apps.html" lang="zh" hreflang="zh">简体中文</a></li><li><a href="hi/apps.html" lang="hi" hreflang="hi">हिन्दी</a></li><li><a href="es/apps.html" lang="es" hreflang="es">Español</a></li><li><a href="ar/apps.html" lang="ar" hreflang="ar">العربية</a></li><li><a href="fr/apps.html" lang="fr" hreflang="fr">Français</a></li><li><a href="bn/apps.html" lang="bn" hreflang="bn">বাংলা</a></li><li><a href="pt/apps.html" lang="pt" hreflang="pt">Português</a></li><li><a href="id/apps.html" lang="id" hreflang="id">Bahasa Indonesia</a></li><li><a href="ur/apps.html" lang="ur" hreflang="ur">اردو</a></li><li><a href="ru/apps.html" lang="ru" hreflang="ru">Русский</a></li><li><a href="de/apps.html" lang="de" hreflang="de">Deutsch</a></li><li><a href="ja/apps.html" lang="ja" hreflang="ja">日本語</a></li><li><a href="mr/apps.html" lang="mr" hreflang="mr">मराठी</a></li><li><a href="te/apps.html" lang="te" hreflang="te">తెలుగు</a></li><li><a href="sv/apps.html" lang="sv" hreflang="sv">Svenska</a></li></ul></details><style>.i18n-picker{margin:.75rem 0 1.25rem;font-size:.9rem;border:1px solid currentColor;border-radius:6px;padding:.4rem .7rem;display:inline-block;opacity:.75}.i18n-picker[open]{display:block}.i18n-picker:hover{opacity:1}.i18n-picker summary{cursor:pointer;list-style:none}.i18n-picker summary::-webkit-details-marker{display:none}.i18n-picker summary::after{content:' \25BE'}.i18n-picker[open] summary::after{content:' \25B4'}.i18n-picker ul{list-style:none;padding:.75rem 0 .15rem;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.4rem .9rem}.i18n-picker li{margin:0}.i18n-picker a{text-decoration:none}.i18n-picker a:hover{text-decoration:underline}.i18n-current{font-weight:700}</style><!-- i18n:end --><header class="hero">
139+
<!-- i18n:begin --><details class="i18n-picker"><summary><span aria-hidden="true">🌐</span> English</summary><ul><li><span aria-current="true" class="i18n-current">English</span></li><li><a href="ar/apps.html" lang="ar" hreflang="ar">العربية</a></li><li><a href="bn/apps.html" lang="bn" hreflang="bn">বাংলা</a></li><li><a href="de/apps.html" lang="de" hreflang="de">Deutsch</a></li><li><a href="es/apps.html" lang="es" hreflang="es">Español</a></li><li><a href="fr/apps.html" lang="fr" hreflang="fr">Français</a></li><li><a href="hi/apps.html" lang="hi" hreflang="hi">हिन्दी</a></li><li><a href="id/apps.html" lang="id" hreflang="id">Bahasa Indonesia</a></li><li><a href="ja/apps.html" lang="ja" hreflang="ja">日本語</a></li><li><a href="mr/apps.html" lang="mr" hreflang="mr">मराठी</a></li><li><a href="pt/apps.html" lang="pt" hreflang="pt">Português</a></li><li><a href="ru/apps.html" lang="ru" hreflang="ru">Русский</a></li><li><a href="sv/apps.html" lang="sv" hreflang="sv">Svenska</a></li><li><a href="te/apps.html" lang="te" hreflang="te">తెలుగు</a></li><li><a href="ur/apps.html" lang="ur" hreflang="ur">اردو</a></li><li><a href="zh/apps.html" lang="zh" hreflang="zh">简体中文</a></li></ul></details><style>.i18n-picker{margin:.75rem 0 1.25rem;font-size:.9rem;border:1px solid currentColor;border-radius:6px;padding:.4rem .7rem;display:inline-block;opacity:.75}.i18n-picker[open]{display:block}.i18n-picker:hover{opacity:1}.i18n-picker summary{cursor:pointer;list-style:none}.i18n-picker summary::-webkit-details-marker{display:none}.i18n-picker summary::after{content:' \25BE'}.i18n-picker[open] summary::after{content:' \25B4'}.i18n-picker ul{list-style:none;padding:.75rem 0 .15rem;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.4rem .9rem}.i18n-picker li{margin:0}.i18n-picker a{text-decoration:none}.i18n-picker a:hover{text-decoration:underline}.i18n-current{font-weight:700}</style><!-- i18n:end --><header class="hero">
140140

141141

142142

@@ -189,8 +189,7 @@ <h2>Wren is on the App Store</h2>
189189
<p><a href="https://apps.apple.com/app/apple-store/id6802053382?pt=129201947&amp;ct=site-wren-apps&amp;mt=8">Get Wren for iPhone</a>
190190
— free to download, and it needs iOS 18 or later.</p>
191191

192-
<p class="get-app"><a href="https://apps.apple.com/app/apple-store/id6802053382?pt=129201947&amp;ct=site-wren-apps&amp;mt=8"><img class="badge" src="badge-appstore-en.svg" width="120" height="40"
193-
alt="Download on the App Store"></a></p>
192+
<p class="get-app"><a href="https://apps.apple.com/app/apple-store/id6802053382?pt=129201947&amp;ct=site-wren-apps&amp;mt=8"><img class="badge" src="badge-appstore-en.svg" width="120" height="40" alt="Download on the App Store"></a></p>
194193

195194
<p>Free covers guides of up to three places. A single one-time purchase
196195
removes that limit and lets Wren add to a guide you already have. It is not

0 commit comments

Comments
 (0)