conformance
LicenseApache-2.0
Safe HaskellNone
LanguageGHC2021

Conformance.Extent

Description

The replay index of a run names every refusal its live rows met. A refusal whose step carried an executed model reason is class A by fact: the runner records it, and its reason must agree with the traced replay's or be uncompared with a named cause. Every other refusal must be listed, by its row, in the committed table of the extent document as B, C or D; one that is not is unclassified, and fails. The index must also name each refusal the run's receipts record exactly once, and an accepting control for each script role that refused.

Pure: the index entries, the receipts and the document arrive as data.

Synopsis

Documentation

data ExtentClass Source #

A class the committed table gives a refusal no model reason was executed for.

Constructors

ClassB

Lean returns a reason; no consumer executes the model on the behavior

ClassC

Lean cannot express the behavior

ClassD

Lean's outcome differs from the chain's or the consumer model's

Instances

Instances details
Show ExtentClass Source # 
Instance details

Defined in Conformance.Extent

Methods

showsPrec :: Int -> ExtentClass -> ShowS Source #

show :: ExtentClass -> String Source #

showList :: [ExtentClass] -> ShowS Source #

Eq ExtentClass Source # 
Instance details

Defined in Conformance.Extent

Methods

(==) :: ExtentClass -> ExtentClass -> Bool Source #

(/=) :: ExtentClass -> ExtentClass -> Bool Source #

Ord ExtentClass Source # 
Instance details

Defined in Conformance.Extent

Methods

compare :: ExtentClass -> ExtentClass -> Ordering Source #

(<) :: ExtentClass -> ExtentClass -> Bool Source #

(<=) :: ExtentClass -> ExtentClass -> Bool Source #

(>) :: ExtentClass -> ExtentClass -> Bool Source #

(>=) :: ExtentClass -> ExtentClass -> Bool Source #

max :: ExtentClass -> ExtentClass -> ExtentClass Source #

min :: ExtentClass -> ExtentClass -> ExtentClass Source #

data Listed Source #

What the committed table says of one row: its class, and the traced reasons and unobserved causes its refusals may carry, the backquoted names of its traced-reason cell. A refusal of a listed row whose replay records any other reason or cause is not the refusal the table classified.

Constructors

Listed 

Fields

Instances

Instances details
Show Listed Source # 
Instance details

Defined in Conformance.Extent

Methods

showsPrec :: Int -> Listed -> ShowS Source #

show :: Listed -> String Source #

showList :: [Listed] -> ShowS Source #

Eq Listed Source # 
Instance details

Defined in Conformance.Extent

Methods

(==) :: Listed -> Listed -> Bool Source #

(/=) :: Listed -> Listed -> Bool Source #

committedClasses :: Text -> Either String (Map Text Listed) Source #

The committed table of the extent document — the section headed Discovered table — as what it lists of each row. A class cell must start with B, C or D; a row listed twice must keep its class, and its traces accumulate.

data ExtentCount Source #

How many refusals of a run fall in each class.

Constructors

ExtentCount 

Fields

Instances

Instances details
Show ExtentCount Source # 
Instance details

Defined in Conformance.Extent

Methods

showsPrec :: Int -> ExtentCount -> ShowS Source #

show :: ExtentCount -> String Source #

showList :: [ExtentCount] -> ShowS Source #

Eq ExtentCount Source # 
Instance details

Defined in Conformance.Extent

Methods

(==) :: ExtentCount -> ExtentCount -> Bool Source #

(/=) :: ExtentCount -> ExtentCount -> Bool Source #

extentProblems :: Map Text Listed -> [Value] -> [Receipt] -> [Text] Source #

What a run's replay index and receipts lack for the extent: one line per problem, none when every refusal is accounted for.

extentCount :: Map Text Listed -> [Value] -> ExtentCount Source #

The refusals of a run, by class: A by fact, the others by the table.