fix(ios,android): close the acceptance gaps the review found, add Android CI
- T-iOS-34's stated acceptance is "最大字号不破版" and it was failing: the key bar froze its height at 52pt while an AX5 keycap needs 108.24pt, so caps clipped — recorded as a withKnownIssue rather than fixed. Height now derives from the content size category (and tracks live changes via registerForTraitChanges); the known-issue marker is gone, replaced by positive assertions including a 12-category no-clip sweep and a guard that stays red if anyone writes the constant back. Honest tradeoff: the keycap font is clamped at .accessibility2, the same policy the design system already applies to dense content, because an unclamped AX5 bar would eat the terminal. A test pins the clamp so the two cannot drift. - Thumbnails silently 401'd on a token-gated host: the pipeline built its own transport with no token source, and by design never throws, so every preview degraded to a placeholder with no signal. Assembled from AppEnvironment now. - Android had zero CI while the token wave shipped 24 files of secret-handling code. The instrumented leg is workflow_dispatch-only and says why in the file: no one has ever seen it green on a runner, and a required leg nobody trusts just produces a false green. - Android persisted a validated token before the host probe succeeded, stranding a secret for a host that never paired. App bundle 534 -> 550 on both simulators, zero known issues. Android 687 -> 691.
This commit is contained in:
@@ -54,8 +54,9 @@ packages:
|
||||
# Package.resolved, which lives inside the bundle — is gitignored, so every
|
||||
# agent/CI run re-resolves from scratch, and a floating `from:` would silently
|
||||
# drift to whatever is newest. An exact pin makes every agent/CI run resolve
|
||||
# the SAME source (the earlier drift 1.13.0 → 1.15.0 is what broke the App
|
||||
# target); raising it is a deliberate, verified edit.
|
||||
# the SAME source (an unattended drift off `from: 1.13.0` is what once broke
|
||||
# the App target — see the history below); raising it is a deliberate,
|
||||
# verified edit, and 1.15.0 below IS that deliberate raise.
|
||||
#
|
||||
# History (T-iOS-33/31 root fix): v1.14.0 added `public var hasActiveSelection`
|
||||
# to iOSTerminalView, which collided with a same-named property the App
|
||||
@@ -169,8 +170,11 @@ targets:
|
||||
# Unit-test bundle for App-target logic (ViewModels & pure UI components,
|
||||
# W3 T-iOS-11…14). Added by the orchestrator as a coordination point
|
||||
# (project.yml is T-iOS-1's Owns; same precedent as the W1 manifest wiring).
|
||||
# Coverage GATE still counts only the 4 packages (plan §9) — these tests
|
||||
# exist for correctness, not for the gate.
|
||||
# These tests exist for correctness, NOT for the coverage gate: the gate runs
|
||||
# per SwiftPM package over that package's own sources
|
||||
# (IntegrationTests/scripts/coverage-gate.sh), and an App-target test bundle is
|
||||
# not one of them. It now covers FIVE packages — plan §9's four plus ClientTLS,
|
||||
# which B4 added (see .github/workflows/ios.yml's package-tests matrix).
|
||||
WebTermTests:
|
||||
type: bundle.unit-test
|
||||
platform: iOS
|
||||
|
||||
Reference in New Issue
Block a user