Files
wehub-resource-sync 4b6817381b
CI (OpenClaw E2E) / openclaw test (push) Has been cancelled
CI / coverage-report (push) Has been cancelled
CI / test-kubernetes (push) Has been cancelled
CI / should-run-thorough (push) Has been cancelled
CI / test-thorough (cloudwatch-demo) (push) Has been cancelled
CI / test-thorough (flink-ecs) (push) Has been cancelled
CI / test-thorough (upstream-lambda) (push) Has been cancelled
CI / test-thorough (prefect-ecs-fargate) (push) Has been cancelled
Release / build-binaries (zip, opensre.exe, onefile, windows-latest, windows-x64) (push) Has been cancelled
Benchmark image — build + push to ECR (any adapter) / build + push (push) Has been cancelled
CI / quality (ubuntu-latest) (push) Has been cancelled
CI / test (tools-runtime) (push) Has been cancelled
CI / test (e2e-general) (push) Has been cancelled
CI / test (cli-runtime) (push) Has been cancelled
CI / test (e2e-provider-and-openclaw) (push) Has been cancelled
CI / test (integrations-and-misc) (push) Has been cancelled
Release / verify (push) Has been cancelled
Release / build-python-dist (push) Has been cancelled
Release / build-binaries (tar.gz, opensre, onedir, macos-15-intel, darwin-x64) (push) Has been cancelled
Release / build-binaries (tar.gz, opensre, onedir, macos-latest, darwin-arm64) (push) Has been cancelled
Release / build-binaries (tar.gz, opensre, onedir, ubuntu-22.04, linux-x64) (push) Has been cancelled
Release / publish-release (push) Has been cancelled
Release / publish-main-release (push) Has been cancelled
Interactive Shell Live (PR + post-merge) / turn-checks (no-LLM) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
Interactive Shell Live (PR + post-merge) / turn-live shard ${{ matrix.shard_index }} (push) Has been cancelled
Release / prepare (push) Has been cancelled
Release / build-binaries (tar.gz, opensre, onedir, ubuntu-22.04-arm, linux-arm64) (push) Has been cancelled
Synthetic Deterministic Tests / Synthetic offline (deterministic) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:10:45 +08:00

68 lines
1.9 KiB
Python

"""Typed context consumed by publish-findings formatters."""
from __future__ import annotations
from typing import Any
from typing_extensions import TypedDict
class ReportContext(TypedDict, total=False):
"""Data extracted from state for report formatting.
Contains all information needed to generate the final RCA report,
including pipeline metadata, root cause analysis results, validated claims,
infrastructure assets, and evidence references.
"""
# Core RCA results
pipeline_name: str
alert_name: str | None
root_cause: str
validated_claims: list[dict]
non_validated_claims: list[dict]
remediation_steps: list[str]
triage_summary: str
incident_status: str
investigation_hypotheses: list[str]
verification_summary: list[str]
follow_up_questions: list[str]
remediation_tradeoffs: str
correlation: dict[str, Any]
# S3 verification
s3_marker_exists: bool
# CloudWatch metadata
cloudwatch_log_group: str | None
cloudwatch_log_stream: str | None
cloudwatch_logs_url: str | None
cloudwatch_region: str | None
alert_id: str | None
evidence_catalog: dict
investigation_duration_seconds: int | None
# Raw data for deeper inspection
evidence: dict
raw_alert: dict
# Tool call history for investigation transparency
executed_hypotheses: list[dict]
# Integration endpoints (for building deep links)
grafana_endpoint: str | None
datadog_site: str | None
# Concrete source provenance, keyed by source name (grafana, eks, github, ...)
source_provenance: dict[str, dict[str, str]]
# Alert severity (e.g. critical, high) for channel-specific formatting (Telegram, etc.)
severity: str | None
kube_pod_name: str | None
kube_container_name: str | None
kube_namespace: str | None
# Multiple failed pods (for cluster-scale failures)
kube_failed_pods: list[dict]