feat(mobile): session Dashboard on iOS and Android via authenticated Control UI webview (#112163)

* feat(mobile): session dashboard screens on iOS and Android via authenticated Control UI webview

* fix(android): keep configured Control UI base path in session dashboard URL

* docs(android): note system-trust boundary of the shared Control UI webview

* fix(android): origin-only document-start rule for Control UI auth script

* chore(i18n): refresh native inventory on rebased head

* fix(ios): swiftlint closure form in session dashboard toolbar

* fix(i18n): tolerate workflow-owned pending native rows in PR alignment checks

* fix(android): KTX toUri per lint and refresh native inventory

* fix(android): ktlint import order incl. main-inherited fleet test, refresh inventory
This commit is contained in:
Peter Steinberger
2026-07-21 01:13:23 -07:00
committed by GitHub
parent 0cf4b24ad6
commit 262deec72c
19 changed files with 1090 additions and 524 deletions

View File

@@ -12,7 +12,9 @@ import {
describe("Android app i18n resources", () => {
it("keeps generated resources, runtime coverage, and every locale aligned", async () => {
await expect(checkAndroidAppI18n()).resolves.toBeUndefined();
// Managed native_* rows are reconciled by the post-merge locale refresh
// workflow (#111557); source PRs are validated with those rows pending.
await expect(checkAndroidAppI18n({ tolerateManagedPending: true })).resolves.toBeUndefined();
const base = await readFile("apps/android/app/src/main/res/values/strings.xml", "utf8");
expect(base).toContain('xmlns:tools="http://schemas.android.com/tools"');
expect(base).toMatch(