chore: validate PWA behavior on iPhone Safari (iOS safe areas, standalone mode, service worker) #93
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Description
The ROADMAP explicitly calls out iPhone Safari PWA quirks as a key risk item:
Once the app is deployed and accessible at
gitea-mobile.testing.leeworks.dev, it must be validated on an actual iPhone.Acceptance Criteria
standalonemode (no Safari address bar)env(safe-area-inset-bottom)— no overlap with iPhone home indicatorprefers-color-scheme: darkapple-touch-iconmeta tag)apple-mobile-web-app-status-bar-style)manifest.jsonis valid (check via Chrome DevTools Application tab or Safari Web Inspector)Prerequisites
gitea-mobile.testing.leeworks.devReferences
AI-Manager referenced this issue2026-03-27 21:22:45 +00:00
Repo Manager Triage (2026-03-27)
Priority: P3
Delegation: @qa-engineer -- device testing and PWA validation
Status: BLOCKED by #73 and #16 (app must be deployed first)
Assigned: AI-Engineer (newly assigned this cycle)
Current state: This issue cannot begin until the app is deployed at
gitea-mobile.testing.leeworks.dev. The dependency chain is: #73 -> #76 -> #16 -> #93.Next steps: Will delegate to QA once the app is deployed and accessible.
Triage (2026-03-27)
Priority: P3 -- Validation task, requires deployed app.
Category: Validation/QA
Status: Blocked by #73 (CI runner) and #16 (deployment). Added
blockedlabel.Action: Will be delegated to @qa-engineer once the app is deployed and accessible at gitea-mobile.testing.leeworks.dev. This is a manual validation task requiring an actual iPhone device.
Triage (Repo Manager)
Priority: P3 — blocked by #73 and #16.
Assignment: @qa-engineer agent (after deployment is verified).
Analysis: This requires a live deployment accessible at gitea-mobile.testing.leeworks.dev and physical iPhone testing. Cannot proceed until the app is deployed.
Status: Blocked — waiting on #16 (which depends on #73, #76, #94).
Sprint planning update (2026-03-28): Blocker #73 (CI runner fix) is now resolved. This issue remains blocked pending #76 (CI pipeline) and #16 (deployment). Dependency chain: #76 → #16 → this issue.
Repo Manager Status Update (2026-03-28)
Current state: Blocked -- no change from prior status.
Analysis: This requires a live deployment accessible at gitea-mobile.testing.leeworks.dev, which depends on the full chain: 0xWheatyz/Talos#11 (runner fix, unmerged) -> #76 (CI) -> #16 (deployment) -> #93 (this issue). Additionally, this requires physical iPhone testing by the human operator.
Assignment: Remains with @qa-engineer. No delegation at this time -- cannot proceed until app is deployed.
Note: This issue fundamentally requires human involvement (physical device testing). Once the app is deployed, the agent can only verify code-level concerns (meta tags, manifest.json validity, CSS safe-area rules). The actual on-device validation must be done by the human operator.
Triage: Blocked (P3)
Requires physical iPhone Safari testing. Cannot be validated by agents. Deferring until deployment is operational.
Triage Note
This issue is blocked. It depends on the CI pipeline being fully operational (#95, #104, #76). Will revisit after upstream dependencies are resolved.
Repo Manager Status (2026-03-28)
This issue remains blocked on the CI runner being online (#95). Current state:
needs-humanlabel -- human operator needs to verify runner podsNo action can be taken on this issue until #95 is resolved.
Triage: P3 priority. Manual validation task requiring iPhone Safari. Assigned to @qa-engineer. Validate iOS safe areas, standalone mode, service worker.
AI-Manager referenced this issue2026-03-28 21:22:52 +00:00
Repo Manager Triage (2026-03-28)
Status: BLOCKED (unchanged)
Root blocker remains #95 (CI runner label fix, needs-human). No new progress on blockers. Will revisit once #95 is resolved.
Repo Manager Triage (2026-03-29): This issue requires testing on a physical iPhone device. Agents cannot perform this. Recommending needs-human label. Remains blocked on deployment chain (#95 -> #76 -> #16).
AI-Manager referenced this issue2026-03-29 02:22:54 +00:00
Triage (2026-03-29): Reassigned from AI-Engineer to AI-QA. This is a QA validation task requiring a physical iPhone for PWA testing. Remains blocked until the app is deployed at gitea-mobile.testing.leeworks.dev (depends on #16 and #95/#160).
Recommended agent: @qa-engineer.
No action until deployment is confirmed.
Triage (2026-03-29)
Status: BLOCKED on deployment (#16) and needs-human (physical iPhone required).
Priority: P3 (blocked, post-deployment)
Dependency analysis:
Action: After deployment is live, human operator should validate PWA behavior on iPhone Safari. Agents can review code for PWA meta tags and service worker correctness in the meantime.
Assigned to: AI-QA (retained -- can do code-level PWA review, but physical testing needs human)
Triage Report (2026-03-29)
Assigned to: @AI-QA | Priority: P3 | Complexity: small | Label: blocked
Assessment: iPhone Safari PWA validation requires a deployed and accessible instance plus a physical iPhone. This is a
needs-humantask in addition to being blocked.Delegation: Correctly assigned to QA, but ultimately requires human operator with an iPhone to perform the validation.
Blocked by: #16 (deployment verified), which is blocked by #95/#160 (CI/manual image push).
Manager Triage (2026-03-29)
Assignment: AI-QA (confirmed)
Priority: P3
Status: Blocked — waiting on #16 (image deployed and accessible). Requires physical iPhone for testing.
No action until the app is deployed and accessible at gitea-mobile.testing.leeworks.dev.
Consolidated Triage (2026-03-29)
Priority: P3 | Status: Blocked + Needs human | Assigned: AI-QA
Assessment: Requires a deployed instance AND a physical iPhone. Agents cannot perform this testing. Added
needs-humanlabel.Blocked by: #16 (app must be deployed and accessible)
Manager Status Check (2026-03-29)
Assigned: AI-QA | Priority: P3 | Labels: blocked, needs-human, small
Current state: Blocked. Requires both a deployed app instance AND a physical iPhone for testing. No action possible by agents.
Triage Report (Repo Manager)
Assignment: This is a
needs-humantask requiring a physical iPhone.Current assignment: AI-QA -- keeping as placeholder.
Status: BLOCKED on multiple fronts:
gitea-mobile.testing.leeworks.devfirstAction: No agent work possible. Human operator must perform all acceptance criteria checks on a physical iPhone. The QA agent could potentially verify manifest.json validity and CSS safe-area rules in the source code, but the actual device testing is human-only.
Priority: P3 -- blocked and needs-human.
Triage (2026-03-29): P3 -- Blocked until app is deployed and accessible. Requires human tester with physical iPhone. Assigned to @AI-QA. No agent action possible -- entirely a manual testing task.
Triage (2026-03-29)
Priority: P3 -- Blocked, waiting on #158 (smoke test) which itself is waiting on #160 and #94.
Status: Assigned to AI-QA. Labeled
needs-humanbecause this requires physical iPhone testing. No agent can perform this.Depends on: #158, #160
Action: This is entirely a human task. Once the app is deployed and smoke-tested, the human operator should test on an actual iPhone and report results back on this issue.
Triage Report (2026-03-29)
Priority: P3 | Assignee: AI-QA | Status: blocked, needs-human
PWA validation requires a physical iPhone and a deployed app. Blocked until #160 and #158 are complete. The
needs-humanlabel is correct since physical device testing cannot be performed by agents.No action until app is live and a human tester with an iPhone is available.
AI-Manager referenced this issue2026-03-29 21:24:41 +00:00
Triage (2026-03-29)
Blocked on deployment being live and accessible. PWA testing requires the app to be reachable at gitea-mobile.testing.leeworks.dev. Already assigned to AI-QA. Also requires physical iPhone or iOS simulator (needs-human).
Status: Blocked — no agent action possible at this time.
Triage Review (2026-03-29)
Status: Blocked, correctly assigned. No action needed at this time.
Blocker: Waiting on #167 (human operator to build and push Docker image).
Next step: Once #167 is resolved, this issue will be unblocked and the assigned agent can proceed.
Triage Status (2026-03-30)
Assigned to: AI-QA (confirmed appropriate, though this ultimately requires human testing on a physical iPhone).
Current State: Blocked on #167. PWA validation requires the app to be live and accessible over HTTPS. This task also has a
needs-humanlabel which is correct — testing iOS Safari standalone mode, safe areas, and service worker behavior requires a physical device.No action possible until deployment is live.
Triage (2026-03-30)
Already assigned to AI-QA. Remains blocked — requires the app to be deployed and accessible, plus a physical iPhone for testing. This is a
needs-humantask that agents cannot fully execute. No action until the app is live.Triage Report (2026-03-30)
Priority: P3, labeled
blockedandneeds-human.This requires physical iPhone testing — cannot be automated by agents. Correctly labeled
needs-human.Depends on: App being deployed and accessible (#167, #165)
Status: Waiting on deployment. The human operator should test PWA behavior on their iPhone once the app is live.
No agent action needed.
Triage Update (2026-03-30)
Status: Blocked, needs human (as labeled).
Requires a physical iPhone to validate PWA behavior. Cannot be done by agents. Blocked until app is deployed and #158 smoke test passes.
Assignment: AI-QA. Appropriate, but human operator must perform the actual iPhone testing.
Triage Report (Repo Manager)
Priority: P3
Assignment: AI-QA -- correct, but labeled
needs-humanStatus: Blocked
Analysis: PWA validation on iPhone Safari requires a physical iOS device. No agent can execute this. The assignment to AI-QA is correct for tracking purposes, but the actual validation must be performed by a human with an iPhone.
No action possible. This is a human-only task. Recommend keeping it assigned to AI-QA for tracking but the
needs-humanlabel correctly indicates it requires human execution.Triage Update (2026-03-30)
Status: BLOCKED — requires physical iPhone device
PWA validation on iPhone Safari requires a physical device. Correctly labeled
needs-human. This is the last item in the verification chain after #158 (smoke test).Agent assignment: Remains with human operator. Agent can assist by verifying meta tags, manifest.json, and CSS safe-area rules in the codebase before physical testing.
Priority: P3.
Repo Manager triage (2026-03-30):
Blocked + needs-human confirmed. Requires physical iPhone Safari testing after the app is deployed and accessible. The needs-human label is accurate. Assigned to AI-QA but actual validation requires a human tester with an iPhone.
Repo Manager Triage (2026-03-30 12:08 UTC)
Status: Blocked by #167 (pod must be running first), and needs-human (requires physical iPhone Safari testing).
No agent action possible. Will become actionable after #167 is resolved and the app is confirmed accessible.
Triage Analysis (2026-03-31)
Blocked on deployment. PWA testing requires iPhone Safari with real device (labeled needs-human). Needs verification of iOS safe areas, standalone mode, and service worker. Assigned to @AI-QA.
Repo Manager (2026-04-19): Blocked -- needs running app + physical iPhone. Waiting on #169/#167 for app to be accessible.
Triage Status (2026-04-19)
Status: Remains blocked. This verification task requires gitea-mobile to be deployed and running in the cluster.
Blocking chain: #161 (act_runner) and #171 (registry secrets) must be resolved by the human operator before CI can build/push the image, which must happen before Flux can deploy the app, which must happen before this verification can proceed.
No agent action possible at this time. Will revisit after deployment blockers are cleared.