{% extends "layout.html" %} {% block content %}

Admin Only

{{ config.name }}

{% with status=config.status %} {% include "components/config_status_badge.html" %} {% endwith %}

GCP Project: {{ config.gcp_project_id }} {% if config.gcp_project_name %} ({{ config.gcp_project_name }}) {% endif %}

{% if not local_runtime_mode %}

Manifest Source: {{ config.manifest_source | replace('_', ' ') | title }}

{% endif %}
Last BigQuery Jobs Sync: {{ last_jobs_sync_at | timeago }}
Last Manifest Change: {{ last_manifest_change_at | timeago }}
{% if flash %}
{{ flash.message }}
{% endif %} {% if errors and errors.get('_concurrency') %}
{{ errors['_concurrency'][0] }}
{% endif %} {% if errors and errors.get('_general') %}
{{ errors['_general'][0] }}
{% endif %} {% if config.status == 'active' %}
View Jobs
{% endif %} {% if not local_runtime_mode %}

Sync Schedule

Type: {{ config.schedule_type }}
Schedule: {{ schedule_description or 'Not set' }}
Status: {% if config.schedule_enabled %} Enabled {% else %} Disabled {% endif %}
Last Run: {{ config.schedule_last_run_at | timeago if config.schedule_last_run_at else 'Never' }}
{% if next_run_time %}
Next Run: {{ next_run_time.strftime('%Y-%m-%d %H:%M UTC') }}
{% elif config.schedule_enabled %}
Next Run: Pending
{% endif %}
{% endif %} {% if config.status == 'active' %} {% set sync_is_active = active_sync and active_sync.status in ['queued', 'in_progress'] %}
{% if local_runtime_mode %} Fetch BigQuery job history from INFORMATION_SCHEMA and refresh local detection for this project {% else %} Trigger a data sync operation for this configuration {% endif %} {% if active_sync %} {{ active_sync.status | replace('_', ' ') | title }} {% endif %}
{# Hidden container for sync polling to detect active/completed state #} {% with sync=active_sync, config_id=config.id %} {% endwith %} {% if not local_runtime_mode %} {% with sync_history=sync_history, config_id=config.id, page=sync_history_page, total_pages=sync_history_total_pages, total_count=sync_history_total_count|default(0), last_completed_sync=last_completed_sync, sort=sync_history_sort|default('queued_at'), direction=sync_history_direction|default('desc') %} {% include "sync/_sync_history.html" %} {% endwith %} {% endif %}
{% endif %} {% if config.manifest_source == 'manual_upload' and not local_runtime_mode %}

Manifest

{% if errors and errors.get('manifest_upload') %}

{{ errors['manifest_upload'][0] }}

{% endif %} {% if last_manifest_change_at %}

Manifest uploaded

Last updated {{ last_manifest_change_at | timeago }}

{% endif %}
{% if not last_manifest_change_at %}

No manifest uploaded yet. Upload a manifest.json to enable sync and detection.

{% else %}

Upload a new manifest.json to replace the current version.

{% endif %}
{% if last_manifest_change_at %} {% endif %}
{% endif %} {% set selected_manifest_source = form_data.get('manifest_source', config.manifest_source) if form_data else config.manifest_source %}
{% if local_runtime_mode %} {% endif %} {% if not local_runtime_mode %}
{% endif %} {% if not local_runtime_mode %}

Switch to manual upload when the manifest will be uploaded by hand instead of fetched from GCS.

{% if errors and errors.get('manifest_source') %}

{{ errors['manifest_source'][0] }}

{% endif %}
{% endif %} {% if local_runtime_mode %}

Governor discovers dbt_project.yml, target/manifest.json, and target/run_results.json from this folder.

{% if errors and errors.get('local_project_path') %}

{{ errors['local_project_path'][0] }}

{% endif %}
{% endif %} {% if local_runtime_mode and selected_manifest_source in ['manual_upload', 'local'] %} {% else %}
Loading...
{% if errors and errors.get('github_repo') %}

{{ errors['github_repo'][0] }}

{% endif %}
{% endif %} {% if not (local_runtime_mode and selected_manifest_source in ['manual_upload', 'local']) %}

Manifest Location

For `manual_upload`, these fields are ignored and the latest uploaded manifest is reused.

{% if errors and errors.get('manifest_location') %}

{{ errors['manifest_location'][0] }}

{% endif %}
Loading...
Select a bucket first
{% endif %} {% if local_runtime_mode %} {% else %} {% include "configurations/_schedule_fields.html" %} {% endif %}

Advanced Settings

{% if local_runtime_mode and selected_manifest_source in ['manual_upload', 'local'] %} Configure detection and generated solution settings for this local project. {% else %} Configure detection and PR submission settings for this project. {% endif %}

{% if not local_runtime_mode %}

Detection

Number of days to track detection frequency. Opportunities are reported as "detected in X of the last Y days".

{% if errors and errors.get('lookback_window_days') %}

{{ errors['lookback_window_days'][0] }}

{% endif %}

Number of consecutive days without detection before an opportunity is marked as resolved.

{% if errors and errors.get('resolution_period_days') %}

{{ errors['resolution_period_days'][0] }}

{% endif %}

Watched Rules

Choose which optimization rules Governor watches for this project.

{% if detection_analysis_surfaces %}
{% for surface in detection_analysis_surfaces %}

{{ surface.title }}

{{ surface.description }}

{% endfor %}
{% endif %} {% if unknown_watched_rule_types %}
Some stored rule ids are no longer available: {{ unknown_watched_rule_types | join(', ') }}.
{% endif %}
{% if detection_rule_groups %} {% for group in detection_rule_groups %}
{% for rule in group.rules %} {% endfor %}
{% endfor %} {% else %}

No project-level detection rules are currently registered.

{% endif %}

Leaving every rule unchecked is valid and means Governor will skip project-level detection for this configuration.

{% if errors and errors.get('watched_rule_types') %}

{{ errors['watched_rule_types'][0] }}

{% endif %}
{% endif %}

Solution Guardrails

Allowed Solution Types

Choose which remediation families Governor may generate for this project. Detection still runs independently.

{% if unknown_solution_policy_tags %}
Some stored solution policy tags are no longer available: {{ unknown_solution_policy_tags | join(', ') }}.
{% endif %}
{% if solution_policy_catalog %} {% for policy in solution_policy_catalog %} {% endfor %} {% else %}

No solution policy tags are currently registered.

{% endif %}

Leaving every policy unchecked is valid and means Governor can still detect opportunities, but it will not store new solutions for this project.

{% if errors and errors.get('allowed_solution_policy_tags') %}

{{ errors['allowed_solution_policy_tags'][0] }}

{% endif %} {# Spec 124: auto-run shadow validation for Safe solutions #}
{# Local working tree info card removed — redundant; users already set the dbt folder above. In local mode we skip the PR Submission group; in cloud mode it renders below. #} {% if not (local_runtime_mode and selected_manifest_source in ['manual_upload', 'local']) %}

PR Submission

{% set auto_pr_val = form_data.get('auto_pr_trust_tier', config.auto_pr_trust_tier or '') if form_data else (config.auto_pr_trust_tier or '') %}

Override the organisation-level auto-PR threshold for this project. Leave as "Use organisation default" to inherit the global setting.

{% endif %}

Solution Generation

$

Only generate solutions for opportunities where the query cost exceeds this amount. Opportunities below this threshold are still detected but won't receive solutions. Default: $5.00.

{% if errors and errors.get('min_solution_cost_usd') %}

{{ errors['min_solution_cost_usd'][0] }}

{% endif %}

Storage Billing

$ /month

Only surface storage billing opportunities where switching to physical billing saves at least this amount per month. Leave blank to show all datasets with any savings.

{% if errors and errors.get('storage_billing_min_savings_usd') %}

{{ errors['storage_billing_min_savings_usd'][0] }}

{% endif %}
Back to list
{% if config.status == 'active' %}
{% else %}
{% endif %}
Created: {{ config.created_at.strftime('%Y-%m-%d %H:%M UTC') }}
Last updated: {{ config.updated_at.strftime('%Y-%m-%d %H:%M UTC') }}
{% if config.status == 'active' %} {% endif %} {% endblock %}