# 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.md`、`INDEX.md`、`02-P/plan-progress.markdown`、`CODEGRAPH.md`、`release-versioning.md`、`code-governance.md`、`delivery-gate.md`、MD-BUNDLE-07 派工文件、MD-BUNDLE-06 证据。 - 将主项目 App 版本更新为 `1.2.3`:`package.json`、`src-tauri/tauri.conf.json`、`src-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.markdown`、`INDEX.md`、`CODEGRAPH.md`、`CHANGELOG.md`、`03-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 问题: ```bash 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_DIR` 的 `npm 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.sh` 的 `CARGO_TARGET_DIR` 口径变化。 - PMO 应在复核后再判断是否执行 `PM-BUNDLE-REGATE-03`。 - 本候选包不是正式 H8 release,不是 notarized installer,manifest 记录 source tag 为 none,工作区仍为 dirty 状态。