Files
toshiocn 1be0e9caf1 feat(airport): add the Hex Airport dispatch lab as a baseline snapshot
Six-side aprons, frozen levels, solver, rewards and verify scripts; the edge-runway readability work continues from here.
2026-09-21 14:25:09 +08:00

46 lines
4.2 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.
# 六角机场原型验收 · 2026-09-17
## 规则与关卡
- `node --test tests/airport.test.js`:17 项通过(含贴边停机坪几何)。
- `node scripts/verify-airport.mjs`:五关开局免费可解,完整回放通过;每关每色在六朝向、六边均无多结果。
- 最优操作 / 初始预算 / 全清后接机最优操作:第 1 关 5 / 8 / 10;第 2 关 7 / 10 / 11;第 3 关 6 / 13 / 16;第 4 关 8 / 12 / 18;第 5 关 11 / 15 / 17;第 6 关 10 / 14 / 20。
- 最优解保留原有飞机分别为 3、4、6、6、3、8 架。第 3 关另有 11 步换侧体验解,保留 5 架。
- 第 1–3 关 19 格教学;第 4–5 关 37 格、各 8 架地面飞机;第 6 关 61 格、13 架地面飞机。
- 体验解检查确实存在“已停靠来机挡住另一来机 → 起飞到新侧 → 重新接入”的过程。
## 浏览器
- 2026-09-17 贴边改版:页面无控制台错误。来机标签为「可可飞机 in1,上方停机坪待降落」。色名来自马卡龙色库。背景 `#F5EFE7`,字体 Resource Han Rounded。六关半径 2/2/2/3/3/4。本轮自动化主机在完整按钮回放中途断开;规则回放以测试与 `airport:verify` 为准。
- 2026-09-17 放大档位:第 6 关「空港全景」加载后棋盘生成 15 个可点飞机(13 架地面 + 2 架来机),两架来机分别显示在左下方与下方停机坪,剩余操作 14,进度 0 / 2,无控制台错误。截图主机未绘制,改用页面 DOM 与 ARIA 标签核对。
在本地 WebView 中通过页面实际按钮执行,未直接修改游戏状态:
- 第 1 关按 5 步最优解通关,剩余 3 次,保留 3 架原有飞机。
- 第 2 关按 7 步最优解通关,剩余 3 次,保留 4 架原有飞机。
- 第 3 关按 11 步体验解通关,蓝色来机再次起飞后显示东南侧等待,最终剩余 2 次,保留 5 架原有飞机。
- 第 1 关旋转两次后点击受阻来机:次数 6 → 5,提示路线受阻,模型与画面指向第一个阻挡 out4。
- 连续 8 次失败尝试耗尽额度,显示仍有可行路线;“测试补充 +5 次”把额度从 0 加到 5 并保留棋盘。
- 浏览器控制台无错误;此任务测试上下文仅创建 `hex-airport-v1` 存储键。
- 390×844 无横向或纵向溢出。360×640 保留至少 44px 飞机触摸区,无横向溢出,页面允许纵向滚动访问底部控件。
- `npm run build:airport` 通过;使用 `--dist` 在独立端口提供打包页面,再次通过按钮完成第 1 关,确认模块、图集、Worker 和样例均包含在产物中。
截图做过视觉检查;本报告不声称进行了真人体验、原生 Cocos 或实际广告 SDK 验收。
## 打包与已有仓库问题
机场专用验证与静态复制流程:`npm run build:airport`。它校验全部关卡,再使用项目既有静态复制器输出 `dist/`,不改写历史关卡。完整 `npm run build` 还包含旧版本历史档案的原始字节校验。
本次全量 `node --test`:214 项,212 项通过,2 项失败,均指向开始工作前已有的环境/工作区状态:
1. `tests/campaign-versions.test.js` 的历史档案 SHA 校验失败。v0.1、v0.2、v0.3 工作副本是 CRLF;逐个确认 Git HEAD 原始字节及工作副本仅转换为 LF 后的字节均匹配 provenance 中记录的 SHA。未改写历史文件或降低校验标准。
2. `tests/design-packages.test.js` 的本地链接检查失败:`design/README.md` 引用的根目录 `AGENTS.md` 已被删除。初始 `git status` 已显示该删除,本次保留,未自行恢复。
`npm run build` 在同一个 v0.1 原始字节校验处停止。机场静态打包不依赖重新生成这些历史档案。以上问题与新机场测试的通过情况分开报告,不能将全量测试说成全部通过。
## 当前限制
- 飞机为原型 Canvas 造型,沿用已接受的 UI 图标图集;尚非最终美术资产。
- 奖励接口和幂等逻辑已实现,默认补充明确标注为测试奖励;没有接入真实广告或凭据验证服务。
- 不提供玩家撤销、主动提示、拖动旋转、缩放;只保留本轮批准的首轮按钮交互。
- 只验证三个冻结样例,未证明大规模关卡的丰富度、玩家理解度或广告收益。