镜像构建历史
# 2026-11-10 21:55:05 0.00B 设置默认要执行的命令
CMD ["/entrypoint.sh"]
# 2026-11-10 21:55:05 0.00B 声明容器运行时监听的端口
EXPOSE [8088/tcp]
# 2026-11-10 21:55:05 1.98KB 复制新文件或目录到容器中
COPY --chmod=755 deploy/entrypoint.sh /entrypoint.sh # buildkit
# 2026-11-10 21:55:05 1.52KB 复制新文件或目录到容器中
COPY deploy/config/supervisord.conf.template /etc/supervisor/conf.d/supervisord.conf.template # buildkit
# 2026-11-10 21:55:04 0.00B 设置环境变量 QWENPAW_PORT
ENV QWENPAW_PORT=8088
# 2026-11-10 21:55:04 850.00MB 执行命令并创建新的镜像层
RUN |4 QWENPAW_MANAGED_RUNTIME_BOUNDARY_VERSION=2.3.0b4 QWENPAW_DISABLED_CHANNELS=imessage QWENPAW_ENABLED_CHANNELS= DEBIAN_FRONTEND=noninteractive /bin/sh -c uv pip install --python /app/venv/bin/python --no-cache-dir "setuptools<82" wheel -r scripts/pack/channel-contract-requirements.txt && python scripts/pack/validate_channel_contracts.py && python -c 'import setuptools.build_meta as b; b.build_wheel("/tmp/qwenpaw-wheel")' && set -- /tmp/qwenpaw-wheel/*.whl && uv pip install --python /app/venv/bin/python --no-cache-dir "$1[channels]" && rm -rf ./build /tmp/qwenpaw-wheel # buildkit
# 2026-11-10 21:54:36 0.00B 执行命令并创建新的镜像层
RUN |4 QWENPAW_MANAGED_RUNTIME_BOUNDARY_VERSION=2.3.0b4 QWENPAW_DISABLED_CHANNELS=imessage QWENPAW_ENABLED_CHANNELS= DEBIAN_FRONTEND=noninteractive /bin/sh -c python -c 'import re, subprocess, sys; output = subprocess.check_output(["/bin/uv", "--version"], text=True); match = re.match(r"uv (\d+)\.(\d+)\.(\d+)(?:\s|$)", output); sys.exit(0 if match and tuple(map(int, match.groups())) >= (0, 13, 4) else "uv >= 0.13.4 is required")' # buildkit
# 2026-11-10 21:54:35 42.54MB 复制新文件或目录到容器中
COPY /uv /bin/uv # buildkit
# 2026-11-10 21:54:35 54.21MB 复制新文件或目录到容器中
COPY /app/console/dist/ ./src/qwenpaw/console/ # buildkit
# 2026-11-10 21:52:39 2.09MB 复制新文件或目录到容器中
COPY website/public/docs/ ./src/qwenpaw/docs/ # buildkit
# 2026-11-10 21:52:39 145.60KB 复制新文件或目录到容器中
COPY packages/qwenpawmail-mcp/src/qwenpawmail_mcp ./packages/qwenpawmail-mcp/src/qwenpawmail_mcp # buildkit
# 2026-11-10 21:52:39 2.70KB 复制新文件或目录到容器中
COPY plugins/hub ./plugins/hub # buildkit
# 2026-11-10 21:52:39 56.51MB 复制新文件或目录到容器中
COPY src ./src # buildkit
# 2026-11-10 21:52:39 1.68MB 复制新文件或目录到容器中
COPY plugins/channel ./plugins/channel # buildkit
# 2026-11-10 21:52:38 343.39KB 复制新文件或目录到容器中
COPY scripts/pack ./scripts/pack # buildkit
# 2026-11-10 21:52:38 46.45KB 复制新文件或目录到容器中
COPY pyproject.toml setup.py MANIFEST.in README.md ./ # buildkit
# 2026-11-10 21:52:38 0.00B 设置环境变量 PATH
ENV PATH=/app/venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2026-11-10 21:52:38 184.86MB 执行命令并创建新的镜像层
RUN |4 QWENPAW_MANAGED_RUNTIME_BOUNDARY_VERSION=2.3.0b4 QWENPAW_DISABLED_CHANNELS=imessage QWENPAW_ENABLED_CHANNELS= DEBIAN_FRONTEND=noninteractive /bin/sh -c python3 /tmp/stage_python_runtime.py --dest /opt/qwenpaw-python --python-version 3.11 && /opt/qwenpaw-python/python/bin/python3 -m pip install --upgrade "pip>=26.2.2" && /opt/qwenpaw-python/python/bin/python3 -m pip install --upgrade "certifi>=2026.10.19" && /opt/qwenpaw-python/python/bin/python3 -m venv /app/venv && /app/venv/bin/python -m pip install --upgrade "pip>=26.2.2" && /app/venv/bin/python -m pip install --upgrade "certifi>=2026.10.19" && rm /tmp/stage_python_runtime.py # buildkit
# 2026-11-10 21:52:24 8.18KB 复制新文件或目录到容器中
COPY scripts/pack-tauri/stage_python_runtime.py /tmp/stage_python_runtime.py # buildkit
# 2026-11-10 21:52:24 0.00B 设置工作目录为/app
WORKDIR /app
# 2026-11-10 21:52:24 0.00B 设置环境变量 QWENPAW_RUNNING_IN_CONTAINER
ENV QWENPAW_RUNNING_IN_CONTAINER=1
# 2026-11-10 21:52:24 0.00B 设置环境变量 PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD
ENV PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1
# 2026-11-10 21:52:24 0.00B 设置环境变量 PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH
ENV PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH=/usr/bin/chromium
# 2026-11-10 21:52:24 5.08KB 执行命令并创建新的镜像层
RUN |4 QWENPAW_MANAGED_RUNTIME_BOUNDARY_VERSION=2.3.0b4 QWENPAW_DISABLED_CHANNELS=imessage QWENPAW_ENABLED_CHANNELS= DEBIAN_FRONTEND=noninteractive /bin/sh -c sed -i 's/^CHROMIUM_FLAGS=""/CHROMIUM_FLAGS="--no-sandbox"/' /usr/bin/chromium # buildkit
# 2026-11-10 21:52:23 414.96MB 执行命令并创建新的镜像层
RUN |4 QWENPAW_MANAGED_RUNTIME_BOUNDARY_VERSION=2.3.0b4 QWENPAW_DISABLED_CHANNELS=imessage QWENPAW_ENABLED_CHANNELS= DEBIAN_FRONTEND=noninteractive /bin/sh -c apt-get update && apt-get install -y --fix-missing chromium chromium-sandbox libx11-xcb1 libxcomposite1 libxdamage1 libxext6 libxfixes3 libxi6 libxtst6 libnss3 libglib2.0-0 libdrm2 libgbm1 libasound2 fonts-liberation libu2f-udev && rm -rf /var/lib/apt/lists/* && apt-get clean # buildkit
# 2026-11-10 21:51:56 1.17GB 执行命令并创建新的镜像层
RUN |4 QWENPAW_MANAGED_RUNTIME_BOUNDARY_VERSION=2.3.0b4 QWENPAW_DISABLED_CHANNELS=imessage QWENPAW_ENABLED_CHANNELS= DEBIAN_FRONTEND=noninteractive /bin/sh -c apt-get update && apt-get install -y --fix-missing ca-certificates curl python3 python3-venv build-essential libssl-dev git supervisor vim gettext-base xfce4 xfce4-terminal xvfb dbus-x11 fonts-wqy-zenhei fonts-wqy-microhei && update-ca-certificates && rm -rf /var/lib/apt/lists/* && apt-get clean # buildkit
# 2026-11-10 21:48:55 0.00B 定义构建参数
ARG DEBIAN_FRONTEND=noninteractive
# 2026-11-10 21:48:55 0.00B 设置环境变量 QWENPAW_ENABLED_CHANNELS
ENV QWENPAW_ENABLED_CHANNELS=
# 2026-11-10 21:48:55 0.00B 定义构建参数
ARG QWENPAW_ENABLED_CHANNELS=
# 2026-11-10 21:48:55 0.00B 设置环境变量 QWENPAW_DISABLED_CHANNELS
ENV QWENPAW_DISABLED_CHANNELS=imessage
# 2026-11-10 21:48:55 0.00B 定义构建参数
ARG QWENPAW_DISABLED_CHANNELS=imessage
# 2026-11-10 21:48:55 0.00B 设置环境变量 QWENPAW_BACKUP_DIR
ENV QWENPAW_BACKUP_DIR=/app/working.backups
# 2026-11-10 21:48:55 0.00B 设置环境变量 QWENPAW_SECRET_DIR
ENV QWENPAW_SECRET_DIR=/app/working.secret
# 2026-11-10 21:48:55 0.00B 设置环境变量 QWENPAW_WORKING_DIR
ENV QWENPAW_WORKING_DIR=/app/working
# 2026-11-10 21:48:55 0.00B 设置环境变量 WORKSPACE_DIR
ENV WORKSPACE_DIR=/app
# 2026-11-10 21:48:55 0.00B 设置环境变量 NODE_ENV
ENV NODE_ENV=production
# 2026-11-10 21:48:55 0.00B 执行命令并创建新的镜像层
RUN |1 QWENPAW_MANAGED_RUNTIME_BOUNDARY_VERSION=2.3.0b4 /bin/sh -c expected_version="v$(tr -d '[:space:]' < /tmp/qwenpaw-node-version)" && actual_version="$(node --version)" && if [ "${actual_version}" != "${expected_version}" ]; then echo "Node version mismatch: expected ${expected_version}, got ${actual_version}" >&2; exit 1; fi && rm /tmp/qwenpaw-node-version # buildkit
# 2026-11-10 21:48:55 8.00B 复制新文件或目录到容器中
COPY .nvmrc /tmp/qwenpaw-node-version # buildkit
# 2026-11-10 21:48:55 0.00B 添加元数据标签
LABEL io.qwenpaw.managed-runtime-boundary.version=2.3.0b4
# 2026-11-10 21:48:55 0.00B 定义构建参数
ARG QWENPAW_MANAGED_RUNTIME_BOUNDARY_VERSION=2.3.0b4
# 2026-11-05 15:42:06 0.00B 设置默认要执行的命令
CMD ["node"]
# 2026-11-05 15:42:06 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["docker-entrypoint.sh"]
# 2026-11-05 15:42:06 388.00B 复制新文件或目录到容器中
COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
# 2026-11-05 15:42:06 7.19MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -ex && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && apt-mark auto '.*' > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && yarn --version && rm -rf /tmp/* # buildkit
# 2026-11-05 15:41:53 0.00B 设置环境变量 YARN_VERSION
ENV YARN_VERSION=1.22.22
# 2026-11-05 15:41:53 144.98MB 执行命令并创建新的镜像层
RUN /bin/sh -c ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" && case "${dpkgArch##*-}" in amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; *) echo "unsupported architecture"; exit 1 ;; esac && set -ex && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr xz-utils libatomic1 --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 5BE8A3F6C8A5C01D106C0AD820B1A390B168D356 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A 655F3B5C1FB3FA8D1A0CA6BDE4A7D232B936D2FD A363A499291CBBC940DD62E41F10027AF002F8B0 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \; && apt-mark auto '.*' > /dev/null && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && ln -s /usr/local/bin/node /usr/local/bin/nodejs && node --version && npm --version && rm -rf /tmp/* # buildkit
# 2026-11-05 15:41:53 0.00B 设置环境变量 NODE_VERSION
ENV NODE_VERSION=22.23.4
# 2026-11-05 15:41:34 8.90KB 执行命令并创建新的镜像层
RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit
# 2026-11-05 05:23:39 74.87MB
# debian.sh --arch 'amd64' out/ 'bookworm' '@1793827419'
镜像信息
{
"Id": "sha256:5773034252aeadbf113b1ef2d47d7451214242cda99e5ea9d08bc0f55c495de2",
"RepoTags": [
"agentscope/qwenpaw:v2.3.0-beta.4",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/agentscope/qwenpaw:v2.3.0-beta.4"
],
"RepoDigests": [
"agentscope/qwenpaw@sha256:c8d406b1fecdd647dc7fecdf7fa846bab2671bf01045af2411a6ab9f34b1ebec",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/agentscope/qwenpaw@sha256:6c6e7e8244f21fa3c9589b580ab474ba33f2c5ed3f0c57f27aad14bc3ac3578c"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2026-11-10T13:55:05.270890308Z",
"Container": "",
"ContainerConfig": null,
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"ExposedPorts": {
"8088/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/app/venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"NODE_VERSION=22.23.4",
"YARN_VERSION=1.22.22",
"NODE_ENV=production",
"WORKSPACE_DIR=/app",
"QWENPAW_WORKING_DIR=/app/working",
"QWENPAW_SECRET_DIR=/app/working.secret",
"QWENPAW_BACKUP_DIR=/app/working.backups",
"QWENPAW_DISABLED_CHANNELS=imessage",
"QWENPAW_ENABLED_CHANNELS=",
"PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH=/usr/bin/chromium",
"PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1",
"QWENPAW_RUNNING_IN_CONTAINER=1",
"QWENPAW_PORT=8088"
],
"Cmd": [
"/entrypoint.sh"
],
"ArgsEscaped": true,
"Image": "",
"Volumes": null,
"WorkingDir": "/app",
"Entrypoint": [
"docker-entrypoint.sh"
],
"OnBuild": null,
"Labels": {
"io.qwenpaw.managed-runtime-boundary.version": "2.3.0b4"
}
},
"Architecture": "amd64",
"Os": "linux",
"Size": 3008601860,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/d4c7eae12e8de87680886c937de1b96cada4d3d360bb5d2ccfdfd88fe9c5eba4/diff:/var/lib/docker/overlay2/14f7cba9bf3de32128161dc7948198e2a6fd2ccd711d06cb8177c263a3fa1df8/diff:/var/lib/docker/overlay2/9619fc6092ffdd2e788393b3da23d19883e9da6a07007f6005c6144815a606ad/diff:/var/lib/docker/overlay2/d610624c3ecef82b61339b57f99662e554dec42659e07010c748da6adc2b3a3c/diff:/var/lib/docker/overlay2/47705ea191ce24b61a5d3a84d6abed9f64c8b887a2c0aa3401604cb95543236d/diff:/var/lib/docker/overlay2/ee5743a4fbe79dfabef1d392bd6ea7a1cf2b64206639046424a63f3fec3f2053/diff:/var/lib/docker/overlay2/eb1c939568308afc00f3335ed8ce0c249c69a36498c82962b802dbbc0dfd62fd/diff:/var/lib/docker/overlay2/d668d9a28cfc5c8df7d1dc79653bc3deafaa1a433cf80ae41c3df83b937f272c/diff:/var/lib/docker/overlay2/e139567a6b602a89c851600ca2c3a1f7aaa83834eea8b35bffafad6083fcf945/diff:/var/lib/docker/overlay2/709d38224ffe2a26a140668e29e737239543a14fe5188b9ce17bff55d98141f3/diff:/var/lib/docker/overlay2/78566a28050387697191045479da0d68d7d13a5b0827e25352b87bffbf235803/diff:/var/lib/docker/overlay2/fec5c33d76d309f622b105c7bd4381acdc42d69efc29963658a0e8c228579af2/diff:/var/lib/docker/overlay2/0a997ae75d4b7b7590e1a2ab2df39e21a0bfa58f8b8124a74823316c63027b1d/diff:/var/lib/docker/overlay2/736cc4c9734a20736bcabf10050cc7e5d67b2e632e134b8d85a5515c32ec0c12/diff:/var/lib/docker/overlay2/c09d30e303bd9a12919ebf1771bdd8543bbac580500160bf5384397ce0e7c1bc/diff:/var/lib/docker/overlay2/a63fb5e81999a84872e9ca184dd0f54897e19ee4db9da47606f6c49b44ae5fea/diff:/var/lib/docker/overlay2/e7ba0811443f0c424ad21814a91f61394915df1f2f5c1d48ce09b4424f21952b/diff:/var/lib/docker/overlay2/32b1c2b265b59b680ab6a89125a95b8446b91d1d319694140d00ce7c5928544a/diff:/var/lib/docker/overlay2/d1413e495b3cc36370e33e6e79bfc298e44de7572c276c14b212c85803742300/diff:/var/lib/docker/overlay2/dc49d6c9ada3c14697ee36313141b840b5003b247cfb75561010a275451c2c11/diff:/var/lib/docker/overlay2/7c4ec3a9b0c0a1d4bf264bb456a08acff913f3307e95dbf49f6983b5d3124d47/diff:/var/lib/docker/overlay2/850f281888161b71c0e23dfda49a455bb87baa71f9a9288a36e5235ded88e8c6/diff:/var/lib/docker/overlay2/8541789d624a0232e9635a8ae3e59ed0f502303de7db240d96549401657c9a72/diff:/var/lib/docker/overlay2/98e273bc1b2f7d5060a4b58a73edf44778b46cea5cb8e14fbe6d6821c217197e/diff:/var/lib/docker/overlay2/01025eec3dfa36144b5f4257f69e6dcf02be2116cc002cd9fa9128fb37cbf231/diff",
"MergedDir": "/var/lib/docker/overlay2/69b7207deb0be65ee34782b18bc32ef0ce3d5f879310fa1fc4d54b0c50291a25/merged",
"UpperDir": "/var/lib/docker/overlay2/69b7207deb0be65ee34782b18bc32ef0ce3d5f879310fa1fc4d54b0c50291a25/diff",
"WorkDir": "/var/lib/docker/overlay2/69b7207deb0be65ee34782b18bc32ef0ce3d5f879310fa1fc4d54b0c50291a25/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:1d7b9dd8778ebc4d9bf2f64436dd358640718cb349f5640b33bebaea4ffd62c2",
"sha256:e597c47e115a320990201d8c37e21c6a41a739f901c93686c3f73aabe1e4f6c3",
"sha256:0e1faafd1d11dd793a3eb58a862e50f675dba83256b366243299f018ea23f876",
"sha256:ce67f65846ad6e526c5f9e127a761680c76dea4bc3990218589ccd7c4fe90933",
"sha256:33226972b872a353657b544d699b29a0675ebc9d8fbd284f718f188cff7b42ce",
"sha256:687f83fea0f9b2f083c931485eda2cb74add2db5e0a9151ca3e6018f12af2509",
"sha256:c96f5305e8bc996e1943f1222d4a78419eb6d884e417e5180cb44028d3bd74f2",
"sha256:a1d108483aec96fa9067d2ba89b4c8d88296bacf4148fb2493ea72b340e49004",
"sha256:000ec1b4412aebb68e00e071362690706cb314610bf71d581003c8df10bf3587",
"sha256:f642d560629a508ea28f749d538528155e9e28464160a315920b2e2b3695ed5e",
"sha256:678f2f290b24d0e8692fbfc651412d41f2cd5576b46149a435b4c9cbf1cfe44d",
"sha256:8ae43ab7fbffa98ad585a4449d39bc72b594fc82376d890af025d6bb549d7332",
"sha256:97324f35cf5f409ae8769b7551115c8a2c1a351b23a1d7a7b02dc6e36971bd09",
"sha256:76e84649309366f1e9eabf2357b5652975db297ddf1fa27d3e94199c011e3613",
"sha256:8a48162e6b933d3f6f594eb19fe16247a330b70c880720d4a475cbf339ab68ec",
"sha256:6957b98cc3963cc3715fb2c6958a4225fe28d263676eeb5a4ac9c34b0edaad12",
"sha256:2192410644de97306fe36c865c77f65c17d2db999d25f9ad4bc63b2ff35d6424",
"sha256:67dc12bffe2eebd8cca0339d9e5d41bc255cbb9c1055fc00faa5fb0bb692c729",
"sha256:b6f106537f846261aa4fb3f9a7c5f2e236d20a9a9dda53cde69333a0622afea9",
"sha256:a0033b48ba7f725e2d7fae0c475d5bc3706013c673fdc625dd2c6d0f46792419",
"sha256:0980636dec300cc1e8c149ab16b5a38ca1d810ab203ca9b0ad19af033eee6d49",
"sha256:965f2e22d6cfa7fee097c2d544379259d46ec50e762fddef9a819e7cb3af89ef",
"sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
"sha256:528d39c2acc717b80e8c75f26aaee8f7e666cbba53d355edb10ff80376971e41",
"sha256:0d6f92abb829d5a910b54a70cd1732e3602a5693f391a3dfcf12dcf4c7003e55",
"sha256:ef5d7921690505e5bee0c9ab779d42b2470aa227a0c1e82ba1f9327e7f87a92e"
]
},
"Metadata": {
"LastTagTime": "2026-11-11T10:11:33.98122775+08:00"
}
}