[Index]

Model: data/AnomalyDetectionConfig

Configuration for anomaly detection on a ReporterResource. Admin defines what to detect; system generates the execution plan.

Model Details: data/AnomalyDetectionConfig

Title Description Details
Configuration Group Assigned by FDP
  • Field Name: Configuration
  • Type: Object
Name * Unique name for this anomaly detection configuration
  • Field Name: Configuration.name
  • Type: String
  • MaxLength: 1024
Detection Question * What the admin wants to detect
  • Field Name: Configuration.detection_question
  • Type: String
  • MaxLength: 1024
Resource * ReporterResource to monitor for anomalies
  • Field Name: Configuration.resource
  • Type: String
  • Target: data/ReporterResource
  • Target attr: name
  • MaxLength: 1024
  • Format: uri
Data Source Override Override the default data source for this configuration (business key reference)
  • Field Name: Configuration.datasource_override
  • Type: String
  • Target: data/DashboardDatasource
  • MaxLength: 1024
  • Format: uri
Run Summary Retention (Days) Number of days to retain detection run summary records before automatic purge. Applies to new runs only — changing this value does not affect existing run records. Default: 30
  • Field Name: Configuration.run_summary_retention_days
  • Type: Integer
  • Default: 30
  • Choices: ["7 Days", "14 Days", "30 Days", "60 Days", "90 Days", "180 Days", "365 Days"]
Features Optional Postgres column names to analyze. When empty, the LLM derives optimal features from the resource schema and detection question.
  • Field Name: features.[n]
  • Type: Array
Detection Group Assigned by FDP
  • Field Name: Detection
  • Type: Object
Desired State Search Ephemeral search filters to find a source instance from the resource's base table. Results populate desired_state. Not persisted on save.
  • Field Name: desired_state_search.[n]
  • Type: Array
Filter Options
  • Field Name: filter_options.[n]
  • Type: Array
Filter By
  • Field Name: Detection.desired_state_search.[n].filter_options.[n].filter_by
  • Type: String
  • MaxLength: 1024
Filter Type
  • Field Name: Detection.desired_state_search.[n].filter_options.[n].filter_type
  • Type: String
  • MaxLength: 1024
  • Choices: ["Contains", "Does Not Contain", "Starts With", "Ends With", "Equals", "Not Equal"]
Filter String
  • Field Name: Detection.desired_state_search.[n].filter_options.[n].filter_string
  • Type: String
  • MaxLength: 1024
Ignore Case
  • Field Name: Detection.desired_state_search.[n].filter_options.[n].ignore_case
  • Type: Boolean
Desired State Instance Ephemeral dropdown showing instances matching the search filters. Selecting an instance populates desired_state. Not persisted on save.
  • Field Name: Detection.desired_state_instance
  • Type: String
  • MaxLength: 1024
Desired State Locked-in key-value pairs representing the desired configuration state for drift detection
  • Field Name: desired_state.[n]
  • Type: Array
Field * Resource property name — column in the Postgres base table
  • Field Name: Detection.desired_state.[n].field
  • Type: String
  • MaxLength: 1024
Value * Desired value for this property
  • Field Name: Detection.desired_state.[n].value
  • Type: String
  • MaxLength: 1024
Detection Filter Array of filter groups (OR'd) to scope detection to a subset of rows. Each group contains a filter_options array of filter items (AND'd within the group).
  • Field Name: detection_filter.[n]
  • Type: Array
Name Optional label for this filter group.
  • Field Name: Detection.detection_filter.[n].name
  • Type: String
  • MaxLength: 1024
Description Optional description explaining the purpose of this filter group.
  • Field Name: Detection.detection_filter.[n].description
  • Type: String
  • MaxLength: 1024
Filter Options
  • Field Name: filter_options.[n]
  • Type: Array
Filter By
  • Field Name: Detection.detection_filter.[n].filter_options.[n].filter_by
  • Type: String
  • MaxLength: 1024
Filter Type
  • Field Name: Detection.detection_filter.[n].filter_options.[n].filter_type
  • Type: String
  • MaxLength: 1024
  • Choices: ["Contains", "Does Not Contain", "Starts With", "Ends With", "Equals", "Not Equal"]
Filter String
  • Field Name: Detection.detection_filter.[n].filter_options.[n].filter_string
  • Type: String
  • MaxLength: 1024
Ignore Case
  • Field Name: Detection.detection_filter.[n].filter_options.[n].ignore_case
  • Type: Boolean
Execution Plan Group Assigned by FDP
  • Field Name: Execution Plan
  • Type: Object
Allow Playbook Edit Enable expert mode to manually edit the execution plan. When enabled, operational fields (tool, parameters, exit on failure) become editable. Changes may be overwritten when the plan is regenerated.
  • Field Name: Execution Plan.allow_playbook_edit
  • Type: Boolean
Playbook Configuration Structured execution plan generated by the generate_execution_plan operation. Contains required datasources, ordered detection steps, and LLM reasoning. Cleared automatically when resource or features change.
  • Field Name: playbook_config
  • Type: Object
Required Datasources List of datasource types needed by this plan (e.g. 'automate-postgres'). Empty array when datasource_override is set.
  • Field Name: required_datasources.[n]
  • Type: Array
Reasoning LLM-generated explanation of why this detection approach was chosen.
  • Field Name: Execution Plan.playbook_config.reasoning
  • Type: String
  • MaxLength: 1024
Steps Ordered list of detection steps to execute. Each step invokes a tool with specific parameters.
  • Field Name: steps.[n]
  • Type: Array
Tool * Name of the detection tool to execute in this step.
  • Field Name: Execution Plan.playbook_config.steps.[n].tool
  • Type: String
  • MaxLength: 1024
  • Choices: ["Query Snapshot Data", "Detect Config Drift", "ML Detect Outliers", "Query Reporter Metrics", "ML Time Series Analysis", "Create Anomaly", "Summarize Detection Results"]
Parameters Tool-specific parameters as a JSON object. Structure varies per tool.
  • Field Name: Execution Plan.playbook_config.steps.[n].params
  • Type: String
  • MaxLength: 1024
Goal * Human-readable description of what this step accomplishes.
  • Field Name: Execution Plan.playbook_config.steps.[n].goal
  • Type: String
  • MaxLength: 1024
Rationale Explanation of why this step is needed in the detection plan.
  • Field Name: Execution Plan.playbook_config.steps.[n].rationale
  • Type: String
  • MaxLength: 1024
Exit on Failure If true, abort the entire detection run when this step fails. If false, log the error and continue to the next step.
  • Field Name: Execution Plan.playbook_config.steps.[n].exit_on_failure
  • Type: Boolean
Presentation Schema Defines the sections and structure for the LLM-generated run summary. The summary is written for non-ML-expert admins. Customize sections to control what appears in the report.
  • Field Name: presentation_schema
  • Type: Object
Type * The type of presentation format
  • Field Name: Execution Plan.playbook_config.presentation_schema.type
  • Type: String
  • MaxLength: 1024
  • Choices: ["Narrative - Structured narrative format with sections", "Structured JSON - Machine-readable output format"]
Sections List of sections in the presentation
  • Field Name: sections.[n]
  • Type: Array
Header * Section header/title
  • Field Name: Execution Plan.playbook_config.presentation_schema.sections.[n].header
  • Type: String
  • MaxLength: 1024
Description Description of what this section contains
  • Field Name: Execution Plan.playbook_config.presentation_schema.sections.[n].description
  • Type: String
  • MaxLength: 1024
Note Additional notes about the presentation format
  • Field Name: Execution Plan.playbook_config.presentation_schema.note
  • Type: String
  • MaxLength: 1024