Repository navigation
linux: work-633 - #970
linux: work-633#970
Conversation
Agent-Team: linux Worker: codex
PM note: how this PR will be handledWhat it is for: linux: work-633 Rules that apply: none special. Things to watch (checked by rule):
What happens next:
A living status comment below is kept current. Nothing here is a merge decision. |
Where this PR standsStage: Done: approved What the PM needs before approving (ticks as it is met; the full CI runs only at the end, after the reviews are clean):
Reviews at the current commit (
Updated 2026-10-28 18:14 UTC by the PM. This comment is edited in place. |
|
TRIAGE @3112523f auto: mechanical rules met (fizzy-* app author, names work#633, 23 non-test lines <= 400, no risky path). Labelled |
Part of fizzyedit/work#633
Goal
Restore web worker startup for fizzyedit/work#633, part of fizzyedit/plans#105 goal 2 (L3).
What changed and why
Rename the TextInput instance to inputFilter so assigning the outer hidden-input element does not hit a shadowing const's temporal dead zone. Construct the filter before installing the worker message handler, and use it for text-input transitions, pointer clearing and keydown.
How it was verified
The fake-DOM embed test now starts a worker, delivers a textInput rect immediately when the handler is installed, checks that startup reaches ready, and checks hidden-input positioning and filter clearing. It fails on the original source with the reported ReferenceError and passes with the fix. All web suites pass against built web.js, including existing typing/backspace tests. Formatting, lint, native build, check-web, web asset build and SDK fingerprint pass; detailed gate results and sandbox socket failures are in GATES.md.
Self-review: Q1 goal met by the regression and existing input suites; Q2 no redundant implementation or SDK changes; Q3 keep the direct rename and initialization ordering; Q4 aligned with phone input and reliable cross-platform startup. Production diff: +12/-11 lines. Risk: worker keyboard routing, covered by the web tests.
Not done / follow-ups
No real browser or phone session was run. Full socket-dependent gates need the harness's unrestricted environment. No SDK boundary change.
Changes (2 files, +42/-11)
Gates: 6 of 6 passed
scripts/check-fmt.sh(exit 0)scripts/zb build --summary all(exit 0)scripts/zb build test --summary all(exit 0)scripts/zb build test-integration --summary all(exit 0)scripts/zb build check-web --summary all(exit 0)scripts/zb build test-sdk-version --summary all(exit 0)