EACI Development Journal · Mobile

How Do You Heal Mobile WebKit Chat Bugs Without False Alarms?

Mobile recovery code watches real symptoms such as locked input or viewport drift. It avoids continuously rewriting healthy DOM state.

Mobile ~8 min issue-tagged
Issue this fixes

Mobile WebKit can resize the visual viewport around the keyboard, delay media readiness, or leave controls in a stale state after backgrounding. Those failures are intermittent and easy to “fix” with a timer that causes new bugs everywhere else.

The compatibility engine probes capabilities and observes targeted attributes. Healing runs when a known invariant breaks, not merely because the browser family matches.

What was actually going wrong

Broad browser detection and permanent polling risked treating every WebKit session as broken.

What I tried

What finally worked

Capability checks, narrow observers, and idempotent repairs target actual broken states.

Why it worked

The repair condition is evidence from the page, while platform detection only informs the strategy.

What I learned

Compatibility code should prove a symptom before it heals one.

Where EACI uses this today

Main chat applies mobile fixes without changing healthy desktop or mobile sessions.

This journal covers real engineering on EACI Companion / The Veil. Companions include Caelum, Chad, Natalia, Atreus, Luna, Roxy, and Cael. Journal articles stay family-safe in content. See Privacy and Ethics.