The short answerFreeze one answer-evidence CSV before labeling. Keep the evidence reviewers need, conceal only predeclared outcome metadata, give each reviewer every eligible row in a separately derived order, and restrict the reidentification key until both independent passes lock.
Selected masking is not proof of blindnessThe target, prompt, answer, and citations remain visible. Those fields can reveal period, system, intervention, or expected result. This page documents a masking attempt and residual cues; it does not certify that anyone was blind.

Preserve needed evidence, conceal selected metadata, keep the key separate

Same eligible evidenceBoth packets contain every eligible response exactly once, with blank mention, citation, recommendation, confidence, abstention, and note fields.
Different derived ordersA versioned deterministic PRNG derives separate reviewer-A and reviewer-B shuffles and opaque packet IDs from one declared seed.
Residual cues remainVisible answers and citations may reveal what metadata masking cannot. Possible cues are counted; known unblinding excludes a row from both packets.
Browser-local pre-labeling control

Generate the two packets and restricted key

Nothing is uploaded. The source is held only in this tab, and every displayed output hash covers the exact bytes offered for download.

01 · Protocol identity

Name the packet, people, codebook, and intended use

These declarations enter the protocol memo and hash records. They do not verify a person’s identity or an external codebook file.

Reusing the exact source, declarations, and seed reproduces the packet bytes.
02 · Frozen masking plan

Declare what reviewers will see before packet generation

The target, prompt, answer, and citation evidence are always visible. These controls govern only engine/surface and run timestamp.

03 · Frozen answer evidence

Import the exact 17-column source CSV

Each response ID must be unique. Excluded and unblinded rows remain in the coordinator key and counts but never enter either reviewer packet.

Valid UTF-8, exact header and order, no more than 5 MB or 5,000 data rows.
No file selected.
Local processing. Parsing, exact source hashing, deterministic shuffling, masking, preview, and downloads happen in this browser. Reloading clears the source and generated outputs.

Exact source CSV schema

The header is case-sensitive and must appear in this order. The generator does not guess renamed columns or silently choose among duplicate IDs.

Required 17-column answer-evidence source
ColumnReviewer visibilityRule
response_idKey onlyUnique and nonblank.
target_entityVisibleRequired for eligible rows.
exact_promptVisibleRequired for eligible rows; never rewritten.
answer_textVisibleRequired for eligible rows; markup is rendered only as inert text.
citation_evidenceVisibleRequired; the literal value none is allowed.
engine_surfacePlan-controlledVisible, deterministically aliased, or concealed.
run_timestampPlan-controlledVisible or concealed.
collection_periodKey onlyConcealed from both reviewer packets.
comparison_armKey onlyConcealed from both reviewer packets.
prior_labelKey onlyConcealed; may be blank if none exists.
expected_outcomeKey onlyConcealed; may be blank.
evidence_referenceKey onlyReplaced by the packet ID in reviewer files.
collector_noteKey onlyConcealed from reviewers.
review_eligibilityKey onlyExact value eligible or exclude.
exclusion_reasonKey onlyRequired when eligibility is exclude.
residual_cue_statusKey onlyExact value none known, possible, or unblinded/exclude.
residual_cue_noteKey onlyRequired for possible and unblinded/exclude.

Method, export behavior, and limits

The algorithm uses one versioned, deterministic text-seed function and Fisher–Yates shuffle. Reviewer A and reviewer B use separate derived streams. Opaque packet IDs are also stream-derived and are joined back to the source only in the restricted key. Determinism supports reconstruction; it does not make the order cryptographically unpredictable.

The codebook-declaration hash covers the codebook name, version, and endpoint-rule text entered here. It does not hash or authenticate an external codebook file. The masking-plan hash covers the declared modes, owner, date, purpose, and process confirmations. The source hash alone covers the exact imported file bytes.

Spreadsheet-oriented export defenseEvery CSV field is enclosed in double quotes. If the first non-whitespace character is =, +, -, @, , , , or , the exported value receives a leading horizontal tab inside the quoted field. This intentionally changes the downloaded cell, is counted in the memo, and is not a universal guarantee across spreadsheet programs or downstream transformations.

The generator does not upload, store, email, or share packets; identify reviewers; inspect hidden file metadata beyond the parsed CSV; redact sensitive content; call an AI model; label an answer; measure agreement; compare to a reference standard; adjudicate; prove independence; prove masking success; certify compliance; or support a causal treatment-effect claim.

Method sources and implementation context

Frequently asked questions

What source CSV does the packet generator require?

It requires the exact 17-column answer-evidence schema shown above, with one unique response ID per row, declared review eligibility, and a residual-cue status. Imports are limited to valid UTF-8, 5 MB, and 5,000 data rows.

What evidence stays visible to reviewers?

The target entity, exact prompt, answer text, and citation evidence stay visible because reviewers need them to label mentions, citations, and recommendations. Engine and timestamp treatment follow the masking plan.

Does shuffled metadata make a review blind?

No. Shuffling and selected field concealment can reduce some cues, but answer content, citations, phrasing, and subject matter can still reveal period, surface, intervention, or expected outcome.

Why generate two independent packet orders?

Separate deterministic streams give reviewer A and reviewer B different row orders while preserving the same eligible evidence set. If the two derived orders happen to match, the generator warns instead of silently trying seeds until it gets a preferred result.

Where is the restricted mapping key stored?

Nowhere by this page. It is generated locally for the coordinator to download. The page does not upload, retain, share, email, or verify access to the key.

Are formula-like CSV values changed?

Only downloaded CSV cells whose first non-whitespace character is a formula trigger receive a disclosed leading tab inside an always-quoted field. The browser view preserves the supplied value, and no defense is universal across every spreadsheet importer.

After both passes lock

Verify reviewer returns before agreement QA

Reconstruct both blank packets, verify the exact restricted key and mappings, and preserve both original label sets before calculating agreement.

Check reviewer return integrity