<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://ubriot.dev</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://ubriot.dev/ai</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.92</priority>
</url>
<url>
<loc>https://ubriot.dev/blog</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.85</priority>
</url>
<url>
<loc>https://ubriot.dev/about</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://ubriot.dev/security</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://ubriot.dev/privacy</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.55</priority>
</url>
<url>
<loc>https://ubriot.dev/support</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.55</priority>
</url>
<url>
<loc>https://ubriot.dev/account/delete</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.45</priority>
</url>
<url>
<loc>https://ubriot.dev/notify</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.95</priority>
</url>
<url>
<loc>https://ubriot.dev/preview</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://ubriot.dev/pricing</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://ubriot.dev/app-center-codepush-migration</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://ubriot.dev/enterprise</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://ubriot.dev/docs</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.88</priority>
</url>
<url>
<loc>https://ubriot.dev/react-native-ci-cd</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://ubriot.dev/mcp</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://ubriot.dev/react-native-push-notifications</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.88</priority>
</url>
<url>
<loc>https://ubriot.dev/react-native-testflight</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.85</priority>
</url>
<url>
<loc>https://ubriot.dev/react-native-ota-updates</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.85</priority>
</url>
<url>
<loc>https://ubriot.dev/react-native-ota-without-expo</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.85</priority>
</url>
<url>
<loc>https://ubriot.dev/react-native-release-safety</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.85</priority>
</url>
<url>
<loc>https://ubriot.dev/migrate-from-expo-push</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.85</priority>
</url>
<url>
<loc>https://ubriot.dev/migrate-from-eas</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.88</priority>
</url>
<url>
<loc>https://ubriot.dev/alternatives</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://ubriot.dev/faq</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.75</priority>
</url>
<url>
<loc>https://ubriot.dev/signup</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/login</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://ubriot.dev/alternatives/bitrise</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://ubriot.dev/alternatives/codemagic</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://ubriot.dev/alternatives/expo-eas</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://ubriot.dev/alternatives/app-center</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://ubriot.dev/alternatives/codepush</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://ubriot.dev/alternatives/xcode-cloud</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://ubriot.dev/alternatives/fastlane</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://ubriot.dev/alternatives/appcircle</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://ubriot.dev/alternatives/github-actions</loc>
<lastmod>2026-09-24T03:27:40.179Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/check-the-release-artifact-after-the-build-says-yes</loc>
<lastmod>2026-09-24T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/make-a-failed-release-check-reproducible</loc>
<lastmod>2026-09-23T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/every-release-check-needs-a-failure-owner</loc>
<lastmod>2026-09-22T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/separate-upload-acceptance-and-availability</loc>
<lastmod>2026-09-19T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/retire-the-approval-when-you-retire-the-artifact</loc>
<lastmod>2026-09-18T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/ask-which-artifact-earned-the-green-check</loc>
<lastmod>2026-09-12T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-release-that-does-not-ship-still-needs-an-outcome</loc>
<lastmod>2026-09-11T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/give-the-release-queue-an-admission-rule</loc>
<lastmod>2026-09-10T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/put-one-clock-on-the-release-handoff</loc>
<lastmod>2026-09-09T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/who-owns-the-release-after-the-build-turns-green</loc>
<lastmod>2026-09-08T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-passed-smoke-should-say-what-it-did-not-test</loc>
<lastmod>2026-09-07T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-configuration-change-should-reopen-only-the-proof-it-touched</loc>
<lastmod>2026-09-06T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/release-evidence-needs-an-expiry-time</loc>
<lastmod>2026-09-05T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/the-recovery-note-should-name-the-cheapest-lie</loc>
<lastmod>2026-09-03T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/when-the-rescue-path-becomes-the-baseline</loc>
<lastmod>2026-09-02T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/rollback-approval-belongs-to-one-artifact</loc>
<lastmod>2026-09-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-recovery-rerun-should-state-what-changed</loc>
<lastmod>2026-08-31T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/temporary-release-rules-need-expiry-markers</loc>
<lastmod>2026-08-31T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-release-pause-should-leave-a-restart-note</loc>
<lastmod>2026-08-30T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/old-green-checks-should-look-old</loc>
<lastmod>2026-08-28T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/keep-the-rollback-target-visible-for-one-calm-hour</loc>
<lastmod>2026-08-27T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/trust-the-running-digest-before-the-registry-tag</loc>
<lastmod>2026-08-26T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/do-not-widen-the-rollout-on-the-same-proof-you-paused-on</loc>
<lastmod>2026-08-24T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-deploy-plan-should-name-the-image-production-is-already-running</loc>
<lastmod>2026-08-22T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/keep-stop-authority-visible-during-a-rollout</loc>
<lastmod>2026-08-21T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-rollout-log-should-keep-the-paused-audience</loc>
<lastmod>2026-08-20T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/keep-the-release-reason-beside-the-artifact</loc>
<lastmod>2026-08-17T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/an-approval-note-should-name-its-expiry-trigger</loc>
<lastmod>2026-08-16T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/keep-the-approval-snapshot-beside-the-release</loc>
<lastmod>2026-08-15T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-rescue-build-should-name-the-rule-it-overrode</loc>
<lastmod>2026-08-14T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/reopen-with-fresh-rollback-proof</loc>
<lastmod>2026-08-13T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-reopened-release-should-not-inherit-stale-approval</loc>
<lastmod>2026-08-12T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-release-pause-needs-a-clear-reentry-point</loc>
<lastmod>2026-08-11T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/the-last-approved-artifact-is-part-of-the-rollback-plan</loc>
<lastmod>2026-08-10T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/start-recovery-from-the-last-proof-you-still-trust</loc>
<lastmod>2026-08-09T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/ci-outages-need-a-temporary-source-of-truth</loc>
<lastmod>2026-08-08T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/show-the-running-image-before-the-fix-command</loc>
<lastmod>2026-08-05T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-routine-pull-can-still-replace-the-wrong-build</loc>
<lastmod>2026-08-04T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/the-deploy-record-should-name-what-got-replaced</loc>
<lastmod>2026-08-03T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/promotion-should-carry-the-last-proven-state</loc>
<lastmod>2026-08-02T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/keep-the-blocker-beside-the-rerun</loc>
<lastmod>2026-08-01T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-release-freeze-should-end-with-named-evidence</loc>
<lastmod>2026-07-31T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-stopped-rollout-should-keep-the-signal-that-stopped-it</loc>
<lastmod>2026-07-28T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/release-notes-should-keep-the-wrong-assumption</loc>
<lastmod>2026-07-27T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/release-approval-should-name-the-rollback-trigger</loc>
<lastmod>2026-07-24T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-release-channel-needs-a-plain-language-purpose</loc>
<lastmod>2026-07-23T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/the-store-answer-should-stay-with-the-build</loc>
<lastmod>2026-07-22T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/a-rollback-needs-the-last-good-artifact</loc>
<lastmod>2026-07-21T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/the-native-boundary-your-ota-cannot-cross</loc>
<lastmod>2026-07-20T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/release-approvals-need-the-evidence-beside-the-button</loc>
<lastmod>2026-07-19T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/every-release-needs-one-artifact-the-team-can-name</loc>
<lastmod>2026-07-18T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/powering-arkifi-commerce-african-mobile-commerce-on-ubriot-ai</loc>
<lastmod>2026-07-16T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/failed-mobile-builds-need-a-first-response-record</loc>
<lastmod>2026-07-10T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/when-store-handoff-becomes-release-work</loc>
<lastmod>2026-07-09T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/ota-updates-need-recent-native-build-memory</loc>
<lastmod>2026-06-30T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/ai-build-failure-diagnosis</loc>
<lastmod>2026-06-28T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://ubriot.dev/blog/what-a-mobile-release-pipeline-should-remember</loc>
<lastmod>2026-06-28T00:00:00.000Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
</urlset>
