{"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":"f498f8e80b470a814d625bf6422db52b6b0b6731644403a3d93821bf8582220b","targetSourceActionDigest":"d4db647031f6fbeb95ccbea6a61abb95dff9f22d6b1b80be0ad0d29f119195da","targetSourceEvidenceSha256":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","correctionDigest":"16fe8cc06e3d6d54765628b2a0c86c0eec8814e4b8aad2c1322a625b3709e000","approvalDigest":"cb42d6a25b4c9b9f2b4e103ca36a897a572445bcee6339590c0a2c74b663af2e","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":"b2cf13a03f01d4e7999adf6b248e962d","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":"f498f8e80b470a814d625bf6422db52b6b0b6731644403a3d93821bf8582220b","targetSourceActionDigest":"d4db647031f6fbeb95ccbea6a61abb95dff9f22d6b1b80be0ad0d29f119195da","targetSourceEvidenceSha256":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","sourceEvidencePublicPath":"/assets/virtual-assets/cn-highway-bbs-gap/nft-card.png","sourceMatchesTransaction":true,"correctionDigest":"16fe8cc06e3d6d54765628b2a0c86c0eec8814e4b8aad2c1322a625b3709e000","approvalDigest":"cb42d6a25b4c9b9f2b4e103ca36a897a572445bcee6339590c0a2c74b663af2e","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":"f498f8e80b470a814d625bf6422db52b6b0b6731644403a3d93821bf8582220b","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"4dd16a3a69a0218626213e5f93cf3e60a2a0626ffd1a795efbac0d9bf541f955","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"d4db647031f6fbeb95ccbea6a61abb95dff9f22d6b1b80be0ad0d29f119195da","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"16fe8cc06e3d6d54765628b2a0c86c0eec8814e4b8aad2c1322a625b3709e000","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"cb42d6a25b4c9b9f2b4e103ca36a897a572445bcee6339590c0a2c74b663af2e","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":"6d22d60d5b18ecc00fdf1d535a3aebc82fb64b5321b41d0caf0b472c08cfdc67","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":"dfc4448f7500e0cd6c7d912a463d92b08653cd915c528d3197458fc4f6c22003","targetSourceActionDigest":"0e6276c4ad3ab84d7f0ce555502dba59740320134ebeb0c3f4dd4971ea5cd8cb","targetSourceEvidenceSha256":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","correctionDigest":"7cd54574b4673167d44726f0026c5b031fa505c7e3638d455cf2b87c5bb4e36b","approvalDigest":"b88a772c615d3cd4a3e259dbc461b1775f769eaf80f6eedad2278cb15178257b","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":"7533a3b72a00eee01ef3b00db6a5de1d","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":"dfc4448f7500e0cd6c7d912a463d92b08653cd915c528d3197458fc4f6c22003","targetSourceActionDigest":"0e6276c4ad3ab84d7f0ce555502dba59740320134ebeb0c3f4dd4971ea5cd8cb","targetSourceEvidenceSha256":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","sourceEvidencePublicPath":"/assets/virtual-assets/cn-commercial-bbs-gap/nft-card.png","sourceMatchesTransaction":true,"correctionDigest":"7cd54574b4673167d44726f0026c5b031fa505c7e3638d455cf2b87c5bb4e36b","approvalDigest":"b88a772c615d3cd4a3e259dbc461b1775f769eaf80f6eedad2278cb15178257b","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":"dfc4448f7500e0cd6c7d912a463d92b08653cd915c528d3197458fc4f6c22003","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"2db843ee429d1a9c8f05d7448f8fb04ac345ad14e789a5451c83cf666d89199a","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"0e6276c4ad3ab84d7f0ce555502dba59740320134ebeb0c3f4dd4971ea5cd8cb","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"7cd54574b4673167d44726f0026c5b031fa505c7e3638d455cf2b87c5bb4e36b","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"b88a772c615d3cd4a3e259dbc461b1775f769eaf80f6eedad2278cb15178257b","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":"724c96990a37aa457a27388c79d4ffdd08ea397e56dff5055c4b23aee663965c","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":"dbee96a537c92ae2cb12ab09d5f0b125a6b60289eeed5381c10476b792785952","targetSourceActionDigest":"40bd5bffbc4dec6f79f2534c6b291087d2610010ce03d46c31327fa4994091b9","targetSourceEvidenceSha256":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","correctionDigest":"a66d0b087afd81b42a38eef53055c5be3075942528d23d6fa92579c4a2013f32","approvalDigest":"41df1a18c44f44577d2c25f01d870c46100dcaa0cba5f7d232328b032e4c31ab","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":"1a8d76ea07cf9d03184b74e0bc7aa2a1","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":"dbee96a537c92ae2cb12ab09d5f0b125a6b60289eeed5381c10476b792785952","targetSourceActionDigest":"40bd5bffbc4dec6f79f2534c6b291087d2610010ce03d46c31327fa4994091b9","targetSourceEvidenceSha256":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","sourceEvidencePublicPath":"/assets/virtual-assets/cn-highway-bbs-gap/map-pin.png","sourceMatchesTransaction":true,"correctionDigest":"a66d0b087afd81b42a38eef53055c5be3075942528d23d6fa92579c4a2013f32","approvalDigest":"41df1a18c44f44577d2c25f01d870c46100dcaa0cba5f7d232328b032e4c31ab","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":"dbee96a537c92ae2cb12ab09d5f0b125a6b60289eeed5381c10476b792785952","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"06be14541031f7be7028312df444b442522951ea21b8022732795f65dff40073","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"40bd5bffbc4dec6f79f2534c6b291087d2610010ce03d46c31327fa4994091b9","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"a66d0b087afd81b42a38eef53055c5be3075942528d23d6fa92579c4a2013f32","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"41df1a18c44f44577d2c25f01d870c46100dcaa0cba5f7d232328b032e4c31ab","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":"f2328970220c11cfc3bbabe47966e30cbb440c94dae5ce0464479eeddfafa6b4","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":"05ca8eccd8cd7b3a278140b8deced87561b0df0293d2621bf895525e48e89755","targetSourceActionDigest":"bb7461e59b946d7ee2d28902d17bce4c0ef509c305bec1f865f0e8e70224b5ba","targetSourceEvidenceSha256":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","correctionDigest":"ca158aa2674b86544e8b65260eafc0439baa20ed17b583c663a15aa783ce1267","approvalDigest":"5e15fecac780c3b56c6430bebfb7baa7cb836ac49d816d5e1527e292c1fc59d5","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":"6e27eda5887f998104f3a575041a5309","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":"05ca8eccd8cd7b3a278140b8deced87561b0df0293d2621bf895525e48e89755","targetSourceActionDigest":"bb7461e59b946d7ee2d28902d17bce4c0ef509c305bec1f865f0e8e70224b5ba","targetSourceEvidenceSha256":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","sourceEvidencePublicPath":"/assets/virtual-assets/cn-commercial-bbs-gap/map-pin.png","sourceMatchesTransaction":true,"correctionDigest":"ca158aa2674b86544e8b65260eafc0439baa20ed17b583c663a15aa783ce1267","approvalDigest":"5e15fecac780c3b56c6430bebfb7baa7cb836ac49d816d5e1527e292c1fc59d5","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":"05ca8eccd8cd7b3a278140b8deced87561b0df0293d2621bf895525e48e89755","note":"targetAuditDigest 必须与原图片审批审计日志一致。"},{"id":"source-evidence-digest-match","label":"源图证据摘要匹配","satisfied":true,"digest":"699af564f0b8d7cbb704a5a9507ebae14ccec1be5c37180458dc3b01f9b15b70","note":"sourceEvidenceSha256 必须与双人确认、纠错事件和原审计日志一致。"},{"id":"source-action-digest-match","label":"源动作摘要匹配","satisfied":true,"digest":"bb7461e59b946d7ee2d28902d17bce4c0ef509c305bec1f865f0e8e70224b5ba","note":"targetSourceActionDigest 必须与双人确认和纠错事件一致，避免事务绑定错误源动作。"},{"id":"correction-digest-match","label":"纠错摘要匹配","satisfied":true,"digest":"ca158aa2674b86544e8b65260eafc0439baa20ed17b583c663a15aa783ce1267","note":"correctionDigest 必须来自图片纠错事件 dry-run。"},{"id":"approval-digest-match","label":"双人确认摘要匹配","satisfied":true,"digest":"5e15fecac780c3b56c6430bebfb7baa7cb836ac49d816d5e1527e292c1fc59d5","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":"c8299762f499e5fc79ff7b9bc2420dfa5ee87911772d92c3d8337de83930a46b","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 完成前，不得开放真实写入。"]}