| Internet-Draft | Normative Admissibility | January 2026 |
| Romanchuk | Expires 10 July 2026 | [Page] |
This document defines a normative framework for evaluating the admissibility of speech acts produced by autonomous agents in goal-directed activity. The framework establishes rules for determining whether an agent's statement is admissible based on its modality (assertive, conditional, refusal, descriptive) and its grounding state, independent of semantic truth.¶
This framework enables deterministic, auditable evaluation of agent contributions without requiring truth verification or semantic interpretation.¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 10 July 2026.¶
Copyright (c) 2026 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document.¶
Autonomous agents operating in goal-directed environments produce statements that require evaluation before being acted upon. Traditional evaluation approaches rely on semantic truth verification, which is either impossible (no oracle exists) or circular (using another model to judge model outputs).¶
This document specifies an alternative approach: evaluating admissibility of agent speech acts based on their logical form (modality) and evidential basis (grounding), without requiring truth verification.¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
Statement: A linguistic unit consisting of a subject (what is being discussed) and a predicate (what is claimed about the subject).¶
Modality: The logical form of a statement that determines its manner of participation in normative evaluation. One of: ASSERTIVE, CONDITIONAL, REFUSAL, DESCRIPTIVE.¶
Grounding: The evidential basis for a statement, consisting of knowledge nodes with associated epistemic status.¶
Ground Scope: Classification of grounding as FACTUAL (observable world state) or CONTEXTUAL (user goals, preferences, situational factors).¶
Strength: Epistemic quality of grounding: STRONG (observed, confirmed) or WEAK (hypothesized, inferred).¶
License: The set of modalities permitted for a statement given its grounding state.¶
Admissibility: Property of a statement whose modality is within its permitted license.¶
Non-admissible: Property of a statement whose modality exceeds its permitted license.¶
The evaluation framework operates on three inputs:¶
Inputs: ├─ Statement (S) - Agent-generated linguistic output ├─ GroundSet (G) - Available evidential basis └─ Context (C) - Terms considered as given Output: └─ EvaluationResult - Admissibility status with trace¶
Statement → Modality Classification → License Derivation → Axiom Check → Status
│ │ │ │ │
S Modality(S) License(G) Axiom(M,L) Status
¶
The framework explicitly separates:¶
| Layer | Responsibility | NOT Responsible For |
|---|---|---|
| Modality | Statement form classification | Semantic interpretation |
| Grounding | Evidential basis assessment | Truth verification |
| Axioms | Admissibility rules | Domain knowledge |
A Statement is a tuple:¶
Statement := ⟨Subject, Predicate⟩¶
Where: - Subject: Term denoting the object of the statement - Predicate: Term denoting property, relation, or state¶
A statement MUST satisfy all of the following to be well-formed:¶
Condition F1 (Formability):¶
Subject ≠ ∅ ∧ Predicate ≠ ∅¶
Condition F2 (Contextual Independence):¶
Meaning(Subject) and Meaning(Predicate) do not depend on Statement¶
Condition F3 (Non-Self-Reference):¶
Statement does not refer to itself or its generation process¶
Violation of any condition results in status ILL_FORMED.¶
Modality is a function over Statement:¶
Modality : Statement → {ASSERTIVE, CONDITIONAL, REFUSAL, DESCRIPTIVE}
¶
| Modality | Definition |
|---|---|
| ASSERTIVE | Categorical normative claim without explicit conditions |
| CONDITIONAL | Normative claim with explicitly stated conditions |
| REFUSAL | Explicit admission of inability to determine |
| DESCRIPTIVE | Factual observation without normative claim |
Note on GOAL-CONDITIONAL: Goal-conditional statements (e.g., "If your goal is X, do Y") are a syntactic subclass of CONDITIONAL modality with higher detection priority. They are classified as CONDITIONAL for axiom application purposes.¶
Modality MUST be determined by presence of formal indicators (textual patterns) in the statement, NOT by semantic interpretation.¶
Head-Driven Detection: Modality is determined by the CORE ASSERTION only (first paragraph or first sentence). Supplementary clauses in the tail do not change modality classification.¶
Example:¶
"Prioritize X. [justification]. If you tell me Y..." → Core: "Prioritize X" → Modality: ASSERTIVE (not CONDITIONAL)¶
Detection Priority (evaluated in order, MUST NOT be reordered):¶
1. REFUSAL - if refusal indicators present
2. GOAL-CONDITIONAL - if goal-conditional structure ("if your goal is...")
3. ASSERTIVE - if recommendation indicators present in core
4. CONDITIONAL - if condition indicators present in core
5. DESCRIPTIVE - if purely factual indicators present
6. ASSERTIVE - default (anti-evasion policy)
¶
Formal indicators are textual patterns sufficient for classification.¶
| Modality | Indicator Patterns (examples) |
|---|---|
| REFUSAL | "cannot determine", "need more information", "insufficient" |
| GOAL-CONDITIONAL | "if your goal is", "if you want to", "assuming you care" |
| CONDITIONAL | "if", "unless", "assuming", "depends on", "given that" |
| ASSERTIVE | "should", "must", "recommend", "is better", "prioritize" |
| DESCRIPTIVE | "has status", "is blocked by", "due date is", "blocks" |
Goal-Conditional Override: Statements beginning with goal-conditional structure ("If your goal is X, do Y") MUST be classified as CONDITIONAL even if recommendation indicators are present.¶
The default to ASSERTIVE is a POLICY CHOICE for safety-critical deployments. Alternative policies (e.g., CONSERVATIVE_REFUSAL) may be appropriate for exploratory contexts.¶
GroundSet := {KnowledgeNode}
KnowledgeNode := ⟨content, scope, status, confidence⟩
¶
Where: - content: The propositional content - scope: FACTUAL or CONTEXTUAL - status: OBSERVED, CONFIRMED, HYPOTHESIZED, INFERRED - confidence: Numeric value [0.0, 1.0]¶
| Scope | Definition | Examples |
|---|---|---|
| FACTUAL | Observable world state | API responses, database records |
| CONTEXTUAL | User goals, preferences, situational factors | User intent, business priorities |
Strength is derived from content properties, NOT from transport channel.¶
CRITICAL PRINCIPLE: Content-Based Warrant¶
Tool call ≠ truth acquired.¶
The act of invoking a tool or external system is a causal action. The epistemic status of a proposition is a property of the content returned and its evidential warrant, not of the transport mechanism by which it was obtained.¶
Accordingly, weakly warranted propositions MUST NOT be upgraded to STRONG solely by passing through tools, expert systems, or APIs without an explicit improvement in evidential status.¶
Strength(node) := STRONG if status = CONFIRMED ∧ confidence ≥ threshold WEAK otherwise¶
The threshold value (e.g., 0.7) is illustrative. Implementations MAY use different thresholds provided the STRONG/WEAK distinction remains deterministic and documented.¶
For tool-derived observations (API responses, database records):¶
status = OBSERVED or CONFIRMED confidence = 1.0 → Strength = STRONG¶
For cognitive context (user preferences, inferred goals):¶
status = HYPOTHESIZED or CANDIDATE confidence < 0.7 → Strength = WEAK¶
This prevents illegitimate upgrading of weakly warranted propositions: such propositions cannot acquire STRONG status merely by passing through tool boundaries.¶
Within a scope, strongest evidence determines scope strength:¶
ScopeStrength(scope, G) := STRONG if ∃ node ∈ G : node.scope = scope ∧ Strength(node) = STRONG WEAK otherwise¶
License is derived from GroundSet composition:¶
| GroundSet Composition | FACTUAL | CONTEXTUAL | Permitted Modalities |
|---|---|---|---|
| FACTUAL only | STRONG | N/A | ASSERTIVE, CONDITIONAL, REFUSAL |
| FACTUAL only | WEAK | N/A | CONDITIONAL, REFUSAL |
| FACTUAL + CONTEXTUAL | STRONG | STRONG | ASSERTIVE, CONDITIONAL, REFUSAL |
| FACTUAL + CONTEXTUAL | STRONG | WEAK | CONDITIONAL, REFUSAL |
| FACTUAL + CONTEXTUAL | WEAK | any | CONDITIONAL, REFUSAL |
| CONTEXTUAL only | N/A | any | REFUSAL |
| Empty | N/A | N/A | REFUSAL |
Modality(S) = ASSERTIVE ∧ ASSERTIVE ∉ License(G) → Status(S) = VIOLATES_NORM¶
Applicability: ASSERTIVE modality only.¶
An assertive statement without sufficient grounding is non-admissible.¶
Modality(S) = REFUSAL → Status(S) = ACCEPTABLE¶
Applicability: REFUSAL modality only.¶
Explicit refusal to determine is always admissible.¶
Scope Clarification: This axiom establishes admissibility, not desirability. Excessive or strategic refusal may be undesirable at the application layer but is out of scope for this framework. Application-layer policies MAY impose additional constraints on refusal frequency or patterns.¶
Modality(S) = CONDITIONAL ∧ ConditionsDeclared(S) → Status(S) = CONDITIONALLY_ACCEPTABLE¶
Applicability: CONDITIONAL modality only.¶
Conditional claims are admissible when conditions are explicit.¶
Normative(S) ∧ GroundSet = ∅ → Status(S) = UNSUPPORTED¶
Applicability: ASSERTIVE, CONDITIONAL modalities.¶
Normative claims require non-empty grounding.¶
Axioms MUST be evaluated in the following order:¶
1. A6 (REFUSAL) - if Modality = REFUSAL, return ACCEPTABLE 2. A5 (ASSERTIVE) - if Modality = ASSERTIVE and unlicensed, return VIOLATES_NORM 3. A7 (CONDITIONAL) - if Modality = CONDITIONAL with conditions, return CONDITIONALLY_ACCEPTABLE 4. A4 (GROUNDING) - if normative with empty ground, return UNSUPPORTED 5. Default - return ACCEPTABLE¶
| Status | Meaning |
|---|---|
| ACCEPTABLE | Statement is admissible |
| CONDITIONALLY_ACCEPTABLE | Statement is admissible under stated conditions |
| VIOLATES_NORM | Statement modality exceeds permitted license |
| UNSUPPORTED | Normative statement lacks grounding |
| ILL_FORMED | Statement fails structural requirements |
| UNDERDETERMINED | Evaluation not possible with available information |
Terminology Note: The term VIOLATES_NORM denotes non-admissibility under the evaluation rules defined in this framework. It does NOT imply ethical, legal, or security violation. "Norm" refers to the activity participation rules (axioms A4-A7), not external normative standards.¶
EvaluationResult := {
statement: String,
modality: Modality,
license: Set[Modality],
status: Status,
applicable_axiom: AxiomId,
grounding_trace: GroundSet
}
¶
EVALUATE(statement, ground_set):
1. VALIDATE structure (F1, F2, F3)
IF violation THEN RETURN ILL_FORMED
2. DETERMINE modality M := Modality(statement)
IF modality cannot be determined THEN RETURN UNDERDETERMINED
3. DERIVE license L := License(ground_set)
IF grounding incomplete or ambiguous THEN RETURN UNDERDETERMINED
4. APPLY axioms in order:
IF M = REFUSAL THEN RETURN ACCEPTABLE (A6)
IF M = ASSERTIVE AND ASSERTIVE ∉ L THEN RETURN VIOLATES_NORM (A5)
IF M = CONDITIONAL AND conditions_declared THEN RETURN CONDITIONALLY_ACCEPTABLE (A7)
IF M ∈ {ASSERTIVE, CONDITIONAL} AND ground_set = ∅ THEN RETURN UNSUPPORTED (A4)
IF M = DESCRIPTIVE AND factual_grounding_present THEN RETURN ACCEPTABLE
IF M = ASSERTIVE AND ASSERTIVE ∈ L THEN RETURN ACCEPTABLE
5. RETURN UNDERDETERMINED
¶
Note on UNDERDETERMINED: This status indicates that the evaluator lacks sufficient information or jurisdiction to render a verdict. It is a valid outcome representing honest acknowledgment of evaluation limits, not an error condition. Triggering conditions are implementation-defined but MUST include cases where modality detection or grounding assessment cannot proceed deterministically.¶
Given identical inputs (statement, ground_set), the algorithm MUST produce identical outputs. No probabilistic components are permitted in the evaluation path.¶
Incorrect modality classification may result in:¶
Implementations SHOULD log modality determination traces for audit.¶
Adversarial agents may attempt to:¶
Implementations MUST ensure grounding sources are authenticated and MUST NOT allow agent-generated content to serve as grounding for the same agent's claims.¶
This framework explicitly prevents self-licensing:¶
This document has no IANA actions.¶
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997.¶
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017.¶
[ZINOVIEV] Zinoviev, A.A., "Logical Physics", Reidel Publishing, Dordrecht, 1983.¶
Traditional AI evaluation approaches assume access to ground truth or employ LLM-as-judge patterns. Both are problematic:¶
This framework evaluates statement form (modality) against evidential basis (grounding), avoiding both issues.¶
Different statement forms carry different epistemic commitments:¶
Evaluation must be sensitive to these differences.¶
The framework employs conservative assumptions:¶
Presence = Usage: If contextual grounding is present, it is assumed to be used by the statement. This prevents false assertive licenses for contextual claims.¶
Default = Assertive: Ambiguous statements default to assertive classification. This prevents evasion via vague language.¶
These assumptions may over-restrict in some cases but ensure safety in adversarial conditions.¶
This framework is informed by Zinoviev's Logic of Science, which distinguishes:¶
Axioms A5–A7 implement norms of participation in activity, not laws of truth or inference.¶
Violation indicates a breach of admissibility conditions within an activity, not semantic falsehood.¶
Statement: "Task X blocks Task Y"
Modality: DESCRIPTIVE (purely factual)
GroundSet:
└─ API response (OBSERVED, FACTUAL, confidence=1.0)
License: {ASSERTIVE, CONDITIONAL, REFUSAL}
Status: ACCEPTABLE
¶
Statement: "Task X should be prioritized"
Modality: ASSERTIVE
GroundSet:
├─ API response (OBSERVED, FACTUAL, confidence=1.0)
└─ User intent (HYPOTHESIZED, CONTEXTUAL, confidence=0.5)
License: {CONDITIONAL, REFUSAL}
Status: VIOLATES_NORM (A5)
¶
Statement: "If revenue impact is critical, Task X should be prioritized"
Modality: CONDITIONAL
GroundSet:
├─ API response (OBSERVED, FACTUAL, confidence=1.0)
└─ User intent (HYPOTHESIZED, CONTEXTUAL, confidence=0.5)
License: {CONDITIONAL, REFUSAL}
Status: CONDITIONALLY_ACCEPTABLE (A7)
¶
Statement: "Cannot determine priority without knowing business context" Modality: REFUSAL GroundSet: (any) License: (any) Status: ACCEPTABLE (A6)¶