{% extends 'generic/_base.html' %} {% block title %}Operations Dashboard{% endblock %} {% block content %}
Read-only operational visibility for provider sync drift and upcoming certificate or ROA expiry. Thresholds follow the effective lifecycle policy for each organization or provider account.
Validator and telemetry freshness are shown separately from provider sync health so operators can tell whether publication drift or outside observation lag is driving the attention state.
| Name | Status | Freshness | Latest Run |
|---|---|---|---|
| {{ item.object.name }} | {{ item.status }} | {{ item.freshness_status }} | {% if item.latest_run %} {{ item.latest_run.name }} {% else %} None {% endif %} |
| Name | Validator | Status | Freshness |
|---|---|---|---|
| {{ item.object.name }} | {{ item.validator.name }} | {{ item.status }} | {{ item.freshness_status }} |
| Name | Organization | Sync Health | Latest Run |
|---|---|---|---|
| {{ item.object.name }} | {{ item.object.organization }} | {{ item.sync_health_display }} | {% if item.latest_run %} {{ item.latest_run.name }} {% else %} None {% endif %} |
| Name | Family | Validator State | Evidence Freshness | Mismatches |
|---|---|---|---|---|
| {{ item.object.name }} | {{ item.object_family }} | {{ item.validator_state|default:"unknown" }} | {{ item.evidence_freshness }} | {% if item.mismatch_categories %} {{ item.mismatch_categories|join:', ' }} {% else %} Validator-only concern {% endif %} |
| Name | Organization | Sync Health | Freshness | Write Support | Latest Snapshot |
|---|---|---|---|---|---|
| {{ item.object.name }} | {{ item.object.organization }} | {{ item.sync_health_display }} | {{ item.freshness_text }} | {{ item.write_support_mode }} | {% if item.latest_snapshot %} {{ item.latest_snapshot.name }} {% else %} None {% endif %} |
| Name | Organization | Status | Cross-Source Conflicts | Stale Sources | Undraftable Sources | Draftable Sources |
|---|---|---|---|---|---|---|
| {{ item.object.name }} | {{ item.object.organization }} | {{ item.object.status }} | {{ item.cross_source_conflict_count }} | {{ item.stale_source_count }} | {{ item.non_draftable_source_count }} | {{ item.draftable_source_count }} |
| Name | Organization | Source | Status | Blocked Items | Capability Warnings | Latest Execution |
|---|---|---|---|---|---|---|
| {{ item.object.name }} | {{ item.object.organization }} | {{ item.object.source.name }} | {{ item.object.status }} | {{ item.noop_count }} | {% if item.capability_warnings %} {{ item.capability_warnings|join:', ' }} {% else %} None {% endif %} | {% if item.latest_execution.id %} {{ item.latest_execution.mode }} / {{ item.latest_execution.status }} {% else %} None {% endif %} |
| Name | Organization | Source | Change Plan | Mode | Status | Error |
|---|---|---|---|---|---|---|
| {{ execution.name }} | {{ execution.organization }} | {{ execution.source.name }} | {{ execution.change_plan.name }} | {{ execution.execution_mode }} | {{ execution.status }} | {{ execution.error|default:'-' }} |
| Name | Organization | Template | Intent Profile | State | Reason |
|---|---|---|---|---|---|
| {{ item.object.name }} | {{ item.organization }} | {{ item.object.template }} | {{ item.object.intent_profile }} | {{ item.object.get_state_display }} | {{ item.reason_summary }} |
| Name | Organization | Intent Profile | Template Binding | Effect | Lifecycle | Ends At | Status |
|---|---|---|---|---|---|---|---|
| {{ item.object.name }} | {{ item.organization }} | {% if item.object.intent_profile %} {{ item.object.intent_profile }} {% else %} None {% endif %} | {% if item.object.template_binding %} {{ item.object.template_binding }} {% else %} None {% endif %} | {{ item.object.get_effect_mode_display }} | {{ item.lifecycle_text }} | {{ item.object.ends_at }} | {{ item.expiry_text }} |
| Name | Organization | Scope | Owner | Review At | Ends At | Status |
|---|---|---|---|---|---|---|
| {{ item.object.name }} | {{ item.organization }} | {{ item.scope_text }} | {{ item.object.owner }} | {{ item.object.review_at|default:'-' }} | {{ item.object.ends_at|default:'-' }} | {{ item.status_text }} |
| Name | Organization | Status | Target Mode | Started At | Completed At | Outcome |
|---|---|---|---|---|---|---|
| {{ item.object.name }} | {{ item.object.organization }} | {{ item.status_text }} | {{ item.object.get_target_mode_display }} | {{ item.object.started_at|default:'-' }} | {{ item.object.completed_at|default:'-' }} |
{{ item.summary_text }}
{{ item.failed_scope_count }} failed scope(s)
|
| Name | Organization | Provider Type | Sync Health | Last Sync Status | Freshness | Family Coverage | Publication Health | Latest Snapshot | Latest Diff |
|---|---|---|---|---|---|---|---|---|---|
| {{ provider_account.name }} | {{ provider_account.organization }} | {{ provider_account.get_provider_type_display }} | {{ provider_account.sync_health_display }} | {{ provider_account.last_sync_status }} |
{{ provider_account.last_sync_rollup.freshness_text }}
{{ provider_account.last_sync_rollup.sync_threshold_text }}
|
{{ provider_account.last_sync_rollup.family_status_text }}
|
{{ provider_account.last_sync_rollup.publication_health_text }}
|
{% if provider_account.last_sync_rollup.latest_snapshot_url %}
{{ provider_account.last_sync_rollup.latest_snapshot_label }}
{{ provider_account.last_sync_rollup.latest_snapshot_completed_at|default:'Not completed yet' }}
{% else %}
No snapshot
{% endif %}
|
{% if provider_account.last_sync_rollup.latest_diff_url %} {{ provider_account.last_sync_rollup.latest_diff_label }} {% else %} No diff {% endif %} |
| Name | Organization | Origin AS | Signed By | Valid To | Status |
|---|---|---|---|---|---|
| {{ item.object.name }} | {{ item.organization }} | {{ item.object.origin_as|default:'-' }} | {{ item.related_object }} | {{ item.object.valid_to }} | {{ item.expiry_text }} |
| Name | Organization | Comparison Scope | Missing | Missing Provider | Extra Provider | Orphaned | Stale |
|---|---|---|---|---|---|---|---|
| {{ item.object.name }} | {{ item.object.organization }} | {{ item.object.comparison_scope }} | {{ item.missing_count }} | {{ item.missing_provider_count }} | {{ item.extra_provider_count }} | {{ item.orphaned_count }} | {{ item.stale_count }} |
| Name | Organization | Intent Profile | Comparison Scope | Replacement Drift | Lint Warnings | Lint Errors |
|---|---|---|---|---|---|---|
| {{ item.object.name }} | {{ item.object.organization }} | {{ item.object.intent_profile }} | {{ item.object.comparison_scope }} | {{ item.replacement_count }} | {{ item.warning_count }} | {{ item.error_count }} |
| Name | Organization | Status | Replacement Actions | Provider Adds | Provider Removes |
|---|---|---|---|---|---|
| {{ item.object.name }} | {{ item.object.organization }} | {{ item.object.status }} | {{ item.replacement_count }} | {{ item.provider_add_count }} | {{ item.provider_remove_count }} |
| Name | Organization | Status | Replacement Actions | Blocking | Ack Required | Acknowledged | Suppressed | Simulation |
|---|---|---|---|---|---|---|---|---|
| {{ item.object.name }} | {{ item.object.organization }} | {{ item.object.status }} | {{ item.replacement_count }} | {{ item.blocking_count }} | {{ item.ack_required_count }} | {{ item.acknowledged_count }} | {{ item.suppressed_count }} |
{% if item.simulation_run %}
{{ item.simulation_run.predicted_valid_count }} valid / {{ item.simulation_run.predicted_invalid_count }} invalid / {{ item.simulation_run.predicted_not_found_count }} not-found
{{ item.simulation_blocking_count }} blocking / {{ item.simulation_ack_required_count }} ack-required
{% if not item.simulation_posture.is_current_for_plan %} / stale{% endif %}
{% else %}
No simulation
{% endif %}
|
| Name | Organization | Issuer | Valid To | Status |
|---|---|---|---|---|
| {{ item.object.name }} | {{ item.organization }} | {{ item.object.issuer|default:'-' }} | {{ item.object.valid_to }} | {{ item.expiry_text }} |