批准图片 dry-run / 加拿大 Canadian REIT Residential Node
REITs Pixel Asset #CA-Residential-09 / 加拿大 / isometric-nft-card / needs-compliance-review
{
"table": "asset_visual_approval_human_confirmation_actions",
"schemaVersion": "2026-06-visual-approval-human-confirmation-action-dry-run-v1",
"actionId": "asset-visual-approval-human-confirmation-action-approve-visual-dry-run-ca-residential-tsx-node-isometric-nft-card",
"humanConfirmationId": "asset-visual-approval-human-confirmation-ca-residential-tsx-node-isometric-nft-card",
"identityFixtureId": "asset-visual-approval-identity-fixture-ca-residential-tsx-node-isometric-nft-card",
"action": "approve-visual-dry-run",
"sourceEvidenceType": "bbs-gap-local-generated",
"sourceEvidencePublicPath": "/assets/virtual-assets/ca-residential-tsx-node/nft-card.png",
"sourceEvidenceSha256": "4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6",
"sourceMatchesTransaction": true,
"humanConfirmationDigest": "22525e35d71dec43828ea0efb671f623adb19f0bfc2c58c41e428d851ef80d8d",
"writeDisabled": true
}{
"action": "approve-visual-dry-run",
"assetSlug": "ca-residential-tsx-node",
"candidateSlug": "ca-residential-tsx-node",
"humanConfirmationId": "asset-visual-approval-human-confirmation-ca-residential-tsx-node-isometric-nft-card",
"formatKey": "isometric-nft-card",
"actorRole": "ops",
"actorName": "visual-ops-reviewer",
"reason": "dry-run 批准图片 dry-run",
"dryRun": true,
"writeDisabled": true,
"secondConfirm": false,
"sourceEvidenceSha256": "4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6"
}{
"action": "approve-visual-dry-run",
"actionLabel": "批准图片 dry-run",
"dryRun": true,
"writeDisabled": true,
"targetHumanConfirmationId": "asset-visual-approval-human-confirmation-ca-residential-tsx-node-isometric-nft-card",
"targetIdentityFixtureId": "asset-visual-approval-identity-fixture-ca-residential-tsx-node-isometric-nft-card",
"targetSourceEvidenceSha256": "4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6",
"sourceEvidenceRequired": true,
"requiredRoles": [
"design-director",
"operations-owner"
],
"requiredInputs": [
"actorRole",
"actorName",
"reason",
"secondConfirm",
"approverId",
"approvedAt",
"approvalEvidenceUri",
"sourceEvidenceSha256"
],
"blocked": true,
"note": "批准包当前只做 dry-run,因无真实审批人、时间戳和证据 URI,不能记录最终批准。"
}{
"from": "needs-compliance-review",
"to": "visual-approval-recorded",
"committed": false,
"finalApprovalRecorded": false,
"approvalEvidenceWritten": false,
"registryPromotionAllowed": false,
"mapPublished": false,
"bbsPosted": false,
"note": "该动作协议只校验人工确认输入,不持久化状态,不写审批证据,不推进地图或正式清单。"
}批准包当前只做 dry-run,因无真实审批人、时间戳和证据 URI,不能记录最终批准。
批准图片 dry-run 当前不能记录最终批准,必须保持 finalApprovalRecorded=false。
缺少真实 approverId、approvedAt、approvalEvidenceUri、approvalEvidenceDigest、sourceEvidenceSha256 和 MFA 校验。
仍有 14 个待确认项,不能进入最终批准。
humanQueueReady=false,不能进入批准校验。
