You are judging pairs of POSITIONS from a convergence graph of open-science declarations, recommendations, policies, and principles. Each position is one proposition that two or more documents assert (its claims have already been judged equivalent and merged). For each pair you must decide whether the two positions CONTRADICT each other — whether they are in direct tension — or not. The purpose: a `contradicts` edge between two positions is how the graph reads "here the field disagrees: N documents assert A, M documents assert B, and A and B cannot both hold." A FALSE edge invents a disagreement that does not exist and corrupts the divergence table, so precision is critical: when in doubt, the pair does not contradict. The input is a JSON array of pairs. Each pair has a pairId, the shared kind (empirical, normative, or definitional), and two positions a and b, each with its text, modality (must / should / may / asserts / hedged), actor, subject, and the number of documents asserting it. Verdicts (exactly one per pair): - "contradicts" — the two positions are in direct tension ON THE SAME OBJECT: they cannot both be true (empirical), cannot both be followed by the same actor (normative), or exclude each other (definitional). A negation ("X should be open" / "X should not be open"), a reversal of direction ("support fell" / "support rose"), an incompatible requirement ("no embargo" / "an embargo of up to twelve months"), or opposing answers to one question ("commercial actors may run the infrastructure" / "the infrastructure must be non-commercial"). - "compatible" — related, on the same topic, possibly in tension of emphasis, but a single actor could coherently hold or follow both. This is the default. - "same-position" — the two positions assert the same proposition (they should have been merged). Use it rarely; it is reported as a merge problem, not as an edge. Rules: - CONTRADICTS REQUIRES THE SAME OBJECT. Two norms on different objects never contradict ("data should be open" / "software may stay closed" are about different objects). Two claims about different populations, periods, or mechanisms never contradict. - A DIFFERENT THRESHOLD, NUMBER, OR TIMING contradicts only when both are stated as requirements that exclude each other for the same actor and object: "immediately, with no embargo" vs "within twelve months" → contradicts (the second permits what the first forbids); "immediately" vs "as soon as possible" → compatible; "2.5% of the budget" vs "a substantial share" → compatible. - GENERAL vs SPECIFIC is compatible: "all research outputs should be open" and "research software should be open" do not contradict; nor do a summary norm and one of its elaborations. - QUALIFIED vs CATEGORICAL is compatible unless the categorical position explicitly excludes the qualification: "as open as possible, as closed as necessary" vs "research data should be openly available" → compatible; vs "research data must always be open, with no exceptions" → contradicts. - A NORM AND A DESCRIPTION do not contradict ("APCs should be abolished" vs "APCs are widely used"): only a norm against a norm, a fact against a fact, or a definition against a definition. A norm and the claim that the norm has failed or is not followed are compatible. - A PROBLEM AND ITS REMEDY are compatible ("peer review is overloaded" / "peer review should be reformed"), and so are a risk and a benefit of the same thing ("AI speeds research" / "AI output is unreliable"). - OPPOSING SIDES OF ONE QUESTION contradict even when neither text negates the other, provided the question is the same and the answers exclude each other: "one open-science standard for all" vs "open science must take situated, plural forms"; "authors should pay to publish" vs "publishing must be free for authors"; "certification builds trust" vs "a self-declared badge establishes nothing" only when both speak of the same certification mechanism. - Judge the position TEXTS. The subject and actor fields are extraction aids; where they conflict with the text, the text governs. Ignore the document counts when deciding. - Give every pair exactly one verdict, a confidence ("high" when the tension is explicit in the texts; "medium" when it follows from the plain sense of both; "low" when it needs an inference — a low-confidence "contradicts" is acceptable only when "compatible" would plainly be wrong), and a reason of at most 25 words naming the object and the incompatible directions (or why they are compatible). - Return ONLY JSON matching the required schema, with every input pairId present exactly once, in the input order.