find focus/type dispatch: close its waived interaction guarantees (offscreen, parentOwnedTouchPoint, nonHittable, targetStability)
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 30/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- typescript
- 领域
- testing-qa
调研方向
Start with the find-focus-dispatch row in packages/contracts/src/interaction-guarantees.ts and the cases in interaction-guarantees.test.ts, then read ADR 0011 for what a gap waiver must cite. Trace the focus/type dispatch seam to see where it uses centerOfRect instead of resolveInteractionTouchPoint, and where it skips the hittable and ref-stability checks the other paths run. Done means each of the four cells is classified as runtime, runner or delegated with a via that names the shared implementation, and each change has a red/green regression. Wait for #3727 to land before starting.
由索引模型根据 Issue 内容生成。
描述
Purpose
#3727 classifies the find <locator> focus / find <locator> type dispatch path as find-focus-dispatch in packages/contracts/src/interaction-guarantees.ts. Four of its cells are gap: waivers. ADR 0011 requires every gap waiver to cite an open tracking issue; this issue owns those four. (outcomeObservation is owned by #3335.)
Required behavior, per cell
- offscreen: a focus/type match whose target is off screen is refused with a typed reason, or scrolled into view by the shared rule. It is not dispatched at an off-screen point.
- parentOwnedTouchPoint: the seam aims at the point
resolveInteractionTouchPointchooses, notcenterOfRectof the resolved node, so a center tiled by an independent child is not tapped. - nonHittable: a non-hittable match is either promoted with the
targetHittable/hintannotation the other paths emit, or refused. - targetStability: the target is re-confirmed (or the ref frame checked) between capture and dispatch, the same way the other paths do it.
Completion
Each cell moves from waived to an enforced classification (runtime / runner / delegated) whose via names the shared implementation. interaction-guarantees.test.ts passes, and each change carries a red/green regression. Cells can close in separate PRs; close this issue when none remain waived.
Blocked by: #3727 (introduces the row).
- 主要语言
- TypeScript
- 星标
- 5.2k
- 派生
- 359
- 平均合并
- 12 小时 54 分钟
- 30 天内合并 PR
- 637
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
callstack/agent-device 的其他 Issue
-
bug ready-for-agent
难度 2/5 1-3 小时 新手友好度 77/100
callstack/agent-device#4018 ·
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 64/100
callstack/agent-device#3945 · 1 条评论 ·
维护者通常 1 天内回复
-
Limrun iOS fill reports success but drops non-ASCII text可能已有人在做 @mvanhorn 于 8 天前认领。 未关闭bug ready-for-agent
难度 2/5 1-3 小时 新手友好度 87/100
callstack/agent-device#3819 · 2 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 68/100
callstack/agent-device#1869 ·
维护者通常 1 天内回复
-
bug ready-for-agent
难度 3/5 1-2 天 新手友好度 72/100
callstack/agent-device#4030 ·
维护者通常 1 天内回复
查看 callstack/agent-device 的全部 Issue
相似的 Issue
-
Shell: serve the home app's Cookie Policy on a hard reload可能已有人在做 @2001anshkaushik 今天认领。 未关闭feature module:ai
难度 2/5 1-3 小时 新手友好度 88/100
rocketride-org/rocketride-server#2899 · 1 条评论 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 72/100
wazuh/wazuh-dashboard-plugins#9551 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 68/100
gofish-graphics/gofish-graphics#1252 ·
维护者通常 1 天内回复
-
optimization P3 size:XS
难度 1/5 1-3 小时 新手友好度 88/100
josephfung/curia#2366 ·
维护者通常 1 天内回复
-
type:bug
难度 2/5 1-3 小时 新手友好度 65/100
nightgauge/nightgauge#2688 ·
维护者通常 1 天内回复