{"generatedAt":"2026-09-07T03:28:49.515Z","scope":{"countrySlug":null,"status":null,"action":"reject-visual-candidate","assetSlug":null,"formatKey":null,"correctionType":null},"metrics":{"transactionCount":18,"transactionDryRunReadyCount":18,"needsTransactionFieldsCount":0,"needsDualControlCount":0,"blockedByPolicyCount":0,"writeDisabledCount":18,"databaseWriteDisabledCount":18,"mcpQueueWriteDisabledCount":18,"rollbackPlanCount":18,"transactionDigestCount":18,"transactionWrittenCount":0,"approvalWrittenCount":0,"correctionEventWrittenCount":0,"auditLogMutatedCount":0,"mcpIndexQueuedCount":0,"mapPublishedCount":0,"registryPromotionAllowedCount":0,"mcpResourceCount":18,"localGeneratedEvidenceCount":14,"sourceMismatchCount":0,"sourceEvidenceDigestCount":14},"records":[{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-au-logistics-asx-warehouse-isometric-nft-card","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-au-logistics-asx-warehouse-isometric-nft-card","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-au-logistics-asx-warehouse-isometric-nft-card","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-au-logistics-asx-warehouse-isometric-nft-card","targetAuditDigest":"35210e97ea624bbe585e7e33ee72324933fb47d905e9e28f0373892c64656e71","targetSourceActionDigest":"0d4995f616ac242f4aface02646df976000942687f013a95b02f52ba64eb3fca","targetSourceEvidenceSha256":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","correctionDigest":"a9df170c6050c3d2cf5a2e06b461fb42295f49ed22be487aa4539ae9475a1182","approvalDigest":"291797f962f894128062e772015adc742785f243cf912bfe3ff6326342fd8d32","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-au-logistics-asx-warehouse-isometric-nft-card","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"metadata-correction","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-au-logistics-asx-warehouse-isometric-nft-card","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"fc92b0461b8194ab483c3e328cf33bae","action":"reject-visual-candidate","candidateSlug":"au-logistics-asx-warehouse","formatKey":"isometric-nft-card","correctionType":"metadata-correction","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-au-logistics-asx-warehouse-isometric-nft-card","targetAuditDigest":"35210e97ea624bbe585e7e33ee72324933fb47d905e9e28f0373892c64656e71","targetSourceActionDigest":"0d4995f616ac242f4aface02646df976000942687f013a95b02f52ba64eb3fca","targetSourceEvidenceSha256":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","sourceEvidencePublicPath":"/assets/virtual-assets/au-logistics-asx-warehouse/nft-card.png","sourceMatchesTransaction":true,"correctionDigest":"a9df170c6050c3d2cf5a2e06b461fb42295f49ed22be487aa4539ae9475a1182","approvalDigest":"291797f962f894128062e772015adc742785f243cf912bfe3ff6326342fd8d32","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"35210e97ea624bbe585e7e33ee72324933fb47d905e9e28f0373892c64656e71","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"ff92c10511adaaae91e8f80f717f2d9aec09c62ca642321043bac9981c236cee","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"0d4995f616ac242f4aface02646df976000942687f013a95b02f52ba64eb3fca","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"a9df170c6050c3d2cf5a2e06b461fb42295f49ed22be487aa4539ae9475a1182","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"291797f962f894128062e772015adc742785f243cf912bfe3ff6326342fd8d32","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-au-logistics-asx-warehouse-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/au-logistics-asx-warehouse/isometric-nft-card","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/au-logistics-asx-warehouse/isometric-nft-card","reits://asset-visual-approval-audit-correction/reject-visual-candidate/au-logistics-asx-warehouse/isometric-nft-card","reits://asset-visual-approval-audit-log/reject-visual-candidate/au-logistics-asx-warehouse/isometric-nft-card","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/au-logistics-asx-warehouse/isometric-nft-card","reits://asset-visual-approval-human-confirmation/au-logistics-asx-warehouse/isometric-nft-card","reits://asset-visual-approval-identity-fixture/au-logistics-asx-warehouse/isometric-nft-card","reits://asset-visual-approval-evidence-transaction/au-logistics-asx-warehouse/isometric-nft-card","reits://asset-visual-approval-evidence/au-logistics-asx-warehouse/isometric-nft-card","reits://asset-visual-registry-preview/au-logistics-asx-warehouse/isometric-nft-card","reits://virtual-assets/au-logistics-asx-warehouse"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"b39fa00469a56f9550b35063a2d9333753a92653850ee21ef34a40f5e3fd1253","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=au-logistics-asx-warehouse&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=au-logistics-asx-warehouse&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","correction":"/operations/asset-visual-approval-audit-corrections?asset=au-logistics-asx-warehouse&format=isometric-nft-card&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=au-logistics-asx-warehouse&format=isometric-nft-card&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=au-logistics-asx-warehouse&format=isometric-nft-card&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=au-logistics-asx-warehouse&format=isometric-nft-card","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=au-logistics-asx-warehouse&format=isometric-nft-card","search":"/search?q=%E6%BE%B3%E5%A4%A7%E5%88%A9%E4%BA%9A%20A-REIT%20Logistics%20Warehouse"},"mcp":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/au-logistics-asx-warehouse/isometric-nft-card","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/au-logistics-asx-warehouse/isometric-nft-card","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/au-logistics-asx-warehouse/isometric-nft-card","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/au-logistics-asx-warehouse/isometric-nft-card","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/au-logistics-asx-warehouse/isometric-nft-card","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/au-logistics-asx-warehouse/isometric-nft-card","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/au-logistics-asx-warehouse/isometric-nft-card","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/au-logistics-asx-warehouse/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/au-logistics-asx-warehouse/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/au-logistics-asx-warehouse"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-ca-residential-tsx-node-isometric-nft-card","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-ca-residential-tsx-node-isometric-nft-card","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-ca-residential-tsx-node-isometric-nft-card","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-ca-residential-tsx-node-isometric-nft-card","targetAuditDigest":"8849d98e77f3801df99026f0897e5c1e4b65a9b11b569e2889947ed942e79f44","targetSourceActionDigest":"dc07270f864c9145e54c8e502f1d9c0feb4d7a2e67f2ffdc057e6cf48c3eea3a","targetSourceEvidenceSha256":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","correctionDigest":"e21c3daa99ec8179c94da33834c6fc0f3ac0dc50d4192961e4bd12deaa15fa91","approvalDigest":"2f0274e15d49860cb8cf4249b184a1f949be818394769ed39788e370c7d76eff","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-ca-residential-tsx-node-isometric-nft-card","identityFixtureId":"asset-visual-approval-identity-fixture-ca-residential-tsx-node-isometric-nft-card","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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"metadata-correction","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-ca-residential-tsx-node-isometric-nft-card","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"43b85d683dcfd18267d8b2982df01d39","action":"reject-visual-candidate","candidateSlug":"ca-residential-tsx-node","formatKey":"isometric-nft-card","correctionType":"metadata-correction","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-ca-residential-tsx-node-isometric-nft-card","targetAuditDigest":"8849d98e77f3801df99026f0897e5c1e4b65a9b11b569e2889947ed942e79f44","targetSourceActionDigest":"dc07270f864c9145e54c8e502f1d9c0feb4d7a2e67f2ffdc057e6cf48c3eea3a","targetSourceEvidenceSha256":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","sourceEvidencePublicPath":"/assets/virtual-assets/ca-residential-tsx-node/nft-card.png","sourceMatchesTransaction":true,"correctionDigest":"e21c3daa99ec8179c94da33834c6fc0f3ac0dc50d4192961e4bd12deaa15fa91","approvalDigest":"2f0274e15d49860cb8cf4249b184a1f949be818394769ed39788e370c7d76eff","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"8849d98e77f3801df99026f0897e5c1e4b65a9b11b569e2889947ed942e79f44","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"4449c12e4aa77bdd2ff0ae7f386cabe6ecb04dd08865f8be7fde8984a9f68bf6","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"dc07270f864c9145e54c8e502f1d9c0feb4d7a2e67f2ffdc057e6cf48c3eea3a","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"e21c3daa99ec8179c94da33834c6fc0f3ac0dc50d4192961e4bd12deaa15fa91","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"2f0274e15d49860cb8cf4249b184a1f949be818394769ed39788e370c7d76eff","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-ca-residential-tsx-node-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/ca-residential-tsx-node/isometric-nft-card","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/ca-residential-tsx-node/isometric-nft-card","reits://asset-visual-approval-audit-correction/reject-visual-candidate/ca-residential-tsx-node/isometric-nft-card","reits://asset-visual-approval-audit-log/reject-visual-candidate/ca-residential-tsx-node/isometric-nft-card","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/ca-residential-tsx-node/isometric-nft-card","reits://asset-visual-approval-human-confirmation/ca-residential-tsx-node/isometric-nft-card","reits://asset-visual-approval-identity-fixture/ca-residential-tsx-node/isometric-nft-card","reits://asset-visual-approval-evidence-transaction/ca-residential-tsx-node/isometric-nft-card","reits://asset-visual-approval-evidence/ca-residential-tsx-node/isometric-nft-card","reits://asset-visual-registry-preview/ca-residential-tsx-node/isometric-nft-card","reits://virtual-assets/ca-residential-tsx-node"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"0822dd9f84cd293e57afa39803d29b1bdd8a40a9da3395bd5b9cc223a83716e7","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=ca-residential-tsx-node&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=ca-residential-tsx-node&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","correction":"/operations/asset-visual-approval-audit-corrections?asset=ca-residential-tsx-node&format=isometric-nft-card&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=ca-residential-tsx-node&format=isometric-nft-card&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=ca-residential-tsx-node&format=isometric-nft-card&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=ca-residential-tsx-node&format=isometric-nft-card","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=ca-residential-tsx-node&format=isometric-nft-card","search":"/search?q=%E5%8A%A0%E6%8B%BF%E5%A4%A7%20Canadian%20REIT%20Residential%20Node"},"mcp":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/ca-residential-tsx-node/isometric-nft-card","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/ca-residential-tsx-node/isometric-nft-card","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/ca-residential-tsx-node/isometric-nft-card","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/ca-residential-tsx-node/isometric-nft-card","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/ca-residential-tsx-node/isometric-nft-card","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/ca-residential-tsx-node/isometric-nft-card","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/ca-residential-tsx-node/isometric-nft-card","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/ca-residential-tsx-node/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/ca-residential-tsx-node/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/ca-residential-tsx-node"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-uk-healthcare-rns-estate-isometric-nft-card","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-uk-healthcare-rns-estate-isometric-nft-card","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-uk-healthcare-rns-estate-isometric-nft-card","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-uk-healthcare-rns-estate-isometric-nft-card","targetAuditDigest":"54c3d35f257dbb3705ec3cdb89c32dbe922c603b6a501f9ea3e7a7a7963b52b5","targetSourceActionDigest":"4e7c5d34ee97a813d3c36b5d237a9cdfd876633c530f249c63857e904492111a","targetSourceEvidenceSha256":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","correctionDigest":"ae62cc51a3e124d2a789b7d34e6f0cee5aa14272ab7499ef622c6f43153eb425","approvalDigest":"51e78b5db094c830bec67e753defda237bf064690bd8c1e7210811f5e77b7663","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-uk-healthcare-rns-estate-isometric-nft-card","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"metadata-correction","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-uk-healthcare-rns-estate-isometric-nft-card","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"baeb796a93320d36b72e6bf8070588dd","action":"reject-visual-candidate","candidateSlug":"uk-healthcare-rns-estate","formatKey":"isometric-nft-card","correctionType":"metadata-correction","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-uk-healthcare-rns-estate-isometric-nft-card","targetAuditDigest":"54c3d35f257dbb3705ec3cdb89c32dbe922c603b6a501f9ea3e7a7a7963b52b5","targetSourceActionDigest":"4e7c5d34ee97a813d3c36b5d237a9cdfd876633c530f249c63857e904492111a","targetSourceEvidenceSha256":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","sourceEvidencePublicPath":"/assets/virtual-assets/uk-healthcare-rns-estate/nft-card.png","sourceMatchesTransaction":true,"correctionDigest":"ae62cc51a3e124d2a789b7d34e6f0cee5aa14272ab7499ef622c6f43153eb425","approvalDigest":"51e78b5db094c830bec67e753defda237bf064690bd8c1e7210811f5e77b7663","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"54c3d35f257dbb3705ec3cdb89c32dbe922c603b6a501f9ea3e7a7a7963b52b5","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"edfd27a0adbaf5ce1764daed9ae3babc1a02dd8a11c980cfec7ac59b915368e6","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"4e7c5d34ee97a813d3c36b5d237a9cdfd876633c530f249c63857e904492111a","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"ae62cc51a3e124d2a789b7d34e6f0cee5aa14272ab7499ef622c6f43153eb425","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"51e78b5db094c830bec67e753defda237bf064690bd8c1e7210811f5e77b7663","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-uk-healthcare-rns-estate-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/uk-healthcare-rns-estate/isometric-nft-card","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/uk-healthcare-rns-estate/isometric-nft-card","reits://asset-visual-approval-audit-correction/reject-visual-candidate/uk-healthcare-rns-estate/isometric-nft-card","reits://asset-visual-approval-audit-log/reject-visual-candidate/uk-healthcare-rns-estate/isometric-nft-card","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/uk-healthcare-rns-estate/isometric-nft-card","reits://asset-visual-approval-human-confirmation/uk-healthcare-rns-estate/isometric-nft-card","reits://asset-visual-approval-identity-fixture/uk-healthcare-rns-estate/isometric-nft-card","reits://asset-visual-approval-evidence-transaction/uk-healthcare-rns-estate/isometric-nft-card","reits://asset-visual-approval-evidence/uk-healthcare-rns-estate/isometric-nft-card","reits://asset-visual-registry-preview/uk-healthcare-rns-estate/isometric-nft-card","reits://virtual-assets/uk-healthcare-rns-estate"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"26976a77c4464c111f9046ed9a5759fbd8eb894faaeec8289c2adfcfc03cbf45","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=uk-healthcare-rns-estate&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=uk-healthcare-rns-estate&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","correction":"/operations/asset-visual-approval-audit-corrections?asset=uk-healthcare-rns-estate&format=isometric-nft-card&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=uk-healthcare-rns-estate&format=isometric-nft-card&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=uk-healthcare-rns-estate&format=isometric-nft-card&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=uk-healthcare-rns-estate&format=isometric-nft-card","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=uk-healthcare-rns-estate&format=isometric-nft-card","search":"/search?q=%E8%8B%B1%E5%9B%BD%20UK%20REIT%20Healthcare%20Estate"},"mcp":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/uk-healthcare-rns-estate/isometric-nft-card","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/uk-healthcare-rns-estate/isometric-nft-card","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/uk-healthcare-rns-estate/isometric-nft-card","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/uk-healthcare-rns-estate/isometric-nft-card","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/uk-healthcare-rns-estate/isometric-nft-card","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/uk-healthcare-rns-estate/isometric-nft-card","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/uk-healthcare-rns-estate/isometric-nft-card","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/uk-healthcare-rns-estate/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/uk-healthcare-rns-estate/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/uk-healthcare-rns-estate"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-rental-housing-community-isometric-nft-card","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-cn-rental-housing-community-isometric-nft-card","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-cn-rental-housing-community-isometric-nft-card","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-rental-housing-community-isometric-nft-card","targetAuditDigest":"9bad82addc275189a2f64646f2e46184a957b315cbede4b2f063b6d317056c26","targetSourceActionDigest":"c2aa062577e63060c60a9f26d65e4f50cee4754663607339bbb6fd1020e0ed5c","targetSourceEvidenceSha256":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","correctionDigest":"c1b1be30f434e279ece55d22da2d047e44c48727d003931cf37ffaa7b2b45c91","approvalDigest":"462b800ce6973306e13711e40b6582bfedb932272bebc8b4fde3627a51a92eb6","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-cn-rental-housing-community-isometric-nft-card","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"metadata-correction","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-rental-housing-community-isometric-nft-card","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"5ded845af2e7cdf5c0eae4247c3fdb08","action":"reject-visual-candidate","candidateSlug":"cn-rental-housing-community","formatKey":"isometric-nft-card","correctionType":"metadata-correction","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-rental-housing-community-isometric-nft-card","targetAuditDigest":"9bad82addc275189a2f64646f2e46184a957b315cbede4b2f063b6d317056c26","targetSourceActionDigest":"c2aa062577e63060c60a9f26d65e4f50cee4754663607339bbb6fd1020e0ed5c","targetSourceEvidenceSha256":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","sourceEvidencePublicPath":"/assets/virtual-assets/cn-rental-housing-community/nft-card.png","sourceMatchesTransaction":true,"correctionDigest":"c1b1be30f434e279ece55d22da2d047e44c48727d003931cf37ffaa7b2b45c91","approvalDigest":"462b800ce6973306e13711e40b6582bfedb932272bebc8b4fde3627a51a92eb6","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"9bad82addc275189a2f64646f2e46184a957b315cbede4b2f063b6d317056c26","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"4175bfd4e68e655c2f6a974b60e3f059e299570bc510ca8b20f69c953b30f791","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"c2aa062577e63060c60a9f26d65e4f50cee4754663607339bbb6fd1020e0ed5c","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"c1b1be30f434e279ece55d22da2d047e44c48727d003931cf37ffaa7b2b45c91","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"462b800ce6973306e13711e40b6582bfedb932272bebc8b4fde3627a51a92eb6","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-rental-housing-community-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-rental-housing-community/isometric-nft-card","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-rental-housing-community/isometric-nft-card","reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-rental-housing-community/isometric-nft-card","reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-rental-housing-community/isometric-nft-card","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-rental-housing-community/isometric-nft-card","reits://asset-visual-approval-human-confirmation/cn-rental-housing-community/isometric-nft-card","reits://asset-visual-approval-identity-fixture/cn-rental-housing-community/isometric-nft-card","reits://asset-visual-approval-evidence-transaction/cn-rental-housing-community/isometric-nft-card","reits://asset-visual-approval-evidence/cn-rental-housing-community/isometric-nft-card","reits://asset-visual-registry-preview/cn-rental-housing-community/isometric-nft-card","reits://virtual-assets/cn-rental-housing-community"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"62a408e7733cf1e5ce0b2df23d4a36f374a3221e3ff20738034d22bd1914d742","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-rental-housing-community&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-rental-housing-community&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","correction":"/operations/asset-visual-approval-audit-corrections?asset=cn-rental-housing-community&format=isometric-nft-card&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=cn-rental-housing-community&format=isometric-nft-card&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=cn-rental-housing-community&format=isometric-nft-card&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=cn-rental-housing-community&format=isometric-nft-card","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-rental-housing-community&format=isometric-nft-card","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":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-rental-housing-community/isometric-nft-card","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-rental-housing-community/isometric-nft-card","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-rental-housing-community/isometric-nft-card","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-rental-housing-community/isometric-nft-card","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-rental-housing-community/isometric-nft-card","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/cn-rental-housing-community/isometric-nft-card","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/cn-rental-housing-community/isometric-nft-card","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-rental-housing-community/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-rental-housing-community/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/cn-rental-housing-community"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-logistics-bbs-gap-isometric-nft-card","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-cn-logistics-bbs-gap-isometric-nft-card","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-cn-logistics-bbs-gap-isometric-nft-card","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-logistics-bbs-gap-isometric-nft-card","targetAuditDigest":"134a59a2e7e4e34166099d9d511d8fa232658d15af2d7fdbb50b634c31e9dbf2","targetSourceActionDigest":"21358cecad1e2fb8a5bcc4d4d088ea909eb969c2974f0e95150afe0ed9f0a36a","targetSourceEvidenceSha256":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","correctionDigest":"8dfef726c3f6b7f7e58ab02bb1438f6048a7d8121c98dffd5f100780499044b4","approvalDigest":"1e8b2462f1991377ac7e5dcf5664ec9ed3b65c0a8d928695933dee0cdea8af5b","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-cn-logistics-bbs-gap-isometric-nft-card","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"metadata-correction","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-logistics-bbs-gap-isometric-nft-card","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"16aa0f089bfaab5e8d38085fea1396ca","action":"reject-visual-candidate","candidateSlug":"cn-logistics-bbs-gap","formatKey":"isometric-nft-card","correctionType":"metadata-correction","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-logistics-bbs-gap-isometric-nft-card","targetAuditDigest":"134a59a2e7e4e34166099d9d511d8fa232658d15af2d7fdbb50b634c31e9dbf2","targetSourceActionDigest":"21358cecad1e2fb8a5bcc4d4d088ea909eb969c2974f0e95150afe0ed9f0a36a","targetSourceEvidenceSha256":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","sourceEvidencePublicPath":"/assets/virtual-assets/cn-logistics-bbs-gap/nft-card.png","sourceMatchesTransaction":true,"correctionDigest":"8dfef726c3f6b7f7e58ab02bb1438f6048a7d8121c98dffd5f100780499044b4","approvalDigest":"1e8b2462f1991377ac7e5dcf5664ec9ed3b65c0a8d928695933dee0cdea8af5b","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"134a59a2e7e4e34166099d9d511d8fa232658d15af2d7fdbb50b634c31e9dbf2","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"9ef00ee0a5fda3797a2d84d0ef1e89e21c7151806b38d2e7bd8e6f7ffc05af0a","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"21358cecad1e2fb8a5bcc4d4d088ea909eb969c2974f0e95150afe0ed9f0a36a","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"8dfef726c3f6b7f7e58ab02bb1438f6048a7d8121c98dffd5f100780499044b4","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"1e8b2462f1991377ac7e5dcf5664ec9ed3b65c0a8d928695933dee0cdea8af5b","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-logistics-bbs-gap-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-logistics-bbs-gap/isometric-nft-card","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-logistics-bbs-gap/isometric-nft-card","reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-logistics-bbs-gap/isometric-nft-card","reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-logistics-bbs-gap/isometric-nft-card","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-logistics-bbs-gap/isometric-nft-card","reits://asset-visual-approval-human-confirmation/cn-logistics-bbs-gap/isometric-nft-card","reits://asset-visual-approval-identity-fixture/cn-logistics-bbs-gap/isometric-nft-card","reits://asset-visual-approval-evidence-transaction/cn-logistics-bbs-gap/isometric-nft-card","reits://asset-visual-approval-evidence/cn-logistics-bbs-gap/isometric-nft-card","reits://asset-visual-registry-preview/cn-logistics-bbs-gap/isometric-nft-card","reits://virtual-assets/cn-logistics-bbs-gap"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"27be967cfe829fcf58af3a70f8a5b9f3e0cc043baae2a314d86bf09f30ea29d9","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-logistics-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-logistics-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","correction":"/operations/asset-visual-approval-audit-corrections?asset=cn-logistics-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=cn-logistics-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=cn-logistics-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=cn-logistics-bbs-gap&format=isometric-nft-card","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-logistics-bbs-gap&format=isometric-nft-card","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":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-logistics-bbs-gap/isometric-nft-card","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-logistics-bbs-gap/isometric-nft-card","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-logistics-bbs-gap/isometric-nft-card","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-logistics-bbs-gap/isometric-nft-card","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-logistics-bbs-gap/isometric-nft-card","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/cn-logistics-bbs-gap/isometric-nft-card","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/cn-logistics-bbs-gap/isometric-nft-card","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-logistics-bbs-gap/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-logistics-bbs-gap/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/cn-logistics-bbs-gap"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-highway-bbs-gap-isometric-nft-card","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-cn-highway-bbs-gap-isometric-nft-card","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-cn-highway-bbs-gap-isometric-nft-card","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-highway-bbs-gap-isometric-nft-card","targetAuditDigest":"6bfa3c6a70702b3771978c6ad1085a592297bfcd0d23afef42bbf9172dcb0ef8","targetSourceActionDigest":"2e5f4ce9e07601657dea30b54724ff16087ef4f9aa0d492b6902afbb5dc654f5","targetSourceEvidenceSha256":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","correctionDigest":"d3c7bf9a522fd3ea6101d2afb317401eba9ae80b798318f315fc64913bed7eac","approvalDigest":"7f067b6c38b5c7d97d2277f196b4aa8107d2f7d915e85003b49bc27c7f11998b","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-cn-highway-bbs-gap-isometric-nft-card","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"metadata-correction","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-highway-bbs-gap-isometric-nft-card","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"4c0dac256fe883260d33daedd073d2be","action":"reject-visual-candidate","candidateSlug":"cn-highway-bbs-gap","formatKey":"isometric-nft-card","correctionType":"metadata-correction","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-highway-bbs-gap-isometric-nft-card","targetAuditDigest":"6bfa3c6a70702b3771978c6ad1085a592297bfcd0d23afef42bbf9172dcb0ef8","targetSourceActionDigest":"2e5f4ce9e07601657dea30b54724ff16087ef4f9aa0d492b6902afbb5dc654f5","targetSourceEvidenceSha256":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","sourceEvidencePublicPath":"/assets/virtual-assets/cn-highway-bbs-gap/nft-card.png","sourceMatchesTransaction":true,"correctionDigest":"d3c7bf9a522fd3ea6101d2afb317401eba9ae80b798318f315fc64913bed7eac","approvalDigest":"7f067b6c38b5c7d97d2277f196b4aa8107d2f7d915e85003b49bc27c7f11998b","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"6bfa3c6a70702b3771978c6ad1085a592297bfcd0d23afef42bbf9172dcb0ef8","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"2e5f4ce9e07601657dea30b54724ff16087ef4f9aa0d492b6902afbb5dc654f5","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"d3c7bf9a522fd3ea6101d2afb317401eba9ae80b798318f315fc64913bed7eac","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"7f067b6c38b5c7d97d2277f196b4aa8107d2f7d915e85003b49bc27c7f11998b","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-highway-bbs-gap-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-highway-bbs-gap/isometric-nft-card","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-highway-bbs-gap/isometric-nft-card","reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-highway-bbs-gap/isometric-nft-card","reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-highway-bbs-gap/isometric-nft-card","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-highway-bbs-gap/isometric-nft-card","reits://asset-visual-approval-human-confirmation/cn-highway-bbs-gap/isometric-nft-card","reits://asset-visual-approval-identity-fixture/cn-highway-bbs-gap/isometric-nft-card","reits://asset-visual-approval-evidence-transaction/cn-highway-bbs-gap/isometric-nft-card","reits://asset-visual-approval-evidence/cn-highway-bbs-gap/isometric-nft-card","reits://asset-visual-registry-preview/cn-highway-bbs-gap/isometric-nft-card","reits://virtual-assets/cn-highway-bbs-gap"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"9684394ac2db4e9270ffcff34046333285f899c26a956cec18a47951a6583213","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-highway-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-highway-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","correction":"/operations/asset-visual-approval-audit-corrections?asset=cn-highway-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=cn-highway-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=cn-highway-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=cn-highway-bbs-gap&format=isometric-nft-card","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-highway-bbs-gap&format=isometric-nft-card","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":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-highway-bbs-gap/isometric-nft-card","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-highway-bbs-gap/isometric-nft-card","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-highway-bbs-gap/isometric-nft-card","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-highway-bbs-gap/isometric-nft-card","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-highway-bbs-gap/isometric-nft-card","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/cn-highway-bbs-gap/isometric-nft-card","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/cn-highway-bbs-gap/isometric-nft-card","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-highway-bbs-gap/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-highway-bbs-gap/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/cn-highway-bbs-gap"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-commercial-bbs-gap-isometric-nft-card","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-cn-commercial-bbs-gap-isometric-nft-card","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-cn-commercial-bbs-gap-isometric-nft-card","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-commercial-bbs-gap-isometric-nft-card","targetAuditDigest":"8464979ca0e67510e0a339d7060cecfa699e077524fd6a29155111b4bb8a3c9d","targetSourceActionDigest":"11cefbbbf69d038330473700c204b2b535d6d92984ad457498eb3f049e3e6fd7","targetSourceEvidenceSha256":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","correctionDigest":"6b44a4dea58a7a3dcef8f73eb44351159122a1366f5c8197174bade920324dfc","approvalDigest":"949278a0b3cf2bf9d392d4e7645644ebeb6a85caf98c7ae7372f36cce25f348e","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-cn-commercial-bbs-gap-isometric-nft-card","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"metadata-correction","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-commercial-bbs-gap-isometric-nft-card","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"b1e957ccb48113f701349709b3f01de0","action":"reject-visual-candidate","candidateSlug":"cn-commercial-bbs-gap","formatKey":"isometric-nft-card","correctionType":"metadata-correction","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-commercial-bbs-gap-isometric-nft-card","targetAuditDigest":"8464979ca0e67510e0a339d7060cecfa699e077524fd6a29155111b4bb8a3c9d","targetSourceActionDigest":"11cefbbbf69d038330473700c204b2b535d6d92984ad457498eb3f049e3e6fd7","targetSourceEvidenceSha256":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","sourceEvidencePublicPath":"/assets/virtual-assets/cn-commercial-bbs-gap/nft-card.png","sourceMatchesTransaction":true,"correctionDigest":"6b44a4dea58a7a3dcef8f73eb44351159122a1366f5c8197174bade920324dfc","approvalDigest":"949278a0b3cf2bf9d392d4e7645644ebeb6a85caf98c7ae7372f36cce25f348e","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"8464979ca0e67510e0a339d7060cecfa699e077524fd6a29155111b4bb8a3c9d","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"11cefbbbf69d038330473700c204b2b535d6d92984ad457498eb3f049e3e6fd7","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"6b44a4dea58a7a3dcef8f73eb44351159122a1366f5c8197174bade920324dfc","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"949278a0b3cf2bf9d392d4e7645644ebeb6a85caf98c7ae7372f36cce25f348e","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-commercial-bbs-gap-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-commercial-bbs-gap/isometric-nft-card","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-commercial-bbs-gap/isometric-nft-card","reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-commercial-bbs-gap/isometric-nft-card","reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-commercial-bbs-gap/isometric-nft-card","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-commercial-bbs-gap/isometric-nft-card","reits://asset-visual-approval-human-confirmation/cn-commercial-bbs-gap/isometric-nft-card","reits://asset-visual-approval-identity-fixture/cn-commercial-bbs-gap/isometric-nft-card","reits://asset-visual-approval-evidence-transaction/cn-commercial-bbs-gap/isometric-nft-card","reits://asset-visual-approval-evidence/cn-commercial-bbs-gap/isometric-nft-card","reits://asset-visual-registry-preview/cn-commercial-bbs-gap/isometric-nft-card","reits://virtual-assets/cn-commercial-bbs-gap"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"7b146bb31d76865b061cf0457ccd07d49860d48f78463f173593add1145cbe8c","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-commercial-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-commercial-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate&type=metadata-correction","correction":"/operations/asset-visual-approval-audit-corrections?asset=cn-commercial-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=cn-commercial-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=cn-commercial-bbs-gap&format=isometric-nft-card&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=cn-commercial-bbs-gap&format=isometric-nft-card","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-commercial-bbs-gap&format=isometric-nft-card","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":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-commercial-bbs-gap/isometric-nft-card","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-commercial-bbs-gap/isometric-nft-card","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-commercial-bbs-gap/isometric-nft-card","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-commercial-bbs-gap/isometric-nft-card","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-commercial-bbs-gap/isometric-nft-card","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/cn-commercial-bbs-gap/isometric-nft-card","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/cn-commercial-bbs-gap/isometric-nft-card","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-commercial-bbs-gap/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-commercial-bbs-gap/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/cn-commercial-bbs-gap"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-eu-logistics-esef-hub-isometric-nft-card","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-eu-logistics-esef-hub-isometric-nft-card","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-eu-logistics-esef-hub-isometric-nft-card","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-eu-logistics-esef-hub-isometric-nft-card","targetAuditDigest":"03e3a824ae1860b0b8ae4d8e20f442133a68a007a1a919c517a52c494d28c900","targetSourceActionDigest":"e174e971a8d3a3020d2b0ad03af382405f481543293634d320409f1a363ff38f","targetSourceEvidenceSha256":null,"correctionDigest":"c79f669e1d247ca952ca7d5e14fc8d01dacd26386d67861ad2502b1485b308d2","approvalDigest":"477a796796c228186fc18f71892f7e6afbf4742b8397697a6a88dced31fa22a0","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-eu-logistics-esef-hub-isometric-nft-card","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"policy-blocker-note","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-eu-logistics-esef-hub-isometric-nft-card","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"1db900612ca36173db82404500512fcb","action":"reject-visual-candidate","candidateSlug":"eu-logistics-esef-hub","formatKey":"isometric-nft-card","correctionType":"policy-blocker-note","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-eu-logistics-esef-hub-isometric-nft-card","targetAuditDigest":"03e3a824ae1860b0b8ae4d8e20f442133a68a007a1a919c517a52c494d28c900","targetSourceActionDigest":"e174e971a8d3a3020d2b0ad03af382405f481543293634d320409f1a363ff38f","targetSourceEvidenceSha256":null,"sourceEvidencePublicPath":null,"sourceMatchesTransaction":false,"correctionDigest":"c79f669e1d247ca952ca7d5e14fc8d01dacd26386d67861ad2502b1485b308d2","approvalDigest":"477a796796c228186fc18f71892f7e6afbf4742b8397697a6a88dced31fa22a0","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"03e3a824ae1860b0b8ae4d8e20f442133a68a007a1a919c517a52c494d28c900","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"sourceEvidenceSha256=null","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"e174e971a8d3a3020d2b0ad03af382405f481543293634d320409f1a363ff38f","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"c79f669e1d247ca952ca7d5e14fc8d01dacd26386d67861ad2502b1485b308d2","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"477a796796c228186fc18f71892f7e6afbf4742b8397697a6a88dced31fa22a0","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-eu-logistics-esef-hub-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/eu-logistics-esef-hub/isometric-nft-card","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/eu-logistics-esef-hub/isometric-nft-card","reits://asset-visual-approval-audit-correction/reject-visual-candidate/eu-logistics-esef-hub/isometric-nft-card","reits://asset-visual-approval-audit-log/reject-visual-candidate/eu-logistics-esef-hub/isometric-nft-card","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/eu-logistics-esef-hub/isometric-nft-card","reits://asset-visual-approval-human-confirmation/eu-logistics-esef-hub/isometric-nft-card","reits://asset-visual-approval-identity-fixture/eu-logistics-esef-hub/isometric-nft-card","reits://asset-visual-approval-evidence-transaction/eu-logistics-esef-hub/isometric-nft-card","reits://asset-visual-approval-evidence/eu-logistics-esef-hub/isometric-nft-card","reits://asset-visual-registry-preview/eu-logistics-esef-hub/isometric-nft-card","reits://virtual-assets/eu-logistics-esef-hub"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"9e99715c52d8a61b77a50e0845c8aed45e4c20bd48381e488f74f484b084fe0f","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card&action=reject-visual-candidate&type=policy-blocker-note","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card&action=reject-visual-candidate&type=policy-blocker-note","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=eu-logistics-esef-hub&format=isometric-nft-card&action=reject-visual-candidate&type=policy-blocker-note","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=eu-logistics-esef-hub&format=isometric-nft-card&action=reject-visual-candidate&type=policy-blocker-note","correction":"/operations/asset-visual-approval-audit-corrections?asset=eu-logistics-esef-hub&format=isometric-nft-card&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=eu-logistics-esef-hub&format=isometric-nft-card&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=eu-logistics-esef-hub&format=isometric-nft-card&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=eu-logistics-esef-hub&format=isometric-nft-card","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=eu-logistics-esef-hub&format=isometric-nft-card","search":"/search?q=%E6%AC%A7%E7%9B%9F%20Listed%20Real%20Estate%20Logistics%20Hub"},"mcp":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/eu-logistics-esef-hub/isometric-nft-card","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/eu-logistics-esef-hub/isometric-nft-card","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/eu-logistics-esef-hub/isometric-nft-card","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/eu-logistics-esef-hub/isometric-nft-card","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/eu-logistics-esef-hub/isometric-nft-card","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/eu-logistics-esef-hub/isometric-nft-card","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/eu-logistics-esef-hub/isometric-nft-card","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/eu-logistics-esef-hub/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/eu-logistics-esef-hub/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/eu-logistics-esef-hub"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-eu-logistics-esef-hub-pixel-map-pin","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-eu-logistics-esef-hub-pixel-map-pin","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-eu-logistics-esef-hub-pixel-map-pin","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-eu-logistics-esef-hub-pixel-map-pin","targetAuditDigest":"6b8dc4cd45b32041183c45c1e22cdf123d1c7bb204e7ed2c967a3405cc88bee5","targetSourceActionDigest":"2eab492258a3673f5d3a80452ad4381821a452f077e2381cbfc2e75e2bb436f2","targetSourceEvidenceSha256":null,"correctionDigest":"82b2da660de1ec939cbb22ea84bdab4013bbc3d659e25bb17219575788ccbad9","approvalDigest":"38b587445e679b62b2cdc8b1a510db3b20c9ff4051e3110b0d1dab50027b9e7a","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-eu-logistics-esef-hub-pixel-map-pin","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"policy-blocker-note","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-eu-logistics-esef-hub-pixel-map-pin","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"cab80f5d83f6373547dfebab27d47dc8","action":"reject-visual-candidate","candidateSlug":"eu-logistics-esef-hub","formatKey":"pixel-map-pin","correctionType":"policy-blocker-note","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-eu-logistics-esef-hub-pixel-map-pin","targetAuditDigest":"6b8dc4cd45b32041183c45c1e22cdf123d1c7bb204e7ed2c967a3405cc88bee5","targetSourceActionDigest":"2eab492258a3673f5d3a80452ad4381821a452f077e2381cbfc2e75e2bb436f2","targetSourceEvidenceSha256":null,"sourceEvidencePublicPath":null,"sourceMatchesTransaction":false,"correctionDigest":"82b2da660de1ec939cbb22ea84bdab4013bbc3d659e25bb17219575788ccbad9","approvalDigest":"38b587445e679b62b2cdc8b1a510db3b20c9ff4051e3110b0d1dab50027b9e7a","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"6b8dc4cd45b32041183c45c1e22cdf123d1c7bb204e7ed2c967a3405cc88bee5","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"sourceEvidenceSha256=null","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"2eab492258a3673f5d3a80452ad4381821a452f077e2381cbfc2e75e2bb436f2","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"82b2da660de1ec939cbb22ea84bdab4013bbc3d659e25bb17219575788ccbad9","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"38b587445e679b62b2cdc8b1a510db3b20c9ff4051e3110b0d1dab50027b9e7a","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-eu-logistics-esef-hub-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/eu-logistics-esef-hub/pixel-map-pin","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/eu-logistics-esef-hub/pixel-map-pin","reits://asset-visual-approval-audit-correction/reject-visual-candidate/eu-logistics-esef-hub/pixel-map-pin","reits://asset-visual-approval-audit-log/reject-visual-candidate/eu-logistics-esef-hub/pixel-map-pin","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/eu-logistics-esef-hub/pixel-map-pin","reits://asset-visual-approval-human-confirmation/eu-logistics-esef-hub/pixel-map-pin","reits://asset-visual-approval-identity-fixture/eu-logistics-esef-hub/pixel-map-pin","reits://asset-visual-approval-evidence-transaction/eu-logistics-esef-hub/pixel-map-pin","reits://asset-visual-approval-evidence/eu-logistics-esef-hub/pixel-map-pin","reits://asset-visual-registry-preview/eu-logistics-esef-hub/pixel-map-pin","reits://virtual-assets/eu-logistics-esef-hub"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"37427f3c70a58b1993ce407b8f2ac452c5b0876e09f9374a950e96bc57f1a7f5","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin&action=reject-visual-candidate&type=policy-blocker-note","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin&action=reject-visual-candidate&type=policy-blocker-note","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=eu-logistics-esef-hub&format=pixel-map-pin&action=reject-visual-candidate&type=policy-blocker-note","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=eu-logistics-esef-hub&format=pixel-map-pin&action=reject-visual-candidate&type=policy-blocker-note","correction":"/operations/asset-visual-approval-audit-corrections?asset=eu-logistics-esef-hub&format=pixel-map-pin&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=eu-logistics-esef-hub&format=pixel-map-pin&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=eu-logistics-esef-hub&format=pixel-map-pin&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=eu-logistics-esef-hub&format=pixel-map-pin","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=eu-logistics-esef-hub&format=pixel-map-pin","search":"/search?q=%E6%AC%A7%E7%9B%9F%20Listed%20Real%20Estate%20Logistics%20Hub"},"mcp":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/eu-logistics-esef-hub/pixel-map-pin","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/eu-logistics-esef-hub/pixel-map-pin","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/eu-logistics-esef-hub/pixel-map-pin","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/eu-logistics-esef-hub/pixel-map-pin","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/eu-logistics-esef-hub/pixel-map-pin","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/eu-logistics-esef-hub/pixel-map-pin","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/eu-logistics-esef-hub/pixel-map-pin","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/eu-logistics-esef-hub/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/eu-logistics-esef-hub/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/eu-logistics-esef-hub"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-in-invit-infra-corridor-isometric-nft-card","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-in-invit-infra-corridor-isometric-nft-card","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-in-invit-infra-corridor-isometric-nft-card","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-in-invit-infra-corridor-isometric-nft-card","targetAuditDigest":"555459750c768664464d0f3b623bf02704ffba7e7bb48b536626fd900b5dee7b","targetSourceActionDigest":"9082a432bf5388289b7ec2f37c7657760bc79a39b048a995df7faf240fceeb3f","targetSourceEvidenceSha256":null,"correctionDigest":"1ef84145f9dd9c78bd96b9666f42c2a5314a434440f14a4b13b5d7dc08d78e8c","approvalDigest":"6c308b306eded587f05731ee617a99d7d0d853923e7ae57cca8941adca8f50a1","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-in-invit-infra-corridor-isometric-nft-card","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"policy-blocker-note","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-in-invit-infra-corridor-isometric-nft-card","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"dfa2210d49d348ef4109c49f72a45417","action":"reject-visual-candidate","candidateSlug":"in-invit-infra-corridor","formatKey":"isometric-nft-card","correctionType":"policy-blocker-note","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-in-invit-infra-corridor-isometric-nft-card","targetAuditDigest":"555459750c768664464d0f3b623bf02704ffba7e7bb48b536626fd900b5dee7b","targetSourceActionDigest":"9082a432bf5388289b7ec2f37c7657760bc79a39b048a995df7faf240fceeb3f","targetSourceEvidenceSha256":null,"sourceEvidencePublicPath":null,"sourceMatchesTransaction":false,"correctionDigest":"1ef84145f9dd9c78bd96b9666f42c2a5314a434440f14a4b13b5d7dc08d78e8c","approvalDigest":"6c308b306eded587f05731ee617a99d7d0d853923e7ae57cca8941adca8f50a1","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"555459750c768664464d0f3b623bf02704ffba7e7bb48b536626fd900b5dee7b","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"sourceEvidenceSha256=null","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"9082a432bf5388289b7ec2f37c7657760bc79a39b048a995df7faf240fceeb3f","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"1ef84145f9dd9c78bd96b9666f42c2a5314a434440f14a4b13b5d7dc08d78e8c","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"6c308b306eded587f05731ee617a99d7d0d853923e7ae57cca8941adca8f50a1","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-in-invit-infra-corridor-isometric-nft-card","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/in-invit-infra-corridor/isometric-nft-card","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/in-invit-infra-corridor/isometric-nft-card","reits://asset-visual-approval-audit-correction/reject-visual-candidate/in-invit-infra-corridor/isometric-nft-card","reits://asset-visual-approval-audit-log/reject-visual-candidate/in-invit-infra-corridor/isometric-nft-card","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/in-invit-infra-corridor/isometric-nft-card","reits://asset-visual-approval-human-confirmation/in-invit-infra-corridor/isometric-nft-card","reits://asset-visual-approval-identity-fixture/in-invit-infra-corridor/isometric-nft-card","reits://asset-visual-approval-evidence-transaction/in-invit-infra-corridor/isometric-nft-card","reits://asset-visual-approval-evidence/in-invit-infra-corridor/isometric-nft-card","reits://asset-visual-registry-preview/in-invit-infra-corridor/isometric-nft-card","reits://virtual-assets/in-invit-infra-corridor"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"48c22a6a3a0c94fb0d0adadaf73a575fbe8b0d49eb50ab8670438704d7d78c1e","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card&action=reject-visual-candidate&type=policy-blocker-note","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card&action=reject-visual-candidate&type=policy-blocker-note","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=in-invit-infra-corridor&format=isometric-nft-card&action=reject-visual-candidate&type=policy-blocker-note","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=in-invit-infra-corridor&format=isometric-nft-card&action=reject-visual-candidate&type=policy-blocker-note","correction":"/operations/asset-visual-approval-audit-corrections?asset=in-invit-infra-corridor&format=isometric-nft-card&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=in-invit-infra-corridor&format=isometric-nft-card&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=in-invit-infra-corridor&format=isometric-nft-card&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=in-invit-infra-corridor&format=isometric-nft-card","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=in-invit-infra-corridor&format=isometric-nft-card","search":"/search?q=%E5%8D%B0%E5%BA%A6%20REITs%20%2F%20InvIT%20Infra%20Corridor"},"mcp":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/in-invit-infra-corridor/isometric-nft-card","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/in-invit-infra-corridor/isometric-nft-card","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/in-invit-infra-corridor/isometric-nft-card","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/in-invit-infra-corridor/isometric-nft-card","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/in-invit-infra-corridor/isometric-nft-card","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/in-invit-infra-corridor/isometric-nft-card","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/in-invit-infra-corridor/isometric-nft-card","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/in-invit-infra-corridor/isometric-nft-card","visualReviewResourceUri":"reits://asset-visual-review-ledger/in-invit-infra-corridor/isometric-nft-card","futureAssetResourceUri":"reits://virtual-assets/in-invit-infra-corridor"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-in-invit-infra-corridor-pixel-map-pin","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-in-invit-infra-corridor-pixel-map-pin","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-in-invit-infra-corridor-pixel-map-pin","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-in-invit-infra-corridor-pixel-map-pin","targetAuditDigest":"136277d93ed1066c372d87acf9388139679a802c68fa0d48dac9c7e821b37c40","targetSourceActionDigest":"a4d8b27f758d0371f1970c07e1fc55e27160b3e3f84fc5b30fb3d24180528c46","targetSourceEvidenceSha256":null,"correctionDigest":"8985558f3093594e10397cfcfa508a97aea62efc27efcff457480dd426551ffa","approvalDigest":"f5153136e13e678c3e1c48cdbdbb0f2203a6b244a665df3ddf5d3e2c417bc7bf","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-in-invit-infra-corridor-pixel-map-pin","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"policy-blocker-note","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-in-invit-infra-corridor-pixel-map-pin","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"9067517eeec0a6670bf83838c3b719b9","action":"reject-visual-candidate","candidateSlug":"in-invit-infra-corridor","formatKey":"pixel-map-pin","correctionType":"policy-blocker-note","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-in-invit-infra-corridor-pixel-map-pin","targetAuditDigest":"136277d93ed1066c372d87acf9388139679a802c68fa0d48dac9c7e821b37c40","targetSourceActionDigest":"a4d8b27f758d0371f1970c07e1fc55e27160b3e3f84fc5b30fb3d24180528c46","targetSourceEvidenceSha256":null,"sourceEvidencePublicPath":null,"sourceMatchesTransaction":false,"correctionDigest":"8985558f3093594e10397cfcfa508a97aea62efc27efcff457480dd426551ffa","approvalDigest":"f5153136e13e678c3e1c48cdbdbb0f2203a6b244a665df3ddf5d3e2c417bc7bf","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"136277d93ed1066c372d87acf9388139679a802c68fa0d48dac9c7e821b37c40","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"sourceEvidenceSha256=null","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"a4d8b27f758d0371f1970c07e1fc55e27160b3e3f84fc5b30fb3d24180528c46","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"8985558f3093594e10397cfcfa508a97aea62efc27efcff457480dd426551ffa","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"f5153136e13e678c3e1c48cdbdbb0f2203a6b244a665df3ddf5d3e2c417bc7bf","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-in-invit-infra-corridor-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/in-invit-infra-corridor/pixel-map-pin","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/in-invit-infra-corridor/pixel-map-pin","reits://asset-visual-approval-audit-correction/reject-visual-candidate/in-invit-infra-corridor/pixel-map-pin","reits://asset-visual-approval-audit-log/reject-visual-candidate/in-invit-infra-corridor/pixel-map-pin","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/in-invit-infra-corridor/pixel-map-pin","reits://asset-visual-approval-human-confirmation/in-invit-infra-corridor/pixel-map-pin","reits://asset-visual-approval-identity-fixture/in-invit-infra-corridor/pixel-map-pin","reits://asset-visual-approval-evidence-transaction/in-invit-infra-corridor/pixel-map-pin","reits://asset-visual-approval-evidence/in-invit-infra-corridor/pixel-map-pin","reits://asset-visual-registry-preview/in-invit-infra-corridor/pixel-map-pin","reits://virtual-assets/in-invit-infra-corridor"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"173041bb18c0d00acaf1689de515dc45b4705ab490e252bfb5b98e7e2732604b","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin&action=reject-visual-candidate&type=policy-blocker-note","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin&action=reject-visual-candidate&type=policy-blocker-note","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=in-invit-infra-corridor&format=pixel-map-pin&action=reject-visual-candidate&type=policy-blocker-note","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=in-invit-infra-corridor&format=pixel-map-pin&action=reject-visual-candidate&type=policy-blocker-note","correction":"/operations/asset-visual-approval-audit-corrections?asset=in-invit-infra-corridor&format=pixel-map-pin&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=in-invit-infra-corridor&format=pixel-map-pin&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=in-invit-infra-corridor&format=pixel-map-pin&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=in-invit-infra-corridor&format=pixel-map-pin","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=in-invit-infra-corridor&format=pixel-map-pin","search":"/search?q=%E5%8D%B0%E5%BA%A6%20REITs%20%2F%20InvIT%20Infra%20Corridor"},"mcp":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/in-invit-infra-corridor/pixel-map-pin","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/in-invit-infra-corridor/pixel-map-pin","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/in-invit-infra-corridor/pixel-map-pin","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/in-invit-infra-corridor/pixel-map-pin","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/in-invit-infra-corridor/pixel-map-pin","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/in-invit-infra-corridor/pixel-map-pin","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/in-invit-infra-corridor/pixel-map-pin","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/in-invit-infra-corridor/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/in-invit-infra-corridor/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/in-invit-infra-corridor"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-au-logistics-asx-warehouse-pixel-map-pin","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-au-logistics-asx-warehouse-pixel-map-pin","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-au-logistics-asx-warehouse-pixel-map-pin","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-au-logistics-asx-warehouse-pixel-map-pin","targetAuditDigest":"7313fcccaf8321c67d4cbf8897eb84405233ade6ca060d0347ce3c75866e13f9","targetSourceActionDigest":"4fe692910e505d041492bb8986ed56cfe3d81d80760e8bd3c1f247be80b0fd14","targetSourceEvidenceSha256":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","correctionDigest":"b5a068e630bb641d05b69177090fb31bb76d76c1beadde3082f036cd70959023","approvalDigest":"4b2f2ed5a86dae45581e15799f989a271494d2e11255c795c03890947af523f3","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-au-logistics-asx-warehouse-pixel-map-pin","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"redaction-request","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-au-logistics-asx-warehouse-pixel-map-pin","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"8a6c30afbbd2aa6156082662d13c6684","action":"reject-visual-candidate","candidateSlug":"au-logistics-asx-warehouse","formatKey":"pixel-map-pin","correctionType":"redaction-request","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-au-logistics-asx-warehouse-pixel-map-pin","targetAuditDigest":"7313fcccaf8321c67d4cbf8897eb84405233ade6ca060d0347ce3c75866e13f9","targetSourceActionDigest":"4fe692910e505d041492bb8986ed56cfe3d81d80760e8bd3c1f247be80b0fd14","targetSourceEvidenceSha256":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","sourceEvidencePublicPath":"/assets/virtual-assets/au-logistics-asx-warehouse/map-pin.png","sourceMatchesTransaction":true,"correctionDigest":"b5a068e630bb641d05b69177090fb31bb76d76c1beadde3082f036cd70959023","approvalDigest":"4b2f2ed5a86dae45581e15799f989a271494d2e11255c795c03890947af523f3","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"7313fcccaf8321c67d4cbf8897eb84405233ade6ca060d0347ce3c75866e13f9","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"0777139115556958290219088d2eaa658a4ba664db0fb9c5dcc78251122e9d5e","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"4fe692910e505d041492bb8986ed56cfe3d81d80760e8bd3c1f247be80b0fd14","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"b5a068e630bb641d05b69177090fb31bb76d76c1beadde3082f036cd70959023","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"4b2f2ed5a86dae45581e15799f989a271494d2e11255c795c03890947af523f3","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-au-logistics-asx-warehouse-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/au-logistics-asx-warehouse/pixel-map-pin","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/au-logistics-asx-warehouse/pixel-map-pin","reits://asset-visual-approval-audit-correction/reject-visual-candidate/au-logistics-asx-warehouse/pixel-map-pin","reits://asset-visual-approval-audit-log/reject-visual-candidate/au-logistics-asx-warehouse/pixel-map-pin","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/au-logistics-asx-warehouse/pixel-map-pin","reits://asset-visual-approval-human-confirmation/au-logistics-asx-warehouse/pixel-map-pin","reits://asset-visual-approval-identity-fixture/au-logistics-asx-warehouse/pixel-map-pin","reits://asset-visual-approval-evidence-transaction/au-logistics-asx-warehouse/pixel-map-pin","reits://asset-visual-approval-evidence/au-logistics-asx-warehouse/pixel-map-pin","reits://asset-visual-registry-preview/au-logistics-asx-warehouse/pixel-map-pin","reits://virtual-assets/au-logistics-asx-warehouse"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"39b1b11f254f9fbcac49c81c315bdf0638cf5f493b971a98a49930fddb7e9f78","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=au-logistics-asx-warehouse&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=au-logistics-asx-warehouse&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","correction":"/operations/asset-visual-approval-audit-corrections?asset=au-logistics-asx-warehouse&format=pixel-map-pin&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=au-logistics-asx-warehouse&format=pixel-map-pin&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=au-logistics-asx-warehouse&format=pixel-map-pin&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=au-logistics-asx-warehouse&format=pixel-map-pin","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=au-logistics-asx-warehouse&format=pixel-map-pin","search":"/search?q=%E6%BE%B3%E5%A4%A7%E5%88%A9%E4%BA%9A%20A-REIT%20Logistics%20Warehouse"},"mcp":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/au-logistics-asx-warehouse/pixel-map-pin","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/au-logistics-asx-warehouse/pixel-map-pin","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/au-logistics-asx-warehouse/pixel-map-pin","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/au-logistics-asx-warehouse/pixel-map-pin","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/au-logistics-asx-warehouse/pixel-map-pin","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/au-logistics-asx-warehouse/pixel-map-pin","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/au-logistics-asx-warehouse/pixel-map-pin","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/au-logistics-asx-warehouse/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/au-logistics-asx-warehouse/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/au-logistics-asx-warehouse"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-ca-residential-tsx-node-pixel-map-pin","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-ca-residential-tsx-node-pixel-map-pin","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-ca-residential-tsx-node-pixel-map-pin","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-ca-residential-tsx-node-pixel-map-pin","targetAuditDigest":"8004c776ab19ed4491d8723430726803793c9f35ee9e0db27dbe48097ec60a29","targetSourceActionDigest":"286bfb80ee596ece1fe7243b4c4fd729ac4a7a27475e3c9f204a3f3d3fb92df3","targetSourceEvidenceSha256":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","correctionDigest":"9dc122308080055d9e47a39f5afe7b7ce01c3a749ca6406e81f08bd2e9c10b68","approvalDigest":"e913bcdc337697e19c97df644d03baa7d330aa44b71d2b6bebe6fc42e03a6908","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-ca-residential-tsx-node-pixel-map-pin","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"redaction-request","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-ca-residential-tsx-node-pixel-map-pin","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"dbc1f28867031342a3638dabdae45cd6","action":"reject-visual-candidate","candidateSlug":"ca-residential-tsx-node","formatKey":"pixel-map-pin","correctionType":"redaction-request","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-ca-residential-tsx-node-pixel-map-pin","targetAuditDigest":"8004c776ab19ed4491d8723430726803793c9f35ee9e0db27dbe48097ec60a29","targetSourceActionDigest":"286bfb80ee596ece1fe7243b4c4fd729ac4a7a27475e3c9f204a3f3d3fb92df3","targetSourceEvidenceSha256":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","sourceEvidencePublicPath":"/assets/virtual-assets/ca-residential-tsx-node/map-pin.png","sourceMatchesTransaction":true,"correctionDigest":"9dc122308080055d9e47a39f5afe7b7ce01c3a749ca6406e81f08bd2e9c10b68","approvalDigest":"e913bcdc337697e19c97df644d03baa7d330aa44b71d2b6bebe6fc42e03a6908","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"8004c776ab19ed4491d8723430726803793c9f35ee9e0db27dbe48097ec60a29","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"9c8fc39419c8738cabfbbf4242ef3c045ee24b420aa7d152df79effba3af9a87","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"286bfb80ee596ece1fe7243b4c4fd729ac4a7a27475e3c9f204a3f3d3fb92df3","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"9dc122308080055d9e47a39f5afe7b7ce01c3a749ca6406e81f08bd2e9c10b68","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"e913bcdc337697e19c97df644d03baa7d330aa44b71d2b6bebe6fc42e03a6908","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-ca-residential-tsx-node-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/ca-residential-tsx-node/pixel-map-pin","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/ca-residential-tsx-node/pixel-map-pin","reits://asset-visual-approval-audit-correction/reject-visual-candidate/ca-residential-tsx-node/pixel-map-pin","reits://asset-visual-approval-audit-log/reject-visual-candidate/ca-residential-tsx-node/pixel-map-pin","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/ca-residential-tsx-node/pixel-map-pin","reits://asset-visual-approval-human-confirmation/ca-residential-tsx-node/pixel-map-pin","reits://asset-visual-approval-identity-fixture/ca-residential-tsx-node/pixel-map-pin","reits://asset-visual-approval-evidence-transaction/ca-residential-tsx-node/pixel-map-pin","reits://asset-visual-approval-evidence/ca-residential-tsx-node/pixel-map-pin","reits://asset-visual-registry-preview/ca-residential-tsx-node/pixel-map-pin","reits://virtual-assets/ca-residential-tsx-node"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"bceb96bda592cc7bea195df231b3e7abe1d8285465fb6e150d61132cbc28cce8","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=ca-residential-tsx-node&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=ca-residential-tsx-node&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","correction":"/operations/asset-visual-approval-audit-corrections?asset=ca-residential-tsx-node&format=pixel-map-pin&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=ca-residential-tsx-node&format=pixel-map-pin&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=ca-residential-tsx-node&format=pixel-map-pin&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=ca-residential-tsx-node&format=pixel-map-pin","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=ca-residential-tsx-node&format=pixel-map-pin","search":"/search?q=%E5%8A%A0%E6%8B%BF%E5%A4%A7%20Canadian%20REIT%20Residential%20Node"},"mcp":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/ca-residential-tsx-node/pixel-map-pin","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/ca-residential-tsx-node/pixel-map-pin","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/ca-residential-tsx-node/pixel-map-pin","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/ca-residential-tsx-node/pixel-map-pin","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/ca-residential-tsx-node/pixel-map-pin","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/ca-residential-tsx-node/pixel-map-pin","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/ca-residential-tsx-node/pixel-map-pin","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/ca-residential-tsx-node/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/ca-residential-tsx-node/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/ca-residential-tsx-node"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-uk-healthcare-rns-estate-pixel-map-pin","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-uk-healthcare-rns-estate-pixel-map-pin","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-uk-healthcare-rns-estate-pixel-map-pin","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-uk-healthcare-rns-estate-pixel-map-pin","targetAuditDigest":"4f62bd00c08617b13b4b04ed12ebec9ccd461e116feaad947752e0f8d42581c7","targetSourceActionDigest":"95025985620ea625608771eb649110ab20358331def459d47eca855fe10782d0","targetSourceEvidenceSha256":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","correctionDigest":"333fbe6838ec249bda2a2382b21934b3536eaca8b91226fc28ea0eb88502f3f5","approvalDigest":"320b7921a33a4b49568d1d46ff529f2401e0d981b40884633eb8cc47ec778804","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-uk-healthcare-rns-estate-pixel-map-pin","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"redaction-request","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-uk-healthcare-rns-estate-pixel-map-pin","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"003d2a46ce033c3b8a23b49127306307","action":"reject-visual-candidate","candidateSlug":"uk-healthcare-rns-estate","formatKey":"pixel-map-pin","correctionType":"redaction-request","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-uk-healthcare-rns-estate-pixel-map-pin","targetAuditDigest":"4f62bd00c08617b13b4b04ed12ebec9ccd461e116feaad947752e0f8d42581c7","targetSourceActionDigest":"95025985620ea625608771eb649110ab20358331def459d47eca855fe10782d0","targetSourceEvidenceSha256":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","sourceEvidencePublicPath":"/assets/virtual-assets/uk-healthcare-rns-estate/map-pin.png","sourceMatchesTransaction":true,"correctionDigest":"333fbe6838ec249bda2a2382b21934b3536eaca8b91226fc28ea0eb88502f3f5","approvalDigest":"320b7921a33a4b49568d1d46ff529f2401e0d981b40884633eb8cc47ec778804","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"4f62bd00c08617b13b4b04ed12ebec9ccd461e116feaad947752e0f8d42581c7","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"07ee0ce786ad9f39cbd70f025a30c240f6349d1131b68da2fbc6441a2cb10c33","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"95025985620ea625608771eb649110ab20358331def459d47eca855fe10782d0","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"333fbe6838ec249bda2a2382b21934b3536eaca8b91226fc28ea0eb88502f3f5","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"320b7921a33a4b49568d1d46ff529f2401e0d981b40884633eb8cc47ec778804","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-uk-healthcare-rns-estate-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/uk-healthcare-rns-estate/pixel-map-pin","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/uk-healthcare-rns-estate/pixel-map-pin","reits://asset-visual-approval-audit-correction/reject-visual-candidate/uk-healthcare-rns-estate/pixel-map-pin","reits://asset-visual-approval-audit-log/reject-visual-candidate/uk-healthcare-rns-estate/pixel-map-pin","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/uk-healthcare-rns-estate/pixel-map-pin","reits://asset-visual-approval-human-confirmation/uk-healthcare-rns-estate/pixel-map-pin","reits://asset-visual-approval-identity-fixture/uk-healthcare-rns-estate/pixel-map-pin","reits://asset-visual-approval-evidence-transaction/uk-healthcare-rns-estate/pixel-map-pin","reits://asset-visual-approval-evidence/uk-healthcare-rns-estate/pixel-map-pin","reits://asset-visual-registry-preview/uk-healthcare-rns-estate/pixel-map-pin","reits://virtual-assets/uk-healthcare-rns-estate"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"2941de694c538e4406dca8398824e468a4adf3d9627101ea032d0a2ac1fb5822","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=uk-healthcare-rns-estate&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=uk-healthcare-rns-estate&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","correction":"/operations/asset-visual-approval-audit-corrections?asset=uk-healthcare-rns-estate&format=pixel-map-pin&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=uk-healthcare-rns-estate&format=pixel-map-pin&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=uk-healthcare-rns-estate&format=pixel-map-pin&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=uk-healthcare-rns-estate&format=pixel-map-pin","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=uk-healthcare-rns-estate&format=pixel-map-pin","search":"/search?q=%E8%8B%B1%E5%9B%BD%20UK%20REIT%20Healthcare%20Estate"},"mcp":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/uk-healthcare-rns-estate/pixel-map-pin","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/uk-healthcare-rns-estate/pixel-map-pin","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/uk-healthcare-rns-estate/pixel-map-pin","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/uk-healthcare-rns-estate/pixel-map-pin","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/uk-healthcare-rns-estate/pixel-map-pin","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/uk-healthcare-rns-estate/pixel-map-pin","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/uk-healthcare-rns-estate/pixel-map-pin","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/uk-healthcare-rns-estate/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/uk-healthcare-rns-estate/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/uk-healthcare-rns-estate"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-rental-housing-community-pixel-map-pin","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-cn-rental-housing-community-pixel-map-pin","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-cn-rental-housing-community-pixel-map-pin","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-rental-housing-community-pixel-map-pin","targetAuditDigest":"c9eaf3857749c2f0d8e03ae5785da9f9ceda3632b82efbf5e34cc668c6d37c1b","targetSourceActionDigest":"104c1cf176ade6fa46b8bd61000adc4e4b0475b3ab852f2768be94e2a2897873","targetSourceEvidenceSha256":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","correctionDigest":"072c472cbeac2b95d2c60007941d0b52e080f74e73ead2291fcb6c0132cca791","approvalDigest":"ee1cb295319ec2484d57759f6c28ab729028a870b9d1a1ba4519e7599beff9d8","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-cn-rental-housing-community-pixel-map-pin","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"redaction-request","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-rental-housing-community-pixel-map-pin","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"8aed653e6069529e52d7300dd063f44e","action":"reject-visual-candidate","candidateSlug":"cn-rental-housing-community","formatKey":"pixel-map-pin","correctionType":"redaction-request","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-rental-housing-community-pixel-map-pin","targetAuditDigest":"c9eaf3857749c2f0d8e03ae5785da9f9ceda3632b82efbf5e34cc668c6d37c1b","targetSourceActionDigest":"104c1cf176ade6fa46b8bd61000adc4e4b0475b3ab852f2768be94e2a2897873","targetSourceEvidenceSha256":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","sourceEvidencePublicPath":"/assets/virtual-assets/cn-rental-housing-community/map-pin.png","sourceMatchesTransaction":true,"correctionDigest":"072c472cbeac2b95d2c60007941d0b52e080f74e73ead2291fcb6c0132cca791","approvalDigest":"ee1cb295319ec2484d57759f6c28ab729028a870b9d1a1ba4519e7599beff9d8","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"c9eaf3857749c2f0d8e03ae5785da9f9ceda3632b82efbf5e34cc668c6d37c1b","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"ae6f514e2fb0f2c42b581e6b94e89feb0f9b86adabf4a7e078c6b070d9e8da66","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"104c1cf176ade6fa46b8bd61000adc4e4b0475b3ab852f2768be94e2a2897873","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"072c472cbeac2b95d2c60007941d0b52e080f74e73ead2291fcb6c0132cca791","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"ee1cb295319ec2484d57759f6c28ab729028a870b9d1a1ba4519e7599beff9d8","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-rental-housing-community-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-rental-housing-community/pixel-map-pin","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-rental-housing-community/pixel-map-pin","reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-rental-housing-community/pixel-map-pin","reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-rental-housing-community/pixel-map-pin","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-rental-housing-community/pixel-map-pin","reits://asset-visual-approval-human-confirmation/cn-rental-housing-community/pixel-map-pin","reits://asset-visual-approval-identity-fixture/cn-rental-housing-community/pixel-map-pin","reits://asset-visual-approval-evidence-transaction/cn-rental-housing-community/pixel-map-pin","reits://asset-visual-approval-evidence/cn-rental-housing-community/pixel-map-pin","reits://asset-visual-registry-preview/cn-rental-housing-community/pixel-map-pin","reits://virtual-assets/cn-rental-housing-community"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"5b01eb0fab6f18231179c26ce332a98e440e58d53a6a80e3f86060e686f57405","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-rental-housing-community&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-rental-housing-community&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","correction":"/operations/asset-visual-approval-audit-corrections?asset=cn-rental-housing-community&format=pixel-map-pin&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=cn-rental-housing-community&format=pixel-map-pin&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=cn-rental-housing-community&format=pixel-map-pin&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=cn-rental-housing-community&format=pixel-map-pin","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-rental-housing-community&format=pixel-map-pin","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":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-rental-housing-community/pixel-map-pin","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-rental-housing-community/pixel-map-pin","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-rental-housing-community/pixel-map-pin","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-rental-housing-community/pixel-map-pin","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-rental-housing-community/pixel-map-pin","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/cn-rental-housing-community/pixel-map-pin","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/cn-rental-housing-community/pixel-map-pin","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-rental-housing-community/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-rental-housing-community/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/cn-rental-housing-community"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-logistics-bbs-gap-pixel-map-pin","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-cn-logistics-bbs-gap-pixel-map-pin","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-cn-logistics-bbs-gap-pixel-map-pin","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-logistics-bbs-gap-pixel-map-pin","targetAuditDigest":"09e175c0660fc24a110f7da7943069e5efad860fa929dbc86ec73b08fcf5b887","targetSourceActionDigest":"1de97892c638beaf01f2d6602bbb135dc6b5a75b213c0f73e944e0bcf4f45c5a","targetSourceEvidenceSha256":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","correctionDigest":"964f79b2e4599f8b450cce2d0ba37e5857f484a92db20b68cb0bbfa21a5b0ae1","approvalDigest":"35ba75f7be4e40af3b39b60a206e275b325e2bec9d4d9d6baf0363e8204b34ec","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-cn-logistics-bbs-gap-pixel-map-pin","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"redaction-request","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-logistics-bbs-gap-pixel-map-pin","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"60ebf06a696e1719beedc4d1acf38c8c","action":"reject-visual-candidate","candidateSlug":"cn-logistics-bbs-gap","formatKey":"pixel-map-pin","correctionType":"redaction-request","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-logistics-bbs-gap-pixel-map-pin","targetAuditDigest":"09e175c0660fc24a110f7da7943069e5efad860fa929dbc86ec73b08fcf5b887","targetSourceActionDigest":"1de97892c638beaf01f2d6602bbb135dc6b5a75b213c0f73e944e0bcf4f45c5a","targetSourceEvidenceSha256":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","sourceEvidencePublicPath":"/assets/virtual-assets/cn-logistics-bbs-gap/map-pin.png","sourceMatchesTransaction":true,"correctionDigest":"964f79b2e4599f8b450cce2d0ba37e5857f484a92db20b68cb0bbfa21a5b0ae1","approvalDigest":"35ba75f7be4e40af3b39b60a206e275b325e2bec9d4d9d6baf0363e8204b34ec","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"09e175c0660fc24a110f7da7943069e5efad860fa929dbc86ec73b08fcf5b887","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"a5ac16525d563a05336ce28d0f77684e4f4dda02a9dbd5a33b6fef9cca692b60","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"1de97892c638beaf01f2d6602bbb135dc6b5a75b213c0f73e944e0bcf4f45c5a","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"964f79b2e4599f8b450cce2d0ba37e5857f484a92db20b68cb0bbfa21a5b0ae1","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"35ba75f7be4e40af3b39b60a206e275b325e2bec9d4d9d6baf0363e8204b34ec","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-logistics-bbs-gap-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-logistics-bbs-gap/pixel-map-pin","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-logistics-bbs-gap/pixel-map-pin","reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-logistics-bbs-gap/pixel-map-pin","reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-logistics-bbs-gap/pixel-map-pin","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-logistics-bbs-gap/pixel-map-pin","reits://asset-visual-approval-human-confirmation/cn-logistics-bbs-gap/pixel-map-pin","reits://asset-visual-approval-identity-fixture/cn-logistics-bbs-gap/pixel-map-pin","reits://asset-visual-approval-evidence-transaction/cn-logistics-bbs-gap/pixel-map-pin","reits://asset-visual-approval-evidence/cn-logistics-bbs-gap/pixel-map-pin","reits://asset-visual-registry-preview/cn-logistics-bbs-gap/pixel-map-pin","reits://virtual-assets/cn-logistics-bbs-gap"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"34273f9b87ea3a535f568b623733ac5f047c9b934bffea147130111de6cb6a68","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-logistics-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-logistics-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","correction":"/operations/asset-visual-approval-audit-corrections?asset=cn-logistics-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=cn-logistics-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=cn-logistics-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=cn-logistics-bbs-gap&format=pixel-map-pin","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-logistics-bbs-gap&format=pixel-map-pin","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":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-logistics-bbs-gap/pixel-map-pin","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-logistics-bbs-gap/pixel-map-pin","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-logistics-bbs-gap/pixel-map-pin","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-logistics-bbs-gap/pixel-map-pin","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-logistics-bbs-gap/pixel-map-pin","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/cn-logistics-bbs-gap/pixel-map-pin","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/cn-logistics-bbs-gap/pixel-map-pin","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-logistics-bbs-gap/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-logistics-bbs-gap/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/cn-logistics-bbs-gap"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-highway-bbs-gap-pixel-map-pin","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-cn-highway-bbs-gap-pixel-map-pin","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-cn-highway-bbs-gap-pixel-map-pin","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-highway-bbs-gap-pixel-map-pin","targetAuditDigest":"f1b50711fd7ebf3fc103e23617491a888af92706f404abd96be2bd92d16efc36","targetSourceActionDigest":"dc169917e179f47ae11bdee6c30e35f7b8e80b607dd74bef78fa253eb8f65ecf","targetSourceEvidenceSha256":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","correctionDigest":"1457812465894ae72d523d7dd29e19065586205e86ab6788695cbdfc0b2d5b60","approvalDigest":"e6438fe9f15e8ad5f5645ffaa754659a05c57251bb7e3a1016add40a7bbdf5f3","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-cn-highway-bbs-gap-pixel-map-pin","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"redaction-request","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-highway-bbs-gap-pixel-map-pin","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"76ad078e67f08c9145456b8ebf58b699","action":"reject-visual-candidate","candidateSlug":"cn-highway-bbs-gap","formatKey":"pixel-map-pin","correctionType":"redaction-request","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-highway-bbs-gap-pixel-map-pin","targetAuditDigest":"f1b50711fd7ebf3fc103e23617491a888af92706f404abd96be2bd92d16efc36","targetSourceActionDigest":"dc169917e179f47ae11bdee6c30e35f7b8e80b607dd74bef78fa253eb8f65ecf","targetSourceEvidenceSha256":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","sourceEvidencePublicPath":"/assets/virtual-assets/cn-highway-bbs-gap/map-pin.png","sourceMatchesTransaction":true,"correctionDigest":"1457812465894ae72d523d7dd29e19065586205e86ab6788695cbdfc0b2d5b60","approvalDigest":"e6438fe9f15e8ad5f5645ffaa754659a05c57251bb7e3a1016add40a7bbdf5f3","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"f1b50711fd7ebf3fc103e23617491a888af92706f404abd96be2bd92d16efc36","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"dc169917e179f47ae11bdee6c30e35f7b8e80b607dd74bef78fa253eb8f65ecf","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"1457812465894ae72d523d7dd29e19065586205e86ab6788695cbdfc0b2d5b60","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"e6438fe9f15e8ad5f5645ffaa754659a05c57251bb7e3a1016add40a7bbdf5f3","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-highway-bbs-gap-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-highway-bbs-gap/pixel-map-pin","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-highway-bbs-gap/pixel-map-pin","reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-highway-bbs-gap/pixel-map-pin","reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-highway-bbs-gap/pixel-map-pin","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-highway-bbs-gap/pixel-map-pin","reits://asset-visual-approval-human-confirmation/cn-highway-bbs-gap/pixel-map-pin","reits://asset-visual-approval-identity-fixture/cn-highway-bbs-gap/pixel-map-pin","reits://asset-visual-approval-evidence-transaction/cn-highway-bbs-gap/pixel-map-pin","reits://asset-visual-approval-evidence/cn-highway-bbs-gap/pixel-map-pin","reits://asset-visual-registry-preview/cn-highway-bbs-gap/pixel-map-pin","reits://virtual-assets/cn-highway-bbs-gap"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"8cf1cd8fcb9307e579b0e01113f229aaeb097b784685fcc58657be5c7259c6f7","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-highway-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-highway-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","correction":"/operations/asset-visual-approval-audit-corrections?asset=cn-highway-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=cn-highway-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=cn-highway-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=cn-highway-bbs-gap&format=pixel-map-pin","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-highway-bbs-gap&format=pixel-map-pin","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":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-highway-bbs-gap/pixel-map-pin","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-highway-bbs-gap/pixel-map-pin","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-highway-bbs-gap/pixel-map-pin","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-highway-bbs-gap/pixel-map-pin","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-highway-bbs-gap/pixel-map-pin","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/cn-highway-bbs-gap/pixel-map-pin","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/cn-highway-bbs-gap/pixel-map-pin","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-highway-bbs-gap/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-highway-bbs-gap/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/cn-highway-bbs-gap"}},{"generatedAt":"2026-09-07T03:28:49.515Z","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-commercial-bbs-gap-pixel-map-pin","dualControlId":"asset-visual-approval-audit-correction-dual-control-reject-visual-candidate-cn-commercial-bbs-gap-pixel-map-pin","correctionEventId":"asset-visual-approval-audit-correction-reject-visual-candidate-cn-commercial-bbs-gap-pixel-map-pin","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-commercial-bbs-gap-pixel-map-pin","targetAuditDigest":"e21e41162e8651cb7429dc809ec376201d05dacf50224c898853ffa5fa82b52f","targetSourceActionDigest":"c01084a752707dc4f1d7792a8253fc8b26f72897fcf48023a3c67638569e1da2","targetSourceEvidenceSha256":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","correctionDigest":"be80a6085af45d7991ffb47112bed8344df7e27bdd0713d961bb550754d9bd03","approvalDigest":"d1dfb03e5620c11f4bc9fb00c9aeaa38e2ea9dcb8da0d7e75c6865097f0015dd","action":"reject-visual-candidate","actionLabel":"拒绝候选图片","humanConfirmationId":"asset-visual-approval-human-confirmation-cn-commercial-bbs-gap-pixel-map-pin","identityFixtureId":"asset-visual-approval-identity-fixture-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","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":"transaction-dry-run-ready","statusLabel":"事务 dry-run 可校验","correctionType":"redaction-request","dualControlStatus":"dual-control-ready","dualControlStatusLabel":"双人确认 dry-run 可校验","transactionDryRun":true,"transactionWriteDisabled":true,"transactionOnly":true,"mcpQueueWriteDisabled":true,"databaseWriteDisabled":true,"approvalWritten":false,"correctionEventWritten":false,"auditLogMutated":false,"transactionWritten":false,"mcpIndexQueued":false,"mapPublished":false,"bbsPosted":false,"registryPromotionAllowed":false,"atomicity":"all-or-nothing","requiredInputs":["transactionDryRun","transactionWriteDisabled","transactionOnly","transactionSchemaVersion","transactionReason","idempotencyKey","rollbackPlanAccepted","mcpQueueWriteDisabled","databaseWriteDisabled","dualControlDryRun","dualControlWriteDisabled","dualControlOnly","approvalSchemaVersion","approvalReason","secondConfirm","targetSourceActionDigest","sourceEvidenceSha256"],"blockers":[],"transactionEnvelope":{"table":"asset_visual_approval_audit_correction_transactions","schemaVersion":"2026-06-visual-approval-audit-correction-transaction-v1","transactionId":"asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-commercial-bbs-gap-pixel-map-pin","transactionType":"visual-audit-correction-write","transactionMode":"dry-run-only","idempotencyKey":"3e3ee36aa69789ec4dfc9f65c067fbd5","action":"reject-visual-candidate","candidateSlug":"cn-commercial-bbs-gap","formatKey":"pixel-map-pin","correctionType":"redaction-request","targetAuditLogId":"asset-visual-approval-audit-log-reject-visual-candidate-cn-commercial-bbs-gap-pixel-map-pin","targetAuditDigest":"e21e41162e8651cb7429dc809ec376201d05dacf50224c898853ffa5fa82b52f","targetSourceActionDigest":"c01084a752707dc4f1d7792a8253fc8b26f72897fcf48023a3c67638569e1da2","targetSourceEvidenceSha256":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","sourceEvidencePublicPath":"/assets/virtual-assets/cn-commercial-bbs-gap/map-pin.png","sourceMatchesTransaction":true,"correctionDigest":"be80a6085af45d7991ffb47112bed8344df7e27bdd0713d961bb550754d9bd03","approvalDigest":"d1dfb03e5620c11f4bc9fb00c9aeaa38e2ea9dcb8da0d7e75c6865097f0015dd","createdAt":"2026-09-07T03:28:49.515Z","atomicity":"all-or-nothing","writeDisabled":true},"writeSet":[{"id":"audit-log-original","table":"asset_visual_approval_audit_log","operation":"no-op","digestField":"targetAuditDigest","writeDisabled":true,"note":"原图片审批审计日志不得修改，只作为 digest precondition。"},{"id":"source-action-original","table":"asset_visual_approval_human_confirmation_actions","operation":"no-op","digestField":"targetSourceActionDigest","writeDisabled":true,"note":"源动作摘要必须与双人确认和纠错事件保持一致，不允许事务阶段换图。"},{"id":"source-evidence-original","table":"asset_visual_approval_source_evidence","operation":"no-op","digestField":"sourceEvidenceSha256","writeDisabled":true,"note":"源图证据只作为事务前置条件，不允许 redaction 或纠错写入替换原源图。"},{"id":"correction-event","table":"asset_visual_approval_audit_correction_events","operation":"insert","digestField":"correctionDigest","writeDisabled":true,"note":"未来真实写入时插入 correction/redaction 事件。"},{"id":"dual-control-approval","table":"asset_visual_approval_audit_correction_approvals","operation":"insert","digestField":"approvalDigest","writeDisabled":true,"note":"未来真实写入时插入双人确认 approval。"},{"id":"mcp-governance-index","table":"reits_mcp_governance_index_queue","operation":"queue","digestField":"transactionDigest","writeDisabled":true,"note":"未来真实写入成功后再排队 MCP 治理索引。"}],"preconditions":[{"id":"audit-digest-match","label":"原审计摘要匹配","satisfied":true,"digest":"e21e41162e8651cb7429dc809ec376201d05dacf50224c898853ffa5fa82b52f","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"c01084a752707dc4f1d7792a8253fc8b26f72897fcf48023a3c67638569e1da2","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"be80a6085af45d7991ffb47112bed8344df7e27bdd0713d961bb550754d9bd03","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"d1dfb03e5620c11f4bc9fb00c9aeaa38e2ea9dcb8da0d7e75c6865097f0015dd","note":"approvalDigest 必须来自图片纠错双人确认 dry-run。"}],"rollbackPlan":{"rollbackPlanId":"rollback-asset-visual-approval-audit-correction-transaction-reject-visual-candidate-cn-commercial-bbs-gap-pixel-map-pin","mode":"dry-run-only","compensationStrategy":"append-compensation-event-only","canRollbackWithoutMutation":true,"requiresOperatorReview":true,"rollbackWriteDisabled":true},"mcpQueuePlan":{"queueName":"reits_mcp_governance_index_queue","operation":"enqueue","writeDisabled":true,"resources":["reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-commercial-bbs-gap/pixel-map-pin","reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-commercial-bbs-gap/pixel-map-pin","reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-commercial-bbs-gap/pixel-map-pin","reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-commercial-bbs-gap/pixel-map-pin","reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-commercial-bbs-gap/pixel-map-pin","reits://asset-visual-approval-human-confirmation/cn-commercial-bbs-gap/pixel-map-pin","reits://asset-visual-approval-identity-fixture/cn-commercial-bbs-gap/pixel-map-pin","reits://asset-visual-approval-evidence-transaction/cn-commercial-bbs-gap/pixel-map-pin","reits://asset-visual-approval-evidence/cn-commercial-bbs-gap/pixel-map-pin","reits://asset-visual-registry-preview/cn-commercial-bbs-gap/pixel-map-pin","reits://virtual-assets/cn-commercial-bbs-gap"]},"publicSideEffectGuard":{"mapPublishDisabled":true,"bbsPostDisabled":true,"registryPromotionAllowed":false,"nftMintDisabled":true,"sourceEvidenceRedactionAllowed":false},"transactionDigest":"c5d41bebd25342871817ab930a9deda323e6199b2039c71ed4b6cdbd2a6499ed","links":{"transactionApi":"/api/public/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","transactionPage":"/operations/asset-visual-approval-audit-correction-transaction-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControl":"/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-commercial-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","dualControlApi":"/api/public/operations/asset-visual-approval-audit-correction-dual-control?asset=cn-commercial-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate&type=redaction-request","correction":"/operations/asset-visual-approval-audit-corrections?asset=cn-commercial-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate","correctionApi":"/api/public/operations/asset-visual-approval-audit-corrections?asset=cn-commercial-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate","auditLog":"/operations/asset-visual-approval-audit-log-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate","action":"/operations/asset-visual-approval-human-confirmation-actions?asset=cn-commercial-bbs-gap&format=pixel-map-pin&action=reject-visual-candidate","humanConfirmation":"/operations/asset-visual-approval-human-confirmation-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","identityFixture":"/operations/asset-visual-approval-identity-fixture-dry-run?asset=cn-commercial-bbs-gap&format=pixel-map-pin","evidenceTransaction":"/operations/asset-visual-approval-evidence-transaction-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","registryPreview":"/operations/asset-visual-registry-preview?asset=cn-commercial-bbs-gap&format=pixel-map-pin","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":{"transactionResourceUri":"reits://asset-visual-approval-audit-correction-transaction/reject-visual-candidate/cn-commercial-bbs-gap/pixel-map-pin","dualControlResourceUri":"reits://asset-visual-approval-audit-correction-dual-control/reject-visual-candidate/cn-commercial-bbs-gap/pixel-map-pin","correctionResourceUri":"reits://asset-visual-approval-audit-correction/reject-visual-candidate/cn-commercial-bbs-gap/pixel-map-pin","auditLogResourceUri":"reits://asset-visual-approval-audit-log/reject-visual-candidate/cn-commercial-bbs-gap/pixel-map-pin","visualApprovalHumanConfirmationActionResourceUri":"reits://asset-visual-approval-human-confirmation-action/reject-visual-candidate/cn-commercial-bbs-gap/pixel-map-pin","visualApprovalHumanConfirmationResourceUri":"reits://asset-visual-approval-human-confirmation/cn-commercial-bbs-gap/pixel-map-pin","visualApprovalIdentityFixtureResourceUri":"reits://asset-visual-approval-identity-fixture/cn-commercial-bbs-gap/pixel-map-pin","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","visualRegistryPreviewResourceUri":"reits://asset-visual-registry-preview/cn-commercial-bbs-gap/pixel-map-pin","visualReviewResourceUri":"reits://asset-visual-review-ledger/cn-commercial-bbs-gap/pixel-map-pin","futureAssetResourceUri":"reits://virtual-assets/cn-commercial-bbs-gap"}}],"statusBreakdown":[{"status":"transaction-dry-run-ready","label":"事务 dry-run 可校验","count":18},{"status":"needs-transaction-fields","label":"需要事务字段","count":0},{"status":"needs-dual-control","label":"需要双人确认","count":0},{"status":"blocked-by-policy","label":"策略阻断","count":0}],"writeSetBreakdown":[{"id":"audit-log-original","operation":"no-op","count":18},{"id":"source-action-original","operation":"no-op","count":18},{"id":"source-evidence-original","operation":"no-op","count":18},{"id":"correction-event","operation":"insert","count":18},{"id":"dual-control-approval","operation":"insert","count":18},{"id":"mcp-governance-index","operation":"queue","count":18}],"publicNotes":["BBS Gap 已进入 8 条图片纠错写入事务 dry-run；仍不写 transaction、不排队 MCP、不推进地图/BBS。","当前筛选范围输出 18 条图片纠错写入事务 dry-run，18 条可校验。","其中 14 条事务绑定源图证据；idempotencyKey 和 transactionDigest 已纳入 sourceEvidenceSha256。","事务 envelope 串联 targetAuditDigest、targetSourceActionDigest、sourceEvidenceSha256、correctionDigest、approvalDigest、transactionDigest 和 idempotencyKey。","真实写入必须在事务成功后再排队 MCP 治理索引，当前 databaseWriteDisabled=true、mcpQueueWriteDisabled=true。"],"qaWarnings":["该门禁不会写 transaction，transactionWritten 始终为 false。","该门禁不会排队 MCP 索引，mcpIndexQueued 始终为 false。","该门禁不会发布地图、BBS 或正式 NFT 图片清单。","POST 校验必须继承双人确认 requiredInputs，并携带匹配的 targetSourceActionDigest 与 sourceEvidenceSha256。","数据库事务、幂等锁、rollback worker 和 MCP index worker 完成前，不得开放真实写入。"]}