mirror of
https://github.com/Syngnat/GoNavi.git
synced 2026-06-14 18:39:54 +08:00
🐛 fix(ci/driver): 修复驱动发布错配与 dev 驱动下载命中旧资产
- 发布链路新增 driver release 资产自检,校验已发布二进制与 manifest revision/sha256 一致 - dev-build 与 release 工作流在复用已发布驱动前先校验实际资产,发现旧二进制混入时强制全量重建 - driver manifest 新增 sha256 字段,避免仅凭 source commit 与 manifest 一致就误判发布有效 - 驱动变更检测与全量重建判定纳入 release asset 校验脚本变更,确保链路修复提交会触发自愈重建 - 驱动下载优先使用 GitHub release asset API 地址,并对资产接口按 octet-stream 下载,降低 dev-latest 同名资产命中旧缓存的风险 - 保持 DuckDB 无主键编辑修复不回退,并通过 internal/db 与前端相关回归测试
This commit is contained in:
9
.github/workflows/dev-build.yml
vendored
9
.github/workflows/dev-build.yml
vendored
@@ -99,8 +99,13 @@ jobs:
|
||||
fi
|
||||
if [[ -n "$SOURCE_COMMIT" && -s "$manifest_path" ]]; then
|
||||
if bash ./tools/validate-driver-release-manifest.sh --commit "$SOURCE_COMMIT" --manifest "$manifest_path"; then
|
||||
echo "manifest_valid=true" >> "$GITHUB_OUTPUT"
|
||||
echo "🧭 Published dev driver release manifest is consistent with its source commit"
|
||||
if python3 tools/validate-driver-release-assets.py --repo Syngnat/GoNavi-DriverAgents --tag dev-latest; then
|
||||
echo "manifest_valid=true" >> "$GITHUB_OUTPUT"
|
||||
echo "🧭 Published dev driver release manifest and actual assets are consistent with its source commit"
|
||||
else
|
||||
echo "manifest_valid=false" >> "$GITHUB_OUTPUT"
|
||||
echo "⚠️ Published dev driver release assets do not match manifest; forcing full rebuild"
|
||||
fi
|
||||
else
|
||||
echo "manifest_valid=false" >> "$GITHUB_OUTPUT"
|
||||
echo "⚠️ Published dev driver release manifest is stale; forcing full rebuild"
|
||||
|
||||
9
.github/workflows/release.yml
vendored
9
.github/workflows/release.yml
vendored
@@ -104,8 +104,13 @@ jobs:
|
||||
fi
|
||||
if [[ -n "$SOURCE_COMMIT" && -s "$manifest_path" ]]; then
|
||||
if bash ./tools/validate-driver-release-manifest.sh --commit "$SOURCE_COMMIT" --manifest "$manifest_path"; then
|
||||
echo "manifest_valid=true" >> "$GITHUB_OUTPUT"
|
||||
echo "🧭 Published driver release manifest is consistent with its source commit"
|
||||
if python3 tools/validate-driver-release-assets.py --repo Syngnat/GoNavi-DriverAgents --tag "$PREV_TAG"; then
|
||||
echo "manifest_valid=true" >> "$GITHUB_OUTPUT"
|
||||
echo "🧭 Published driver release manifest and actual assets are consistent with its source commit"
|
||||
else
|
||||
echo "manifest_valid=false" >> "$GITHUB_OUTPUT"
|
||||
echo "⚠️ Published driver release assets do not match manifest; forcing full rebuild"
|
||||
fi
|
||||
else
|
||||
echo "manifest_valid=false" >> "$GITHUB_OUTPUT"
|
||||
echo "⚠️ Published driver release manifest is stale; forcing full rebuild"
|
||||
|
||||
Reference in New Issue
Block a user