Evaluating Proposed Agent Actions and Work Against Rules and Policies: Typed Facts, a Cost-Bounded Rule Language, Governed Changes and Request-Specific Checks
Abstract
Rules and policies of any origin that apply to documents, code, records or the actions of automated agents (laws and regulations, contract terms, platform, safety or security policies, professional and editorial codes, the internal guidelines of an organization or team, or a person's own preferences) are stored as an executable artifact, and requirements stated in a single request are checked in the same notation. For every document type, a format grammar parses an input (generated text, source code, an event log, a form) into typed facts: units such as headings, entries, fields and list items, with their order, their place in the containment hierarchy and their values. All rules share a single declarative notation of limited expressiveness that reads only those facts. Each rule is type-checked against the facts its grammar can produce and given a static upper bound on evaluation work before it is stored; a rule that does not type-check is refused with its location, and one whose bound exceeds a ceiling is refused with its location or, in some arrangements, admitted only under a run-time meter kept on for it. Size limits on each document are enforced, so evaluating any admitted rule on any admitted document finishes within a known budget, and because the notation is pure and any model-filled fields are recorded and reused, repeated evaluation under the same version and limits gives identical findings. Rules come in several kinds, among them fact-adding rules evaluated first in layers, bounds on measures, must, must-not and may norms, finding checks, measures, sentence policies with compiled forms, and banned- or required-term lists. Each rule carries a record of its author, status, tests, evidence, description, history and severity, and rules of the standard that originate from a machine, learned or generated, stay proposed until a person or an approval policy accepts them. One versioned standard, changed only through a change gate, keeps the settings, the history, the grammars, and the rules with their tests. Optionally, a generator answering a request returns typed parts rather than finished text and, for each requirement the request states, writes one or more checks in the same language; the system admits those checks under the parsing, typing, layering and cost conditions applied to stored rules, refuses any that would weaken the standing rules, renders the parts into the text to be delivered, evaluates the checks on that rendered text alone, and reports each failure to the generator, which may revise its parts within a policy limit on attempts. The standing rules, and checks admitted for a session, may also be placed before each action that an automated agent proposes through its tools, a decision then refusing the action, offering a corrected form of it, letting it run, requiring other actions first or referring it to a person, with the agent's outgoing messages checked as well.
// Source
Authors: Fengkie Junis