# Changes from upstream

比较基线：n-gon commit `3452c30d7ed95b36833a0a06b93ba3506f2adb10`。

本快照及其修改继续按 GNU GPL v3 分发。完整许可证见 [LICENSE](LICENSE)。

## 2026-08-30

### 运行时修改

- `index.html`
  - 删除 `enable-gamepad` 按钮及其内联加载器。原按钮会从 `kgurchiek/n-gon-controller` 未固定的 `main` 分支下载 `main.js` 并立即执行；该仓库在核对时没有明确许可证文件。
  - 增加 `robots=noindex` 作为 Vercel 响应头之外的第二层保护。
  - 增加可见的 `source.html` 源码、许可证和变更说明入口。
- `js/tech.js`
  - 删除可选 junk tech `performance`。原实现会从 unpkg 动态加载 `stats.js@0.17.0` 并执行。

这两项删除不会改变核心键盘/鼠标玩法。被删除的手柄扩展和性能浮层在此快照中不可用。

### 分发和运维文件

- 扩充 `README.md`，保留原上游 README 内容并加入本地运行、验证和更新说明。
- 新增 `UPSTREAM.md`、`CHANGES.md`、`THIRD_PARTY_NOTICES.md`、`DEPLOY.md`、`VERIFICATION.md`、`source.html`。
- 新增 `vercel.json`，统一设置 CSP、`X-Robots-Tag: noindex` 和基础安全响应头。
- 将 `Cross-Origin-Resource-Policy` 设为 `cross-origin`，以支持从独立 Vercel origin 嵌入；CSP `frame-ancestors` 仍只允许 `https://ngonunblocked.com`。
- 新增 `scripts/verify-runtime.mjs` 和 `scripts/build-source-archive.ps1`。
- 生成可公开下载的完整修改后源码包及 SHA-256 校验文件。
- 部署到独立 Vercel 项目，并把稳定运行地址记录为 `https://ngon-game-runtime.vercel.app/`。

### 明确保留

- 保留游戏内 Wikipedia API 查询。
- 保留 updates 面板对 GitHub API 的只读数据请求。
- 保留完整上游文件树，包括当前入口未加载的 `js/level2.js`。
- 没有部署，没有改动 `F:\CH\ngon-unblocked`。
