Repository object · test

Test Featured

Accepted test in the public catalog.

Source path
tests/test_featured.py
Media type
text/x-python
Object ID
em:test:sha256:8078a30e5d5b4f63f1bbd3d484ed5caa76d678db524e913714c1e4aeb5ec186d
Content digest
6c21bea428fc89bb56261f94ca496bae5a34a6bc59c2daf7e83c1689a9d09d5e

Source content

from __future__ import annotations

import hashlib

import json

import re

from pathlib import Path

from urllib.parse import urlparse

import pytest

from epistemedia.cli import main

from epistemedia.core import PublicCatalog, build_public, stable_id, verify_release_identity

from epistemedia.dossier import independence_summary

from epistemedia.featured import (

FEATURE_VIEWS,

FeaturedDossier,

FeaturedDossierError,

share_card_svg,

)

from epistemedia.server import Gateway, Request

ROOT = Path(__file__).resolve().parents[1]

SLUG = "corrections-and-familiarity-backfire"

def test_feature_manifest_binds_exact_reviewed_dossier_and_derives_counts() -> None:

featured = FeaturedDossier.load(ROOT)

counts = featured.derived_counts()

assert featured.slug == SLUG

assert featured.dossier["dossier_id"] == (

"em:dossier:sha256:4339d6d6d52b9b534d2e63c95f52ff3cf90be5264f567762f47bab9af4d945a7"

)

assert featured.receipt["decision"] == "pass"

assert featured.receipt["repository"]["reviewed_head"] == featured.manifest["reviewed_head"]

assert counts["apparent_support_assertion_count"] == 10

assert counts["known_support_data_root_count"] == 6

assert counts["unresolved_support_data_root_count"] == 1

assert counts["target_comparable_support_data_root_count"] == 4

assert counts["target_comparable_unresolved_data_root_count"] == 1

assert counts["review_report_assertion_count"] == 4

assert counts["counter_assertion_count"] == 12

assert counts["counter_data_root_count"] == 12

def test_real_shared_ancestor_collapses_without_collapsing_new_participant_data() -> None:

dossier = FeaturedDossier.load(ROOT).dossier

reported_unpublished = independence_summary(

dossier,

[

"assert-handbook-claim",

"assert-schwarz-flu-result",

"assert-ecker-2020-historical-report",

],

)

assert reported_unpublished["independent_lineage_count"] == 0

assert reported_unpublished["unknown_lineage_count"] == 1

assert reported_unpublished["unknown_lineages"] == ["lineage-skurnik-2007-data"]

new_participants_shared_program = independence_summary(

dossier,

["assert-pluviano-2017-result", "assert-pluviano-2019-result"],

)

assert new_participants_shared_program["independent_lineage_count"] == 2

assert new_participants_shared_program["unknown_lineage_count"] == 0

def test_every_featured_sentence_resolves_exact_span_edition_and_work_identity() -> None:

featured = FeaturedDossier.load(ROOT)

for view in FEATURE_VIEWS:

projection = featured.projection(view)

assert projection["featured_relations"]

for item in projection["featured_relations"]:

assert item["statement"]

assert item["statement"] == item["relation"]["note"]

assert item["sources"]

for source in item["sources"]:

span = source["span"]

edition = source["edition"]

work = source["source_work"]

assert span["edition_key"] == edition["key"]

assert edition["work_key"] == work["key"]

assert span["id"].startswith("em:dossier-span:sha256:")

assert edition["id"].startswith("em:dossier-edition:sha256:")

assert work["id"].startswith("em:dossier-source-work:sha256:")

assert span["locator"]["label"]

assert span["extent"]["type"] in {"quote", "json-value"}

assert work["canonical_uri"].startswith("http")

assert work["license"]

encyclopedia = featured.projection("encyclopedia")

pluviano = encyclopedia["featured_relations"][0]

thomas = encyclopedia["featured_relations"][1]

assert "two vaccine-message studies" not in pluviano["statement"].lower()

assert "later direct replication" not in pluviano["statement"].lower()

assert {source["source_work"]["key"] for source in pluviano["sources"]} == {

"work-pluviano-2017"

}

assert "did not reach significance in every experiment" not in thomas["statement"]

assert {source["source_work"]["key"] for source in thomas["sources"]} == {

"work-thomas-2024"

}

def test_policy_views_share_dossier_sources_but_materially_differ() -> None:

catalog = PublicCatalog.build(ROOT)

featured = FeaturedDossier.load(ROOT)

encyclopedia = featured.envelope(catalog, "encyclopedia")

skeptical = featured.envelope(catalog, "skeptical")

assert encyclopedia["catalog_id"] == skeptical["catalog_id"]

assert encyclopedia["frontier"] == skeptical["frontier"]

assert encyclopedia["commit"] == skeptical["commit"]

assert encyclopedia["policies"] == skeptical["policies"]

assert encyclopedia["data"]["dossier"] == skeptical["data"]["dossier"]

assert encyclopedia["data"]["source_works"] == skeptical["data"]["source_works"]

assert encyclopedia["data"]["view"]["policy_id"] != skeptical["data"]["view"]["policy_id"]

assert encyclopedia["data"]["view"]["label"] != skeptical["data"]["view"]["label"]

assert [

item["relation"]["key"] for item in encyclopedia["data"]["featured_relations"]

] != [item["relation"]["key"] for item in skeptical["data"]["featured_relations"]]

skeptical_replication = next(

item

for item in skeptical["data"]["featured_relations"]

if item["relation"]["key"]

== "relation-ecker-2023-failed-replication-pluviano-2017"

)

assert "did not reproduce" in skeptical_replication["statement"]

assert (

skeptical_replication["statement"]

!= skeptical_replication["proposition"]["text"]

)

assert encyclopedia["content_digest"] != skeptical["content_digest"]

def test_scoreboard_ledger_is_complete_derived_and_source_identified() -> None:

featured = FeaturedDossier.load(ROOT)

projection = featured.projection("encyclopedia")

counts = projection["counts"]

ledger = projection["evidence_ledger"]

assert [item["key"] for item in ledger["apparent_support_assertions"]] == counts[

"apparent_support_assertion_keys"

]

assert [item["key"] for item in ledger["target_comparable_support_roots"]] == counts[

"target_comparable_support_data_root_keys"

]

assert [

item["key"] for item in ledger["target_comparable_unresolved_roots"]

] == counts["target_comparable_unresolved_data_root_keys"]

assert [item["key"] for item in ledger["counter_roots"]] == counts[

"counter_data_root_keys"

]

assert len(ledger["apparent_support_assertions"]) == 10

assert len(ledger["target_comparable_support_roots"]) == 4

assert len(ledger["target_comparable_unresolved_roots"]) == 1

assert len(ledger["counter_roots"]) == 12

for entries in ledger.values():

for entry in entries:

assert entry["source_works"]

assert all(work["title"] and work["canonical_uri"] for work in entry["source_works"])

def test_practical_reading_is_policy_relative_and_relation_source_closed() -> None:

featured = FeaturedDossier.load(ROOT)

readings = {}

for view in FEATURE_VIEWS:

projection = featured.projection(view)

relation_keys = [

item["relation"]["key"] for item in projection["featured_relations"]

]

reading = projection["practical_reading"]

assert reading["basis_relation_keys"] == relation_keys

assert "universal" in reading["qualifier"].lower()

assert all(item["sources"] for item in projection["featured_relations"])

readings[view] = reading["text"]

assert readings["encyclopedia"] != readings["skeptical"]

def test_share_card_is_deterministic_view_specific_and_identity_bound() -> None:

catalog = PublicCatalog.build(ROOT)

featured = FeaturedDossier.load(ROOT)

encyclopedia = featured.envelope(catalog, "encyclopedia")

skeptical = featured.envelope(catalog, "skeptical")

first = share_card_svg(encyclopedia, "https://epistemedia.org")

second = share_card_svg(encyclopedia, "https://epistemedia.org")

skeptical_card = share_card_svg(skeptical, "https://epistemedia.org")

assert first == second

assert first != skeptical_card

assert encyclopedia["data"]["title"] in first

assert encyclopedia["data"]["view"]["label"].replace("&", "&") in first

assert encyclopedia["data"]["dossier_id"] in first

assert encyclopedia["catalog_id"] in first

assert encyclopedia["frontier"] in first

assert encyclopedia["commit"] in first

assert "10" in first and "4 + 1?" in first and "12" in first

assert (

"https://epistemedia.org/how-we-know/corrections-and-familiarity-backfire/"

"encyclopedia/"

) in first

assert "<script" not in first

def test_static_html_markdown_and_json_preserve_one_view_identity(tmp_path: Path) -> None:

public = tmp_path / "public"

build_public(ROOT, public)

catalog = PublicCatalog.build(ROOT)

featured = FeaturedDossier.load(ROOT)

expected = featured.envelope(catalog, "encyclopedia")

case = public / "how-we-know" / SLUG

assert json.loads((case / "index.json").read_text()) == expected

assert json.loads((case / "encyclopedia" / "index.json").read_text()) == expected

markdown = (case / "index.md").read_text()

html = (case / "index.html").read_text()

home = (public / "index.html").read_text()

assert expected["data"]["dossier_id"] in markdown

assert expected["content_digest"] in markdown

assert expected["data"]["dossier_id"] in html

assert expected["content_digest"] in html

assert html.count("<h1>") == 1

assert html.count('<details class="source-xray">') == 6

assert '<nav class="policy-switch" aria-label="Evidence policy">' in html

assert 'aria-current="page"' in html

assert "<script" not in html

assert "source-xray" in html

assert 'href="#apparent-support"' in html

assert 'href="#supporting-roots"' in html

assert 'href="#counter-roots"' in html

assert 'id="unresolved-lineage"' in html

assert 'id="apparent-support"' in html

assert 'id="supporting-roots"' in html

assert 'id="counter-roots"' in html

assert html.count('class="ledger-entry-head"') == 27

assert html.count("<dt>") >= 5

assert "The Stranger Test asks how many apparently separate claims" in html

assert expected["data"]["practical_reading"]["text"] in html

assert "Share card" in html

assert "86 exact spans" in home

assert home.index("Does repeating misinformation") < home.index(

"Explore how the record is built"

)

assert (

f'href="https://epistemedia.org/how-we-know/{SLUG}/#unresolved-lineage"'

in home

)

skeptical_html = (case / "skeptical" / "index.html").read_text()

assert 'href="#apparent-support"' in skeptical_html

assert 'href="#supporting-roots"' in skeptical_html

assert 'href="#counter-roots"' in skeptical_html

assert f'href="https://epistemedia.org/how-we-know/{SLUG}/#apparent-support"' not in (

skeptical_html

)

def test_public_review_receipt_is_exact_sanitized_and_linked(tmp_path: Path) -> None:

public = tmp_path / "public"

build_public(ROOT, public)

featured = FeaturedDossier.load(ROOT)

expected = featured.review_envelope(PublicCatalog.build(ROOT))

review = public / "how-we-know" / SLUG / "review"

assert json.loads((review / "index.json").read_text()) == expected

html = (review / "index.html").read_text()

markdown = (review / "index.md").read_text()

home = (public / "index.html").read_text()

case = (public / "how-we-know" / SLUG / "index.html").read_text()

assert expected["data"]["review"]["reviewer_id"] in html

assert expected["data"]["review"]["reviewed_head"] in html

assert expected["data"]["review"]["receipt_sha256"] in html

assert "29 source receipts" in html

assert "86 span records" in html

assert "A separate Codex review agent worked from a fresh clone" in html

assert "independently retrieved the declared evidence" in html

assert "did not use the authoring agent's artifacts" in html

assert "did not decide whether the scientific conclusion is ultimately true" in html

assert "Technical reviewer ID" in html

assert "A separate Codex review agent worked from a fresh clone" in markdown

assert "Technical reviewer ID" in markdown

assert "another model family" not in (html + markdown).lower()

assert "human reviewer" not in (html + markdown).lower()

assert expected["data"]["review"]["fresh_clone"] is True

assert expected["data"]["review"]["independent_retrieval"] is True

assert expected["data"]["review"]["authoring_agent_artifacts_used"] is False

assert "Independence conditions" in markdown

assert "/private/tmp" not in html + markdown + (review / "index.json").read_text()

assert "Review receipt" in home

assert "Review receipt" in case

assert "Independently reviewed</span>" not in home

def test_editorial_pass_preserves_accepted_case_input_bytes() -> None:

expected = {

ROOT / "catalog" / "dossiers" / f"{SLUG}.json": (

"5c96dead036b527793ba5a0de59bf7316efdfeb591470d4a23e5bf979f3b9288"

),

ROOT

/ "research"

/ "how-we-know"

/ "corrections-backfire"

/ "candidate-dossier.json": (

"7003413e286e4d310f81441db33f4a467ba2eb3e08f41ddfa3cef5abb34707ca"

),

ROOT

/ "research"

/ "how-we-know"

/ "corrections-backfire"

/ "review-receipts"

/ "20260822T183134Z-codex-independent-reviewer.json": (

"503d16396b25b1c22d7fc10ac6fb7db2e530e6ce348d63fa8b639db5a5288f0a"

),

}

for path, digest in expected.items():

assert hashlib.sha256(path.read_bytes()).hexdigest() == digest

def test_cold_start_agent_discovers_and_summarizes_case_from_llms(tmp_path: Path) -> None:

public = tmp_path / "public"

build_public(ROOT, public)

llms = (public / "llms.txt").read_text()

links = dict(re.findall(r"^- \[([^]]+)\]\(([^)]+)\)$", llms, re.MULTILINE))

markdown_url = links["Featured evidence dossier"]

json_url = links["Featured dossier JSON"]

assert markdown_url.endswith(f"/how-we-know/{SLUG}/index.md")

assert json_url.endswith(f"/how-we-know/{SLUG}/index.json")

markdown_path = public / urlparse(markdown_url).path.lstrip("/")

json_path = public / urlparse(json_url).path.lstrip("/")

dossier = json.loads(json_path.read_text())["data"]

summary = {

"question": dossier["question"],

"verdict": dossier["view"]["label"],

"apparent": dossier["counts"]["apparent_support_assertion_count"],

"support_known": dossier["counts"]["target_comparable_support_data_root_count"],

"support_unresolved": dossier["counts"][

"target_comparable_unresolved_data_root_count"

],

"counter": dossier["counts"]["counter_data_root_count"],

"unresolved": dossier["unresolved_lineages"][0]["note"],

}

assert markdown_path.exists()

assert summary["question"].startswith("When a correction repeats a false claim")

assert (summary["apparent"], summary["support_known"], summary["support_unresolved"]) == (

10,

4,

1,

)

assert summary["counter"] == 12

assert "2007" in summary["unresolved"]

def test_release_identity_verifier_rejects_mixed_build(tmp_path: Path) -> None:

public = tmp_path / "public"

build_public(ROOT, public)

assert verify_release_identity(public) == []

home = public / "index.html"

catalog = json.loads((public / "catalog.json").read_text())

home.write_text(home.read_text().replace(catalog["commit"], "0" * 40, 1))

findings = verify_release_identity(public)

assert "mixed release identity in index.html: missing commit" in findings

assert "release manifest digest differs: index.html" in findings

def test_release_identity_verifier_recomputes_manifest_and_closes_inventory(

tmp_path: Path,

) -> None:

public = tmp_path / "public"

build_public(ROOT, public)

manifest_path = public / "manifest.json"

manifest = json.loads(manifest_path.read_text())

manifest["manifest_id"] = "em:release-manifest:sha256:" + "0" * 64

manifest_path.write_text(json.dumps(manifest))

assert "release manifest identity does not match its declared inventory" in (

verify_release_identity(public)

)

manifest["manifest_id"] = stable_id(

"release-manifest",

{

"catalog_id": manifest["catalog_id"],

"frontier": manifest["frontier"],

"commit": manifest["commit"],

"files": [(item["path"], item["sha256"]) for item in manifest["files"]],

},

)

manifest["files"][0]["bytes"] += 1

manifest_path.write_text(json.dumps(manifest))

assert any(

finding.startswith("release manifest byte count differs:")

for finding in verify_release_identity(public)

)

def test_api_mcp_cli_and_static_json_are_exactly_equivalent(

tmp_path: Path, capsys: pytest.CaptureFixture[str]

) -> None:

public = tmp_path / "public"

build_public(ROOT, public)

static = json.loads(

(public / "how-we-know" / SLUG / "skeptical" / "index.json").read_text()

)

gateway = Gateway(ROOT)

status, _, api = gateway.handle_api(

Request(

"GET",

f"/v1/dossiers/{SLUG}",

{"policy": ["skeptical"]},

{},

b"",

)

)

assert status == 200

assert api == static

tool = gateway.mcp_method(

"tools/call",

{

"name": "get_dossier",

"arguments": {"slug": SLUG, "policy": "skeptical"},

},

)

assert tool["structuredContent"] == static

resource = gateway.mcp_method(

"resources/read", {"uri": f"epistemedia://dossier/{SLUG}/skeptical"}

)

resource_envelope = json.loads(resource["contents"][0]["text"])

assert resource_envelope == static

assert main(["--root", str(ROOT), "dossier", SLUG, "--policy", "skeptical"]) == 0

cli = json.loads(capsys.readouterr().out)

assert cli == static

def test_dossier_byte_drift_fails_closed(tmp_path: Path) -> None:

manifest = json.loads(

(ROOT / "catalog" / "dossiers" / f"{SLUG}.json").read_text()

)

dossier_source = ROOT / manifest["dossier_path"]

receipt_source = ROOT / manifest["review_receipt_path"]

manifest_target = tmp_path / "catalog" / "dossiers" / f"{SLUG}.json"

dossier_target = tmp_path / manifest["dossier_path"]

receipt_target = tmp_path / manifest["review_receipt_path"]

for target in (manifest_target, dossier_target, receipt_target):

target.parent.mkdir(parents=True, exist_ok=True)

manifest_target.write_text(json.dumps(manifest))

dossier_target.write_bytes(dossier_source.read_bytes())

receipt_target.write_bytes(receipt_source.read_bytes())

altered = json.loads(dossier_target.read_text())

altered["title"] += " altered"

dossier_target.write_text(json.dumps(altered))

with pytest.raises(FeaturedDossierError):

FeaturedDossier.load(tmp_path)

def test_review_receipt_byte_drift_and_forged_independence_fail_closed(

tmp_path: Path,

) -> None:

manifest = json.loads(

(ROOT / "catalog" / "dossiers" / f"{SLUG}.json").read_text()

)

dossier_source = ROOT / manifest["dossier_path"]

receipt_source = ROOT / manifest["review_receipt_path"]

manifest_target = tmp_path / "catalog" / "dossiers" / f"{SLUG}.json"

dossier_target = tmp_path / manifest["dossier_path"]

receipt_target = tmp_path / manifest["review_receipt_path"]

for target in (manifest_target, dossier_target, receipt_target):

target.parent.mkdir(parents=True, exist_ok=True)

manifest_target.write_text(json.dumps(manifest))

dossier_target.write_bytes(dossier_source.read_bytes())

receipt_target.write_bytes(receipt_source.read_bytes())

forged = json.loads(receipt_target.read_text())

forged["reviewer"]["id"] = "forged-author-reviewer"

forged["reviewer"]["independent_retrieval"] = False

forged["reviewer"]["authoring_agent_artifacts_used"] = True

receipt_target.write_text(json.dumps(forged))

with pytest.raises(FeaturedDossierError):

FeaturedDossier.load(tmp_path)

manifest["review_receipt_sha256"] = hashlib.sha256(

receipt_target.read_bytes()

).hexdigest()

manifest["review_receipt_bytes"] = receipt_target.stat().st_size

manifest_target.write_text(json.dumps(manifest))

with pytest.raises(FeaturedDossierError):

FeaturedDossier.load(tmp_path)

Build receipt

Reproduce this projection

Reproducible projection
Catalog
em:catalog:sha256:9bfc972213cba2cde167386103dc2c011ee74639fb7f0794c54120fbbdef1a5d
Frontier
em:frontier:sha256:f33be3eae4c75232d56750ef9a1aa79d96274ece3417d65a75c1391bf61a81bf
Accepted commit
f92846570180dfa4511263f8ba98ecd18f7772c9
Epistemic policy
commons-balanced-v0.1
Disclosure policy
public-noninterference-v0.1
Compiler
epistemedia/0.2.0