# UAT: Pre-print vs Peer Review (Multi-Sig Weighting) **Date:** YYYY-MM-DD **Feature:** Multi-Signature Consensus **Status:** [ ] PASS / [ ] FAIL / [ ] BLOCKED ## Scenario A pre-print on bioRxiv claims GLP-1 drugs have cardiovascular risks. A peer-reviewed Lancet study with expert co-signatures says cardiovascular outcomes are improved. The system should weight the Lancet study higher due to: 1. Higher source class (Clinical vs Observational) 2. Co-signatures from recognized reviewers ## Acceptance Criteria | Criterion | Expected | Met? | |-----------|----------|------| | Pre-print ingested | Hash returned | [ ] | | Peer-reviewed ingested | Hash returned | [ ] | | Co-signatures applied | 3 signatures on Lancet | [ ] | | Authority lens winner | Lancet study | [ ] | | Weight differential | Lancet > 2x bioRxiv | [ ] | ## Test Matrix | Step | Action | Expected | Actual | Status | |------|--------|----------|--------|--------| | 1 | Ingest bioRxiv pre-print | Hash returned | | [ ] | | 2 | Ingest Lancet study | Hash returned | | [ ] | | 3 | Add co-signatures to Lancet | 3 signatures recorded | | [ ] | | 4 | Query with Authority lens | Lancet wins | | [ ] | | 5 | Check weight ratio | >= 2x | | [ ] | ## Setup Commands ```bash # Start StemeDB cargo run --bin stemedb-api & sleep 2 ``` ## Test Commands ### Step 1: Ingest bioRxiv Pre-print (Observational, no co-signs) ```bash curl -X POST http://localhost:18180/v1/assertions \ -H "Content-Type: application/json" \ -d '{ "subject": "Semaglutide:CardiovascularOutcome", "predicate": "cv_risk_change", "object": {"Number": 1.15}, "confidence": 0.65, "source_class": "Observational", "source_hash": "0000000000000000000000000000000000000000000000000000000000000010" }' ``` **Expected:** `{"hash": "..."}` **Actual:** **Status:** [ ] ### Step 2: Ingest Lancet Study (Clinical, peer-reviewed) ```bash curl -X POST http://localhost:18180/v1/assertions \ -H "Content-Type: application/json" \ -d '{ "subject": "Semaglutide:CardiovascularOutcome", "predicate": "cv_risk_change", "object": {"Number": 0.86}, "confidence": 0.92, "source_class": "Clinical", "source_hash": "0000000000000000000000000000000000000000000000000000000000000011" }' ``` Save the returned hash as ``. **Expected:** `{"hash": "..."}` **Actual:** **Status:** [ ] ### Step 3: Add Co-Signatures to Lancet Study ```bash # Expert reviewer 1 curl -X POST http://localhost:18180/v1/votes \ -H "Content-Type: application/json" \ -d '{ "assertion_hash": "", "agent_id": "expert_cardiologist_001", "weight": 0.95 }' # Expert reviewer 2 curl -X POST http://localhost:18180/v1/votes \ -H "Content-Type: application/json" \ -d '{ "assertion_hash": "", "agent_id": "expert_cardiologist_002", "weight": 0.90 }' # Lancet editor curl -X POST http://localhost:18180/v1/votes \ -H "Content-Type: application/json" \ -d '{ "assertion_hash": "", "agent_id": "lancet_editor_review", "weight": 0.85 }' ``` **Expected:** 3 votes recorded **Actual:** **Status:** [ ] ### Step 4: Query with Authority Lens ```bash curl "http://localhost:18180/v1/query?subject=Semaglutide:CardiovascularOutcome&predicate=cv_risk_change&lens=authority" ``` **Expected:** Winner is Lancet study (cv_risk_change = 0.86) **Actual:** **Status:** [ ] ### Step 5: Verify Weight Differential Query the skeptic lens to see weight shares: ```bash curl "http://localhost:18180/v1/skeptic?subject=Semaglutide:CardiovascularOutcome&predicate=cv_risk_change" ``` **Expected:** Lancet weight_share >= 2x bioRxiv weight_share **Actual:** **Status:** [ ] ## Sign-Off Checklist - [ ] Pre-print assertion stored correctly - [ ] Peer-reviewed assertion stored correctly - [ ] Co-signatures increase effective weight - [ ] Authority lens prefers higher-tier + more signatures - [ ] Weight differential is meaningful (>= 2x) ## Notes *Multi-sig validation happens via VoteStore aggregation, not signature count alone.* --- **Tester:** **Date:** **Result:**