# ZIP 归档校验下载

`zlib.httpFile.verifiedZip.extract(url, sha256, extractDir, options)` 是调用者**明确需要SHA256校验**时的可选工具。普通下载继续使用 `zlib.httpFile.download`，无须迁移到本入口。

```aardio
import zlib.httpFile.verifiedZip;
var r,err,kind=zlib.httpFile.verifiedZip.extract(
    "https://example.com/tool.zip",string.repeat(64,"0"),"/stage-new",{
        archivePath="/cache/tool.zip";
        rootName="tool";
    });
return {result=r;error=err;kind=kind};
```

示例URL/hash是占位值。真实调用者自行提供所需摘要。

- **URL原样使用。** 不选择镜像，不依赖GitHub或某一国家的网络策略；代理/镜像由调用层决定。
- 无缓存时下载到 `.part`，核对一次SHA256再转缓存；已有缓存核对一次。不是安装文件hash清单，也不限制产品之后升级。
- `archivePath`、单层 `rootName` 必填；将该根目录内容直接解到新的 `extractDir`。`finalDir` 可选，用于提前报告目标路径过长。
- 保留ZIP路径、长度/CRC及写入错误处理，不静默略过无法写入的文件；不承担运行时选择、安装记录或环境激活。
- `stop()`、`onProgress(received,total)` 可选，失败关闭资源。成功 `{dir;archivePath;sha256;files;bytes}`，失败 `null,err,kind`；部分解压目录由调用者清理。

面向可信产品归档，不是任意不可信ZIP的沙箱；不还原权限、链接或时间属性。
