Files
BadNote/docs/plans/surface-diagnostic-checklist.md
Akiba So d346cc2670
All checks were successful
CI / Windows build (push) Successful in 14m22s
feat: unified shell, diagnostics pack, native Office, sticky board
Make Surface remote debugging and classroom workflows viable: always-on
structured logs with one-click zip export, a single AppShell chrome,
OOXML PPTX/DOCX annotation without LibreOffice, and a first-class sticky
board. Also drop spike/legacy ink widgets and tighten pen feel
(predictor, PenInfoHistory, page-tile layer).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-05 17:55:27 +08:00

46 lines
1.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Surface 验收清单(诊断包驱动)
AI 无法坐在 Surface 前时,用本清单 + **设置 → 诊断 → 导出诊断包** 闭环。
## 准备
1. `flutter build windows --release` 或 profile 安装包
2. 打开 BadNote → 设置 → 确认「导出诊断包」可用
3. 准备Surface Pen、一份 20+ 页 PDF、空白笔记
## MUST #3 — 笔 / 触控仲裁(约 1 分钟)
| 步骤 | 期望 |
|------|------|
| Pen 在 PDF 上书写 | 出墨,压感可见 |
| 单指上下滚 | 滚动页面,不画线 |
| 双指捏缩放 | 缩放,不画线 |
| 手掌搁在屏幕上同时用笔写 | 掌不画线palm |
导出诊断包。包内 `pen_events.json` 应出现 `arbiter` 行:`decision=draw`(笔)与 `decision=pan`(指)。
## W3 — 硬件笔按钮
| 步骤 | 期望 |
|------|------|
| 无悬停,直接用笔尾点按 | 擦除而非画线 |
| 按侧键(按你的笔设置) | 触发橡皮擦/平移/撤销 |
| 倾斜笔身书写 | `pen_events` / native summary 中 tilt 非全 0 |
查看 `meta.json``penNative``orPenFlags` / `orPtrFlags` 在按键时应有非零位;`historyCount` 可 >1。
## MUST #4 / #5 — 流畅profile
1. `flutter run --profile`
2. 打开大 PDF快速 fling + 捏缩放 30 秒
3. 导出诊断包 → `frame_samples.json``overBudget` 占比主观可接受;体感不掉帧
## 手感主观
- 快速甩笔:笔尖无明显拖尾/点状塌缩
- 缩放后页面不长时间白闪(若仍闪,在包内搜 `zoom` / `rebaseline`
## 回传
`badnote_diag_*.zip` 发回即可;无需录屏(可选)。