edit | blame | history | raw

MD-BUNDLE-07 候选包记录

日期:2026-07-04
项目:Mindraw
角色:Coder@mindraw

用户目标

PMO 派发 MD-BUNDLE-07-20260704,要求基于当前 Mindraw 主项目源码和 MD-BUNDLE-06 App focus activation / preview refresh source 修复,生成新的 MEXP13 internal acceptance App candidate。版本不得低于 1.2.3,build number 使用 BuildYYYYMMDDHHMM,releaseClass 仍为 mexp13-acceptance-bundle。旧 1.2.2 / Build202607021605 只保留为失败证据。

明确不做:不做正式 H8 release,不做 notarized installer,不做 target-link sidebar entry,不修改 P2.mindrawforcodex//Users/ar/plugins/mindraw 或 installed cache,不把 App candidate 直接声明为可用户复验。

已完成事项

  • 按派工要求读取入口和规则:AGENTS.mdINDEX.md02-P/plan-progress.markdownCODEGRAPH.mdrelease-versioning.mdcode-governance.mddelivery-gate.md、MD-BUNDLE-07 派工文件、MD-BUNDLE-06 证据。
  • 将主项目 App 版本更新为 1.2.3package.jsonsrc-tauri/tauri.conf.jsonsrc-tauri/Cargo.toml
  • 生成 Build202607042351 App candidate。
  • 修正 scripts/package-mindraw.sh,让打包流程遵守外部 CARGO_TARGET_DIR,避免依赖项目内旧 src-tauri/target 缓存。
  • 记录验证证据到 02-P/MEXP13-AcceptanceBundle/qa/md-bundle-07-refreshed-candidate-check-20260704.md.json
  • 回写 02-P/plan-progress.markdownINDEX.mdCODEGRAPH.mdCHANGELOG.md03-O/C2.builds/README.md

核心事实

  • Version:1.2.3
  • Build number:Build202607042351
  • Build ID:202607042351
  • Release class input:mexp13-acceptance-bundle
  • Manifest releaseClass:mexp13-acceptance-bundle-not-formal-release-not-notarized-installer
  • Candidate DMG:/Users/ar/Projects/Mindraw/03-O/C2.builds/releases/Build202607042351/Mindraw_1.2.3_aarch64-Build202607042351.dmg
  • DMG SHA256:5c8041288a61f8c09e7bf0ca8a0bcd68b55d17e5aaa1079eb8d7864a952481b5
  • Manifest:/Users/ar/Projects/Mindraw/03-O/C2.builds/releases/Build202607042351/release-manifest.json
  • Manifest SHA256:d8ec231d0f341fbd3a07dd8f59c2e77c669053da474cbc9e04b9cabe84593e73
  • Build info SHA256:ee0a7d1c4394f16971cf63a4ccf72d668ea282de50343524b1bb32fe759cdc44
  • Source branch:codex/mindraw-0.7.2-image-quality
  • Source commit:eff5dfc085e55ce67e4e40b559dcf472676947b3
  • Source tag:none
  • PM_NOTIFY_READY:no,原因是本轮包含打包脚本改动,需代码复核或等效复核后再由 PMO 继续 regate。

文件变更

跟踪文件:

  • package.json
  • src-tauri/tauri.conf.json
  • src-tauri/Cargo.toml
  • scripts/package-mindraw.sh
  • CHANGELOG.md
  • CODEGRAPH.md
  • INDEX.md
  • 03-O/C2.builds/README.md
  • 02-P/plan-progress.markdown

新增未跟踪文件:

  • 02-P/MEXP13-AcceptanceBundle/qa/md-bundle-07-refreshed-candidate-check-20260704.md
  • 02-P/MEXP13-AcceptanceBundle/qa/md-bundle-07-refreshed-candidate-check-20260704.json
  • 03-O/C2.builds/releases/Build202607042351/

注意:工作区仍存在本轮之前已有的 dirty / untracked 内容,本轮未回退或整理无关文件。

验证证据

以下命令均已执行并返回 exit 0,除第一次旧 target 打包尝试按预期暴露 stale cache 问题:

npm run test:run -- src/lib/mindrawProjectCanvasPreview.test.ts src/lib/mindrawAppApiTransport.test.ts src/lib/mindrawAppReadApi.test.ts
CARGO_TARGET_DIR=/tmp/mindraw-md-bundle-07-cargo-target cargo check --manifest-path src-tauri/Cargo.toml
CARGO_TARGET_DIR=/tmp/mindraw-md-bundle-07-cargo-target cargo test --manifest-path src-tauri/Cargo.toml preview
CARGO_TARGET_DIR=/tmp/mindraw-md-bundle-07-cargo-target cargo test --manifest-path src-tauri/Cargo.toml app_api_transport
npm run build
CARGO_TARGET_DIR=/tmp/mindraw-md-bundle-07-package-target BUILD_ID=202607042351 MINDRAW_BUILD_AGENT=codex-md-bundle-07 MINDRAW_RELEASE_CLASS=mexp13-acceptance-bundle npm run package:mindraw
hdiutil verify 03-O/C2.builds/releases/Build202607042351/Mindraw_1.2.3_aarch64-Build202607042351.dmg
shasum -a 256 03-O/C2.builds/releases/Build202607042351/Mindraw_1.2.3_aarch64-Build202607042351.dmg 03-O/C2.builds/releases/Build202607042351/release-manifest.json 03-O/C2.builds/releases/Build202607042351/build-info.txt
hdiutil attach -nobrowse -readonly -mountpoint /tmp/mindraw-md-bundle-07-mount 03-O/C2.builds/releases/Build202607042351/Mindraw_1.2.3_aarch64-Build202607042351.dmg
plutil -p /tmp/mindraw-md-bundle-07-mount/Mindraw.app/Contents/Info.plist
codesign --verify --deep --strict --verbose=2 /tmp/mindraw-md-bundle-07-mount/Mindraw.app
npm run doctor:mindraw -- --app /tmp/mindraw-md-bundle-07-mount/Mindraw.app --pretty
git diff --check
hdiutil detach /tmp/mindraw-md-bundle-07-mount
node -e "const fs=require('node:fs'); for (const p of ['02-P/MEXP13-AcceptanceBundle/qa/md-bundle-07-refreshed-candidate-check-20260704.json','03-O/C2.builds/releases/Build202607042351/release-manifest.json']) JSON.parse(fs.readFileSync(p,'utf8')); console.log('json ok')"

第一次未设置 fresh CARGO_TARGET_DIRnpm run package:mindraw 返回 exit 1,原因是默认 src-tauri/target 内有历史 /Users/ar/Projects/ExcalidrawX/... generated permission 缓存。后续脚本改为尊重外部 CARGO_TARGET_DIR 后,使用 /tmp/mindraw-md-bundle-07-package-target 生成候选包成功。

后续事项

  • 需要代码复核或等效复核覆盖版本更新和 scripts/package-mindraw.shCARGO_TARGET_DIR 口径变化。
  • PMO 应在复核后再判断是否执行 PM-BUNDLE-REGATE-03
  • 本候选包不是正式 H8 release,不是 notarized installer,manifest 记录 source tag 为 none,工作区仍为 dirty 状态。