{"generatedAt":"2026-09-07T03:28:49.515Z","scope":{"countrySlug":null,"assetSlug":null,"status":null,"formatKey":null},"metrics":{"candidateCount":9,"transactionEnvelopeCount":18,"evidenceTransactionReadyCount":6,"blockedBeforeEvidenceTransactionCount":12,"needsPinRedrawCount":7,"needsComplianceReviewCount":1,"missingFileCount":0,"blockedByBriefCount":4,"writeSetItemCount":144,"preconditionCount":162,"satisfiedPreconditionCount":68,"evidenceWriteTransactionDisabledCount":18,"databaseWriteDisabledCount":18,"evidenceWriteDisabledCount":18,"signerEvidenceWriteDisabledCount":18,"requirementEvidenceWriteDisabledCount":18,"revocationEvidenceWriteDisabledCount":18,"approvalEvidenceWrittenCount":0,"approvalEvidenceCommittedCount":0,"signerEvidenceWrittenCount":0,"requirementEvidenceWrittenCount":0,"revocationTemplateWrittenCount":0,"approvalLedgerUpdatedCount":0,"mcpIndexQueuedCount":0,"mcpQueueWriteDisabledCount":18,"rollbackPlanCount":18,"idempotencyKeyCount":18,"evidenceTransactionDigestCount":18,"localGeneratedEvidenceCount":14,"sourceMismatchCount":0,"mcpResourceCount":189},"records":[{"generatedAt":"2026-09-07T03:28:49.515Z","candidateSlug":"au-logistics-asx-warehouse","assetName":"澳大利亚 A-REIT Logistics Warehouse","nftStyleName":"REITs Pixel Asset #AU-Logistics-07","countrySlug":"au","countryName":"澳大利亚","cityName":"Sydney","assetType":"物流仓储","statusLabel":"存在证据写入事务 dry-run","transactionCount":2,"evidenceTransactionReadyCount":1,"blockedBeforeEvidenceTransactionCount":1,"writeSetItemCount":16,"preconditionCount":18,"satisfiedPreconditionCount":9,"approvalEvidenceWrittenCount":0,"recordDigest":"a1b954e8e1bed1a7dd83cefb26e0d6bc8ca84cf7f4108165670c240bbb4c0e68","transactions":[{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-au-logistics-asx-warehouse-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-au-logistics-asx-warehouse-isometric-nft-card","previewRowId":"asset-visual-registry-preview-au-logistics-asx-warehouse-isometric-nft-card","visualTransactionId":"visual-registry-transaction-au-logistics-asx-warehouse-isometric-nft-card","candidateSlug":"au-logistics-asx-warehouse","assetName":"澳大利亚 A-REIT Logistics Warehouse","nftStyleName":"REITs Pixel Asset #AU-Logistics-07","countrySlug":"au","countryName":"澳大利亚","cityName":"Sydney","assetType":"物流仓储","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/au-logistics-asx-warehouse/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/au-logistics-asx-warehouse/nft-card.png","sha256":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","bytes":2231294,"manifestSource":"filesystem-probe","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=au-logistics-asx-warehouse&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=au-logistics-asx-warehouse&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"evidence-transaction-ready","statusLabel":"证据写入事务可检查","packetStatus":"evidence-packet-ready","packetStatusLabel":"证据包结构可检查","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"83a1bedfecbf58bdf561e265308229c37f4191a440d44ecf2941e9cab43037b2","placeholderDigest":"972840fd1db2db67bbfd268856a44c610339c739396acbb490d4459fef97dfa1","previewDigest":"6b4bc87eefd6f85a8d053ba05a6014edb81d09ea1f95c858e847c53865eefe2c","visualTransactionDigest":"f9a5c353fd30cf2faa664c32ff94b7c5b4f63de51556138b017cf0e9c707e480","reviewDigest":"4e5603d3cdd84575ecf32d0ea8701d423718e149bb040268c381c3f1fb3bef1c","approvalDigest":"579958e668643b3780b523df793e403454eca3b89c4c657ea8ee5e0023c8f07c","visualDigest":"984c241c59787d262fbfa0881959e8725e5188d790239074009f3c4a26abd76f","imageSha256":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","evidenceTransactionDigest":"94dc4ca28a869fdc49d4550d2000f5211acfeec3490c5209ac244eb5948c837d","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-au-logistics-asx-warehouse-isometric-nft-card","idempotencyKey":"a1aaf4af34577daea67d2eabf808807c","candidateSlug":"au-logistics-asx-warehouse","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-au-logistics-asx-warehouse-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-au-logistics-asx-warehouse-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/au-logistics-asx-warehouse/nft-card.png","sourceEvidenceSha256":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"83a1bedfecbf58bdf561e265308229c37f4191a440d44ecf2941e9cab43037b2","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"83a1bedfecbf58bdf561e265308229c37f4191a440d44ecf2941e9cab43037b2","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"da048c91c2cea7d223c20cbe694067506306c4cc068299be89ef400c9cfc52df","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"c22468f8d7575cec60b82b1adffdc95fe147861d0d041e90a4582d8256366d80","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"579958e668643b3780b523df793e403454eca3b89c4c657ea8ee5e0023c8f07c","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":true,"digest":"83a1bedfecbf58bdf561e265308229c37f4191a440d44ecf2941e9cab43037b2","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":true,"digest":"972840fd1db2db67bbfd268856a44c610339c739396acbb490d4459fef97dfa1","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":true,"digest":"6b4bc87eefd6f85a8d053ba05a6014edb81d09ea1f95c858e847c53865eefe2c","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-au-logistics-asx-warehouse-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":true,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":true},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["本地生成图片 source evidence 已绑定到 writer envelope，但仍只做事务预演。","仅表示 evidence writer envelope 可检查，不代表允许写入。","approverId、approvedAt、approvalEvidenceUri 和 approvalEvidenceDigest 仍为空。","evidenceWriteTransactionDisabled=true，databaseWriteDisabled=true。","approvalEvidenceWritten=false，finalApprovalRecorded=false。"],"requiredActions":[{"owner":"ops","label":"准备双签审批人身份与审批时间戳，但不要上传或写入","href":"/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card"},{"owner":"engineering","label":"实现 writer 前保持 transaction/database/evidence 写入全部禁用","href":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card"},{"owner":"qa","label":"校验 idempotencyKey、writeSet、rollbackPlan 和 MCP 资源 URI","href":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=au-logistics-asx-warehouse&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=au-logistics-asx-warehouse&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=au-logistics-asx-warehouse&decision=ready-for-human-approval&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E6%BE%B3%E5%A4%A7%E5%88%A9%E4%BA%9A%20A-REIT%20Logistics%20Warehouse"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/au-logistics-asx-warehouse/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/au-logistics-asx-warehouse/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/au-logistics-asx-warehouse/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/au-logistics-asx-warehouse/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/au-logistics-asx-warehouse/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/au-logistics-asx-warehouse/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/au-logistics-asx-warehouse/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/au-logistics-asx-warehouse/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/au-logistics-asx-warehouse","visualRegistryResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse","targetVisualResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-au-logistics-asx-warehouse-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-au-logistics-asx-warehouse-pixel-map-pin","previewRowId":"asset-visual-registry-preview-au-logistics-asx-warehouse-pixel-map-pin","visualTransactionId":"visual-registry-transaction-au-logistics-asx-warehouse-pixel-map-pin","candidateSlug":"au-logistics-asx-warehouse","assetName":"澳大利亚 A-REIT Logistics Warehouse","nftStyleName":"REITs Pixel Asset #AU-Logistics-07","countrySlug":"au","countryName":"澳大利亚","cityName":"Sydney","assetType":"物流仓储","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/au-logistics-asx-warehouse/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/au-logistics-asx-warehouse/map-pin.png","sha256":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","bytes":479311,"manifestSource":"filesystem-probe","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=au-logistics-asx-warehouse&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=au-logistics-asx-warehouse&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"37f974cc4a9e035db9795460bfccec505efadbd6dab71d77dbf18d4c5111ab26","placeholderDigest":"c1fe7d0a7d88de0d70c950305a4d32a36260da6321f95fd22128f3701682258f","previewDigest":"d75a9d671e15cd213431b9ad073aec2f2cc41e2afe516710983c230693509837","visualTransactionDigest":"7ba087a987f78ba4cc21966f9f9f2e104d0e7d8bb1a4d098e7c6e38d682f0f8f","reviewDigest":"3ac311e1d2e75bc19fa3d6afa5239c5e421fbe44fbf9f0e200da0e775cf1a501","approvalDigest":"516ad7e729f818354b5b7340119874a9fd787d87a45f4af3787004170d13f2c7","visualDigest":"1b5480025796846109eedbcc30b649cd004d8d398235dad6fc3348180853bdc8","imageSha256":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","evidenceTransactionDigest":"d900f6ea3b263588140b7b601a2ca7ed433c74240cda1c02395b543b5033efac","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-au-logistics-asx-warehouse-pixel-map-pin","idempotencyKey":"a96c3c4bcf56c722c12f999fa69e8503","candidateSlug":"au-logistics-asx-warehouse","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-au-logistics-asx-warehouse-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-au-logistics-asx-warehouse-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/au-logistics-asx-warehouse/map-pin.png","sourceEvidenceSha256":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"37f974cc4a9e035db9795460bfccec505efadbd6dab71d77dbf18d4c5111ab26","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"37f974cc4a9e035db9795460bfccec505efadbd6dab71d77dbf18d4c5111ab26","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"fcad963e8d2476b0c959d31a4f0e88bedd5c77d588f77f08d1308fc2ea35157d","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"2c10b5ce09b0c3003c0e86a650f6b08ca15c4f1e38ccc62ec7b0628b6952b605","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"516ad7e729f818354b5b7340119874a9fd787d87a45f4af3787004170d13f2c7","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"37f974cc4a9e035db9795460bfccec505efadbd6dab71d77dbf18d4c5111ab26","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"c1fe7d0a7d88de0d70c950305a4d32a36260da6321f95fd22128f3701682258f","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"d75a9d671e15cd213431b9ad073aec2f2cc41e2afe516710983c230693509837","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-au-logistics-asx-warehouse-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=au-logistics-asx-warehouse&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=au-logistics-asx-warehouse&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=au-logistics-asx-warehouse&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=au-logistics-asx-warehouse&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E6%BE%B3%E5%A4%A7%E5%88%A9%E4%BA%9A%20A-REIT%20Logistics%20Warehouse"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/au-logistics-asx-warehouse/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/au-logistics-asx-warehouse/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/au-logistics-asx-warehouse/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/au-logistics-asx-warehouse/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/au-logistics-asx-warehouse/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/au-logistics-asx-warehouse/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/au-logistics-asx-warehouse/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/au-logistics-asx-warehouse/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/au-logistics-asx-warehouse","visualRegistryResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse","targetVisualResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse/pixel-map-pin"}}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=au-logistics-asx-warehouse","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=au-logistics-asx-warehouse","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=au-logistics-asx-warehouse","registryPreview":"/operations/asset-visual-registry-preview?asset=au-logistics-asx-warehouse","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=au-logistics-asx-warehouse","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=au-logistics-asx-warehouse","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=au-logistics-asx-warehouse","visualRegistry":"/operations/asset-visual-registry","search":"/search?q=%E6%BE%B3%E5%A4%A7%E5%88%A9%E4%BA%9A%20A-REIT%20Logistics%20Warehouse"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/au-logistics-asx-warehouse","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/au-logistics-asx-warehouse","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/au-logistics-asx-warehouse","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/au-logistics-asx-warehouse","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/au-logistics-asx-warehouse","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/au-logistics-asx-warehouse","visualReviewResourceUri":"reits://asset-visual-review-ledger/au-logistics-asx-warehouse","visualTrialResourceUri":"reits://asset-visual-trials/au-logistics-asx-warehouse","futureAssetResourceUri":"reits://virtual-assets/au-logistics-asx-warehouse","visualRegistryResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse"}},{"generatedAt":"2026-09-07T03:28:49.515Z","candidateSlug":"uk-healthcare-rns-estate","assetName":"英国 UK REIT Healthcare Estate","nftStyleName":"REITs Pixel Asset #UK-Health-08","countrySlug":"uk","countryName":"英国","cityName":"London","assetType":"医疗健康地产","statusLabel":"存在证据写入事务 dry-run","transactionCount":2,"evidenceTransactionReadyCount":1,"blockedBeforeEvidenceTransactionCount":1,"writeSetItemCount":16,"preconditionCount":18,"satisfiedPreconditionCount":9,"approvalEvidenceWrittenCount":0,"recordDigest":"406966854167ed680d78fceccd7ed4eb397b76b49d9dded0186da6ad30d46333","transactions":[{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-uk-healthcare-rns-estate-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-uk-healthcare-rns-estate-isometric-nft-card","previewRowId":"asset-visual-registry-preview-uk-healthcare-rns-estate-isometric-nft-card","visualTransactionId":"visual-registry-transaction-uk-healthcare-rns-estate-isometric-nft-card","candidateSlug":"uk-healthcare-rns-estate","assetName":"英国 UK REIT Healthcare Estate","nftStyleName":"REITs Pixel Asset #UK-Health-08","countrySlug":"uk","countryName":"英国","cityName":"London","assetType":"医疗健康地产","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/uk-healthcare-rns-estate/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/uk-healthcare-rns-estate/nft-card.png","sha256":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","bytes":2285655,"manifestSource":"filesystem-probe","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=uk-healthcare-rns-estate&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=uk-healthcare-rns-estate&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"evidence-transaction-ready","statusLabel":"证据写入事务可检查","packetStatus":"evidence-packet-ready","packetStatusLabel":"证据包结构可检查","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"f34eba60e210efb0f35ab3e90496423a69d8b607812f390f62cfcb30f51ae0fd","placeholderDigest":"7fef567b74fcff0a6c1ef0aee31557f020c458cd0816ba59f14b0f45c4ffce2b","previewDigest":"d23b04e17fac4ca563c48752eacd4841ebfce0c5e418e756a8e3e9c2491ece28","visualTransactionDigest":"53523071c67ba70a042d04b4d1dadc63bf82cc65d39fdf157a034c0176b48cbf","reviewDigest":"5418c059ee2ca7290053bd5b0d6814024952db7ad636334ce71db6605e01b76d","approvalDigest":"3d76321873a12b7d26732057cf05bd5915100660c46065a31f574dfb0bbf8fe2","visualDigest":"554a0b92f4363fba903ccabfd6b1988200545f1b350473e935ac7a9d8255b37d","imageSha256":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","evidenceTransactionDigest":"e0733ba058828438be4d017a7cdd92e8e957643c0795d08ff8237bc11c5f3a9d","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-uk-healthcare-rns-estate-isometric-nft-card","idempotencyKey":"14bcb589f0ff22610de25ecd2d444596","candidateSlug":"uk-healthcare-rns-estate","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-uk-healthcare-rns-estate-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-uk-healthcare-rns-estate-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/uk-healthcare-rns-estate/nft-card.png","sourceEvidenceSha256":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"f34eba60e210efb0f35ab3e90496423a69d8b607812f390f62cfcb30f51ae0fd","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"f34eba60e210efb0f35ab3e90496423a69d8b607812f390f62cfcb30f51ae0fd","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"fa5f52754b3494be220e07554ab6d583b6b10f1b00d91c688a0df70afc5d1274","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"c00330cd0a09dbb790ed408f91e7eb245f5f793ccd5d7fe2b89d46182d507548","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"3d76321873a12b7d26732057cf05bd5915100660c46065a31f574dfb0bbf8fe2","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":true,"digest":"f34eba60e210efb0f35ab3e90496423a69d8b607812f390f62cfcb30f51ae0fd","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":true,"digest":"7fef567b74fcff0a6c1ef0aee31557f020c458cd0816ba59f14b0f45c4ffce2b","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":true,"digest":"d23b04e17fac4ca563c48752eacd4841ebfce0c5e418e756a8e3e9c2491ece28","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-uk-healthcare-rns-estate-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":true,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":true},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["本地生成图片 source evidence 已绑定到 writer envelope，但仍只做事务预演。","仅表示 evidence writer envelope 可检查，不代表允许写入。","approverId、approvedAt、approvalEvidenceUri 和 approvalEvidenceDigest 仍为空。","evidenceWriteTransactionDisabled=true，databaseWriteDisabled=true。","approvalEvidenceWritten=false，finalApprovalRecorded=false。"],"requiredActions":[{"owner":"ops","label":"准备双签审批人身份与审批时间戳，但不要上传或写入","href":"/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card"},{"owner":"engineering","label":"实现 writer 前保持 transaction/database/evidence 写入全部禁用","href":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card"},{"owner":"qa","label":"校验 idempotencyKey、writeSet、rollbackPlan 和 MCP 资源 URI","href":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=uk-healthcare-rns-estate&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=uk-healthcare-rns-estate&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=uk-healthcare-rns-estate&decision=ready-for-human-approval&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E8%8B%B1%E5%9B%BD%20UK%20REIT%20Healthcare%20Estate"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/uk-healthcare-rns-estate/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/uk-healthcare-rns-estate/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/uk-healthcare-rns-estate/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/uk-healthcare-rns-estate/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/uk-healthcare-rns-estate/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/uk-healthcare-rns-estate/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/uk-healthcare-rns-estate/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/uk-healthcare-rns-estate/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/uk-healthcare-rns-estate","visualRegistryResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate","targetVisualResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-uk-healthcare-rns-estate-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-uk-healthcare-rns-estate-pixel-map-pin","previewRowId":"asset-visual-registry-preview-uk-healthcare-rns-estate-pixel-map-pin","visualTransactionId":"visual-registry-transaction-uk-healthcare-rns-estate-pixel-map-pin","candidateSlug":"uk-healthcare-rns-estate","assetName":"英国 UK REIT Healthcare Estate","nftStyleName":"REITs Pixel Asset #UK-Health-08","countrySlug":"uk","countryName":"英国","cityName":"London","assetType":"医疗健康地产","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/uk-healthcare-rns-estate/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/uk-healthcare-rns-estate/map-pin.png","sha256":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","bytes":484560,"manifestSource":"filesystem-probe","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=uk-healthcare-rns-estate&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=uk-healthcare-rns-estate&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"7ed5956f8253a1b52aef21792039c3691a0a671658b92ba1d1e084598cfc1d23","placeholderDigest":"ded13dff148f8e17e1419218a7425e5a253573503dab04a84a4f1bd6a69de617","previewDigest":"57e482a98abb200b01858403c5e5f4a3e22ca161766abe5b641d3f21ffc692b4","visualTransactionDigest":"76f2fdc0fdbb506b838f638f04eafe90798ad8b1fd1a4f2cde31f2e31ecfafcd","reviewDigest":"dc73be673e566d1607e198c42d506a326059e144254dc1c161770f6a7a048794","approvalDigest":"72360967e3ce5e28ad81dca1a89796c48c491b1afba609a26308cf6f97a67062","visualDigest":"63939dea2502e9b837644f304490e0d7f9ec161600adea51f9e98efc5e29b46b","imageSha256":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","evidenceTransactionDigest":"217957c87a1ef2d06308ba03037361eb6fec76f6c2ca837b9da7cb7d4ab63470","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-uk-healthcare-rns-estate-pixel-map-pin","idempotencyKey":"f21ec9ad0b5c1dbcef759eeee555677e","candidateSlug":"uk-healthcare-rns-estate","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-uk-healthcare-rns-estate-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-uk-healthcare-rns-estate-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/uk-healthcare-rns-estate/map-pin.png","sourceEvidenceSha256":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"7ed5956f8253a1b52aef21792039c3691a0a671658b92ba1d1e084598cfc1d23","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"7ed5956f8253a1b52aef21792039c3691a0a671658b92ba1d1e084598cfc1d23","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"c37361290ac96bfab620a84cbc9eb459b735917842125cf8a57059177fb000d2","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"ea0d29347c9488a1523bffe54c08e28bfe20e186fea021e2dbcf21ba596cdbe1","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"72360967e3ce5e28ad81dca1a89796c48c491b1afba609a26308cf6f97a67062","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"7ed5956f8253a1b52aef21792039c3691a0a671658b92ba1d1e084598cfc1d23","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"ded13dff148f8e17e1419218a7425e5a253573503dab04a84a4f1bd6a69de617","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"57e482a98abb200b01858403c5e5f4a3e22ca161766abe5b641d3f21ffc692b4","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-uk-healthcare-rns-estate-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=uk-healthcare-rns-estate&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=uk-healthcare-rns-estate&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=uk-healthcare-rns-estate&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=uk-healthcare-rns-estate&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E8%8B%B1%E5%9B%BD%20UK%20REIT%20Healthcare%20Estate"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/uk-healthcare-rns-estate/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/uk-healthcare-rns-estate/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/uk-healthcare-rns-estate/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/uk-healthcare-rns-estate/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/uk-healthcare-rns-estate/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/uk-healthcare-rns-estate/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/uk-healthcare-rns-estate/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/uk-healthcare-rns-estate/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/uk-healthcare-rns-estate","visualRegistryResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate","targetVisualResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate/pixel-map-pin"}}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=uk-healthcare-rns-estate","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=uk-healthcare-rns-estate","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=uk-healthcare-rns-estate","registryPreview":"/operations/asset-visual-registry-preview?asset=uk-healthcare-rns-estate","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=uk-healthcare-rns-estate","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=uk-healthcare-rns-estate","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=uk-healthcare-rns-estate","visualRegistry":"/operations/asset-visual-registry","search":"/search?q=%E8%8B%B1%E5%9B%BD%20UK%20REIT%20Healthcare%20Estate"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/uk-healthcare-rns-estate","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/uk-healthcare-rns-estate","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/uk-healthcare-rns-estate","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/uk-healthcare-rns-estate","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/uk-healthcare-rns-estate","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/uk-healthcare-rns-estate","visualReviewResourceUri":"reits://asset-visual-review-ledger/uk-healthcare-rns-estate","visualTrialResourceUri":"reits://asset-visual-trials/uk-healthcare-rns-estate","futureAssetResourceUri":"reits://virtual-assets/uk-healthcare-rns-estate","visualRegistryResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate"}},{"generatedAt":"2026-09-07T03:28:49.515Z","candidateSlug":"cn-rental-housing-community","assetName":"中国保障性租赁住房 Community Block","nftStyleName":"REITs Pixel Asset #CN-Rental-12","countrySlug":"cn","countryName":"中国内地","cityName":"深圳","assetType":"保障性租赁住房","statusLabel":"存在证据写入事务 dry-run","transactionCount":2,"evidenceTransactionReadyCount":1,"blockedBeforeEvidenceTransactionCount":1,"writeSetItemCount":16,"preconditionCount":18,"satisfiedPreconditionCount":9,"approvalEvidenceWrittenCount":0,"recordDigest":"b654fa23244b125586ea071c8ad3e324d8a441b41ffa0279b84ba1a6bea79f38","transactions":[{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-rental-housing-community-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-rental-housing-community-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-cn-rental-housing-community-isometric-nft-card","previewRowId":"asset-visual-registry-preview-cn-rental-housing-community-isometric-nft-card","visualTransactionId":"visual-registry-transaction-cn-rental-housing-community-isometric-nft-card","candidateSlug":"cn-rental-housing-community","assetName":"中国保障性租赁住房 Community Block","nftStyleName":"REITs Pixel Asset #CN-Rental-12","countrySlug":"cn","countryName":"中国内地","cityName":"深圳","assetType":"保障性租赁住房","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/cn-rental-housing-community/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-rental-housing-community/nft-card.png","sha256":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","bytes":92699,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-rental-housing-community&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-rental-housing-community&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"evidence-transaction-ready","statusLabel":"证据写入事务可检查","packetStatus":"evidence-packet-ready","packetStatusLabel":"证据包结构可检查","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"9f12eb87036c62f357a42281640d5aab5328bc7eaea86746543e2ea5decad9ac","placeholderDigest":"61e796d87d987477d610e3b83292fd9080190a0a2152d708ec8c3d50ab04ee84","previewDigest":"dde2b8bd60ea1b9848c7fedfd1b60e8a939a49c0c506bc9592f8f352f715e777","visualTransactionDigest":"3207aad4518546d87d7064ebf39b7b4cd01546db362f26092453de558f377bfe","reviewDigest":"338d596c08a74f427eebdc706e99ce8783f90d34113a79587fe457b0ea156417","approvalDigest":"fca6100c3936cb5d1d6486658dc7ac3925f48461d809de79ce1c48a881bc2f25","visualDigest":"767216491392f8e84d9841ff3e0f9f11637d4d5754468c8aa6c495500d4d2823","imageSha256":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","evidenceTransactionDigest":"ca28276962fc3f1f453c2162c8ad04626c78d9f884c2fcb930f7e35ebebf810f","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-rental-housing-community-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-rental-housing-community-isometric-nft-card","idempotencyKey":"4be3d54a70c022889381b1b7e0fc1bbe","candidateSlug":"cn-rental-housing-community","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-rental-housing-community-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-cn-rental-housing-community-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/cn-rental-housing-community/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-rental-housing-community/nft-card.png","sourceEvidenceSha256":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"9f12eb87036c62f357a42281640d5aab5328bc7eaea86746543e2ea5decad9ac","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"9f12eb87036c62f357a42281640d5aab5328bc7eaea86746543e2ea5decad9ac","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"309514a2cf492926c88110dd0328da0d3c72c6392ed264f031870bc191dcfc97","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"74c90e1a7fa07a78135f00c1102d799b22d6bc50713495f11ba5e92aa1675217","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-rental-housing-community-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"fca6100c3936cb5d1d6486658dc7ac3925f48461d809de79ce1c48a881bc2f25","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":true,"digest":"9f12eb87036c62f357a42281640d5aab5328bc7eaea86746543e2ea5decad9ac","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":true,"digest":"61e796d87d987477d610e3b83292fd9080190a0a2152d708ec8c3d50ab04ee84","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":true,"digest":"dde2b8bd60ea1b9848c7fedfd1b60e8a939a49c0c506bc9592f8f352f715e777","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-rental-housing-community-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-rental-housing-community-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-rental-housing-community-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":true,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":true},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["本地生成图片 source evidence 已绑定到 writer envelope，但仍只做事务预演。","仅表示 evidence writer envelope 可检查，不代表允许写入。","approverId、approvedAt、approvalEvidenceUri 和 approvalEvidenceDigest 仍为空。","evidenceWriteTransactionDisabled=true，databaseWriteDisabled=true。","approvalEvidenceWritten=false，finalApprovalRecorded=false。"],"requiredActions":[{"owner":"ops","label":"准备双签审批人身份与审批时间戳，但不要上传或写入","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card"},{"owner":"engineering","label":"实现 writer 前保持 transaction/database/evidence 写入全部禁用","href":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card"},{"owner":"qa","label":"校验 idempotencyKey、writeSet、rollbackPlan 和 MCP 资源 URI","href":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-rental-housing-community&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-rental-housing-community&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-rental-housing-community&decision=ready-for-human-approval&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E4%BF%9D%E9%9A%9C%E6%80%A7%E7%A7%9F%E8%B5%81%E4%BD%8F%E6%88%BF%20Community%20Block"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-rental-housing-community/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-rental-housing-community/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-rental-housing-community/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-rental-housing-community/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-rental-housing-community/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-rental-housing-community/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-rental-housing-community/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/cn-rental-housing-community/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/cn-rental-housing-community","visualRegistryResourceUri":"reits://asset-visual-registry/cn-rental-housing-community","targetVisualResourceUri":"reits://asset-visual-registry/cn-rental-housing-community/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-rental-housing-community-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-rental-housing-community-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-cn-rental-housing-community-pixel-map-pin","previewRowId":"asset-visual-registry-preview-cn-rental-housing-community-pixel-map-pin","visualTransactionId":"visual-registry-transaction-cn-rental-housing-community-pixel-map-pin","candidateSlug":"cn-rental-housing-community","assetName":"中国保障性租赁住房 Community Block","nftStyleName":"REITs Pixel Asset #CN-Rental-12","countrySlug":"cn","countryName":"中国内地","cityName":"深圳","assetType":"保障性租赁住房","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/cn-rental-housing-community/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-rental-housing-community/map-pin.png","sha256":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","bytes":7404,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-rental-housing-community&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-rental-housing-community&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"891a9811805438b55fc69cd9433d024f9a77bc39c73e54d6c555d0f27179185f","placeholderDigest":"b31c47720c462d27e8b2218212f8ec57912c3db0e5e1bb4aee6893136f3f9b85","previewDigest":"71f4544accf1bfce54a3fb505218575881730d475a880601893953e3328c7a34","visualTransactionDigest":"4a3d02e3c03d4423d6df7dabce4cce7063f11770552749a7e4ea5edce37bfd4c","reviewDigest":"b1685fa1c55b5598c07e096044cb1f17b850f208f09b808cb26f6317e149afc9","approvalDigest":"de76e8eb95573e67bb145fe5f402309de418f940067677ef37c4fce147292570","visualDigest":"4d58eb5599bbdcb5810c1fb42b2efa492221ecdeb85fcbe6be8fcbda5ed64b91","imageSha256":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","evidenceTransactionDigest":"1a29a7cdd300fbdfac193b1f85e40c1ff263bb8c12060ac936f8424521ee8993","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-rental-housing-community-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-rental-housing-community-pixel-map-pin","idempotencyKey":"9a8ac429cd35a1962358b542f8dde017","candidateSlug":"cn-rental-housing-community","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-rental-housing-community-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-cn-rental-housing-community-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/cn-rental-housing-community/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-rental-housing-community/map-pin.png","sourceEvidenceSha256":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"891a9811805438b55fc69cd9433d024f9a77bc39c73e54d6c555d0f27179185f","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"891a9811805438b55fc69cd9433d024f9a77bc39c73e54d6c555d0f27179185f","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"48032e2c42d239b9a0c67c93255e3e8e120d00c0faf44166536043246e05a455","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"4d81e9c10b6d568e68434e8625d8c9291d865db8fde92f2bfa5ab64f0c3fda03","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-rental-housing-community-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"de76e8eb95573e67bb145fe5f402309de418f940067677ef37c4fce147292570","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"891a9811805438b55fc69cd9433d024f9a77bc39c73e54d6c555d0f27179185f","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"b31c47720c462d27e8b2218212f8ec57912c3db0e5e1bb4aee6893136f3f9b85","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"71f4544accf1bfce54a3fb505218575881730d475a880601893953e3328c7a34","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-rental-housing-community-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-rental-housing-community-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-rental-housing-community-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=cn-rental-housing-community&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-rental-housing-community&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-rental-housing-community&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-rental-housing-community&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E4%BF%9D%E9%9A%9C%E6%80%A7%E7%A7%9F%E8%B5%81%E4%BD%8F%E6%88%BF%20Community%20Block"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-rental-housing-community/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-rental-housing-community/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-rental-housing-community/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-rental-housing-community/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-rental-housing-community/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-rental-housing-community/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-rental-housing-community/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/cn-rental-housing-community/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/cn-rental-housing-community","visualRegistryResourceUri":"reits://asset-visual-registry/cn-rental-housing-community","targetVisualResourceUri":"reits://asset-visual-registry/cn-rental-housing-community/pixel-map-pin"}}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-rental-housing-community","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-rental-housing-community","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-rental-housing-community","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-rental-housing-community","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-rental-housing-community","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-rental-housing-community","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-rental-housing-community","visualRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E4%BF%9D%E9%9A%9C%E6%80%A7%E7%A7%9F%E8%B5%81%E4%BD%8F%E6%88%BF%20Community%20Block"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-rental-housing-community","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-rental-housing-community","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-rental-housing-community","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-rental-housing-community","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-rental-housing-community","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-rental-housing-community","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-rental-housing-community","visualTrialResourceUri":"reits://asset-visual-trials/cn-rental-housing-community","futureAssetResourceUri":"reits://virtual-assets/cn-rental-housing-community","visualRegistryResourceUri":"reits://asset-visual-registry/cn-rental-housing-community"}},{"generatedAt":"2026-09-07T03:28:49.515Z","candidateSlug":"cn-logistics-bbs-gap","assetName":"中国内地仓储物流 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Logistics-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"上海","assetType":"仓储物流","statusLabel":"存在证据写入事务 dry-run","transactionCount":2,"evidenceTransactionReadyCount":1,"blockedBeforeEvidenceTransactionCount":1,"writeSetItemCount":16,"preconditionCount":18,"satisfiedPreconditionCount":9,"approvalEvidenceWrittenCount":0,"recordDigest":"8e52f46ac7e37512de8e1f6b5f535d0f737334482cb0efd4b05cd4af6292d8d8","transactions":[{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-logistics-bbs-gap-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-cn-logistics-bbs-gap-isometric-nft-card","previewRowId":"asset-visual-registry-preview-cn-logistics-bbs-gap-isometric-nft-card","visualTransactionId":"visual-registry-transaction-cn-logistics-bbs-gap-isometric-nft-card","candidateSlug":"cn-logistics-bbs-gap","assetName":"中国内地仓储物流 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Logistics-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"上海","assetType":"仓储物流","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/cn-logistics-bbs-gap/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-logistics-bbs-gap/nft-card.png","sha256":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","bytes":90568,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-logistics-bbs-gap&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-logistics-bbs-gap&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"evidence-transaction-ready","statusLabel":"证据写入事务可检查","packetStatus":"evidence-packet-ready","packetStatusLabel":"证据包结构可检查","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"61569ea4e45943f874cc18b5967471f082692361d39281680244cd5736a60f31","placeholderDigest":"b1053e770b8f2f946d034ecdc53a2334003a5a8379f816000323b791cb3c1188","previewDigest":"c6ee4b1e55875709950e94770462ac62f64b020a5ed81bcab6c8e97c76c24741","visualTransactionDigest":"30870cb1942e96af4dd5d13ad175f51df2bd45d9c82e7bfe8fe7c6a221bfdc8c","reviewDigest":"fa5b37d8428eb57b256739df8312a20244cbc6b63062eb0997620a8cf1e0d641","approvalDigest":"aac0461d6c290828a123e9d6b060ea5d39d054259760786ea3d8a0247538a51a","visualDigest":"cfbae45981263d30b5eea7a508c8561c8392893aa0588594e97f4bb6007b4f90","imageSha256":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","evidenceTransactionDigest":"ac980bfc1c7e255f58f58722b307e9c3aa62fbcf9c70b279e3b36fe131279471","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-logistics-bbs-gap-isometric-nft-card","idempotencyKey":"af67110748aea5897f9a6d729c61c959","candidateSlug":"cn-logistics-bbs-gap","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-logistics-bbs-gap-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-cn-logistics-bbs-gap-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-logistics-bbs-gap/nft-card.png","sourceEvidenceSha256":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"61569ea4e45943f874cc18b5967471f082692361d39281680244cd5736a60f31","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"61569ea4e45943f874cc18b5967471f082692361d39281680244cd5736a60f31","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2392c3e448e0fd5e7fecafeeaed022339555fb7ddb8613836f6ce25c03f51300","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"05187cb49edb4384f60523b1baf734a11cf79a050aee8bfdac66f8c72253e8c0","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"aac0461d6c290828a123e9d6b060ea5d39d054259760786ea3d8a0247538a51a","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":true,"digest":"61569ea4e45943f874cc18b5967471f082692361d39281680244cd5736a60f31","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":true,"digest":"b1053e770b8f2f946d034ecdc53a2334003a5a8379f816000323b791cb3c1188","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":true,"digest":"c6ee4b1e55875709950e94770462ac62f64b020a5ed81bcab6c8e97c76c24741","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-logistics-bbs-gap-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":true,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":true},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["本地生成图片 source evidence 已绑定到 writer envelope，但仍只做事务预演。","仅表示 evidence writer envelope 可检查，不代表允许写入。","approverId、approvedAt、approvalEvidenceUri 和 approvalEvidenceDigest 仍为空。","evidenceWriteTransactionDisabled=true，databaseWriteDisabled=true。","approvalEvidenceWritten=false，finalApprovalRecorded=false。"],"requiredActions":[{"owner":"ops","label":"准备双签审批人身份与审批时间戳，但不要上传或写入","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card"},{"owner":"engineering","label":"实现 writer 前保持 transaction/database/evidence 写入全部禁用","href":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card"},{"owner":"qa","label":"校验 idempotencyKey、writeSet、rollbackPlan 和 MCP 资源 URI","href":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-logistics-bbs-gap&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-logistics-bbs-gap&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-logistics-bbs-gap&decision=ready-for-human-approval&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E4%BB%93%E5%82%A8%E7%89%A9%E6%B5%81%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-logistics-bbs-gap/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-logistics-bbs-gap/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-logistics-bbs-gap/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-logistics-bbs-gap/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-logistics-bbs-gap/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-logistics-bbs-gap/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-logistics-bbs-gap/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/cn-logistics-bbs-gap/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/cn-logistics-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap","targetVisualResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-logistics-bbs-gap-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-cn-logistics-bbs-gap-pixel-map-pin","previewRowId":"asset-visual-registry-preview-cn-logistics-bbs-gap-pixel-map-pin","visualTransactionId":"visual-registry-transaction-cn-logistics-bbs-gap-pixel-map-pin","candidateSlug":"cn-logistics-bbs-gap","assetName":"中国内地仓储物流 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Logistics-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"上海","assetType":"仓储物流","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/cn-logistics-bbs-gap/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-logistics-bbs-gap/map-pin.png","sha256":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","bytes":7066,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-logistics-bbs-gap&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-logistics-bbs-gap&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"bd1db2825c20e28fa7a2b6f72214fbe7d28e3de215b51dc6c4d684ab7efd1d52","placeholderDigest":"64a0a1e37b65286453d13a079ff695b91481bef653a35fecd931d5e16ba80fe3","previewDigest":"a28418bbce0fb2dd6e118583da8c9bc9d64112157c47c7a2c8392791b16832de","visualTransactionDigest":"09d8336605834207f89b8c67f1caa06b698914640b1be6143941646d1568a962","reviewDigest":"d8f3d73c0e7a97c6c1c1713ada72721539fa1262a03f30a89ffc4033ee7bed8f","approvalDigest":"05240cd366cd149a78496f02bd01409be0a7ffc008e79c981c8191b096a2e823","visualDigest":"80067a3c67d6f0808a04b5f36d17a1d5cb0a79f59205cb93e1d16e984f2ec347","imageSha256":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","evidenceTransactionDigest":"0be85b2dd0ec9a7e18d160a67948b49390e63e5a06bd3ab5ed6dfc5c445ea6c2","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-logistics-bbs-gap-pixel-map-pin","idempotencyKey":"dd9dae9890377846b7d05cba3636f59d","candidateSlug":"cn-logistics-bbs-gap","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-logistics-bbs-gap-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-cn-logistics-bbs-gap-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-logistics-bbs-gap/map-pin.png","sourceEvidenceSha256":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"bd1db2825c20e28fa7a2b6f72214fbe7d28e3de215b51dc6c4d684ab7efd1d52","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"bd1db2825c20e28fa7a2b6f72214fbe7d28e3de215b51dc6c4d684ab7efd1d52","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"5759b5355228ec94733b6645b6587c1c0161f063bc178a0d706f9ac3256bb104","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"eb8b3cf404c42156e2970370b19be14344de85da17ffdccf69f735ddee66dfad","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"05240cd366cd149a78496f02bd01409be0a7ffc008e79c981c8191b096a2e823","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"bd1db2825c20e28fa7a2b6f72214fbe7d28e3de215b51dc6c4d684ab7efd1d52","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"64a0a1e37b65286453d13a079ff695b91481bef653a35fecd931d5e16ba80fe3","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"a28418bbce0fb2dd6e118583da8c9bc9d64112157c47c7a2c8392791b16832de","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-logistics-bbs-gap-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=cn-logistics-bbs-gap&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-logistics-bbs-gap&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-logistics-bbs-gap&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-logistics-bbs-gap&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E4%BB%93%E5%82%A8%E7%89%A9%E6%B5%81%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-logistics-bbs-gap/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-logistics-bbs-gap/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-logistics-bbs-gap/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-logistics-bbs-gap/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-logistics-bbs-gap/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-logistics-bbs-gap/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-logistics-bbs-gap/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/cn-logistics-bbs-gap/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/cn-logistics-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap","targetVisualResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap/pixel-map-pin"}}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-logistics-bbs-gap","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-logistics-bbs-gap","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-logistics-bbs-gap","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-logistics-bbs-gap","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-logistics-bbs-gap","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-logistics-bbs-gap","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-logistics-bbs-gap","visualRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E4%BB%93%E5%82%A8%E7%89%A9%E6%B5%81%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-logistics-bbs-gap","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-logistics-bbs-gap","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-logistics-bbs-gap","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-logistics-bbs-gap","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-logistics-bbs-gap","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-logistics-bbs-gap","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-logistics-bbs-gap","visualTrialResourceUri":"reits://asset-visual-trials/cn-logistics-bbs-gap","futureAssetResourceUri":"reits://virtual-assets/cn-logistics-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap"}},{"generatedAt":"2026-09-07T03:28:49.515Z","candidateSlug":"cn-highway-bbs-gap","assetName":"中国内地高速公路 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Highway-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"广州","assetType":"高速公路","statusLabel":"存在证据写入事务 dry-run","transactionCount":2,"evidenceTransactionReadyCount":1,"blockedBeforeEvidenceTransactionCount":1,"writeSetItemCount":16,"preconditionCount":18,"satisfiedPreconditionCount":9,"approvalEvidenceWrittenCount":0,"recordDigest":"b44e65e35eb9febe61962ff867c7c40f0d84d0938dc28d763c32c2ac9daff89d","transactions":[{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-highway-bbs-gap-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-highway-bbs-gap-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-cn-highway-bbs-gap-isometric-nft-card","previewRowId":"asset-visual-registry-preview-cn-highway-bbs-gap-isometric-nft-card","visualTransactionId":"visual-registry-transaction-cn-highway-bbs-gap-isometric-nft-card","candidateSlug":"cn-highway-bbs-gap","assetName":"中国内地高速公路 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Highway-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"广州","assetType":"高速公路","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/cn-highway-bbs-gap/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-highway-bbs-gap/nft-card.png","sha256":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","bytes":96279,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-highway-bbs-gap&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-highway-bbs-gap&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"evidence-transaction-ready","statusLabel":"证据写入事务可检查","packetStatus":"evidence-packet-ready","packetStatusLabel":"证据包结构可检查","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"fd0868a7fd203ec86ac17b23fee9046409f1fb894e30668ddfdfd20bd3738673","placeholderDigest":"f3a3da7f18a36fe5278e26a1c8874ffd10aea8e46ec38f321ace6f7f164cacb9","previewDigest":"7c8ab3eb9839e737ec651c084c8741e2e01739e7623080487b76a56abb492d68","visualTransactionDigest":"b911c6f71336e42527e456fe314d536e24e8f113c3ab319b35bbebea4480f04d","reviewDigest":"4818f070cffc01676d1cf2690e8fab6ad7ba82aeb86bc18d99228a4c975535cf","approvalDigest":"bda1b46870e3d0f9f8fb1cbb021dc2c95d75003e18ecb9e76714e5bf77d8c48c","visualDigest":"026a955bac9388c2f6d4b788291033e528d6ca08358ad7367f10b256d7101ad6","imageSha256":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","evidenceTransactionDigest":"8b35f90ba9fac6acd1d384ca3372167bda4cce15df4fc8511410a8bdef91900b","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-highway-bbs-gap-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-highway-bbs-gap-isometric-nft-card","idempotencyKey":"e73bd521a193202fed5e19d29f231dfe","candidateSlug":"cn-highway-bbs-gap","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-highway-bbs-gap-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-cn-highway-bbs-gap-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-highway-bbs-gap/nft-card.png","sourceEvidenceSha256":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"fd0868a7fd203ec86ac17b23fee9046409f1fb894e30668ddfdfd20bd3738673","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"fd0868a7fd203ec86ac17b23fee9046409f1fb894e30668ddfdfd20bd3738673","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"d0b583d1356e8a05bc5b8c0ef7103b5f4d2d18d4aa50e62b6aa6942482b41763","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"a395e441a1c5b9290c82c1c734a67b1863a91bab7968b83492b8afa4ca4f8e82","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-highway-bbs-gap-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"bda1b46870e3d0f9f8fb1cbb021dc2c95d75003e18ecb9e76714e5bf77d8c48c","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":true,"digest":"fd0868a7fd203ec86ac17b23fee9046409f1fb894e30668ddfdfd20bd3738673","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":true,"digest":"f3a3da7f18a36fe5278e26a1c8874ffd10aea8e46ec38f321ace6f7f164cacb9","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":true,"digest":"7c8ab3eb9839e737ec651c084c8741e2e01739e7623080487b76a56abb492d68","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-highway-bbs-gap-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-highway-bbs-gap-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-highway-bbs-gap-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":true,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":true},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["本地生成图片 source evidence 已绑定到 writer envelope，但仍只做事务预演。","仅表示 evidence writer envelope 可检查，不代表允许写入。","approverId、approvedAt、approvalEvidenceUri 和 approvalEvidenceDigest 仍为空。","evidenceWriteTransactionDisabled=true，databaseWriteDisabled=true。","approvalEvidenceWritten=false，finalApprovalRecorded=false。"],"requiredActions":[{"owner":"ops","label":"准备双签审批人身份与审批时间戳，但不要上传或写入","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card"},{"owner":"engineering","label":"实现 writer 前保持 transaction/database/evidence 写入全部禁用","href":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card"},{"owner":"qa","label":"校验 idempotencyKey、writeSet、rollbackPlan 和 MCP 资源 URI","href":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-highway-bbs-gap&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-highway-bbs-gap&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-highway-bbs-gap&decision=ready-for-human-approval&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E9%AB%98%E9%80%9F%E5%85%AC%E8%B7%AF%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-highway-bbs-gap/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-highway-bbs-gap/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-highway-bbs-gap/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-highway-bbs-gap/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-highway-bbs-gap/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-highway-bbs-gap/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-highway-bbs-gap/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/cn-highway-bbs-gap/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/cn-highway-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap","targetVisualResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-highway-bbs-gap-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-highway-bbs-gap-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-cn-highway-bbs-gap-pixel-map-pin","previewRowId":"asset-visual-registry-preview-cn-highway-bbs-gap-pixel-map-pin","visualTransactionId":"visual-registry-transaction-cn-highway-bbs-gap-pixel-map-pin","candidateSlug":"cn-highway-bbs-gap","assetName":"中国内地高速公路 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Highway-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"广州","assetType":"高速公路","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/cn-highway-bbs-gap/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-highway-bbs-gap/map-pin.png","sha256":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","bytes":8495,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-highway-bbs-gap&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-highway-bbs-gap&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"9d3239d258ebe15420d2c35fb9bbf82930b33291714d865758e87cd34b944891","placeholderDigest":"2351c0faa013a50d20fd43cb9fa24d2d6854271eba740508eb69132fe0e7c404","previewDigest":"f8b5da49adb15be2cee29f6f4d38b4a7508409cb9bfdaaaedaa5afa645c17d5a","visualTransactionDigest":"a280fa0e8b9eb7da716d7b8657cebad6ee1af68aecd2ee9d4fbc7411f34a2d4f","reviewDigest":"14bb3a010bb65b2d830580b72037d6f0b9ebdbcf9fa9b60535851928301e9c96","approvalDigest":"d26c2a252e66dc5b5ffa5e16bc769ae3b777a0db86935a66f980c192b0169766","visualDigest":"89332347df2fa57db042c6e9a3a249a39635492f7070c948b90ef4cb65b79c3a","imageSha256":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","evidenceTransactionDigest":"a99fd10a63a6d55e264426f39158aee0dfd944b0402116185b5d969aff30b886","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-highway-bbs-gap-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-highway-bbs-gap-pixel-map-pin","idempotencyKey":"ce1580f4925d4a9543dda2a7344bd6a6","candidateSlug":"cn-highway-bbs-gap","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-highway-bbs-gap-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-cn-highway-bbs-gap-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-highway-bbs-gap/map-pin.png","sourceEvidenceSha256":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"9d3239d258ebe15420d2c35fb9bbf82930b33291714d865758e87cd34b944891","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"9d3239d258ebe15420d2c35fb9bbf82930b33291714d865758e87cd34b944891","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"a1391806de3f6eeb21787762ae09fbed9880e1f202bdb542c3ce9c029f56d592","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"437361c78f3cd8facc4fe96617cc6f719f06c14f9b600cfb5d6cb6585726df6e","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-highway-bbs-gap-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"d26c2a252e66dc5b5ffa5e16bc769ae3b777a0db86935a66f980c192b0169766","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"9d3239d258ebe15420d2c35fb9bbf82930b33291714d865758e87cd34b944891","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"2351c0faa013a50d20fd43cb9fa24d2d6854271eba740508eb69132fe0e7c404","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"f8b5da49adb15be2cee29f6f4d38b4a7508409cb9bfdaaaedaa5afa645c17d5a","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-highway-bbs-gap-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-highway-bbs-gap-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-highway-bbs-gap-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=cn-highway-bbs-gap&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-highway-bbs-gap&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-highway-bbs-gap&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-highway-bbs-gap&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E9%AB%98%E9%80%9F%E5%85%AC%E8%B7%AF%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-highway-bbs-gap/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-highway-bbs-gap/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-highway-bbs-gap/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-highway-bbs-gap/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-highway-bbs-gap/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-highway-bbs-gap/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-highway-bbs-gap/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/cn-highway-bbs-gap/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/cn-highway-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap","targetVisualResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap/pixel-map-pin"}}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-highway-bbs-gap","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-highway-bbs-gap","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-highway-bbs-gap","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-highway-bbs-gap","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-highway-bbs-gap","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-highway-bbs-gap","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-highway-bbs-gap","visualRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E9%AB%98%E9%80%9F%E5%85%AC%E8%B7%AF%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-highway-bbs-gap","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-highway-bbs-gap","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-highway-bbs-gap","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-highway-bbs-gap","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-highway-bbs-gap","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-highway-bbs-gap","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-highway-bbs-gap","visualTrialResourceUri":"reits://asset-visual-trials/cn-highway-bbs-gap","futureAssetResourceUri":"reits://virtual-assets/cn-highway-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap"}},{"generatedAt":"2026-09-07T03:28:49.515Z","candidateSlug":"cn-commercial-bbs-gap","assetName":"中国内地商业不动产 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Commercial-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"上海","assetType":"商业不动产","statusLabel":"存在证据写入事务 dry-run","transactionCount":2,"evidenceTransactionReadyCount":1,"blockedBeforeEvidenceTransactionCount":1,"writeSetItemCount":16,"preconditionCount":18,"satisfiedPreconditionCount":9,"approvalEvidenceWrittenCount":0,"recordDigest":"404b827dd4f7b6671d1a13c498ced6913d3fd6bd04686b9bd869f6dc1410ea27","transactions":[{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-commercial-bbs-gap-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-cn-commercial-bbs-gap-isometric-nft-card","previewRowId":"asset-visual-registry-preview-cn-commercial-bbs-gap-isometric-nft-card","visualTransactionId":"visual-registry-transaction-cn-commercial-bbs-gap-isometric-nft-card","candidateSlug":"cn-commercial-bbs-gap","assetName":"中国内地商业不动产 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Commercial-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"上海","assetType":"商业不动产","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/cn-commercial-bbs-gap/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-commercial-bbs-gap/nft-card.png","sha256":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","bytes":76669,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-commercial-bbs-gap&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-commercial-bbs-gap&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"evidence-transaction-ready","statusLabel":"证据写入事务可检查","packetStatus":"evidence-packet-ready","packetStatusLabel":"证据包结构可检查","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"7aff09a4fa17c635693549d60b7f28d6da9da783c9af3ee3b03697676ba3c69c","placeholderDigest":"0aeaf0d3e1bcfaceb2a60113bbbb5e1b7c992346d055549c4688de33127884d8","previewDigest":"58a56cb4eb9ea462f1a14b006b27250b98899de9c2b3f8aa514a9e53121f4028","visualTransactionDigest":"9e30622f00abc52fd87ad309d836154847da23561c25113ef9e9967406fe1126","reviewDigest":"e7a4c751a692f4766f8d6f690885d01c232c7337f7d86f3c74de75518f0ccbb3","approvalDigest":"2d5969081aedee898a98592f0a528f46b0857a82c97dfb5110fd7634c6b5f263","visualDigest":"2ca9e738647c7dab9c9e47d14d8f40cdb5823925c8a0b9bbeaad4d2c6f252d1c","imageSha256":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","evidenceTransactionDigest":"c7e7434d0a759cc967eb729b133ced9ff96842e52f88829639150a4810aa4864","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-commercial-bbs-gap-isometric-nft-card","idempotencyKey":"1d0aef1a087caad59aca0a12841f3732","candidateSlug":"cn-commercial-bbs-gap","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-commercial-bbs-gap-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-cn-commercial-bbs-gap-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-commercial-bbs-gap/nft-card.png","sourceEvidenceSha256":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"7aff09a4fa17c635693549d60b7f28d6da9da783c9af3ee3b03697676ba3c69c","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"7aff09a4fa17c635693549d60b7f28d6da9da783c9af3ee3b03697676ba3c69c","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"f88123a0f5c46890ac45ac6c2fc13eca629ed0aa501bf927f98d203a59f1bee3","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"5b358f19ba7afe0a07ac00c74e4baa72fe5bd35ae7f0894aa9c8d35d269f6038","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"2d5969081aedee898a98592f0a528f46b0857a82c97dfb5110fd7634c6b5f263","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":true,"digest":"7aff09a4fa17c635693549d60b7f28d6da9da783c9af3ee3b03697676ba3c69c","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":true,"digest":"0aeaf0d3e1bcfaceb2a60113bbbb5e1b7c992346d055549c4688de33127884d8","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":true,"digest":"58a56cb4eb9ea462f1a14b006b27250b98899de9c2b3f8aa514a9e53121f4028","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-commercial-bbs-gap-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":true,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":true},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["本地生成图片 source evidence 已绑定到 writer envelope，但仍只做事务预演。","仅表示 evidence writer envelope 可检查，不代表允许写入。","approverId、approvedAt、approvalEvidenceUri 和 approvalEvidenceDigest 仍为空。","evidenceWriteTransactionDisabled=true，databaseWriteDisabled=true。","approvalEvidenceWritten=false，finalApprovalRecorded=false。"],"requiredActions":[{"owner":"ops","label":"准备双签审批人身份与审批时间戳，但不要上传或写入","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card"},{"owner":"engineering","label":"实现 writer 前保持 transaction/database/evidence 写入全部禁用","href":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card"},{"owner":"qa","label":"校验 idempotencyKey、writeSet、rollbackPlan 和 MCP 资源 URI","href":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-commercial-bbs-gap&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-commercial-bbs-gap&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-commercial-bbs-gap&decision=ready-for-human-approval&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E5%95%86%E4%B8%9A%E4%B8%8D%E5%8A%A8%E4%BA%A7%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-commercial-bbs-gap/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-commercial-bbs-gap/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-commercial-bbs-gap/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-commercial-bbs-gap/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-commercial-bbs-gap/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-commercial-bbs-gap/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-commercial-bbs-gap/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/cn-commercial-bbs-gap/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/cn-commercial-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap","targetVisualResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-commercial-bbs-gap-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-cn-commercial-bbs-gap-pixel-map-pin","previewRowId":"asset-visual-registry-preview-cn-commercial-bbs-gap-pixel-map-pin","visualTransactionId":"visual-registry-transaction-cn-commercial-bbs-gap-pixel-map-pin","candidateSlug":"cn-commercial-bbs-gap","assetName":"中国内地商业不动产 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Commercial-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"上海","assetType":"商业不动产","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/cn-commercial-bbs-gap/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-commercial-bbs-gap/map-pin.png","sha256":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","bytes":7176,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-commercial-bbs-gap&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-commercial-bbs-gap&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"6934d63986785c4c6eb8da1e41e10627efea8ecd9de9364da4a202c59a4e1603","placeholderDigest":"fe51aee62c98571571ee4616c75d877d87c89c2a3f90e30db494878aee6b042f","previewDigest":"e65579b8faecf2c257a566fb4f602128742061ab138ad4ac903c87a30e4e8ee0","visualTransactionDigest":"be1f33305bb52814a558233bd58f3cda1cd1244c80fb5776be49e69150878ee2","reviewDigest":"0b1f12a403b624b45be854ecfe2ec97e5a6e553959a67922f25837f35f2ad4e9","approvalDigest":"0dbd29fc79c0a05a9161c3683abe0d5866332885627a95cd461e01bc2ffa8499","visualDigest":"9104bbdafc9345f5520ecac3f197f1b01073e05211be975a54d8c468b1caa4ba","imageSha256":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","evidenceTransactionDigest":"1e24a801ad01bf5e82a77d48bf952ac467432abcf615139eb4cf63a45010bbc6","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-commercial-bbs-gap-pixel-map-pin","idempotencyKey":"754033a050e0debfe8a98321ebdb6c4d","candidateSlug":"cn-commercial-bbs-gap","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-commercial-bbs-gap-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-cn-commercial-bbs-gap-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-commercial-bbs-gap/map-pin.png","sourceEvidenceSha256":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"6934d63986785c4c6eb8da1e41e10627efea8ecd9de9364da4a202c59a4e1603","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"6934d63986785c4c6eb8da1e41e10627efea8ecd9de9364da4a202c59a4e1603","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"d005cac9afaceac69d98a36b0077ecd28e88fc455c7c4a5d9cb22c250328d9b6","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"25a6c60c13d1d858f1e658a1333a680d8fdc147235da4e69b7dfc129a0964058","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"0dbd29fc79c0a05a9161c3683abe0d5866332885627a95cd461e01bc2ffa8499","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"6934d63986785c4c6eb8da1e41e10627efea8ecd9de9364da4a202c59a4e1603","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"fe51aee62c98571571ee4616c75d877d87c89c2a3f90e30db494878aee6b042f","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"e65579b8faecf2c257a566fb4f602128742061ab138ad4ac903c87a30e4e8ee0","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-commercial-bbs-gap-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=cn-commercial-bbs-gap&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-commercial-bbs-gap&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-commercial-bbs-gap&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-commercial-bbs-gap&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E5%95%86%E4%B8%9A%E4%B8%8D%E5%8A%A8%E4%BA%A7%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-commercial-bbs-gap/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-commercial-bbs-gap/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-commercial-bbs-gap/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-commercial-bbs-gap/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-commercial-bbs-gap/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-commercial-bbs-gap/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-commercial-bbs-gap/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/cn-commercial-bbs-gap/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/cn-commercial-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap","targetVisualResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap/pixel-map-pin"}}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-commercial-bbs-gap","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-commercial-bbs-gap","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-commercial-bbs-gap","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-commercial-bbs-gap","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-commercial-bbs-gap","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-commercial-bbs-gap","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-commercial-bbs-gap","visualRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E5%95%86%E4%B8%9A%E4%B8%8D%E5%8A%A8%E4%BA%A7%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-commercial-bbs-gap","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-commercial-bbs-gap","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-commercial-bbs-gap","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-commercial-bbs-gap","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-commercial-bbs-gap","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-commercial-bbs-gap","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-commercial-bbs-gap","visualTrialResourceUri":"reits://asset-visual-trials/cn-commercial-bbs-gap","futureAssetResourceUri":"reits://virtual-assets/cn-commercial-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap"}},{"generatedAt":"2026-09-07T03:28:49.515Z","candidateSlug":"ca-residential-tsx-node","assetName":"加拿大 Canadian REIT Residential Node","nftStyleName":"REITs Pixel Asset #CA-Residential-09","countrySlug":"ca","countryName":"加拿大","cityName":"Toronto","assetType":"住宅租赁","statusLabel":"证据写入事务前置阻断","transactionCount":2,"evidenceTransactionReadyCount":0,"blockedBeforeEvidenceTransactionCount":2,"writeSetItemCount":16,"preconditionCount":18,"satisfiedPreconditionCount":6,"approvalEvidenceWrittenCount":0,"recordDigest":"76da4f150d5ed181ae2755d10d6a8b4a5e18671568f0ab6d5674c7821392fb46","transactions":[{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-ca-residential-tsx-node-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-ca-residential-tsx-node-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-ca-residential-tsx-node-isometric-nft-card","previewRowId":"asset-visual-registry-preview-ca-residential-tsx-node-isometric-nft-card","visualTransactionId":"visual-registry-transaction-ca-residential-tsx-node-isometric-nft-card","candidateSlug":"ca-residential-tsx-node","assetName":"加拿大 Canadian REIT Residential Node","nftStyleName":"REITs Pixel Asset #CA-Residential-09","countrySlug":"ca","countryName":"加拿大","cityName":"Toronto","assetType":"住宅租赁","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/ca-residential-tsx-node/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/ca-residential-tsx-node/nft-card.png","sha256":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","bytes":2195051,"manifestSource":"filesystem-probe","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=ca-residential-tsx-node&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=ca-residential-tsx-node&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-compliance-review","statusLabel":"需先合规复核","packetStatus":"needs-compliance-review","packetStatusLabel":"需先合规复核","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"9c9abd6c0598052f2d5ab779fe4428a55cbbdd19a77f798c7e49a089f85117f1","placeholderDigest":"c7a8de62a98e0b27117c91792ac59b6663a6df2b166ba400ca1816d0d1fca67d","previewDigest":"cb45a73ce121d790bcc10c96b119764acf7005eed0ccfae680725f5689e7a06e","visualTransactionDigest":"03460cfc8c51ef43e2a9dc1aa3644d24603ad4409a686ad55a7107117f9c0f82","reviewDigest":"f678c533e81e23cf288c4615f5e98c1994f5b9fcf28a5840021b6ffa4df1178a","approvalDigest":"0745b722d119f96283f6b870e76fb58d6eadab0af4a86e3b7cfde61a63706d88","visualDigest":"368b04611be7a37cfe5b4f851008dd90171212e5d7f410000a722d9658506a3f","imageSha256":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","evidenceTransactionDigest":"54f6dc76a6752bbee79ba7688592eecd42a77fcf615c99857e9741f2f808c672","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-ca-residential-tsx-node-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-ca-residential-tsx-node-isometric-nft-card","idempotencyKey":"ec81c8abe2a96e165651d58f16508648","candidateSlug":"ca-residential-tsx-node","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-ca-residential-tsx-node-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-ca-residential-tsx-node-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/ca-residential-tsx-node/nft-card.png","sourceEvidenceSha256":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"9c9abd6c0598052f2d5ab779fe4428a55cbbdd19a77f798c7e49a089f85117f1","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"9c9abd6c0598052f2d5ab779fe4428a55cbbdd19a77f798c7e49a089f85117f1","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"7afd4f48376c864ed69d9560afdd59626d2945b6bff2564c1250bfd7663d6c88","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"2acb3be4c08af2a6c9ee7add71f3bac1bc4affe69d2524a74772875b43ee392f","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-ca-residential-tsx-node-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"0745b722d119f96283f6b870e76fb58d6eadab0af4a86e3b7cfde61a63706d88","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"9c9abd6c0598052f2d5ab779fe4428a55cbbdd19a77f798c7e49a089f85117f1","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"c7a8de62a98e0b27117c91792ac59b6663a6df2b166ba400ca1816d0d1fca67d","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"cb45a73ce121d790bcc10c96b119764acf7005eed0ccfae680725f5689e7a06e","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-ca-residential-tsx-node-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-ca-residential-tsx-node-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-ca-residential-tsx-node-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["合规复核尚未完成，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card"},{"owner":"compliance","label":"先完成合规复核，不能为未过审图片写审批证据","href":"/operations/virtual-asset-visual-review-ledger?asset=ca-residential-tsx-node&decision=needs-compliance-review&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=ca-residential-tsx-node&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=ca-residential-tsx-node&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=ca-residential-tsx-node&decision=needs-compliance-review&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E5%8A%A0%E6%8B%BF%E5%A4%A7%20Canadian%20REIT%20Residential%20Node"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/ca-residential-tsx-node/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/ca-residential-tsx-node/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/ca-residential-tsx-node/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/ca-residential-tsx-node/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/ca-residential-tsx-node/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/ca-residential-tsx-node/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/ca-residential-tsx-node/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/ca-residential-tsx-node/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/ca-residential-tsx-node","visualRegistryResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node","targetVisualResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-ca-residential-tsx-node-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-ca-residential-tsx-node-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-ca-residential-tsx-node-pixel-map-pin","previewRowId":"asset-visual-registry-preview-ca-residential-tsx-node-pixel-map-pin","visualTransactionId":"visual-registry-transaction-ca-residential-tsx-node-pixel-map-pin","candidateSlug":"ca-residential-tsx-node","assetName":"加拿大 Canadian REIT Residential Node","nftStyleName":"REITs Pixel Asset #CA-Residential-09","countrySlug":"ca","countryName":"加拿大","cityName":"Toronto","assetType":"住宅租赁","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/ca-residential-tsx-node/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/ca-residential-tsx-node/map-pin.png","sha256":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","bytes":489752,"manifestSource":"filesystem-probe","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=ca-residential-tsx-node&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=ca-residential-tsx-node&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"e5800f3f3d366ec4a62014b57d6381bbce7ffb9b7ee4a86b20bcf9ce6e105220","placeholderDigest":"549bb72a2dcb3079ceae126693c88e0f8d5ad9d66a1b634a620365a4c597b669","previewDigest":"7e0aa16196dc629fb5f659d230a27cfdf7fca014f84df8037d160ac62c41377b","visualTransactionDigest":"ea9939ee81f6f5c23d5d15322de7e36d2fadeb0aba06c7f5908b00890b0122c1","reviewDigest":"7d3d773099726c2e127496a7847210801f9f356b04bb00a797badc50d5f8b84a","approvalDigest":"d0f1f719ad246f427e072fb2ff7c556c3ecadb8964c68a8a850c6a6fb41cd7f6","visualDigest":"5a957c0f0eed1579ffcfd3e6126419ad3598ed91ec831fe8d4663eea515e686c","imageSha256":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","evidenceTransactionDigest":"9548c3291f613a81b456b4610b185f27d3e554087b920a185da7c21784a9589c","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-ca-residential-tsx-node-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-ca-residential-tsx-node-pixel-map-pin","idempotencyKey":"7b7b6e27691bf70f9193dca9ead1f6ec","candidateSlug":"ca-residential-tsx-node","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-ca-residential-tsx-node-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-ca-residential-tsx-node-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/ca-residential-tsx-node/map-pin.png","sourceEvidenceSha256":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"e5800f3f3d366ec4a62014b57d6381bbce7ffb9b7ee4a86b20bcf9ce6e105220","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"e5800f3f3d366ec4a62014b57d6381bbce7ffb9b7ee4a86b20bcf9ce6e105220","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"0b71ce71f09a6380247bc33265d8c8e203f5fcee7a02f20d83ef4aa7a7621fd6","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"44ac52cad848f62058957c807ddc6218a5842f4e40b9ed4a0206372f59eb9dd6","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-ca-residential-tsx-node-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"d0f1f719ad246f427e072fb2ff7c556c3ecadb8964c68a8a850c6a6fb41cd7f6","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"e5800f3f3d366ec4a62014b57d6381bbce7ffb9b7ee4a86b20bcf9ce6e105220","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"549bb72a2dcb3079ceae126693c88e0f8d5ad9d66a1b634a620365a4c597b669","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"7e0aa16196dc629fb5f659d230a27cfdf7fca014f84df8037d160ac62c41377b","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-ca-residential-tsx-node-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-ca-residential-tsx-node-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-ca-residential-tsx-node-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=ca-residential-tsx-node&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=ca-residential-tsx-node&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=ca-residential-tsx-node&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=ca-residential-tsx-node&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E5%8A%A0%E6%8B%BF%E5%A4%A7%20Canadian%20REIT%20Residential%20Node"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/ca-residential-tsx-node/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/ca-residential-tsx-node/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/ca-residential-tsx-node/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/ca-residential-tsx-node/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/ca-residential-tsx-node/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/ca-residential-tsx-node/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/ca-residential-tsx-node/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/ca-residential-tsx-node/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/ca-residential-tsx-node","visualRegistryResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node","targetVisualResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node/pixel-map-pin"}}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=ca-residential-tsx-node","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=ca-residential-tsx-node","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=ca-residential-tsx-node","registryPreview":"/operations/asset-visual-registry-preview?asset=ca-residential-tsx-node","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=ca-residential-tsx-node","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=ca-residential-tsx-node","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=ca-residential-tsx-node","visualRegistry":"/operations/asset-visual-registry","search":"/search?q=%E5%8A%A0%E6%8B%BF%E5%A4%A7%20Canadian%20REIT%20Residential%20Node"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/ca-residential-tsx-node","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/ca-residential-tsx-node","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/ca-residential-tsx-node","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/ca-residential-tsx-node","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/ca-residential-tsx-node","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/ca-residential-tsx-node","visualReviewResourceUri":"reits://asset-visual-review-ledger/ca-residential-tsx-node","visualTrialResourceUri":"reits://asset-visual-trials/ca-residential-tsx-node","futureAssetResourceUri":"reits://virtual-assets/ca-residential-tsx-node","visualRegistryResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node"}},{"generatedAt":"2026-09-07T03:28:49.515Z","candidateSlug":"eu-logistics-esef-hub","assetName":"欧盟 Listed Real Estate Logistics Hub","nftStyleName":"REITs Pixel Asset #EU-Logistics-11","countrySlug":"eu","countryName":"欧盟","cityName":"Amsterdam","assetType":"欧洲物流地产","statusLabel":"证据写入事务前置阻断","transactionCount":2,"evidenceTransactionReadyCount":0,"blockedBeforeEvidenceTransactionCount":2,"writeSetItemCount":16,"preconditionCount":18,"satisfiedPreconditionCount":4,"approvalEvidenceWrittenCount":0,"recordDigest":"7fec829d9ffe882456da6de960d394fa7b34e7f2b17d3de0eaba27ec9bd78fcc","transactions":[{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-eu-logistics-esef-hub-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-eu-logistics-esef-hub-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-eu-logistics-esef-hub-isometric-nft-card","previewRowId":"asset-visual-registry-preview-eu-logistics-esef-hub-isometric-nft-card","visualTransactionId":"visual-registry-transaction-eu-logistics-esef-hub-isometric-nft-card","candidateSlug":"eu-logistics-esef-hub","assetName":"欧盟 Listed Real Estate Logistics Hub","nftStyleName":"REITs Pixel Asset #EU-Logistics-11","countrySlug":"eu","countryName":"欧盟","cityName":"Amsterdam","assetType":"欧洲物流地产","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":null,"sourceEvidence":{"sourceType":"missing-source","localFileDetected":false,"publicPath":null,"sha256":null,"bytes":null,"manifestSource":null,"sourceMatchesTransaction":false,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=eu-logistics-esef-hub&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=eu-logistics-esef-hub&format=isometric-nft-card","evidenceNote":"当前没有 source image，必须保持 blocked preview row。"},"status":"blocked-by-brief","statusLabel":"Brief 阻断不可写证据","packetStatus":"blocked-by-brief","packetStatusLabel":"Brief 阻断不可提交证据","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"b45b23087339cf6a015b6e728f61ccfe8990c81ba1e088d6fd1b1e2816d6605f","placeholderDigest":"f6d2ecf8cd2215c38d8c21b74d3fc96735471d6a4b543d92c9fc2ab33053d6d2","previewDigest":"1aeb9d6c3fa99eaa40d847fa03001cb60004d5191132da083dbeae85adb65a3f","visualTransactionDigest":"e6bf775054f4582bdc1582c6cc74c2e833a84d55dba7dd8b2aa04220282abb87","reviewDigest":"e1f46d497995c111f2bd18866450bd7c5e96eb265f813a15af9b0ddf294833dc","approvalDigest":"542129bf8c7707a43430a84534bc4cb22001544b6c93cb77c5b6c9ffd7406ed6","visualDigest":"4dcfb53a94d15b3053428cb282f721a06f546a1fa06514e6b1ad2be69d773229","imageSha256":null,"evidenceTransactionDigest":"57fd6359c6dd780bd6d413063d4090c94967cb5d9ec156dddf2850daf7dddc9f","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-eu-logistics-esef-hub-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-eu-logistics-esef-hub-isometric-nft-card","idempotencyKey":"4d91b032bd4182daaef7a67431043d93","candidateSlug":"eu-logistics-esef-hub","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-eu-logistics-esef-hub-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-eu-logistics-esef-hub-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub/isometric-nft-card","sourceEvidenceType":"missing-source","sourceEvidencePublicPath":null,"sourceEvidenceSha256":null,"sourceMatchesTransaction":false,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"b45b23087339cf6a015b6e728f61ccfe8990c81ba1e088d6fd1b1e2816d6605f","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":null,"note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"b45b23087339cf6a015b6e728f61ccfe8990c81ba1e088d6fd1b1e2816d6605f","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"eb7be6953b4703ed2e93578c461a5a6efea1dfe86bfba7c60b9fc54b356dbb9f","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"88b533a5b4953c8f25147da47e735ce8e8c7117f7eaa1e029c32ebd57b002040","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-eu-logistics-esef-hub-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"542129bf8c7707a43430a84534bc4cb22001544b6c93cb77c5b6c9ffd7406ed6","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"b45b23087339cf6a015b6e728f61ccfe8990c81ba1e088d6fd1b1e2816d6605f","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"f6d2ecf8cd2215c38d8c21b74d3fc96735471d6a4b543d92c9fc2ab33053d6d2","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"1aeb9d6c3fa99eaa40d847fa03001cb60004d5191132da083dbeae85adb65a3f","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":false,"digest":null,"note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":null,"note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-eu-logistics-esef-hub-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-eu-logistics-esef-hub-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-eu-logistics-esef-hub-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":false},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["欧盟 Listed Real Estate Logistics Hub 仍被 brief/source/policy 门禁阻断，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据未检测到，且 Registry preview row 尚未 ready。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据未检测到，且真实审批占位尚未 ready。","真实审批占位尚未 ready，不能生成可检查证据包。","源图片证据未完整检测，且证据包尚未 ready。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=eu-logistics-esef-hub&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=eu-logistics-esef-hub&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=eu-logistics-esef-hub&decision=blocked-by-brief&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E6%AC%A7%E7%9B%9F%20Listed%20Real%20Estate%20Logistics%20Hub"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/eu-logistics-esef-hub/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/eu-logistics-esef-hub/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/eu-logistics-esef-hub/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/eu-logistics-esef-hub/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/eu-logistics-esef-hub/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/eu-logistics-esef-hub/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/eu-logistics-esef-hub/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/eu-logistics-esef-hub/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/eu-logistics-esef-hub","visualRegistryResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub","targetVisualResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-eu-logistics-esef-hub-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-eu-logistics-esef-hub-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-eu-logistics-esef-hub-pixel-map-pin","previewRowId":"asset-visual-registry-preview-eu-logistics-esef-hub-pixel-map-pin","visualTransactionId":"visual-registry-transaction-eu-logistics-esef-hub-pixel-map-pin","candidateSlug":"eu-logistics-esef-hub","assetName":"欧盟 Listed Real Estate Logistics Hub","nftStyleName":"REITs Pixel Asset #EU-Logistics-11","countrySlug":"eu","countryName":"欧盟","cityName":"Amsterdam","assetType":"欧洲物流地产","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":null,"sourceEvidence":{"sourceType":"missing-source","localFileDetected":false,"publicPath":null,"sha256":null,"bytes":null,"manifestSource":null,"sourceMatchesTransaction":false,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=eu-logistics-esef-hub&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=eu-logistics-esef-hub&format=pixel-map-pin","evidenceNote":"当前没有 source image，必须保持 blocked preview row。"},"status":"blocked-by-brief","statusLabel":"Brief 阻断不可写证据","packetStatus":"blocked-by-brief","packetStatusLabel":"Brief 阻断不可提交证据","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"b3fffb210537191beb2234598a118cb4f3d712bf8b2834d04729e4278f642736","placeholderDigest":"01a112af26e7f2cacb07becdef9eccde84b6cb03e7e20823afa6d83c962cb0ec","previewDigest":"b88e859af82cae75c2324e89c13ec2050a2543b331c8715f8d9801c7dcc6d58e","visualTransactionDigest":"5b0561ec5a0be5b07529908e4d3b0f129d2e6cfec4fe8f13e23b8f03baaf8062","reviewDigest":"d058c98ab8a06cd946c3ce3fd9e84e08dad698133c6d6c16c3e908a435263b27","approvalDigest":"e1705d72858c656c66a0e6bec86036cc0b054a59a72a54022d56ee93c832190b","visualDigest":"604b2f01ac5aa44a971d581bc5693efd760c89ed4e9480903c7c6d6928b1b0fd","imageSha256":null,"evidenceTransactionDigest":"07d25ce1323fd96f00fea9e3ce76d9b1c2907914256be52972204ef17b87e593","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-eu-logistics-esef-hub-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-eu-logistics-esef-hub-pixel-map-pin","idempotencyKey":"4beee1ab7b0dcfbb45a89dec046d7e3a","candidateSlug":"eu-logistics-esef-hub","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-eu-logistics-esef-hub-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-eu-logistics-esef-hub-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub/pixel-map-pin","sourceEvidenceType":"missing-source","sourceEvidencePublicPath":null,"sourceEvidenceSha256":null,"sourceMatchesTransaction":false,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"b3fffb210537191beb2234598a118cb4f3d712bf8b2834d04729e4278f642736","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":null,"note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"b3fffb210537191beb2234598a118cb4f3d712bf8b2834d04729e4278f642736","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"d275e7114893e838e2c57e5aed8d87fd366307524732969e5f70f36ec14025cf","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"21360d3946a510cb610e38d519b865638415676b01152db752a5939653980e54","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-eu-logistics-esef-hub-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"e1705d72858c656c66a0e6bec86036cc0b054a59a72a54022d56ee93c832190b","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"b3fffb210537191beb2234598a118cb4f3d712bf8b2834d04729e4278f642736","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"01a112af26e7f2cacb07becdef9eccde84b6cb03e7e20823afa6d83c962cb0ec","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"b88e859af82cae75c2324e89c13ec2050a2543b331c8715f8d9801c7dcc6d58e","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":false,"digest":null,"note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":null,"note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-eu-logistics-esef-hub-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-eu-logistics-esef-hub-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-eu-logistics-esef-hub-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":false},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["欧盟 Listed Real Estate Logistics Hub 仍被 brief/source/policy 门禁阻断，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据未检测到，且 Registry preview row 尚未 ready。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据未检测到，且真实审批占位尚未 ready。","真实审批占位尚未 ready，不能生成可检查证据包。","源图片证据未完整检测，且证据包尚未 ready。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=eu-logistics-esef-hub&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=eu-logistics-esef-hub&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=eu-logistics-esef-hub&decision=blocked-by-brief&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E6%AC%A7%E7%9B%9F%20Listed%20Real%20Estate%20Logistics%20Hub"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/eu-logistics-esef-hub/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/eu-logistics-esef-hub/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/eu-logistics-esef-hub/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/eu-logistics-esef-hub/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/eu-logistics-esef-hub/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/eu-logistics-esef-hub/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/eu-logistics-esef-hub/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/eu-logistics-esef-hub/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/eu-logistics-esef-hub","visualRegistryResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub","targetVisualResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub/pixel-map-pin"}}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=eu-logistics-esef-hub","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=eu-logistics-esef-hub","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=eu-logistics-esef-hub","registryPreview":"/operations/asset-visual-registry-preview?asset=eu-logistics-esef-hub","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=eu-logistics-esef-hub","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=eu-logistics-esef-hub","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=eu-logistics-esef-hub","visualRegistry":"/operations/asset-visual-registry","search":"/search?q=%E6%AC%A7%E7%9B%9F%20Listed%20Real%20Estate%20Logistics%20Hub"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/eu-logistics-esef-hub","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/eu-logistics-esef-hub","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/eu-logistics-esef-hub","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/eu-logistics-esef-hub","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/eu-logistics-esef-hub","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/eu-logistics-esef-hub","visualReviewResourceUri":"reits://asset-visual-review-ledger/eu-logistics-esef-hub","visualTrialResourceUri":"reits://asset-visual-trials/eu-logistics-esef-hub","futureAssetResourceUri":"reits://virtual-assets/eu-logistics-esef-hub","visualRegistryResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub"}},{"generatedAt":"2026-09-07T03:28:49.515Z","candidateSlug":"in-invit-infra-corridor","assetName":"印度 REITs / InvIT Infra Corridor","nftStyleName":"REITs Pixel Asset #IN-Infra-10","countrySlug":"in","countryName":"印度","cityName":"Mumbai","assetType":"基础设施走廊","statusLabel":"证据写入事务前置阻断","transactionCount":2,"evidenceTransactionReadyCount":0,"blockedBeforeEvidenceTransactionCount":2,"writeSetItemCount":16,"preconditionCount":18,"satisfiedPreconditionCount":4,"approvalEvidenceWrittenCount":0,"recordDigest":"ba145379ea8a3ca6cd4d17432cc998314822304ea3b6ca2eaffe4831760b3e46","transactions":[{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-in-invit-infra-corridor-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-in-invit-infra-corridor-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-in-invit-infra-corridor-isometric-nft-card","previewRowId":"asset-visual-registry-preview-in-invit-infra-corridor-isometric-nft-card","visualTransactionId":"visual-registry-transaction-in-invit-infra-corridor-isometric-nft-card","candidateSlug":"in-invit-infra-corridor","assetName":"印度 REITs / InvIT Infra Corridor","nftStyleName":"REITs Pixel Asset #IN-Infra-10","countrySlug":"in","countryName":"印度","cityName":"Mumbai","assetType":"基础设施走廊","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":null,"sourceEvidence":{"sourceType":"missing-source","localFileDetected":false,"publicPath":null,"sha256":null,"bytes":null,"manifestSource":null,"sourceMatchesTransaction":false,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=in-invit-infra-corridor&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=in-invit-infra-corridor&format=isometric-nft-card","evidenceNote":"当前没有 source image，必须保持 blocked preview row。"},"status":"blocked-by-brief","statusLabel":"Brief 阻断不可写证据","packetStatus":"blocked-by-brief","packetStatusLabel":"Brief 阻断不可提交证据","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"96e53115bd7063c75a795c10063f06a97c76c0fdefe802e8a2468fa6d7a3aafa","placeholderDigest":"560a4f92d3f7dec58f3d70e475e9a1d964b909428d5ad3b1bf54eaa5e2432d86","previewDigest":"feb25b0b9037361618e51e83ffda9d877af2f5bbcd853287c7aca2e0b9ac0eb6","visualTransactionDigest":"1e6a818b2ee33432ed70e8395e292f9a374504e20d4909f81a20bf758887b916","reviewDigest":"87c51f3843cfe89528800a9c4a8ad3386812b219b6e40478aefd9eb08e3850fa","approvalDigest":"7d7c23ee4b9c5ce6168558b26f1ebcf81878d9cd6ee6f4a4aef035020e51f616","visualDigest":"d8af9440520b9c2b8b3e165b1ba0b0df0c436b1d86acb2482ebf1d6512f2f7c5","imageSha256":null,"evidenceTransactionDigest":"1964ea32531ba5cc1fd1f767de45381e8e8aef08607b8288799d9baaac3c6b8d","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-in-invit-infra-corridor-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-in-invit-infra-corridor-isometric-nft-card","idempotencyKey":"375a80d909b7d9e33076290528b94c18","candidateSlug":"in-invit-infra-corridor","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-in-invit-infra-corridor-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-in-invit-infra-corridor-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor/isometric-nft-card","sourceEvidenceType":"missing-source","sourceEvidencePublicPath":null,"sourceEvidenceSha256":null,"sourceMatchesTransaction":false,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"96e53115bd7063c75a795c10063f06a97c76c0fdefe802e8a2468fa6d7a3aafa","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":null,"note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"96e53115bd7063c75a795c10063f06a97c76c0fdefe802e8a2468fa6d7a3aafa","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"93d6e1be3f7052bacdda7d46de2578129032df8f3d7eb312878e76e40fe8f3e8","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"f0d5ea6593c8c38dcf2aa164859b4ca03f60c716e29e310dd7d0accb20fe5d7e","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-in-invit-infra-corridor-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"7d7c23ee4b9c5ce6168558b26f1ebcf81878d9cd6ee6f4a4aef035020e51f616","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"96e53115bd7063c75a795c10063f06a97c76c0fdefe802e8a2468fa6d7a3aafa","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"560a4f92d3f7dec58f3d70e475e9a1d964b909428d5ad3b1bf54eaa5e2432d86","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"feb25b0b9037361618e51e83ffda9d877af2f5bbcd853287c7aca2e0b9ac0eb6","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":false,"digest":null,"note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":null,"note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-in-invit-infra-corridor-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-in-invit-infra-corridor-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-in-invit-infra-corridor-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":false},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["印度 REITs / InvIT Infra Corridor 仍被 brief/source/policy 门禁阻断，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据未检测到，且 Registry preview row 尚未 ready。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据未检测到，且真实审批占位尚未 ready。","真实审批占位尚未 ready，不能生成可检查证据包。","源图片证据未完整检测，且证据包尚未 ready。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=in-invit-infra-corridor&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=in-invit-infra-corridor&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=in-invit-infra-corridor&decision=blocked-by-brief&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E5%8D%B0%E5%BA%A6%20REITs%20%2F%20InvIT%20Infra%20Corridor"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/in-invit-infra-corridor/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/in-invit-infra-corridor/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/in-invit-infra-corridor/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/in-invit-infra-corridor/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/in-invit-infra-corridor/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/in-invit-infra-corridor/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/in-invit-infra-corridor/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/in-invit-infra-corridor/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/in-invit-infra-corridor","visualRegistryResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor","targetVisualResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-in-invit-infra-corridor-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-in-invit-infra-corridor-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-in-invit-infra-corridor-pixel-map-pin","previewRowId":"asset-visual-registry-preview-in-invit-infra-corridor-pixel-map-pin","visualTransactionId":"visual-registry-transaction-in-invit-infra-corridor-pixel-map-pin","candidateSlug":"in-invit-infra-corridor","assetName":"印度 REITs / InvIT Infra Corridor","nftStyleName":"REITs Pixel Asset #IN-Infra-10","countrySlug":"in","countryName":"印度","cityName":"Mumbai","assetType":"基础设施走廊","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":null,"sourceEvidence":{"sourceType":"missing-source","localFileDetected":false,"publicPath":null,"sha256":null,"bytes":null,"manifestSource":null,"sourceMatchesTransaction":false,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=in-invit-infra-corridor&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=in-invit-infra-corridor&format=pixel-map-pin","evidenceNote":"当前没有 source image，必须保持 blocked preview row。"},"status":"blocked-by-brief","statusLabel":"Brief 阻断不可写证据","packetStatus":"blocked-by-brief","packetStatusLabel":"Brief 阻断不可提交证据","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"997894050234e812fa209762c9f9bd2af27265b4ad3c8e7bbdebd4b161d3aaea","placeholderDigest":"239cd7b940c6b63b783c062d07eaff04c38f437add1ac2b2e55a2e2261f7e642","previewDigest":"6e307c11e60b678e8c1dddb0a4e650fd5e435982f7b878c6da3eabea107a0755","visualTransactionDigest":"561c81607b821cc2463d00471815fd97817036f0a64a40b172e0d5ff65ddba0c","reviewDigest":"eb12afca3998c2a73d66ab5f7b0d6e8a50242ebd787e959bf92dfc644020fea4","approvalDigest":"36a9f8c7652bbdab3adc9f1476ac44de2426766eec0246f8bb783cdb6638086c","visualDigest":"574f14b9fc44ec5198d05b9a9ff6b9e6fd439088b972fe9b02bf31f0680c6b05","imageSha256":null,"evidenceTransactionDigest":"e2d6296a9ead8d2ed7f9c3a59cc3b7291f6e0c6d3fb32d92360186f047d73e32","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-in-invit-infra-corridor-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-in-invit-infra-corridor-pixel-map-pin","idempotencyKey":"9884aab82719f413fc7333f5f48d3797","candidateSlug":"in-invit-infra-corridor","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-in-invit-infra-corridor-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-in-invit-infra-corridor-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor/pixel-map-pin","sourceEvidenceType":"missing-source","sourceEvidencePublicPath":null,"sourceEvidenceSha256":null,"sourceMatchesTransaction":false,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"997894050234e812fa209762c9f9bd2af27265b4ad3c8e7bbdebd4b161d3aaea","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":null,"note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"997894050234e812fa209762c9f9bd2af27265b4ad3c8e7bbdebd4b161d3aaea","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"c9847b6958795931fd3628dc1fb06e274e38fb115eafe26d36c74cfa89e62040","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"a371710cf8b172588ec9d050dca7d344b2af8fda43e7285953f12bd50b441ef5","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-in-invit-infra-corridor-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"36a9f8c7652bbdab3adc9f1476ac44de2426766eec0246f8bb783cdb6638086c","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"997894050234e812fa209762c9f9bd2af27265b4ad3c8e7bbdebd4b161d3aaea","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"239cd7b940c6b63b783c062d07eaff04c38f437add1ac2b2e55a2e2261f7e642","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"6e307c11e60b678e8c1dddb0a4e650fd5e435982f7b878c6da3eabea107a0755","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":false,"digest":null,"note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":null,"note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-in-invit-infra-corridor-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-in-invit-infra-corridor-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-in-invit-infra-corridor-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":false},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["印度 REITs / InvIT Infra Corridor 仍被 brief/source/policy 门禁阻断，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据未检测到，且 Registry preview row 尚未 ready。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据未检测到，且真实审批占位尚未 ready。","真实审批占位尚未 ready，不能生成可检查证据包。","源图片证据未完整检测，且证据包尚未 ready。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=in-invit-infra-corridor&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=in-invit-infra-corridor&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=in-invit-infra-corridor&decision=blocked-by-brief&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E5%8D%B0%E5%BA%A6%20REITs%20%2F%20InvIT%20Infra%20Corridor"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/in-invit-infra-corridor/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/in-invit-infra-corridor/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/in-invit-infra-corridor/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/in-invit-infra-corridor/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/in-invit-infra-corridor/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/in-invit-infra-corridor/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/in-invit-infra-corridor/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/in-invit-infra-corridor/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/in-invit-infra-corridor","visualRegistryResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor","targetVisualResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor/pixel-map-pin"}}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=in-invit-infra-corridor","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=in-invit-infra-corridor","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=in-invit-infra-corridor","registryPreview":"/operations/asset-visual-registry-preview?asset=in-invit-infra-corridor","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=in-invit-infra-corridor","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=in-invit-infra-corridor","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=in-invit-infra-corridor","visualRegistry":"/operations/asset-visual-registry","search":"/search?q=%E5%8D%B0%E5%BA%A6%20REITs%20%2F%20InvIT%20Infra%20Corridor"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/in-invit-infra-corridor","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/in-invit-infra-corridor","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/in-invit-infra-corridor","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/in-invit-infra-corridor","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/in-invit-infra-corridor","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/in-invit-infra-corridor","visualReviewResourceUri":"reits://asset-visual-review-ledger/in-invit-infra-corridor","visualTrialResourceUri":"reits://asset-visual-trials/in-invit-infra-corridor","futureAssetResourceUri":"reits://virtual-assets/in-invit-infra-corridor","visualRegistryResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor"}}],"transactions":[{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-au-logistics-asx-warehouse-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-au-logistics-asx-warehouse-isometric-nft-card","previewRowId":"asset-visual-registry-preview-au-logistics-asx-warehouse-isometric-nft-card","visualTransactionId":"visual-registry-transaction-au-logistics-asx-warehouse-isometric-nft-card","candidateSlug":"au-logistics-asx-warehouse","assetName":"澳大利亚 A-REIT Logistics Warehouse","nftStyleName":"REITs Pixel Asset #AU-Logistics-07","countrySlug":"au","countryName":"澳大利亚","cityName":"Sydney","assetType":"物流仓储","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/au-logistics-asx-warehouse/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/au-logistics-asx-warehouse/nft-card.png","sha256":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","bytes":2231294,"manifestSource":"filesystem-probe","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=au-logistics-asx-warehouse&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=au-logistics-asx-warehouse&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"evidence-transaction-ready","statusLabel":"证据写入事务可检查","packetStatus":"evidence-packet-ready","packetStatusLabel":"证据包结构可检查","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"83a1bedfecbf58bdf561e265308229c37f4191a440d44ecf2941e9cab43037b2","placeholderDigest":"972840fd1db2db67bbfd268856a44c610339c739396acbb490d4459fef97dfa1","previewDigest":"6b4bc87eefd6f85a8d053ba05a6014edb81d09ea1f95c858e847c53865eefe2c","visualTransactionDigest":"f9a5c353fd30cf2faa664c32ff94b7c5b4f63de51556138b017cf0e9c707e480","reviewDigest":"4e5603d3cdd84575ecf32d0ea8701d423718e149bb040268c381c3f1fb3bef1c","approvalDigest":"579958e668643b3780b523df793e403454eca3b89c4c657ea8ee5e0023c8f07c","visualDigest":"984c241c59787d262fbfa0881959e8725e5188d790239074009f3c4a26abd76f","imageSha256":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","evidenceTransactionDigest":"94dc4ca28a869fdc49d4550d2000f5211acfeec3490c5209ac244eb5948c837d","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-au-logistics-asx-warehouse-isometric-nft-card","idempotencyKey":"a1aaf4af34577daea67d2eabf808807c","candidateSlug":"au-logistics-asx-warehouse","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-au-logistics-asx-warehouse-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-au-logistics-asx-warehouse-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/au-logistics-asx-warehouse/nft-card.png","sourceEvidenceSha256":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"83a1bedfecbf58bdf561e265308229c37f4191a440d44ecf2941e9cab43037b2","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"83a1bedfecbf58bdf561e265308229c37f4191a440d44ecf2941e9cab43037b2","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"da048c91c2cea7d223c20cbe694067506306c4cc068299be89ef400c9cfc52df","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"c22468f8d7575cec60b82b1adffdc95fe147861d0d041e90a4582d8256366d80","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"579958e668643b3780b523df793e403454eca3b89c4c657ea8ee5e0023c8f07c","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":true,"digest":"83a1bedfecbf58bdf561e265308229c37f4191a440d44ecf2941e9cab43037b2","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":true,"digest":"972840fd1db2db67bbfd268856a44c610339c739396acbb490d4459fef97dfa1","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":true,"digest":"6b4bc87eefd6f85a8d053ba05a6014edb81d09ea1f95c858e847c53865eefe2c","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-au-logistics-asx-warehouse-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":true,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":true},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["本地生成图片 source evidence 已绑定到 writer envelope，但仍只做事务预演。","仅表示 evidence writer envelope 可检查，不代表允许写入。","approverId、approvedAt、approvalEvidenceUri 和 approvalEvidenceDigest 仍为空。","evidenceWriteTransactionDisabled=true，databaseWriteDisabled=true。","approvalEvidenceWritten=false，finalApprovalRecorded=false。"],"requiredActions":[{"owner":"ops","label":"准备双签审批人身份与审批时间戳，但不要上传或写入","href":"/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card"},{"owner":"engineering","label":"实现 writer 前保持 transaction/database/evidence 写入全部禁用","href":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card"},{"owner":"qa","label":"校验 idempotencyKey、writeSet、rollbackPlan 和 MCP 资源 URI","href":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=au-logistics-asx-warehouse&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=au-logistics-asx-warehouse&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=au-logistics-asx-warehouse&decision=ready-for-human-approval&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E6%BE%B3%E5%A4%A7%E5%88%A9%E4%BA%9A%20A-REIT%20Logistics%20Warehouse"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/au-logistics-asx-warehouse/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/au-logistics-asx-warehouse/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/au-logistics-asx-warehouse/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/au-logistics-asx-warehouse/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/au-logistics-asx-warehouse/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/au-logistics-asx-warehouse/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/au-logistics-asx-warehouse/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/au-logistics-asx-warehouse/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/au-logistics-asx-warehouse","visualRegistryResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse","targetVisualResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-uk-healthcare-rns-estate-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-uk-healthcare-rns-estate-isometric-nft-card","previewRowId":"asset-visual-registry-preview-uk-healthcare-rns-estate-isometric-nft-card","visualTransactionId":"visual-registry-transaction-uk-healthcare-rns-estate-isometric-nft-card","candidateSlug":"uk-healthcare-rns-estate","assetName":"英国 UK REIT Healthcare Estate","nftStyleName":"REITs Pixel Asset #UK-Health-08","countrySlug":"uk","countryName":"英国","cityName":"London","assetType":"医疗健康地产","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/uk-healthcare-rns-estate/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/uk-healthcare-rns-estate/nft-card.png","sha256":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","bytes":2285655,"manifestSource":"filesystem-probe","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=uk-healthcare-rns-estate&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=uk-healthcare-rns-estate&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"evidence-transaction-ready","statusLabel":"证据写入事务可检查","packetStatus":"evidence-packet-ready","packetStatusLabel":"证据包结构可检查","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"f34eba60e210efb0f35ab3e90496423a69d8b607812f390f62cfcb30f51ae0fd","placeholderDigest":"7fef567b74fcff0a6c1ef0aee31557f020c458cd0816ba59f14b0f45c4ffce2b","previewDigest":"d23b04e17fac4ca563c48752eacd4841ebfce0c5e418e756a8e3e9c2491ece28","visualTransactionDigest":"53523071c67ba70a042d04b4d1dadc63bf82cc65d39fdf157a034c0176b48cbf","reviewDigest":"5418c059ee2ca7290053bd5b0d6814024952db7ad636334ce71db6605e01b76d","approvalDigest":"3d76321873a12b7d26732057cf05bd5915100660c46065a31f574dfb0bbf8fe2","visualDigest":"554a0b92f4363fba903ccabfd6b1988200545f1b350473e935ac7a9d8255b37d","imageSha256":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","evidenceTransactionDigest":"e0733ba058828438be4d017a7cdd92e8e957643c0795d08ff8237bc11c5f3a9d","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-uk-healthcare-rns-estate-isometric-nft-card","idempotencyKey":"14bcb589f0ff22610de25ecd2d444596","candidateSlug":"uk-healthcare-rns-estate","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-uk-healthcare-rns-estate-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-uk-healthcare-rns-estate-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/uk-healthcare-rns-estate/nft-card.png","sourceEvidenceSha256":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"f34eba60e210efb0f35ab3e90496423a69d8b607812f390f62cfcb30f51ae0fd","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"f34eba60e210efb0f35ab3e90496423a69d8b607812f390f62cfcb30f51ae0fd","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"fa5f52754b3494be220e07554ab6d583b6b10f1b00d91c688a0df70afc5d1274","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"c00330cd0a09dbb790ed408f91e7eb245f5f793ccd5d7fe2b89d46182d507548","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"3d76321873a12b7d26732057cf05bd5915100660c46065a31f574dfb0bbf8fe2","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":true,"digest":"f34eba60e210efb0f35ab3e90496423a69d8b607812f390f62cfcb30f51ae0fd","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":true,"digest":"7fef567b74fcff0a6c1ef0aee31557f020c458cd0816ba59f14b0f45c4ffce2b","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":true,"digest":"d23b04e17fac4ca563c48752eacd4841ebfce0c5e418e756a8e3e9c2491ece28","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-uk-healthcare-rns-estate-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":true,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":true},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["本地生成图片 source evidence 已绑定到 writer envelope，但仍只做事务预演。","仅表示 evidence writer envelope 可检查，不代表允许写入。","approverId、approvedAt、approvalEvidenceUri 和 approvalEvidenceDigest 仍为空。","evidenceWriteTransactionDisabled=true，databaseWriteDisabled=true。","approvalEvidenceWritten=false，finalApprovalRecorded=false。"],"requiredActions":[{"owner":"ops","label":"准备双签审批人身份与审批时间戳，但不要上传或写入","href":"/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card"},{"owner":"engineering","label":"实现 writer 前保持 transaction/database/evidence 写入全部禁用","href":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card"},{"owner":"qa","label":"校验 idempotencyKey、writeSet、rollbackPlan 和 MCP 资源 URI","href":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=uk-healthcare-rns-estate&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=uk-healthcare-rns-estate&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=uk-healthcare-rns-estate&decision=ready-for-human-approval&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E8%8B%B1%E5%9B%BD%20UK%20REIT%20Healthcare%20Estate"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/uk-healthcare-rns-estate/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/uk-healthcare-rns-estate/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/uk-healthcare-rns-estate/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/uk-healthcare-rns-estate/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/uk-healthcare-rns-estate/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/uk-healthcare-rns-estate/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/uk-healthcare-rns-estate/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/uk-healthcare-rns-estate/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/uk-healthcare-rns-estate","visualRegistryResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate","targetVisualResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-rental-housing-community-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-rental-housing-community-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-cn-rental-housing-community-isometric-nft-card","previewRowId":"asset-visual-registry-preview-cn-rental-housing-community-isometric-nft-card","visualTransactionId":"visual-registry-transaction-cn-rental-housing-community-isometric-nft-card","candidateSlug":"cn-rental-housing-community","assetName":"中国保障性租赁住房 Community Block","nftStyleName":"REITs Pixel Asset #CN-Rental-12","countrySlug":"cn","countryName":"中国内地","cityName":"深圳","assetType":"保障性租赁住房","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/cn-rental-housing-community/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-rental-housing-community/nft-card.png","sha256":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","bytes":92699,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-rental-housing-community&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-rental-housing-community&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"evidence-transaction-ready","statusLabel":"证据写入事务可检查","packetStatus":"evidence-packet-ready","packetStatusLabel":"证据包结构可检查","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"9f12eb87036c62f357a42281640d5aab5328bc7eaea86746543e2ea5decad9ac","placeholderDigest":"61e796d87d987477d610e3b83292fd9080190a0a2152d708ec8c3d50ab04ee84","previewDigest":"dde2b8bd60ea1b9848c7fedfd1b60e8a939a49c0c506bc9592f8f352f715e777","visualTransactionDigest":"3207aad4518546d87d7064ebf39b7b4cd01546db362f26092453de558f377bfe","reviewDigest":"338d596c08a74f427eebdc706e99ce8783f90d34113a79587fe457b0ea156417","approvalDigest":"fca6100c3936cb5d1d6486658dc7ac3925f48461d809de79ce1c48a881bc2f25","visualDigest":"767216491392f8e84d9841ff3e0f9f11637d4d5754468c8aa6c495500d4d2823","imageSha256":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","evidenceTransactionDigest":"ca28276962fc3f1f453c2162c8ad04626c78d9f884c2fcb930f7e35ebebf810f","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-rental-housing-community-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-rental-housing-community-isometric-nft-card","idempotencyKey":"4be3d54a70c022889381b1b7e0fc1bbe","candidateSlug":"cn-rental-housing-community","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-rental-housing-community-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-cn-rental-housing-community-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/cn-rental-housing-community/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-rental-housing-community/nft-card.png","sourceEvidenceSha256":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"9f12eb87036c62f357a42281640d5aab5328bc7eaea86746543e2ea5decad9ac","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"9f12eb87036c62f357a42281640d5aab5328bc7eaea86746543e2ea5decad9ac","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"309514a2cf492926c88110dd0328da0d3c72c6392ed264f031870bc191dcfc97","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"74c90e1a7fa07a78135f00c1102d799b22d6bc50713495f11ba5e92aa1675217","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-rental-housing-community-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"fca6100c3936cb5d1d6486658dc7ac3925f48461d809de79ce1c48a881bc2f25","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":true,"digest":"9f12eb87036c62f357a42281640d5aab5328bc7eaea86746543e2ea5decad9ac","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":true,"digest":"61e796d87d987477d610e3b83292fd9080190a0a2152d708ec8c3d50ab04ee84","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":true,"digest":"dde2b8bd60ea1b9848c7fedfd1b60e8a939a49c0c506bc9592f8f352f715e777","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-rental-housing-community-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-rental-housing-community-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-rental-housing-community-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":true,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":true},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["本地生成图片 source evidence 已绑定到 writer envelope，但仍只做事务预演。","仅表示 evidence writer envelope 可检查，不代表允许写入。","approverId、approvedAt、approvalEvidenceUri 和 approvalEvidenceDigest 仍为空。","evidenceWriteTransactionDisabled=true，databaseWriteDisabled=true。","approvalEvidenceWritten=false，finalApprovalRecorded=false。"],"requiredActions":[{"owner":"ops","label":"准备双签审批人身份与审批时间戳，但不要上传或写入","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card"},{"owner":"engineering","label":"实现 writer 前保持 transaction/database/evidence 写入全部禁用","href":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card"},{"owner":"qa","label":"校验 idempotencyKey、writeSet、rollbackPlan 和 MCP 资源 URI","href":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-rental-housing-community&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-rental-housing-community&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-rental-housing-community&decision=ready-for-human-approval&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E4%BF%9D%E9%9A%9C%E6%80%A7%E7%A7%9F%E8%B5%81%E4%BD%8F%E6%88%BF%20Community%20Block"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-rental-housing-community/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-rental-housing-community/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-rental-housing-community/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-rental-housing-community/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-rental-housing-community/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-rental-housing-community/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-rental-housing-community/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/cn-rental-housing-community/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/cn-rental-housing-community","visualRegistryResourceUri":"reits://asset-visual-registry/cn-rental-housing-community","targetVisualResourceUri":"reits://asset-visual-registry/cn-rental-housing-community/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-logistics-bbs-gap-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-cn-logistics-bbs-gap-isometric-nft-card","previewRowId":"asset-visual-registry-preview-cn-logistics-bbs-gap-isometric-nft-card","visualTransactionId":"visual-registry-transaction-cn-logistics-bbs-gap-isometric-nft-card","candidateSlug":"cn-logistics-bbs-gap","assetName":"中国内地仓储物流 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Logistics-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"上海","assetType":"仓储物流","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/cn-logistics-bbs-gap/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-logistics-bbs-gap/nft-card.png","sha256":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","bytes":90568,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-logistics-bbs-gap&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-logistics-bbs-gap&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"evidence-transaction-ready","statusLabel":"证据写入事务可检查","packetStatus":"evidence-packet-ready","packetStatusLabel":"证据包结构可检查","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"61569ea4e45943f874cc18b5967471f082692361d39281680244cd5736a60f31","placeholderDigest":"b1053e770b8f2f946d034ecdc53a2334003a5a8379f816000323b791cb3c1188","previewDigest":"c6ee4b1e55875709950e94770462ac62f64b020a5ed81bcab6c8e97c76c24741","visualTransactionDigest":"30870cb1942e96af4dd5d13ad175f51df2bd45d9c82e7bfe8fe7c6a221bfdc8c","reviewDigest":"fa5b37d8428eb57b256739df8312a20244cbc6b63062eb0997620a8cf1e0d641","approvalDigest":"aac0461d6c290828a123e9d6b060ea5d39d054259760786ea3d8a0247538a51a","visualDigest":"cfbae45981263d30b5eea7a508c8561c8392893aa0588594e97f4bb6007b4f90","imageSha256":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","evidenceTransactionDigest":"ac980bfc1c7e255f58f58722b307e9c3aa62fbcf9c70b279e3b36fe131279471","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-logistics-bbs-gap-isometric-nft-card","idempotencyKey":"af67110748aea5897f9a6d729c61c959","candidateSlug":"cn-logistics-bbs-gap","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-logistics-bbs-gap-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-cn-logistics-bbs-gap-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-logistics-bbs-gap/nft-card.png","sourceEvidenceSha256":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"61569ea4e45943f874cc18b5967471f082692361d39281680244cd5736a60f31","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"61569ea4e45943f874cc18b5967471f082692361d39281680244cd5736a60f31","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2392c3e448e0fd5e7fecafeeaed022339555fb7ddb8613836f6ce25c03f51300","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"05187cb49edb4384f60523b1baf734a11cf79a050aee8bfdac66f8c72253e8c0","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"aac0461d6c290828a123e9d6b060ea5d39d054259760786ea3d8a0247538a51a","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":true,"digest":"61569ea4e45943f874cc18b5967471f082692361d39281680244cd5736a60f31","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":true,"digest":"b1053e770b8f2f946d034ecdc53a2334003a5a8379f816000323b791cb3c1188","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":true,"digest":"c6ee4b1e55875709950e94770462ac62f64b020a5ed81bcab6c8e97c76c24741","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-logistics-bbs-gap-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":true,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":true},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["本地生成图片 source evidence 已绑定到 writer envelope，但仍只做事务预演。","仅表示 evidence writer envelope 可检查，不代表允许写入。","approverId、approvedAt、approvalEvidenceUri 和 approvalEvidenceDigest 仍为空。","evidenceWriteTransactionDisabled=true，databaseWriteDisabled=true。","approvalEvidenceWritten=false，finalApprovalRecorded=false。"],"requiredActions":[{"owner":"ops","label":"准备双签审批人身份与审批时间戳，但不要上传或写入","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card"},{"owner":"engineering","label":"实现 writer 前保持 transaction/database/evidence 写入全部禁用","href":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card"},{"owner":"qa","label":"校验 idempotencyKey、writeSet、rollbackPlan 和 MCP 资源 URI","href":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-logistics-bbs-gap&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-logistics-bbs-gap&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-logistics-bbs-gap&decision=ready-for-human-approval&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E4%BB%93%E5%82%A8%E7%89%A9%E6%B5%81%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-logistics-bbs-gap/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-logistics-bbs-gap/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-logistics-bbs-gap/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-logistics-bbs-gap/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-logistics-bbs-gap/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-logistics-bbs-gap/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-logistics-bbs-gap/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/cn-logistics-bbs-gap/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/cn-logistics-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap","targetVisualResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-highway-bbs-gap-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-highway-bbs-gap-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-cn-highway-bbs-gap-isometric-nft-card","previewRowId":"asset-visual-registry-preview-cn-highway-bbs-gap-isometric-nft-card","visualTransactionId":"visual-registry-transaction-cn-highway-bbs-gap-isometric-nft-card","candidateSlug":"cn-highway-bbs-gap","assetName":"中国内地高速公路 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Highway-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"广州","assetType":"高速公路","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/cn-highway-bbs-gap/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-highway-bbs-gap/nft-card.png","sha256":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","bytes":96279,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-highway-bbs-gap&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-highway-bbs-gap&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"evidence-transaction-ready","statusLabel":"证据写入事务可检查","packetStatus":"evidence-packet-ready","packetStatusLabel":"证据包结构可检查","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"fd0868a7fd203ec86ac17b23fee9046409f1fb894e30668ddfdfd20bd3738673","placeholderDigest":"f3a3da7f18a36fe5278e26a1c8874ffd10aea8e46ec38f321ace6f7f164cacb9","previewDigest":"7c8ab3eb9839e737ec651c084c8741e2e01739e7623080487b76a56abb492d68","visualTransactionDigest":"b911c6f71336e42527e456fe314d536e24e8f113c3ab319b35bbebea4480f04d","reviewDigest":"4818f070cffc01676d1cf2690e8fab6ad7ba82aeb86bc18d99228a4c975535cf","approvalDigest":"bda1b46870e3d0f9f8fb1cbb021dc2c95d75003e18ecb9e76714e5bf77d8c48c","visualDigest":"026a955bac9388c2f6d4b788291033e528d6ca08358ad7367f10b256d7101ad6","imageSha256":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","evidenceTransactionDigest":"8b35f90ba9fac6acd1d384ca3372167bda4cce15df4fc8511410a8bdef91900b","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-highway-bbs-gap-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-highway-bbs-gap-isometric-nft-card","idempotencyKey":"e73bd521a193202fed5e19d29f231dfe","candidateSlug":"cn-highway-bbs-gap","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-highway-bbs-gap-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-cn-highway-bbs-gap-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-highway-bbs-gap/nft-card.png","sourceEvidenceSha256":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"fd0868a7fd203ec86ac17b23fee9046409f1fb894e30668ddfdfd20bd3738673","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"fd0868a7fd203ec86ac17b23fee9046409f1fb894e30668ddfdfd20bd3738673","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"d0b583d1356e8a05bc5b8c0ef7103b5f4d2d18d4aa50e62b6aa6942482b41763","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"a395e441a1c5b9290c82c1c734a67b1863a91bab7968b83492b8afa4ca4f8e82","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-highway-bbs-gap-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"bda1b46870e3d0f9f8fb1cbb021dc2c95d75003e18ecb9e76714e5bf77d8c48c","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":true,"digest":"fd0868a7fd203ec86ac17b23fee9046409f1fb894e30668ddfdfd20bd3738673","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":true,"digest":"f3a3da7f18a36fe5278e26a1c8874ffd10aea8e46ec38f321ace6f7f164cacb9","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":true,"digest":"7c8ab3eb9839e737ec651c084c8741e2e01739e7623080487b76a56abb492d68","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-highway-bbs-gap-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-highway-bbs-gap-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-highway-bbs-gap-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":true,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":true},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["本地生成图片 source evidence 已绑定到 writer envelope，但仍只做事务预演。","仅表示 evidence writer envelope 可检查，不代表允许写入。","approverId、approvedAt、approvalEvidenceUri 和 approvalEvidenceDigest 仍为空。","evidenceWriteTransactionDisabled=true，databaseWriteDisabled=true。","approvalEvidenceWritten=false，finalApprovalRecorded=false。"],"requiredActions":[{"owner":"ops","label":"准备双签审批人身份与审批时间戳，但不要上传或写入","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card"},{"owner":"engineering","label":"实现 writer 前保持 transaction/database/evidence 写入全部禁用","href":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card"},{"owner":"qa","label":"校验 idempotencyKey、writeSet、rollbackPlan 和 MCP 资源 URI","href":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-highway-bbs-gap&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-highway-bbs-gap&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-highway-bbs-gap&decision=ready-for-human-approval&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E9%AB%98%E9%80%9F%E5%85%AC%E8%B7%AF%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-highway-bbs-gap/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-highway-bbs-gap/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-highway-bbs-gap/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-highway-bbs-gap/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-highway-bbs-gap/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-highway-bbs-gap/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-highway-bbs-gap/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/cn-highway-bbs-gap/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/cn-highway-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap","targetVisualResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-commercial-bbs-gap-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-cn-commercial-bbs-gap-isometric-nft-card","previewRowId":"asset-visual-registry-preview-cn-commercial-bbs-gap-isometric-nft-card","visualTransactionId":"visual-registry-transaction-cn-commercial-bbs-gap-isometric-nft-card","candidateSlug":"cn-commercial-bbs-gap","assetName":"中国内地商业不动产 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Commercial-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"上海","assetType":"商业不动产","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/cn-commercial-bbs-gap/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-commercial-bbs-gap/nft-card.png","sha256":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","bytes":76669,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-commercial-bbs-gap&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-commercial-bbs-gap&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"evidence-transaction-ready","statusLabel":"证据写入事务可检查","packetStatus":"evidence-packet-ready","packetStatusLabel":"证据包结构可检查","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"7aff09a4fa17c635693549d60b7f28d6da9da783c9af3ee3b03697676ba3c69c","placeholderDigest":"0aeaf0d3e1bcfaceb2a60113bbbb5e1b7c992346d055549c4688de33127884d8","previewDigest":"58a56cb4eb9ea462f1a14b006b27250b98899de9c2b3f8aa514a9e53121f4028","visualTransactionDigest":"9e30622f00abc52fd87ad309d836154847da23561c25113ef9e9967406fe1126","reviewDigest":"e7a4c751a692f4766f8d6f690885d01c232c7337f7d86f3c74de75518f0ccbb3","approvalDigest":"2d5969081aedee898a98592f0a528f46b0857a82c97dfb5110fd7634c6b5f263","visualDigest":"2ca9e738647c7dab9c9e47d14d8f40cdb5823925c8a0b9bbeaad4d2c6f252d1c","imageSha256":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","evidenceTransactionDigest":"c7e7434d0a759cc967eb729b133ced9ff96842e52f88829639150a4810aa4864","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-cn-commercial-bbs-gap-isometric-nft-card","idempotencyKey":"1d0aef1a087caad59aca0a12841f3732","candidateSlug":"cn-commercial-bbs-gap","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-commercial-bbs-gap-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-cn-commercial-bbs-gap-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-commercial-bbs-gap/nft-card.png","sourceEvidenceSha256":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"7aff09a4fa17c635693549d60b7f28d6da9da783c9af3ee3b03697676ba3c69c","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"7aff09a4fa17c635693549d60b7f28d6da9da783c9af3ee3b03697676ba3c69c","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"f88123a0f5c46890ac45ac6c2fc13eca629ed0aa501bf927f98d203a59f1bee3","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"5b358f19ba7afe0a07ac00c74e4baa72fe5bd35ae7f0894aa9c8d35d269f6038","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"2d5969081aedee898a98592f0a528f46b0857a82c97dfb5110fd7634c6b5f263","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":true,"digest":"7aff09a4fa17c635693549d60b7f28d6da9da783c9af3ee3b03697676ba3c69c","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":true,"digest":"0aeaf0d3e1bcfaceb2a60113bbbb5e1b7c992346d055549c4688de33127884d8","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":true,"digest":"58a56cb4eb9ea462f1a14b006b27250b98899de9c2b3f8aa514a9e53121f4028","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-commercial-bbs-gap-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":true,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":true},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["本地生成图片 source evidence 已绑定到 writer envelope，但仍只做事务预演。","仅表示 evidence writer envelope 可检查，不代表允许写入。","approverId、approvedAt、approvalEvidenceUri 和 approvalEvidenceDigest 仍为空。","evidenceWriteTransactionDisabled=true，databaseWriteDisabled=true。","approvalEvidenceWritten=false，finalApprovalRecorded=false。"],"requiredActions":[{"owner":"ops","label":"准备双签审批人身份与审批时间戳，但不要上传或写入","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card"},{"owner":"engineering","label":"实现 writer 前保持 transaction/database/evidence 写入全部禁用","href":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card"},{"owner":"qa","label":"校验 idempotencyKey、writeSet、rollbackPlan 和 MCP 资源 URI","href":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-commercial-bbs-gap&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-commercial-bbs-gap&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-commercial-bbs-gap&decision=ready-for-human-approval&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E5%95%86%E4%B8%9A%E4%B8%8D%E5%8A%A8%E4%BA%A7%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-commercial-bbs-gap/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-commercial-bbs-gap/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-commercial-bbs-gap/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-commercial-bbs-gap/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-commercial-bbs-gap/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-commercial-bbs-gap/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-commercial-bbs-gap/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/cn-commercial-bbs-gap/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/cn-commercial-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap","targetVisualResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-ca-residential-tsx-node-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-ca-residential-tsx-node-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-ca-residential-tsx-node-isometric-nft-card","previewRowId":"asset-visual-registry-preview-ca-residential-tsx-node-isometric-nft-card","visualTransactionId":"visual-registry-transaction-ca-residential-tsx-node-isometric-nft-card","candidateSlug":"ca-residential-tsx-node","assetName":"加拿大 Canadian REIT Residential Node","nftStyleName":"REITs Pixel Asset #CA-Residential-09","countrySlug":"ca","countryName":"加拿大","cityName":"Toronto","assetType":"住宅租赁","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":"/assets/virtual-assets/ca-residential-tsx-node/nft-card.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/ca-residential-tsx-node/nft-card.png","sha256":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","bytes":2195051,"manifestSource":"filesystem-probe","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=ca-residential-tsx-node&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=ca-residential-tsx-node&format=isometric-nft-card","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-compliance-review","statusLabel":"需先合规复核","packetStatus":"needs-compliance-review","packetStatusLabel":"需先合规复核","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"9c9abd6c0598052f2d5ab779fe4428a55cbbdd19a77f798c7e49a089f85117f1","placeholderDigest":"c7a8de62a98e0b27117c91792ac59b6663a6df2b166ba400ca1816d0d1fca67d","previewDigest":"cb45a73ce121d790bcc10c96b119764acf7005eed0ccfae680725f5689e7a06e","visualTransactionDigest":"03460cfc8c51ef43e2a9dc1aa3644d24603ad4409a686ad55a7107117f9c0f82","reviewDigest":"f678c533e81e23cf288c4615f5e98c1994f5b9fcf28a5840021b6ffa4df1178a","approvalDigest":"0745b722d119f96283f6b870e76fb58d6eadab0af4a86e3b7cfde61a63706d88","visualDigest":"368b04611be7a37cfe5b4f851008dd90171212e5d7f410000a722d9658506a3f","imageSha256":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","evidenceTransactionDigest":"54f6dc76a6752bbee79ba7688592eecd42a77fcf615c99857e9741f2f808c672","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-ca-residential-tsx-node-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-ca-residential-tsx-node-isometric-nft-card","idempotencyKey":"ec81c8abe2a96e165651d58f16508648","candidateSlug":"ca-residential-tsx-node","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-ca-residential-tsx-node-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-ca-residential-tsx-node-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node/isometric-nft-card","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/ca-residential-tsx-node/nft-card.png","sourceEvidenceSha256":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"9c9abd6c0598052f2d5ab779fe4428a55cbbdd19a77f798c7e49a089f85117f1","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"9c9abd6c0598052f2d5ab779fe4428a55cbbdd19a77f798c7e49a089f85117f1","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"7afd4f48376c864ed69d9560afdd59626d2945b6bff2564c1250bfd7663d6c88","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"2acb3be4c08af2a6c9ee7add71f3bac1bc4affe69d2524a74772875b43ee392f","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-ca-residential-tsx-node-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"0745b722d119f96283f6b870e76fb58d6eadab0af4a86e3b7cfde61a63706d88","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"9c9abd6c0598052f2d5ab779fe4428a55cbbdd19a77f798c7e49a089f85117f1","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"c7a8de62a98e0b27117c91792ac59b6663a6df2b166ba400ca1816d0d1fca67d","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"cb45a73ce121d790bcc10c96b119764acf7005eed0ccfae680725f5689e7a06e","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-ca-residential-tsx-node-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-ca-residential-tsx-node-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-ca-residential-tsx-node-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["合规复核尚未完成，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card"},{"owner":"compliance","label":"先完成合规复核，不能为未过审图片写审批证据","href":"/operations/virtual-asset-visual-review-ledger?asset=ca-residential-tsx-node&decision=needs-compliance-review&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=ca-residential-tsx-node&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=ca-residential-tsx-node&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=ca-residential-tsx-node&decision=needs-compliance-review&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E5%8A%A0%E6%8B%BF%E5%A4%A7%20Canadian%20REIT%20Residential%20Node"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/ca-residential-tsx-node/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/ca-residential-tsx-node/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/ca-residential-tsx-node/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/ca-residential-tsx-node/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/ca-residential-tsx-node/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/ca-residential-tsx-node/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/ca-residential-tsx-node/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/ca-residential-tsx-node/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/ca-residential-tsx-node","visualRegistryResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node","targetVisualResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-au-logistics-asx-warehouse-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-au-logistics-asx-warehouse-pixel-map-pin","previewRowId":"asset-visual-registry-preview-au-logistics-asx-warehouse-pixel-map-pin","visualTransactionId":"visual-registry-transaction-au-logistics-asx-warehouse-pixel-map-pin","candidateSlug":"au-logistics-asx-warehouse","assetName":"澳大利亚 A-REIT Logistics Warehouse","nftStyleName":"REITs Pixel Asset #AU-Logistics-07","countrySlug":"au","countryName":"澳大利亚","cityName":"Sydney","assetType":"物流仓储","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/au-logistics-asx-warehouse/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/au-logistics-asx-warehouse/map-pin.png","sha256":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","bytes":479311,"manifestSource":"filesystem-probe","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=au-logistics-asx-warehouse&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=au-logistics-asx-warehouse&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"37f974cc4a9e035db9795460bfccec505efadbd6dab71d77dbf18d4c5111ab26","placeholderDigest":"c1fe7d0a7d88de0d70c950305a4d32a36260da6321f95fd22128f3701682258f","previewDigest":"d75a9d671e15cd213431b9ad073aec2f2cc41e2afe516710983c230693509837","visualTransactionDigest":"7ba087a987f78ba4cc21966f9f9f2e104d0e7d8bb1a4d098e7c6e38d682f0f8f","reviewDigest":"3ac311e1d2e75bc19fa3d6afa5239c5e421fbe44fbf9f0e200da0e775cf1a501","approvalDigest":"516ad7e729f818354b5b7340119874a9fd787d87a45f4af3787004170d13f2c7","visualDigest":"1b5480025796846109eedbcc30b649cd004d8d398235dad6fc3348180853bdc8","imageSha256":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","evidenceTransactionDigest":"d900f6ea3b263588140b7b601a2ca7ed433c74240cda1c02395b543b5033efac","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-au-logistics-asx-warehouse-pixel-map-pin","idempotencyKey":"a96c3c4bcf56c722c12f999fa69e8503","candidateSlug":"au-logistics-asx-warehouse","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-au-logistics-asx-warehouse-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-au-logistics-asx-warehouse-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/au-logistics-asx-warehouse/map-pin.png","sourceEvidenceSha256":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"37f974cc4a9e035db9795460bfccec505efadbd6dab71d77dbf18d4c5111ab26","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"37f974cc4a9e035db9795460bfccec505efadbd6dab71d77dbf18d4c5111ab26","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"fcad963e8d2476b0c959d31a4f0e88bedd5c77d588f77f08d1308fc2ea35157d","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"2c10b5ce09b0c3003c0e86a650f6b08ca15c4f1e38ccc62ec7b0628b6952b605","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"516ad7e729f818354b5b7340119874a9fd787d87a45f4af3787004170d13f2c7","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"37f974cc4a9e035db9795460bfccec505efadbd6dab71d77dbf18d4c5111ab26","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"c1fe7d0a7d88de0d70c950305a4d32a36260da6321f95fd22128f3701682258f","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"d75a9d671e15cd213431b9ad073aec2f2cc41e2afe516710983c230693509837","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-au-logistics-asx-warehouse-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-au-logistics-asx-warehouse-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=au-logistics-asx-warehouse&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=au-logistics-asx-warehouse&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=au-logistics-asx-warehouse&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=au-logistics-asx-warehouse&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E6%BE%B3%E5%A4%A7%E5%88%A9%E4%BA%9A%20A-REIT%20Logistics%20Warehouse"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/au-logistics-asx-warehouse/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/au-logistics-asx-warehouse/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/au-logistics-asx-warehouse/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/au-logistics-asx-warehouse/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/au-logistics-asx-warehouse/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/au-logistics-asx-warehouse/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/au-logistics-asx-warehouse/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/au-logistics-asx-warehouse/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/au-logistics-asx-warehouse","visualRegistryResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse","targetVisualResourceUri":"reits://asset-visual-registry/au-logistics-asx-warehouse/pixel-map-pin"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-ca-residential-tsx-node-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-ca-residential-tsx-node-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-ca-residential-tsx-node-pixel-map-pin","previewRowId":"asset-visual-registry-preview-ca-residential-tsx-node-pixel-map-pin","visualTransactionId":"visual-registry-transaction-ca-residential-tsx-node-pixel-map-pin","candidateSlug":"ca-residential-tsx-node","assetName":"加拿大 Canadian REIT Residential Node","nftStyleName":"REITs Pixel Asset #CA-Residential-09","countrySlug":"ca","countryName":"加拿大","cityName":"Toronto","assetType":"住宅租赁","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/ca-residential-tsx-node/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/ca-residential-tsx-node/map-pin.png","sha256":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","bytes":489752,"manifestSource":"filesystem-probe","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=ca-residential-tsx-node&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=ca-residential-tsx-node&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"e5800f3f3d366ec4a62014b57d6381bbce7ffb9b7ee4a86b20bcf9ce6e105220","placeholderDigest":"549bb72a2dcb3079ceae126693c88e0f8d5ad9d66a1b634a620365a4c597b669","previewDigest":"7e0aa16196dc629fb5f659d230a27cfdf7fca014f84df8037d160ac62c41377b","visualTransactionDigest":"ea9939ee81f6f5c23d5d15322de7e36d2fadeb0aba06c7f5908b00890b0122c1","reviewDigest":"7d3d773099726c2e127496a7847210801f9f356b04bb00a797badc50d5f8b84a","approvalDigest":"d0f1f719ad246f427e072fb2ff7c556c3ecadb8964c68a8a850c6a6fb41cd7f6","visualDigest":"5a957c0f0eed1579ffcfd3e6126419ad3598ed91ec831fe8d4663eea515e686c","imageSha256":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","evidenceTransactionDigest":"9548c3291f613a81b456b4610b185f27d3e554087b920a185da7c21784a9589c","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-ca-residential-tsx-node-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-ca-residential-tsx-node-pixel-map-pin","idempotencyKey":"7b7b6e27691bf70f9193dca9ead1f6ec","candidateSlug":"ca-residential-tsx-node","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-ca-residential-tsx-node-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-ca-residential-tsx-node-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/ca-residential-tsx-node/map-pin.png","sourceEvidenceSha256":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"e5800f3f3d366ec4a62014b57d6381bbce7ffb9b7ee4a86b20bcf9ce6e105220","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"e5800f3f3d366ec4a62014b57d6381bbce7ffb9b7ee4a86b20bcf9ce6e105220","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"0b71ce71f09a6380247bc33265d8c8e203f5fcee7a02f20d83ef4aa7a7621fd6","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"44ac52cad848f62058957c807ddc6218a5842f4e40b9ed4a0206372f59eb9dd6","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-ca-residential-tsx-node-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"d0f1f719ad246f427e072fb2ff7c556c3ecadb8964c68a8a850c6a6fb41cd7f6","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"e5800f3f3d366ec4a62014b57d6381bbce7ffb9b7ee4a86b20bcf9ce6e105220","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"549bb72a2dcb3079ceae126693c88e0f8d5ad9d66a1b634a620365a4c597b669","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"7e0aa16196dc629fb5f659d230a27cfdf7fca014f84df8037d160ac62c41377b","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-ca-residential-tsx-node-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-ca-residential-tsx-node-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-ca-residential-tsx-node-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=ca-residential-tsx-node&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=ca-residential-tsx-node&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=ca-residential-tsx-node&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=ca-residential-tsx-node&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E5%8A%A0%E6%8B%BF%E5%A4%A7%20Canadian%20REIT%20Residential%20Node"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/ca-residential-tsx-node/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/ca-residential-tsx-node/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/ca-residential-tsx-node/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/ca-residential-tsx-node/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/ca-residential-tsx-node/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/ca-residential-tsx-node/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/ca-residential-tsx-node/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/ca-residential-tsx-node/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/ca-residential-tsx-node","visualRegistryResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node","targetVisualResourceUri":"reits://asset-visual-registry/ca-residential-tsx-node/pixel-map-pin"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-uk-healthcare-rns-estate-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-uk-healthcare-rns-estate-pixel-map-pin","previewRowId":"asset-visual-registry-preview-uk-healthcare-rns-estate-pixel-map-pin","visualTransactionId":"visual-registry-transaction-uk-healthcare-rns-estate-pixel-map-pin","candidateSlug":"uk-healthcare-rns-estate","assetName":"英国 UK REIT Healthcare Estate","nftStyleName":"REITs Pixel Asset #UK-Health-08","countrySlug":"uk","countryName":"英国","cityName":"London","assetType":"医疗健康地产","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/uk-healthcare-rns-estate/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/uk-healthcare-rns-estate/map-pin.png","sha256":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","bytes":484560,"manifestSource":"filesystem-probe","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=uk-healthcare-rns-estate&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=uk-healthcare-rns-estate&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"7ed5956f8253a1b52aef21792039c3691a0a671658b92ba1d1e084598cfc1d23","placeholderDigest":"ded13dff148f8e17e1419218a7425e5a253573503dab04a84a4f1bd6a69de617","previewDigest":"57e482a98abb200b01858403c5e5f4a3e22ca161766abe5b641d3f21ffc692b4","visualTransactionDigest":"76f2fdc0fdbb506b838f638f04eafe90798ad8b1fd1a4f2cde31f2e31ecfafcd","reviewDigest":"dc73be673e566d1607e198c42d506a326059e144254dc1c161770f6a7a048794","approvalDigest":"72360967e3ce5e28ad81dca1a89796c48c491b1afba609a26308cf6f97a67062","visualDigest":"63939dea2502e9b837644f304490e0d7f9ec161600adea51f9e98efc5e29b46b","imageSha256":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","evidenceTransactionDigest":"217957c87a1ef2d06308ba03037361eb6fec76f6c2ca837b9da7cb7d4ab63470","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-uk-healthcare-rns-estate-pixel-map-pin","idempotencyKey":"f21ec9ad0b5c1dbcef759eeee555677e","candidateSlug":"uk-healthcare-rns-estate","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-uk-healthcare-rns-estate-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-uk-healthcare-rns-estate-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/uk-healthcare-rns-estate/map-pin.png","sourceEvidenceSha256":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"7ed5956f8253a1b52aef21792039c3691a0a671658b92ba1d1e084598cfc1d23","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"7ed5956f8253a1b52aef21792039c3691a0a671658b92ba1d1e084598cfc1d23","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"c37361290ac96bfab620a84cbc9eb459b735917842125cf8a57059177fb000d2","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"ea0d29347c9488a1523bffe54c08e28bfe20e186fea021e2dbcf21ba596cdbe1","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"72360967e3ce5e28ad81dca1a89796c48c491b1afba609a26308cf6f97a67062","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"7ed5956f8253a1b52aef21792039c3691a0a671658b92ba1d1e084598cfc1d23","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"ded13dff148f8e17e1419218a7425e5a253573503dab04a84a4f1bd6a69de617","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"57e482a98abb200b01858403c5e5f4a3e22ca161766abe5b641d3f21ffc692b4","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-uk-healthcare-rns-estate-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-uk-healthcare-rns-estate-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=uk-healthcare-rns-estate&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=uk-healthcare-rns-estate&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=uk-healthcare-rns-estate&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=uk-healthcare-rns-estate&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E8%8B%B1%E5%9B%BD%20UK%20REIT%20Healthcare%20Estate"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/uk-healthcare-rns-estate/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/uk-healthcare-rns-estate/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/uk-healthcare-rns-estate/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/uk-healthcare-rns-estate/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/uk-healthcare-rns-estate/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/uk-healthcare-rns-estate/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/uk-healthcare-rns-estate/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/uk-healthcare-rns-estate/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/uk-healthcare-rns-estate","visualRegistryResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate","targetVisualResourceUri":"reits://asset-visual-registry/uk-healthcare-rns-estate/pixel-map-pin"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-rental-housing-community-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-rental-housing-community-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-cn-rental-housing-community-pixel-map-pin","previewRowId":"asset-visual-registry-preview-cn-rental-housing-community-pixel-map-pin","visualTransactionId":"visual-registry-transaction-cn-rental-housing-community-pixel-map-pin","candidateSlug":"cn-rental-housing-community","assetName":"中国保障性租赁住房 Community Block","nftStyleName":"REITs Pixel Asset #CN-Rental-12","countrySlug":"cn","countryName":"中国内地","cityName":"深圳","assetType":"保障性租赁住房","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/cn-rental-housing-community/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-rental-housing-community/map-pin.png","sha256":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","bytes":7404,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-rental-housing-community&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-rental-housing-community&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"891a9811805438b55fc69cd9433d024f9a77bc39c73e54d6c555d0f27179185f","placeholderDigest":"b31c47720c462d27e8b2218212f8ec57912c3db0e5e1bb4aee6893136f3f9b85","previewDigest":"71f4544accf1bfce54a3fb505218575881730d475a880601893953e3328c7a34","visualTransactionDigest":"4a3d02e3c03d4423d6df7dabce4cce7063f11770552749a7e4ea5edce37bfd4c","reviewDigest":"b1685fa1c55b5598c07e096044cb1f17b850f208f09b808cb26f6317e149afc9","approvalDigest":"de76e8eb95573e67bb145fe5f402309de418f940067677ef37c4fce147292570","visualDigest":"4d58eb5599bbdcb5810c1fb42b2efa492221ecdeb85fcbe6be8fcbda5ed64b91","imageSha256":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","evidenceTransactionDigest":"1a29a7cdd300fbdfac193b1f85e40c1ff263bb8c12060ac936f8424521ee8993","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-rental-housing-community-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-rental-housing-community-pixel-map-pin","idempotencyKey":"9a8ac429cd35a1962358b542f8dde017","candidateSlug":"cn-rental-housing-community","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-rental-housing-community-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-cn-rental-housing-community-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/cn-rental-housing-community/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-rental-housing-community/map-pin.png","sourceEvidenceSha256":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"891a9811805438b55fc69cd9433d024f9a77bc39c73e54d6c555d0f27179185f","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"891a9811805438b55fc69cd9433d024f9a77bc39c73e54d6c555d0f27179185f","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"48032e2c42d239b9a0c67c93255e3e8e120d00c0faf44166536043246e05a455","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"4d81e9c10b6d568e68434e8625d8c9291d865db8fde92f2bfa5ab64f0c3fda03","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-rental-housing-community-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"de76e8eb95573e67bb145fe5f402309de418f940067677ef37c4fce147292570","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"891a9811805438b55fc69cd9433d024f9a77bc39c73e54d6c555d0f27179185f","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"b31c47720c462d27e8b2218212f8ec57912c3db0e5e1bb4aee6893136f3f9b85","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"71f4544accf1bfce54a3fb505218575881730d475a880601893953e3328c7a34","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-rental-housing-community-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-rental-housing-community-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-rental-housing-community-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=cn-rental-housing-community&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-rental-housing-community&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-rental-housing-community&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-rental-housing-community&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E4%BF%9D%E9%9A%9C%E6%80%A7%E7%A7%9F%E8%B5%81%E4%BD%8F%E6%88%BF%20Community%20Block"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-rental-housing-community/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-rental-housing-community/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-rental-housing-community/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-rental-housing-community/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-rental-housing-community/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-rental-housing-community/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-rental-housing-community/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/cn-rental-housing-community/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/cn-rental-housing-community","visualRegistryResourceUri":"reits://asset-visual-registry/cn-rental-housing-community","targetVisualResourceUri":"reits://asset-visual-registry/cn-rental-housing-community/pixel-map-pin"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-logistics-bbs-gap-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-cn-logistics-bbs-gap-pixel-map-pin","previewRowId":"asset-visual-registry-preview-cn-logistics-bbs-gap-pixel-map-pin","visualTransactionId":"visual-registry-transaction-cn-logistics-bbs-gap-pixel-map-pin","candidateSlug":"cn-logistics-bbs-gap","assetName":"中国内地仓储物流 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Logistics-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"上海","assetType":"仓储物流","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/cn-logistics-bbs-gap/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-logistics-bbs-gap/map-pin.png","sha256":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","bytes":7066,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-logistics-bbs-gap&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-logistics-bbs-gap&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"bd1db2825c20e28fa7a2b6f72214fbe7d28e3de215b51dc6c4d684ab7efd1d52","placeholderDigest":"64a0a1e37b65286453d13a079ff695b91481bef653a35fecd931d5e16ba80fe3","previewDigest":"a28418bbce0fb2dd6e118583da8c9bc9d64112157c47c7a2c8392791b16832de","visualTransactionDigest":"09d8336605834207f89b8c67f1caa06b698914640b1be6143941646d1568a962","reviewDigest":"d8f3d73c0e7a97c6c1c1713ada72721539fa1262a03f30a89ffc4033ee7bed8f","approvalDigest":"05240cd366cd149a78496f02bd01409be0a7ffc008e79c981c8191b096a2e823","visualDigest":"80067a3c67d6f0808a04b5f36d17a1d5cb0a79f59205cb93e1d16e984f2ec347","imageSha256":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","evidenceTransactionDigest":"0be85b2dd0ec9a7e18d160a67948b49390e63e5a06bd3ab5ed6dfc5c445ea6c2","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-logistics-bbs-gap-pixel-map-pin","idempotencyKey":"dd9dae9890377846b7d05cba3636f59d","candidateSlug":"cn-logistics-bbs-gap","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-logistics-bbs-gap-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-cn-logistics-bbs-gap-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-logistics-bbs-gap/map-pin.png","sourceEvidenceSha256":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"bd1db2825c20e28fa7a2b6f72214fbe7d28e3de215b51dc6c4d684ab7efd1d52","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"bd1db2825c20e28fa7a2b6f72214fbe7d28e3de215b51dc6c4d684ab7efd1d52","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"5759b5355228ec94733b6645b6587c1c0161f063bc178a0d706f9ac3256bb104","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"eb8b3cf404c42156e2970370b19be14344de85da17ffdccf69f735ddee66dfad","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"05240cd366cd149a78496f02bd01409be0a7ffc008e79c981c8191b096a2e823","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"bd1db2825c20e28fa7a2b6f72214fbe7d28e3de215b51dc6c4d684ab7efd1d52","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"64a0a1e37b65286453d13a079ff695b91481bef653a35fecd931d5e16ba80fe3","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"a28418bbce0fb2dd6e118583da8c9bc9d64112157c47c7a2c8392791b16832de","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-logistics-bbs-gap-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-logistics-bbs-gap-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=cn-logistics-bbs-gap&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-logistics-bbs-gap&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-logistics-bbs-gap&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-logistics-bbs-gap&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E4%BB%93%E5%82%A8%E7%89%A9%E6%B5%81%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-logistics-bbs-gap/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-logistics-bbs-gap/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-logistics-bbs-gap/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-logistics-bbs-gap/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-logistics-bbs-gap/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-logistics-bbs-gap/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-logistics-bbs-gap/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/cn-logistics-bbs-gap/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/cn-logistics-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap","targetVisualResourceUri":"reits://asset-visual-registry/cn-logistics-bbs-gap/pixel-map-pin"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-highway-bbs-gap-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-highway-bbs-gap-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-cn-highway-bbs-gap-pixel-map-pin","previewRowId":"asset-visual-registry-preview-cn-highway-bbs-gap-pixel-map-pin","visualTransactionId":"visual-registry-transaction-cn-highway-bbs-gap-pixel-map-pin","candidateSlug":"cn-highway-bbs-gap","assetName":"中国内地高速公路 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Highway-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"广州","assetType":"高速公路","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/cn-highway-bbs-gap/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-highway-bbs-gap/map-pin.png","sha256":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","bytes":8495,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-highway-bbs-gap&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-highway-bbs-gap&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"9d3239d258ebe15420d2c35fb9bbf82930b33291714d865758e87cd34b944891","placeholderDigest":"2351c0faa013a50d20fd43cb9fa24d2d6854271eba740508eb69132fe0e7c404","previewDigest":"f8b5da49adb15be2cee29f6f4d38b4a7508409cb9bfdaaaedaa5afa645c17d5a","visualTransactionDigest":"a280fa0e8b9eb7da716d7b8657cebad6ee1af68aecd2ee9d4fbc7411f34a2d4f","reviewDigest":"14bb3a010bb65b2d830580b72037d6f0b9ebdbcf9fa9b60535851928301e9c96","approvalDigest":"d26c2a252e66dc5b5ffa5e16bc769ae3b777a0db86935a66f980c192b0169766","visualDigest":"89332347df2fa57db042c6e9a3a249a39635492f7070c948b90ef4cb65b79c3a","imageSha256":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","evidenceTransactionDigest":"a99fd10a63a6d55e264426f39158aee0dfd944b0402116185b5d969aff30b886","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-highway-bbs-gap-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-highway-bbs-gap-pixel-map-pin","idempotencyKey":"ce1580f4925d4a9543dda2a7344bd6a6","candidateSlug":"cn-highway-bbs-gap","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-highway-bbs-gap-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-cn-highway-bbs-gap-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-highway-bbs-gap/map-pin.png","sourceEvidenceSha256":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"9d3239d258ebe15420d2c35fb9bbf82930b33291714d865758e87cd34b944891","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"9d3239d258ebe15420d2c35fb9bbf82930b33291714d865758e87cd34b944891","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"a1391806de3f6eeb21787762ae09fbed9880e1f202bdb542c3ce9c029f56d592","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"437361c78f3cd8facc4fe96617cc6f719f06c14f9b600cfb5d6cb6585726df6e","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-highway-bbs-gap-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"d26c2a252e66dc5b5ffa5e16bc769ae3b777a0db86935a66f980c192b0169766","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"9d3239d258ebe15420d2c35fb9bbf82930b33291714d865758e87cd34b944891","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"2351c0faa013a50d20fd43cb9fa24d2d6854271eba740508eb69132fe0e7c404","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"f8b5da49adb15be2cee29f6f4d38b4a7508409cb9bfdaaaedaa5afa645c17d5a","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-highway-bbs-gap-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-highway-bbs-gap-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-highway-bbs-gap-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=cn-highway-bbs-gap&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-highway-bbs-gap&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-highway-bbs-gap&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-highway-bbs-gap&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E9%AB%98%E9%80%9F%E5%85%AC%E8%B7%AF%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-highway-bbs-gap/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-highway-bbs-gap/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-highway-bbs-gap/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-highway-bbs-gap/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-highway-bbs-gap/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-highway-bbs-gap/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-highway-bbs-gap/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/cn-highway-bbs-gap/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/cn-highway-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap","targetVisualResourceUri":"reits://asset-visual-registry/cn-highway-bbs-gap/pixel-map-pin"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-commercial-bbs-gap-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-cn-commercial-bbs-gap-pixel-map-pin","previewRowId":"asset-visual-registry-preview-cn-commercial-bbs-gap-pixel-map-pin","visualTransactionId":"visual-registry-transaction-cn-commercial-bbs-gap-pixel-map-pin","candidateSlug":"cn-commercial-bbs-gap","assetName":"中国内地商业不动产 BBS Gap","nftStyleName":"REITs Pixel Asset #CN-Commercial-BBS","countrySlug":"cn","countryName":"中国内地","cityName":"上海","assetType":"商业不动产","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":"/assets/virtual-assets/cn-commercial-bbs-gap/map-pin.png","sourceEvidence":{"sourceType":"bbs-gap-local-generated","localFileDetected":true,"publicPath":"/assets/virtual-assets/cn-commercial-bbs-gap/map-pin.png","sha256":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","bytes":7176,"manifestSource":"generation-manifest","sourceMatchesTransaction":true,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=cn-commercial-bbs-gap&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-commercial-bbs-gap&format=pixel-map-pin","evidenceNote":"BBS Gap 本地生成文件已进入清单预览证据链，但 formalRegistryWritten 仍为 false。"},"status":"needs-pin-redraw","statusLabel":"需先重绘地图 Pin","packetStatus":"needs-pin-redraw","packetStatusLabel":"需先重绘地图 Pin","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"6934d63986785c4c6eb8da1e41e10627efea8ecd9de9364da4a202c59a4e1603","placeholderDigest":"fe51aee62c98571571ee4616c75d877d87c89c2a3f90e30db494878aee6b042f","previewDigest":"e65579b8faecf2c257a566fb4f602128742061ab138ad4ac903c87a30e4e8ee0","visualTransactionDigest":"be1f33305bb52814a558233bd58f3cda1cd1244c80fb5776be49e69150878ee2","reviewDigest":"0b1f12a403b624b45be854ecfe2ec97e5a6e553959a67922f25837f35f2ad4e9","approvalDigest":"0dbd29fc79c0a05a9161c3683abe0d5866332885627a95cd461e01bc2ffa8499","visualDigest":"9104bbdafc9345f5520ecac3f197f1b01073e05211be975a54d8c468b1caa4ba","imageSha256":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","evidenceTransactionDigest":"1e24a801ad01bf5e82a77d48bf952ac467432abcf615139eb4cf63a45010bbc6","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-cn-commercial-bbs-gap-pixel-map-pin","idempotencyKey":"754033a050e0debfe8a98321ebdb6c4d","candidateSlug":"cn-commercial-bbs-gap","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-cn-commercial-bbs-gap-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-cn-commercial-bbs-gap-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap/pixel-map-pin","sourceEvidenceType":"bbs-gap-local-generated","sourceEvidencePublicPath":"/assets/virtual-assets/cn-commercial-bbs-gap/map-pin.png","sourceEvidenceSha256":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","sourceMatchesTransaction":true,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"6934d63986785c4c6eb8da1e41e10627efea8ecd9de9364da4a202c59a4e1603","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"6934d63986785c4c6eb8da1e41e10627efea8ecd9de9364da4a202c59a4e1603","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"d005cac9afaceac69d98a36b0077ecd28e88fc455c7c4a5d9cb22c250328d9b6","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"25a6c60c13d1d858f1e658a1333a680d8fdc147235da4e69b7dfc129a0964058","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"0dbd29fc79c0a05a9161c3683abe0d5866332885627a95cd461e01bc2ffa8499","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"6934d63986785c4c6eb8da1e41e10627efea8ecd9de9364da4a202c59a4e1603","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"fe51aee62c98571571ee4616c75d877d87c89c2a3f90e30db494878aee6b042f","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"e65579b8faecf2c257a566fb4f602128742061ab138ad4ac903c87a30e4e8ee0","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":true,"digest":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-cn-commercial-bbs-gap-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-cn-commercial-bbs-gap-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":true},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["地图 Pin 尚未重绘为 32px/64px 专用图，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据已检测，但 Registry preview row 尚未 ready，不能开放真实审批占位槽位。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据已检测，但真实审批占位尚未 ready，不能生成可检查证据包。","真实审批占位尚未 ready，不能生成可检查证据包。","本地生成图片 source evidence 已检测，但证据包尚未 ready，不能进入 writer transaction。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin"},{"owner":"design","label":"先重绘地图 Pin，避免为不可用视觉资产写证据","href":"/operations/asset-visual-registry-preview?asset=cn-commercial-bbs-gap&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=cn-commercial-bbs-gap&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-commercial-bbs-gap&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=cn-commercial-bbs-gap&decision=needs-pin-redraw&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E4%B8%AD%E5%9B%BD%E5%86%85%E5%9C%B0%E5%95%86%E4%B8%9A%E4%B8%8D%E5%8A%A8%E4%BA%A7%20BBS%20Gap"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/cn-commercial-bbs-gap/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/cn-commercial-bbs-gap/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/cn-commercial-bbs-gap/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-commercial-bbs-gap/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/cn-commercial-bbs-gap/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/cn-commercial-bbs-gap/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-commercial-bbs-gap/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/cn-commercial-bbs-gap/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/cn-commercial-bbs-gap","visualRegistryResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap","targetVisualResourceUri":"reits://asset-visual-registry/cn-commercial-bbs-gap/pixel-map-pin"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-eu-logistics-esef-hub-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-eu-logistics-esef-hub-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-eu-logistics-esef-hub-isometric-nft-card","previewRowId":"asset-visual-registry-preview-eu-logistics-esef-hub-isometric-nft-card","visualTransactionId":"visual-registry-transaction-eu-logistics-esef-hub-isometric-nft-card","candidateSlug":"eu-logistics-esef-hub","assetName":"欧盟 Listed Real Estate Logistics Hub","nftStyleName":"REITs Pixel Asset #EU-Logistics-11","countrySlug":"eu","countryName":"欧盟","cityName":"Amsterdam","assetType":"欧洲物流地产","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":null,"sourceEvidence":{"sourceType":"missing-source","localFileDetected":false,"publicPath":null,"sha256":null,"bytes":null,"manifestSource":null,"sourceMatchesTransaction":false,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=eu-logistics-esef-hub&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=eu-logistics-esef-hub&format=isometric-nft-card","evidenceNote":"当前没有 source image，必须保持 blocked preview row。"},"status":"blocked-by-brief","statusLabel":"Brief 阻断不可写证据","packetStatus":"blocked-by-brief","packetStatusLabel":"Brief 阻断不可提交证据","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"b45b23087339cf6a015b6e728f61ccfe8990c81ba1e088d6fd1b1e2816d6605f","placeholderDigest":"f6d2ecf8cd2215c38d8c21b74d3fc96735471d6a4b543d92c9fc2ab33053d6d2","previewDigest":"1aeb9d6c3fa99eaa40d847fa03001cb60004d5191132da083dbeae85adb65a3f","visualTransactionDigest":"e6bf775054f4582bdc1582c6cc74c2e833a84d55dba7dd8b2aa04220282abb87","reviewDigest":"e1f46d497995c111f2bd18866450bd7c5e96eb265f813a15af9b0ddf294833dc","approvalDigest":"542129bf8c7707a43430a84534bc4cb22001544b6c93cb77c5b6c9ffd7406ed6","visualDigest":"4dcfb53a94d15b3053428cb282f721a06f546a1fa06514e6b1ad2be69d773229","imageSha256":null,"evidenceTransactionDigest":"57fd6359c6dd780bd6d413063d4090c94967cb5d9ec156dddf2850daf7dddc9f","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-eu-logistics-esef-hub-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-eu-logistics-esef-hub-isometric-nft-card","idempotencyKey":"4d91b032bd4182daaef7a67431043d93","candidateSlug":"eu-logistics-esef-hub","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-eu-logistics-esef-hub-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-eu-logistics-esef-hub-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub/isometric-nft-card","sourceEvidenceType":"missing-source","sourceEvidencePublicPath":null,"sourceEvidenceSha256":null,"sourceMatchesTransaction":false,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"b45b23087339cf6a015b6e728f61ccfe8990c81ba1e088d6fd1b1e2816d6605f","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":null,"note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"b45b23087339cf6a015b6e728f61ccfe8990c81ba1e088d6fd1b1e2816d6605f","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"eb7be6953b4703ed2e93578c461a5a6efea1dfe86bfba7c60b9fc54b356dbb9f","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"88b533a5b4953c8f25147da47e735ce8e8c7117f7eaa1e029c32ebd57b002040","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-eu-logistics-esef-hub-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"542129bf8c7707a43430a84534bc4cb22001544b6c93cb77c5b6c9ffd7406ed6","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"b45b23087339cf6a015b6e728f61ccfe8990c81ba1e088d6fd1b1e2816d6605f","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"f6d2ecf8cd2215c38d8c21b74d3fc96735471d6a4b543d92c9fc2ab33053d6d2","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"1aeb9d6c3fa99eaa40d847fa03001cb60004d5191132da083dbeae85adb65a3f","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":false,"digest":null,"note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":null,"note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-eu-logistics-esef-hub-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-eu-logistics-esef-hub-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-eu-logistics-esef-hub-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":false},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["欧盟 Listed Real Estate Logistics Hub 仍被 brief/source/policy 门禁阻断，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据未检测到，且 Registry preview row 尚未 ready。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据未检测到，且真实审批占位尚未 ready。","真实审批占位尚未 ready，不能生成可检查证据包。","源图片证据未完整检测，且证据包尚未 ready。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=eu-logistics-esef-hub&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=eu-logistics-esef-hub&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=eu-logistics-esef-hub&decision=blocked-by-brief&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E6%AC%A7%E7%9B%9F%20Listed%20Real%20Estate%20Logistics%20Hub"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/eu-logistics-esef-hub/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/eu-logistics-esef-hub/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/eu-logistics-esef-hub/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/eu-logistics-esef-hub/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/eu-logistics-esef-hub/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/eu-logistics-esef-hub/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/eu-logistics-esef-hub/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/eu-logistics-esef-hub/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/eu-logistics-esef-hub","visualRegistryResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub","targetVisualResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-eu-logistics-esef-hub-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-eu-logistics-esef-hub-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-eu-logistics-esef-hub-pixel-map-pin","previewRowId":"asset-visual-registry-preview-eu-logistics-esef-hub-pixel-map-pin","visualTransactionId":"visual-registry-transaction-eu-logistics-esef-hub-pixel-map-pin","candidateSlug":"eu-logistics-esef-hub","assetName":"欧盟 Listed Real Estate Logistics Hub","nftStyleName":"REITs Pixel Asset #EU-Logistics-11","countrySlug":"eu","countryName":"欧盟","cityName":"Amsterdam","assetType":"欧洲物流地产","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":null,"sourceEvidence":{"sourceType":"missing-source","localFileDetected":false,"publicPath":null,"sha256":null,"bytes":null,"manifestSource":null,"sourceMatchesTransaction":false,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=eu-logistics-esef-hub&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=eu-logistics-esef-hub&format=pixel-map-pin","evidenceNote":"当前没有 source image，必须保持 blocked preview row。"},"status":"blocked-by-brief","statusLabel":"Brief 阻断不可写证据","packetStatus":"blocked-by-brief","packetStatusLabel":"Brief 阻断不可提交证据","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"b3fffb210537191beb2234598a118cb4f3d712bf8b2834d04729e4278f642736","placeholderDigest":"01a112af26e7f2cacb07becdef9eccde84b6cb03e7e20823afa6d83c962cb0ec","previewDigest":"b88e859af82cae75c2324e89c13ec2050a2543b331c8715f8d9801c7dcc6d58e","visualTransactionDigest":"5b0561ec5a0be5b07529908e4d3b0f129d2e6cfec4fe8f13e23b8f03baaf8062","reviewDigest":"d058c98ab8a06cd946c3ce3fd9e84e08dad698133c6d6c16c3e908a435263b27","approvalDigest":"e1705d72858c656c66a0e6bec86036cc0b054a59a72a54022d56ee93c832190b","visualDigest":"604b2f01ac5aa44a971d581bc5693efd760c89ed4e9480903c7c6d6928b1b0fd","imageSha256":null,"evidenceTransactionDigest":"07d25ce1323fd96f00fea9e3ce76d9b1c2907914256be52972204ef17b87e593","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-eu-logistics-esef-hub-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-eu-logistics-esef-hub-pixel-map-pin","idempotencyKey":"4beee1ab7b0dcfbb45a89dec046d7e3a","candidateSlug":"eu-logistics-esef-hub","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-eu-logistics-esef-hub-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-eu-logistics-esef-hub-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub/pixel-map-pin","sourceEvidenceType":"missing-source","sourceEvidencePublicPath":null,"sourceEvidenceSha256":null,"sourceMatchesTransaction":false,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"b3fffb210537191beb2234598a118cb4f3d712bf8b2834d04729e4278f642736","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":null,"note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"b3fffb210537191beb2234598a118cb4f3d712bf8b2834d04729e4278f642736","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"d275e7114893e838e2c57e5aed8d87fd366307524732969e5f70f36ec14025cf","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"21360d3946a510cb610e38d519b865638415676b01152db752a5939653980e54","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-eu-logistics-esef-hub-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"e1705d72858c656c66a0e6bec86036cc0b054a59a72a54022d56ee93c832190b","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"b3fffb210537191beb2234598a118cb4f3d712bf8b2834d04729e4278f642736","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"01a112af26e7f2cacb07becdef9eccde84b6cb03e7e20823afa6d83c962cb0ec","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"b88e859af82cae75c2324e89c13ec2050a2543b331c8715f8d9801c7dcc6d58e","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":false,"digest":null,"note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":null,"note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-eu-logistics-esef-hub-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-eu-logistics-esef-hub-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-eu-logistics-esef-hub-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":false},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["欧盟 Listed Real Estate Logistics Hub 仍被 brief/source/policy 门禁阻断，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据未检测到，且 Registry preview row 尚未 ready。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据未检测到，且真实审批占位尚未 ready。","真实审批占位尚未 ready，不能生成可检查证据包。","源图片证据未完整检测，且证据包尚未 ready。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=eu-logistics-esef-hub&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=eu-logistics-esef-hub&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=eu-logistics-esef-hub&decision=blocked-by-brief&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E6%AC%A7%E7%9B%9F%20Listed%20Real%20Estate%20Logistics%20Hub"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/eu-logistics-esef-hub/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/eu-logistics-esef-hub/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/eu-logistics-esef-hub/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/eu-logistics-esef-hub/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/eu-logistics-esef-hub/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/eu-logistics-esef-hub/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/eu-logistics-esef-hub/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/eu-logistics-esef-hub/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/eu-logistics-esef-hub","visualRegistryResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub","targetVisualResourceUri":"reits://asset-visual-registry/eu-logistics-esef-hub/pixel-map-pin"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-in-invit-infra-corridor-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-in-invit-infra-corridor-isometric-nft-card","placeholderId":"asset-visual-approval-placeholder-in-invit-infra-corridor-isometric-nft-card","previewRowId":"asset-visual-registry-preview-in-invit-infra-corridor-isometric-nft-card","visualTransactionId":"visual-registry-transaction-in-invit-infra-corridor-isometric-nft-card","candidateSlug":"in-invit-infra-corridor","assetName":"印度 REITs / InvIT Infra Corridor","nftStyleName":"REITs Pixel Asset #IN-Infra-10","countrySlug":"in","countryName":"印度","cityName":"Mumbai","assetType":"基础设施走廊","formatKey":"isometric-nft-card","label":"等距 NFT 主图试点","source":null,"sourceEvidence":{"sourceType":"missing-source","localFileDetected":false,"publicPath":null,"sha256":null,"bytes":null,"manifestSource":null,"sourceMatchesTransaction":false,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=in-invit-infra-corridor&format=isometric-nft-card","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=in-invit-infra-corridor&format=isometric-nft-card","evidenceNote":"当前没有 source image，必须保持 blocked preview row。"},"status":"blocked-by-brief","statusLabel":"Brief 阻断不可写证据","packetStatus":"blocked-by-brief","packetStatusLabel":"Brief 阻断不可提交证据","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"96e53115bd7063c75a795c10063f06a97c76c0fdefe802e8a2468fa6d7a3aafa","placeholderDigest":"560a4f92d3f7dec58f3d70e475e9a1d964b909428d5ad3b1bf54eaa5e2432d86","previewDigest":"feb25b0b9037361618e51e83ffda9d877af2f5bbcd853287c7aca2e0b9ac0eb6","visualTransactionDigest":"1e6a818b2ee33432ed70e8395e292f9a374504e20d4909f81a20bf758887b916","reviewDigest":"87c51f3843cfe89528800a9c4a8ad3386812b219b6e40478aefd9eb08e3850fa","approvalDigest":"7d7c23ee4b9c5ce6168558b26f1ebcf81878d9cd6ee6f4a4aef035020e51f616","visualDigest":"d8af9440520b9c2b8b3e165b1ba0b0df0c436b1d86acb2482ebf1d6512f2f7c5","imageSha256":null,"evidenceTransactionDigest":"1964ea32531ba5cc1fd1f767de45381e8e8aef08607b8288799d9baaac3c6b8d","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-in-invit-infra-corridor-isometric-nft-card","evidencePacketId":"asset-visual-approval-evidence-in-invit-infra-corridor-isometric-nft-card","idempotencyKey":"375a80d909b7d9e33076290528b94c18","candidateSlug":"in-invit-infra-corridor","formatKey":"isometric-nft-card","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-in-invit-infra-corridor-isometric-nft-card","targetPreviewRowId":"asset-visual-registry-preview-in-invit-infra-corridor-isometric-nft-card","targetVisualResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor/isometric-nft-card","sourceEvidenceType":"missing-source","sourceEvidencePublicPath":null,"sourceEvidenceSha256":null,"sourceMatchesTransaction":false,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"96e53115bd7063c75a795c10063f06a97c76c0fdefe802e8a2468fa6d7a3aafa","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":null,"note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"96e53115bd7063c75a795c10063f06a97c76c0fdefe802e8a2468fa6d7a3aafa","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"93d6e1be3f7052bacdda7d46de2578129032df8f3d7eb312878e76e40fe8f3e8","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"f0d5ea6593c8c38dcf2aa164859b4ca03f60c716e29e310dd7d0accb20fe5d7e","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-in-invit-infra-corridor-isometric-nft-card","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"7d7c23ee4b9c5ce6168558b26f1ebcf81878d9cd6ee6f4a4aef035020e51f616","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"96e53115bd7063c75a795c10063f06a97c76c0fdefe802e8a2468fa6d7a3aafa","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"560a4f92d3f7dec58f3d70e475e9a1d964b909428d5ad3b1bf54eaa5e2432d86","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"feb25b0b9037361618e51e83ffda9d877af2f5bbcd853287c7aca2e0b9ac0eb6","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":false,"digest":null,"note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":null,"note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-in-invit-infra-corridor-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-in-invit-infra-corridor-isometric-nft-card","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-in-invit-infra-corridor-isometric-nft-card","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":false},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["印度 REITs / InvIT Infra Corridor 仍被 brief/source/policy 门禁阻断，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据未检测到，且 Registry preview row 尚未 ready。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据未检测到，且真实审批占位尚未 ready。","真实审批占位尚未 ready，不能生成可检查证据包。","源图片证据未完整检测，且证据包尚未 ready。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=in-invit-infra-corridor&format=isometric-nft-card","registryPreview":"/operations/asset-visual-registry-preview?asset=in-invit-infra-corridor&format=isometric-nft-card","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=in-invit-infra-corridor&decision=blocked-by-brief&format=isometric-nft-card","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E5%8D%B0%E5%BA%A6%20REITs%20%2F%20InvIT%20Infra%20Corridor"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/in-invit-infra-corridor/isometric-nft-card","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/in-invit-infra-corridor/isometric-nft-card","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/in-invit-infra-corridor/isometric-nft-card","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/in-invit-infra-corridor/isometric-nft-card","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/in-invit-infra-corridor/isometric-nft-card","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/in-invit-infra-corridor/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/in-invit-infra-corridor/isometric-nft-card","visualTrialResourceUri":"reits://asset-visual-trials/in-invit-infra-corridor/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/in-invit-infra-corridor","visualRegistryResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor","targetVisualResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor/isometric-nft-card"}},{"generatedAt":"2026-09-07T03:28:49.515Z","evidenceTransactionId":"asset-visual-approval-evidence-tx-in-invit-infra-corridor-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-in-invit-infra-corridor-pixel-map-pin","placeholderId":"asset-visual-approval-placeholder-in-invit-infra-corridor-pixel-map-pin","previewRowId":"asset-visual-registry-preview-in-invit-infra-corridor-pixel-map-pin","visualTransactionId":"visual-registry-transaction-in-invit-infra-corridor-pixel-map-pin","candidateSlug":"in-invit-infra-corridor","assetName":"印度 REITs / InvIT Infra Corridor","nftStyleName":"REITs Pixel Asset #IN-Infra-10","countrySlug":"in","countryName":"印度","cityName":"Mumbai","assetType":"基础设施走廊","formatKey":"pixel-map-pin","label":"地图像素 Pin 试点","source":null,"sourceEvidence":{"sourceType":"missing-source","localFileDetected":false,"publicPath":null,"sha256":null,"bytes":null,"manifestSource":null,"sourceMatchesTransaction":false,"visualIntakeHref":"/operations/bbs-gap-visual-intake-queue?asset=in-invit-infra-corridor&format=pixel-map-pin","approvalPlaceholderHref":"/operations/asset-visual-approval-placeholder-ledger?asset=in-invit-infra-corridor&format=pixel-map-pin","evidenceNote":"当前没有 source image，必须保持 blocked preview row。"},"status":"blocked-by-brief","statusLabel":"Brief 阻断不可写证据","packetStatus":"blocked-by-brief","packetStatusLabel":"Brief 阻断不可提交证据","dryRunOnly":true,"evidenceTransactionDryRun":true,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"evidenceWriteDisabled":true,"signerEvidenceWriteDisabled":true,"requirementEvidenceWriteDisabled":true,"revocationEvidenceWriteDisabled":true,"approvalLedgerWriteDisabled":true,"mcpQueueWriteDisabled":true,"externalStorageUploadDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"signerEvidenceWritten":false,"requirementEvidenceWritten":false,"revocationTemplateWritten":false,"approvalLedgerUpdated":false,"mcpIndexQueued":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"pixelAtlasPublishDisabled":true,"mapPublishDisabled":true,"bbsPostDisabled":true,"externalMintDisabled":true,"tradingUseDisabled":true,"atomicity":"all-or-nothing","evidencePacketDigest":"997894050234e812fa209762c9f9bd2af27265b4ad3c8e7bbdebd4b161d3aaea","placeholderDigest":"239cd7b940c6b63b783c062d07eaff04c38f437add1ac2b2e55a2e2261f7e642","previewDigest":"6e307c11e60b678e8c1dddb0a4e650fd5e435982f7b878c6da3eabea107a0755","visualTransactionDigest":"561c81607b821cc2463d00471815fd97817036f0a64a40b172e0d5ff65ddba0c","reviewDigest":"eb12afca3998c2a73d66ab5f7b0d6e8a50242ebd787e959bf92dfc644020fea4","approvalDigest":"36a9f8c7652bbdab3adc9f1476ac44de2426766eec0246f8bb783cdb6638086c","visualDigest":"574f14b9fc44ec5198d05b9a9ff6b9e6fd439088b972fe9b02bf31f0680c6b05","imageSha256":null,"evidenceTransactionDigest":"e2d6296a9ead8d2ed7f9c3a59cc3b7291f6e0c6d3fb32d92360186f047d73e32","writerEnvelope":{"table":"asset_visual_approval_evidence_transactions","schemaVersion":"2026-06-visual-approval-evidence-transaction-dry-run-v1","transactionType":"approval-evidence-write","transactionMode":"dry-run-only","evidenceTransactionId":"asset-visual-approval-evidence-tx-in-invit-infra-corridor-pixel-map-pin","evidencePacketId":"asset-visual-approval-evidence-in-invit-infra-corridor-pixel-map-pin","idempotencyKey":"9884aab82719f413fc7333f5f48d3797","candidateSlug":"in-invit-infra-corridor","formatKey":"pixel-map-pin","targetEvidenceTable":"asset_visual_approval_evidence","targetPlaceholderId":"asset-visual-approval-placeholder-in-invit-infra-corridor-pixel-map-pin","targetPreviewRowId":"asset-visual-registry-preview-in-invit-infra-corridor-pixel-map-pin","targetVisualResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor/pixel-map-pin","sourceEvidenceType":"missing-source","sourceEvidencePublicPath":null,"sourceEvidenceSha256":null,"sourceMatchesTransaction":false,"createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","lockStrategy":"candidate-format-idempotency-lock","writeDisabled":true},"writeSet":[{"id":"assert-evidence-packet-digest","table":"asset_visual_approval_evidence_packets","operation":"assert","writeDisabled":true,"sourceDigest":"997894050234e812fa209762c9f9bd2af27265b4ad3c8e7bbdebd4b161d3aaea","note":"先校验 evidencePacketDigest，避免为过期证据包写入审批证据。"},{"id":"assert-source-evidence-digest","table":"asset_visual_source_evidence","operation":"assert","writeDisabled":true,"sourceDigest":null,"note":"校验本地生成图或事务图的 source evidence 摘要；当前只 assert，不写入证据表。"},{"id":"insert-approval-evidence-row","table":"asset_visual_approval_evidence","operation":"insert","writeDisabled":true,"sourceDigest":"997894050234e812fa209762c9f9bd2af27265b4ad3c8e7bbdebd4b161d3aaea","note":"未来写入审批证据主行；当前 evidenceWriteDisabled=true。"},{"id":"bulk-insert-signer-evidence","table":"asset_visual_approval_evidence_signers","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"2afcce1af273f616627aff9867bd99234c1880f9d60ab03c8d853a912154373b","note":"未来写入双签身份、时间戳和证据 URI；当前 signer evidence 仍为空。"},{"id":"bulk-insert-requirement-evidence","table":"asset_visual_approval_evidence_requirements","operation":"bulk-insert","writeDisabled":true,"sourceDigest":"c9847b6958795931fd3628dc1fb06e274e38fb115eafe26d36c74cfa89e62040","note":"未来写入五类证据要求的满足状态；当前 supplied=false。"},{"id":"insert-revocation-template","table":"asset_visual_approval_evidence_revocations","operation":"insert","writeDisabled":true,"sourceDigest":"a371710cf8b172588ec9d050dca7d344b2af8fda43e7285953f12bd50b441ef5","note":"未来为审批证据生成撤销模板；当前 revocationWriteDisabled=true。"},{"id":"queue-mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","writeDisabled":true,"sourceDigest":"asset-visual-approval-evidence-tx-in-invit-infra-corridor-pixel-map-pin","note":"未来写证据后排队 MCP 索引；当前 mcpQueueWriteDisabled=true。"},{"id":"no-op-final-approval","table":"asset_visual_approval_ledger","operation":"no-op","writeDisabled":true,"sourceDigest":"36a9f8c7652bbdab3adc9f1476ac44de2426766eec0246f8bb783cdb6638086c","note":"证据写入事务不等同最终批准，finalApprovalRecorded 必须保持 false。"}],"preconditions":[{"id":"evidence-packet-ready","label":"证据包结构可检查","satisfied":false,"digest":"997894050234e812fa209762c9f9bd2af27265b4ad3c8e7bbdebd4b161d3aaea","note":"只有 evidence-packet-ready 才能进入 writer transaction dry-run。"},{"id":"placeholder-ready","label":"审批占位 ready","satisfied":false,"digest":"239cd7b940c6b63b783c062d07eaff04c38f437add1ac2b2e55a2e2261f7e642","note":"审批占位必须 ready，不能绕过真实审批占位账本。"},{"id":"preview-row-ready","label":"目标清单预览 ready","satisfied":false,"digest":"6e307c11e60b678e8c1dddb0a4e650fd5e435982f7b878c6da3eabea107a0755","note":"写入证据必须能定位未发布清单预览行。"},{"id":"signer-identity-present","label":"签署人身份已填写","satisfied":false,"digest":null,"note":"当前 approverId 仍为空，不能真实写入 signer evidence。"},{"id":"approval-timestamp-present","label":"审批时间戳已填写","satisfied":false,"digest":null,"note":"当前 approvedAt 仍为空，不能真实写入审批时间证据。"},{"id":"evidence-uri-present","label":"证据 URI 已上传","satisfied":false,"digest":null,"note":"当前不允许上传外部附件，approvalEvidenceUri 必须保持 null。"},{"id":"source-evidence-present","label":"源图片证据已绑定","satisfied":false,"digest":null,"note":"writer envelope 必须能定位源图片 publicPath 和 sha256，不能只靠 UI 缩略图。"},{"id":"source-evidence-matches-transaction","label":"源图片证据与事务一致","satisfied":true,"digest":null,"note":"BBS Gap 本地生成图命中时，必须与事务层 source/imageSha256 保持一致。"},{"id":"writer-switch-disabled","label":"写入开关保持关闭","satisfied":true,"digest":null,"note":"运营测试期必须保持 evidenceWriteTransactionDisabled=true。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-evidence-tx-in-invit-infra-corridor-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"remove-unpublished-evidence-rows-only","canRollbackWithoutMutation":true,"requiresDualControl":true,"rollbackWriteDisabled":true,"rollbackScope":"approval-evidence-and-unpublished-preview-only"},"revocationTransactionTemplate":{"templateId":"revocation-tx-asset-visual-approval-evidence-tx-in-invit-infra-corridor-pixel-map-pin","sourceRevocationTemplateId":"revocation-evidence-asset-visual-approval-placeholder-in-invit-infra-corridor-pixel-map-pin","requiresDualControl":true,"revocationEvidenceRequired":true,"revocationUploadDisabled":true,"revocationWriteDisabled":true,"note":"撤销审批证据时也必须走双人证据事务；当前只生成模板，不写撤销记录。"},"releaseGate":{"evidencePacketReady":false,"signerIdentityPresent":false,"approvalTimestampPresent":false,"evidenceUriPresent":false,"evidenceDigestPresent":false,"writeSwitchEnabled":false,"evidenceTransactionShapeReady":false,"evidenceWriteTransactionDisabled":true,"databaseWriteDisabled":true,"approvalEvidenceWritten":false,"approvalEvidenceCommitted":false,"finalApprovalRecorded":false,"registryPromotionAllowed":false,"mcpQueueWriteDisabled":true},"qaChecklist":[{"label":"证据包 ready","passed":false},{"label":"幂等键已生成","passed":true},{"label":"writeSet 只读预演","passed":true},{"label":"源图片证据已绑定","passed":false},{"label":"本地源证据与事务一致","passed":true},{"label":"签署人身份仍未填写","passed":false},{"label":"证据 URI 仍未上传","passed":false},{"label":"证据写入仍为 false","passed":false}],"blockers":["印度 REITs / InvIT Infra Corridor 仍被 brief/source/policy 门禁阻断，不能进入双人审批。","approval packet 未达到 dual-control-ready，不能生成可校验迁入事务。","事务未达到 transaction-dry-run-ready，只能展示 blocked preview row。","本地生成图片证据未检测到，且 Registry preview row 尚未 ready。","Registry preview row 尚未 ready，不能开放真实审批占位槽位。","本地生成图片证据未检测到，且真实审批占位尚未 ready。","真实审批占位尚未 ready，不能生成可检查证据包。","源图片证据未完整检测，且证据包尚未 ready。","证据包尚未 ready，不能进入 evidence writer transaction dry-run。"],"requiredActions":[{"owner":"qa","label":"回到证据包页面处理前置阻断后再进入写入事务预演","href":"/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin"}],"links":{"evidenceTransactionApi":"/api/public/operations/asset-visual-approval-evidence-transaction-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","evidenceTransactionPage":"/operations/asset-visual-approval-evidence-transaction-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","evidencePacket":"/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","evidencePacketApi":"/api/public/operations/asset-visual-approval-evidence-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","approvalPlaceholder":"/operations/asset-visual-approval-placeholder-ledger?asset=in-invit-infra-corridor&format=pixel-map-pin","registryPreview":"/operations/asset-visual-registry-preview?asset=in-invit-infra-corridor&format=pixel-map-pin","visualTransaction":"/operations/virtual-asset-visual-transaction-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","approvalDryRun":"/operations/virtual-asset-visual-approval-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","visualReview":"/operations/virtual-asset-visual-review-ledger?asset=in-invit-infra-corridor&decision=blocked-by-brief&format=pixel-map-pin","formalRegistry":"/operations/asset-visual-registry","search":"/search?q=%E5%8D%B0%E5%BA%A6%20REITs%20%2F%20InvIT%20Infra%20Corridor"},"mcp":{"visualApprovalEvidenceTransactionResourceUri":"reits://asset-visual-approval-evidence-transaction/in-invit-infra-corridor/pixel-map-pin","visualApprovalEvidenceResourceUri":"reits://asset-visual-approval-evidence/in-invit-infra-corridor/pixel-map-pin","visualApprovalPlaceholderResourceUri":"reits://asset-visual-approval-placeholder/in-invit-infra-corridor/pixel-map-pin","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/in-invit-infra-corridor/pixel-map-pin","visualTransactionResourceUri":"reits://asset-visual-registry-transaction/in-invit-infra-corridor/pixel-map-pin","visualApprovalResourceUri":"reits://asset-visual-approval-dry-run/in-invit-infra-corridor/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/in-invit-infra-corridor/pixel-map-pin","visualTrialResourceUri":"reits://asset-visual-trials/in-invit-infra-corridor/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/in-invit-infra-corridor","visualRegistryResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor","targetVisualResourceUri":"reits://asset-visual-registry/in-invit-infra-corridor/pixel-map-pin"}}],"statusBreakdown":[{"status":"evidence-transaction-ready","label":"证据写入事务可检查","count":6},{"status":"needs-pin-redraw","label":"需先重绘地图 Pin","count":7},{"status":"needs-compliance-review","label":"需先合规复核","count":1},{"status":"missing-file","label":"缺文件不可写证据","count":0},{"status":"blocked-by-brief","label":"Brief 阻断不可写证据","count":4}],"countryBreakdown":[{"countrySlug":"cn","countryName":"中国内地","transactionCount":8,"evidenceTransactionReadyCount":4,"blockedBeforeEvidenceTransactionCount":4},{"countrySlug":"au","countryName":"澳大利亚","transactionCount":2,"evidenceTransactionReadyCount":1,"blockedBeforeEvidenceTransactionCount":1},{"countrySlug":"uk","countryName":"英国","transactionCount":2,"evidenceTransactionReadyCount":1,"blockedBeforeEvidenceTransactionCount":1},{"countrySlug":"ca","countryName":"加拿大","transactionCount":2,"evidenceTransactionReadyCount":0,"blockedBeforeEvidenceTransactionCount":2},{"countrySlug":"eu","countryName":"欧盟","transactionCount":2,"evidenceTransactionReadyCount":0,"blockedBeforeEvidenceTransactionCount":2},{"countrySlug":"in","countryName":"印度","transactionCount":2,"evidenceTransactionReadyCount":0,"blockedBeforeEvidenceTransactionCount":2}],"qaWarnings":["该层只预演 approval evidence writer transaction，不上传证据、不写表、不提交最终批准。","evidence-transaction-ready 只代表事务形状可检查，签署人身份、审批时间戳和证据 URI 仍为空。","sourceEvidence 只进入 writer envelope 的 assert/precondition，不等同 approval evidence 已上传或写入。","evidenceWriteTransactionDisabled、databaseWriteDisabled、mcpQueueWriteDisabled 必须保持 true。","该事务不能直接推动 Pixel Atlas、地图、BBS 或正式图片清单发布。"],"publicNotes":["当前筛选范围内有 18 个证据写入事务 envelope，6 个可检查，14 个带本地生成源证据。","运营可以用该页确认未来 evidence writer 需要写哪些表、按什么幂等键锁定、失败后如何撤销。","下一步真正接 writer 前，应先补齐身份系统、审批时间、附件存储策略和 MCP governance index 写入权限。","BBS Gap 已进入 8 个证据写入事务 dry-run envelope；仍禁写 evidence、禁写 DB、禁排 MCP 队列。"]}