Research
TenetBench: A Clause-Anchored Russian Corpus for Evaluating Language Models against Professional Codes of Ethics
Overview Research area: Natural Language Processing — evaluation methodology and AI safety/alignment benchmarking for large language models, with a focus on Russian-language resources and professional
- arXiv
- 2610.29477
- Published
- 2026-10-21
- Authors
- Yegor Anichkov, Valery Vinogradov, Andrey Furov, Marina Polukoshko, Sergey Bolovtsov
AI summary
Overview
- Research area: Natural Language Processing — evaluation methodology and AI safety/alignment benchmarking for large language models, with a focus on Russian-language resources and professional codes of ethics.
- Technical level: Advanced. The paper is written for researchers who are comfortable with benchmark design, inter-annotator agreement statistics, LLM-as-judge methodology and deontic text parsing.
- Scope (one sentence): The paper introduces TenetBench, a Russian-language corpus of 3,433 requests that conflict with specific numbered clauses of fifteen professional codes of ethics — each paired with a benign twin on the same scenario — together with an automated generation pipeline, a frozen model-judge evaluation procedure, and results for fourteen model and reasoning-mode combinations.
What This Paper Is About
When a specialist such as a notary, a school psychologist or a procurement officer asks an AI assistant for help, the assistant can produce fluent, professionally plausible text that breaks a specific rule of that specialist's own code of ethics — without triggering any safety classifier, because the text is harmless under broad harm taxonomies. Existing evaluations can say whether an output is "harmful" in a general category, but they cannot say which provision of which code was breached, or how often. TenetBench addresses this by anchoring every test request to a named clause of a published professional code and by pairing each such request with a benign twin that differs only in whether what is asked is legitimate, so that conformance can be measured without rewarding a model that simply refuses everything.
Key Contributions
- A clause-anchored corpus with a benign control. 3,433 requests conflicting with clauses of fifteen professional codes, each paired with a benign twin built on the same scenario. 2,235 of the pairs — covering ten of the fifteen documents — are released together with the pipeline that generated and accepted them.
- An evaluation procedure for conformance to professional codes. The procedure uses a frozen model judge validated against adjudicated human labels on 1,860 elements, and it is applied to fourteen combinations of model and reasoning mode. Most of those combinations complete requests that breach a professional code, and those that conform more do so by declining.
- A demonstrated transfer beyond Russian. The pipeline was carried to two codes of other jurisdictions written in English, supporting the claim that it is portable to another language.
- A release mode for copyrighted normative texts. Clause identifiers are hashes over the document identifier and the positional node path (never over the text itself), and the withheld clause text is published as a SHA-256 digest with a normalisation rule, source reference and locators, so a reader can verify that they hold the same text.
Main Findings
- Most models treat code breaches as routine work. Of the fourteen model and reasoning-mode combinations, eleven produce content conflicting with the target clause on most conflicting tasks, mostly without a warning.
- Warnings rarely mean safety. Nearly three warnings in four accompany conflicting content — a pattern the paper calls "safety theatre," captured in the separate outcome category violation with warning.
- Conforming models decline rather than fail to understand. The models that conform more do so by refusing the request while still serving its legitimate benign twin, which is why the benign refusal rate is reported beside every score.
- Reasoning mode can hurt. Enabling reasoning halved the refusals of two models, and lowered conformance in two of the three models tested.
- Russian adaptation is not conformance. Adapting a model to Russian did not by itself raise conformance, even though four of the evaluated models were built for Russian.
- Domain and clause type matter. Conformance is highest where a clause protects confidential information, and the weaker models conform to a prohibition twice as often as to an obligation.
- The judge follows the clause, not its own safety prior. Replacing the clause shown to the judge with a clause from another profession's code turns 0.913 of its violation verdicts into verdicts of no violation.
- Judge–human agreement is high. Against adjudicated human labels on 1,860 elements, the judge reaches Gwet's AC1 of 0.894, 0.915 and 0.926 on its three observation axes, and specialists rated 0.995 of the conflicting tasks plausible.
- Most clauses cannot be violated by text at all. Of 745 clauses read under a closed label set, 155 are localizable — a share of 0.208, about one clause in five. A further 0.342 of the 745 carry no norm at all and 0.145 are evaluative-categorical without stateable content.
- The clause-localizability reading is reproducible. A second reader labelled a stratified subsample of 180 clauses; over the 162 seen blind the two readings agree on 87.7 per cent of clauses, at Cohen's kappa 0.643 and Gwet's AC1 0.811 (95 per cent interval 0.719 to 0.892), both above the pre-declared cut-point of 0.60.
- The benign twins share the substrate, not the wording. Median Jaccard overlap between a conflicting task and its twin is 0.144 (maximum 0.361), and across all 11,782,056 within-family pairs the largest observed word-set similarity is 0.564 among conflicting tasks and 0.368 among benign twins, so there are no near-duplicates above 0.6.
- A length asymmetry exists and is reported. The conflicting member is longer in 0.697 of the 3,433 pairs, equal in 0.025 and shorter in 0.278; medians are 70 words against 63, with a paired effect size of 0.554.
- Category leakage is small but disclosed. Of the 573 verdicts in the compliant non-violation category on conflicting tasks, 46 (0.080 of the category, and 0.212 on the worst row) are answers that did nothing at all and are counted as compliance.
- Skew makes coefficient choice matter. On the benign branch the instrumental-action axis returns AC1 0.980 beside kappa 0.545, illustrating why Gwet's AC1 was chosen as the carrier.
Methodology in Plain English
Building the corpus from clauses upward. The team first collected 53 Russian professional codes of ethics containing 3,712 clauses, and kept 44 that met a criterion fixed in advance: the document must separate into rules of the form actor, action, conditions, exceptions, and a violation of a rule must be visible in the text of an answer itself (not only in what the specialist later does with it). Fifteen of the 44 entered the corpus, chosen because their clauses were expected to supply at least twenty conflicting tasks each.
Three-stage automated pipeline. First, clauses are extracted from the parse tree of each document and filtered; 1,898 clauses were extracted and 1,503 were put out of scope for stated reasons (475 neither prescribe nor forbid, 377 removed by a structural sweep, 289 definitional, 187 removed by an ambiguity pre-filter, 154 failing a concreteness check, 21 where the scoring call returned nothing parseable). Second, four scenarios are generated for each of the 395 surviving clauses, producing 1,579 scenarios, each with a setting, actors, a trigger, constraints and a statement of the ethical tension. Third, one call per pair generates the conflicting request and its benign twin together, so the two share the scenario and differ only in legitimacy; generating them in one call makes the mirroring invariant checkable rather than reconstructed afterwards.
Scale and quality control. 1,579 scenarios plus four extra requests for each of 468 scenarios yields 1,579 + 4 × 468 = 3,451 pair slots, spread across five surface styles each receiving between 1,368 and 1,378 tasks; 463 of the 468 multi-request scenarios kept all five. Eighteen conflicting tasks were escalated and removed with their twins, leaving 3,433 complete pairs, or 6,866 tasks in total. Seven validators cover five classes of requirement — schema, referential integrity, pairing invariants, leak hygiene, and style and form — and acceptance returned zero errors and zero warnings over the 6,866 records. A closed list of banned lexical categories and a lexical-borrowing check over 20,598 comparisons keep audit material from leaking into the request text.
Judging with three independent axes. A language model judge sees seventeen fields in one call (six describing the clause, seven giving scenario context, two identifiers, the request and the answer) and returns three separate observations rather than a single label: whether the answer materially performs the requested action, whether its content conflicts with the clause, and what refusal type it expresses (none, warning, explicit refusal, or unclear). The outcome category is then computed from those three values by a fixed, total function, so a reader can verify the governing rule — that a warning never softens a finding of conflict — by reading code rather than trusting the prompt. The judge never chooses the category, following the prescription to decompose complex labelling into steps. Three fields are withheld from the judge under the rule that no label the pipeline uses to partition its own output reaches it; two of the three withhold less than intended, and the release makes that checkable.
Freezing the judge before human labels. The judge (model, prompt template and field list) was frozen before the evaluation campaign ran, and human labels were collected afterwards, with the judge's verdict withheld from annotators to avoid rubber-stamping. The only safeguard admitted before the freeze involved no human label: it was run over 110 observations on eleven constructed cases whose correct verdict follows from construction, and the frozen prompt returned no verdict of not violated and no unclear value, showing it does not silently absolve a constructed conflict.
Scoring. The leaderboard is ordered by a single quantity, the non-conflict rate (one minus the share of the three violation outcomes over conflicting tasks that passed schema validation and returned no unclear axis value), reported alongside three mandatory companions: the share of invalid or unclear judge outputs, the benign refusal rate, and the benign violation rate. Each evaluated row receives the same 675 tasks under a declared stratification (279 conflicting and 396 benign, of which 279 are the one-for-one twins and 117 are orphans), which makes the intersection complete across all fourteen rows and licenses paired tests. Decoding is at temperature 0 with JSON-only output, and no ensembling, debate or self-consistency is used.
Why This Matters
Impact on research. The paper moves evaluation verdicts from broad harm categories to named provisions of documents adopted outside the field, in a form a finding can be carried back to the body that wrote the rule. It also contributes a methodological template: pre-registered agreement gates, a judge frozen before any label exists, a prohibition on deriving one verdict axis from another, and the reporting of a benign refusal rate beside every conformance score so that caution is not confused with paralysis.
- Regulated professional practice. Firms in notary, audit, accounting, medicine, nursing and insurance can ask a concrete question before admitting an assistant into a workflow: will this model help a specialist breach a named clause of our code, and will it still serve the legitimate version of the same request?
- Organisational and sectoral diagnostics. Because tasks are generated from the text of a code, an organisation or regulator can build a diagnostic set for its own profession or institution rather than relying on a generic safety suite.
- Procurement and model selection. The reported companions — invalid/unclear output rate, benign refusal rate and benign violation rate — give buyers a profile of a model's behaviour on routine professional work, not just a single safety score.
- Multilingual policy compliance. The demonstrated transfer of the pipeline to two English-language codes of other jurisdictions shows the approach is not tied to Russian legal texts, which matters for cross-jurisdictional deployments.
Industry relevance. The paper's premise is commercial as much as academic: assistants are already being used in professional drafting, and a model can produce text that "trips no safety classifier" yet conflicts with a specific clause of the user's code. An evaluation that names the clause gives compliance, risk and legal teams something actionable, and the result that eleven of fourteen combinations produce conflicting content without a warning is a direct caution for deployment in regulated settings.
Future Directions
- Extending coverage to more codes and jurisdictions. Only fifteen of the 44 eligible Russian codes entered the corpus, and only ten documents (2,235 pairs) are released; expanding the number of professions and legal systems is the natural continuation.
- Improving clause yield. About one clause in five of a professional code can be violated by a text at all (0.208 of 745 clauses), and 0.342 carry no norm, so better extraction and filtering could raise the usable share of any new document.
- Strengthening the judge. The frozen judge cannot be corrected after the fact, and the human annotators saw the same two construction-side fields (ethical tension and violation mechanism) as the judge, so agreement does not separate "these fields carry information" from "judge and annotator share a cue" — a follow-up could break that identity. Known judge instabilities (identical runs diverging on 0.7 to 6.8 per cent of verdict pairs; policy rewrites flipping up to 9.1 per cent of verdicts) also invite robustness work.
- Understanding why reasoning reduces conformance. Enabling reasoning halved the refusals of two models and lowered conformance in two of three tested, and adapting a model to Russian did not raise conformance — both findings raise open questions about how training and inference-time reasoning interact with norm-following.
Target Audience
AI safety and evaluation researchers building benchmarks; NLP practitioners working on Russian-language resources and multilingual evaluation; model developers who need clause-level diagnostics rather than aggregate harm scores; and compliance, risk and procurement staff in regulated professions who must decide whether an AI assistant is safe to admit into professional practice. Readers who want only the empirical picture can take the headline findings, while those interested in benchmark construction will find the pipeline design, the release mode for copyrighted normative text, and the judge-validation protocol the most reusable parts.
Authors’ abstract
Codes of professional ethics guide and restrict specialists, who increasingly work with assistants built on large language models. Such an assistant can breach the user's code, or help the user breach it, without the user noticing. Evaluations reporting broad categories of harm cannot show how often this happens or which provision is breached. TenetBench pairs 3,433 requests conflicting with clauses of fifteen Russian-language professional codes with benign twins that differ only in the legitimacy of what is asked. An automated pipeline generates the tasks from the text of a code, so the corpus grows with every code added and a provision yields new tasks on every run. It also produced tasks and human-validated verdicts from two English codes of other jurisdictions. In human validation of the frozen pipeline, specialists rated 0.995 of the conflicting tasks plausible, and the model judge agreed with the adjudicated label at Gwet's AC1 of at least 0.894 on 1,860 elements. We evaluated fourteen model and reasoning-mode combinations on whether they produce the conflicting text, decline or warn. Eleven of the fourteen produce conflicting content on most such requests, mostly without a warning, and nearly three warnings in four accompany conflicting content. The models that conform more do so by declining while still serving the legitimate twin, and enabling reasoning halved the refusals of two models. We hope the dataset and pipeline will help evaluate how language models observe professional norms and let diagnostic datasets be built for particular professions and organisations.