# Complete constructed article-draft review decisions

Two fictional draft records contain separate English/German bodies. A says 12 of 20 checks,eight open;B says 15 of 20,five open. B is declared copiedFrom A;this is a local relationship,not observed native copying. RA/RB are immutable constructed body references,not human approvals. PA/PB/PM are supplied preview records,not browser captures.

D1: draft A,publisher page-P1,reference RA,preview PA. Both locale fingerprints and intended publisher match. Decision supplied_review_record_ready_publication_unobserved. No link was sent and no article was published.
D2: draft B with reference RA from A and preview PB. Current15-of 20 body differs from the12-of 20 reference and the draft identity differs. Decision held_stale_or_other_branch_review. Matching title does not transfer a review.
D3: draft A/reference RA but preview PM identifies member-M1 rather than intended page-P1. Decision held_wrong_publisher. A correct-looking body cannot validate a different publishing identity.
D4: private review required;proposed native preview route is public_signed_in. Decision held_public_preview_private_review_mismatch. Public-preview wording and sign-in requirement are both retained;login is not named-reviewer permission. No confidential content or real recipient is present.
D5: draft A/reference RA,no preview observation. Decision preview_result_unobserved. Automatic-save documentation does not fill a missing readback.
D6: draft B/reference RB/preview PB. Both current locale bodies and Page identity match the fresh supplied references. Decision supplied_review_record_ready_publication_unobserved. Actual publication,final formatting,real human review and comprehension remain unobserved.

The checker reads actual UTF-8 texts and computes each locale's SHA-256 separately. Review fingerprints and preview bodies are separate snapshots,so changing either current body cannot silently refresh an old reference. Duplicate/dangling refs,wrong expected publisher,unsupported preview/private/publication/readiness claims and changed bodies with old ready claims are rejected. Extract and run python3 check.py with Python 3 already available. This is neither a native approval lock nor an access,recipient,reader or customer test.
