AtpClient.Lint.Diagnostic (AtpClient v0.1.6)

Copy Markdown View Source

One structured issue produced by an AtpClient.Lint backend.

Positions are 1-based and character-oriented to match Monaco Editor's marker API directly; this keeps the Smart Cell JS layer free of any index translation. end_line / end_column are optional — when omitted, consumers typically highlight a single character starting at {line, column}.

The :source field identifies which backend produced the diagnostic ("local" or "tptp4x") and is shown in Monaco's problem hover, so users can tell at a glance whether an issue is a cheap structural check or an authoritative TPTP4x verdict.

Summary

Types

severity()

@type severity() :: :error | :warning | :info | :hint

t()

@type t() :: %AtpClient.Lint.Diagnostic{
  column: pos_integer(),
  end_column: pos_integer() | nil,
  end_line: pos_integer() | nil,
  line: pos_integer(),
  message: String.t(),
  severity: severity(),
  source: String.t() | nil
}