.gitignore
.pre-commit-config.yaml
CONTRIBUTING.md
LICENSE
README.md
SECURITY.md
TODO.md
devbox.json
devbox.lock
pyproject.toml
.github/dependabot.yml
.github/workflows/publish.yml
.vscode/settings.json
docs/AI.md
docs/ARCHITECTURE.md
docs/USAGE.md
docs/ci-cd.md
docs/reliability-metrics.md
docs/verify-report-vs-cloudflare.md
docs/developers/AI_DOCS_GUIDELINES.md
docs/developers/README.md
docs/developers/add-new-stream.md
docs/developers/cli-command-flows.md
docs/developers/cli-options-reference.md
docs/developers/http-vs-cache-metrics.md
docs/developers/pdf-layout-primitives.md
docs/developers/report-flow.md
docs/developers/report-period-baseline.md
docs/developers/security-analytics-fetch.md
docs/developers/security-score-policy-observations.md
docs/examples/report-detailed-png-medium.pdf
docs/examples/report-detailed-svg-high-single-page.pdf
docs/examples/report-executive-png-medium.pdf
docs/examples/report-minimal-png-medium.pdf
docs/images/ai-cto-evolution.webp
docs/sample-data/README.md
docs/sample-data/cache/a1b2c3d4e5f6789012345678abcdef01/_index.json
docs/sample-data/cache/a1b2c3d4e5f6789012345678abcdef01/2026-03-15/dns.json
docs/sample-data/cache/a1b2c3d4e5f6789012345678abcdef01/2026-04-01/cache.json
docs/sample-data/cache/a1b2c3d4e5f6789012345678abcdef01/2026-04-01/dns.json
docs/sample-data/cache/a1b2c3d4e5f6789012345678abcdef01/2026-04-01/http.json
docs/sample-data/cache/a1b2c3d4e5f6789012345678abcdef01/2026-04-01/security.json
docs/sample-data/report/report-sample.json
src/cloudflare_executive_report/__init__.py
src/cloudflare_executive_report/aggregate.py
src/cloudflare_executive_report/cf_client.py
src/cloudflare_executive_report/cli.py
src/cloudflare_executive_report/cli_common.py
src/cloudflare_executive_report/config.py
src/cloudflare_executive_report/exits.py
src/cloudflare_executive_report/zone_health.py
src/cloudflare_executive_report.egg-info/PKG-INFO
src/cloudflare_executive_report.egg-info/SOURCES.txt
src/cloudflare_executive_report.egg-info/dependency_links.txt
src/cloudflare_executive_report.egg-info/entry_points.txt
src/cloudflare_executive_report.egg-info/requires.txt
src/cloudflare_executive_report.egg-info/top_level.txt
src/cloudflare_executive_report/aggregators/__init__.py
src/cloudflare_executive_report/aggregators/audit.py
src/cloudflare_executive_report/aggregators/cache.py
src/cloudflare_executive_report/aggregators/certificates.py
src/cloudflare_executive_report/aggregators/dns.py
src/cloudflare_executive_report/aggregators/dns_records.py
src/cloudflare_executive_report/aggregators/email.py
src/cloudflare_executive_report/aggregators/example.py
src/cloudflare_executive_report/aggregators/http.py
src/cloudflare_executive_report/aggregators/http_adaptive.py
src/cloudflare_executive_report/aggregators/registry.py
src/cloudflare_executive_report/aggregators/security.py
src/cloudflare_executive_report/ai/__init__.py
src/cloudflare_executive_report/ai/client.py
src/cloudflare_executive_report/ai/formatter.py
src/cloudflare_executive_report/ai/prompts.py
src/cloudflare_executive_report/ai/summary.py
src/cloudflare_executive_report/cache/__init__.py
src/cloudflare_executive_report/cache/envelope.py
src/cloudflare_executive_report/cache/index.py
src/cloudflare_executive_report/cache/lock.py
src/cloudflare_executive_report/cache/paths.py
src/cloudflare_executive_report/common/__init__.py
src/cloudflare_executive_report/common/aggregation_helpers.py
src/cloudflare_executive_report/common/boundary.py
src/cloudflare_executive_report/common/colo_locations.py
src/cloudflare_executive_report/common/constants.py
src/cloudflare_executive_report/common/dates.py
src/cloudflare_executive_report/common/formatting.py
src/cloudflare_executive_report/common/logging_config.py
src/cloudflare_executive_report/common/period_resolver.py
src/cloudflare_executive_report/common/report_cache.py
src/cloudflare_executive_report/common/report_period.py
src/cloudflare_executive_report/common/report_snapshot.py
src/cloudflare_executive_report/common/retention.py
src/cloudflare_executive_report/common/safe_types.py
src/cloudflare_executive_report/email/__init__.py
src/cloudflare_executive_report/email/smtp.py
src/cloudflare_executive_report/executive/__init__.py
src/cloudflare_executive_report/executive/nist_catalog.py
src/cloudflare_executive_report/executive/phrase_catalog.py
src/cloudflare_executive_report/executive/portfolio.py
src/cloudflare_executive_report/executive/rules.py
src/cloudflare_executive_report/executive/summary.py
src/cloudflare_executive_report/executive/rules/__init__.py
src/cloudflare_executive_report/executive/rules/_context.py
src/cloudflare_executive_report/executive/rules/audit.py
src/cloudflare_executive_report/executive/rules/certificates.py
src/cloudflare_executive_report/executive/rules/dns.py
src/cloudflare_executive_report/executive/rules/email.py
src/cloudflare_executive_report/executive/rules/http.py
src/cloudflare_executive_report/executive/rules/security.py
src/cloudflare_executive_report/executive/rules/zone_health.py
src/cloudflare_executive_report/fetchers/__init__.py
src/cloudflare_executive_report/fetchers/audit.py
src/cloudflare_executive_report/fetchers/cache.py
src/cloudflare_executive_report/fetchers/certificates.py
src/cloudflare_executive_report/fetchers/dns.py
src/cloudflare_executive_report/fetchers/dns_records.py
src/cloudflare_executive_report/fetchers/email.py
src/cloudflare_executive_report/fetchers/example.py
src/cloudflare_executive_report/fetchers/graphql_common.py
src/cloudflare_executive_report/fetchers/http.py
src/cloudflare_executive_report/fetchers/http_adaptive.py
src/cloudflare_executive_report/fetchers/registry.py
src/cloudflare_executive_report/fetchers/security.py
src/cloudflare_executive_report/fetchers/types.py
src/cloudflare_executive_report/pdf/__init__.py
src/cloudflare_executive_report/pdf/charts.py
src/cloudflare_executive_report/pdf/cover.py
src/cloudflare_executive_report/pdf/document.py
src/cloudflare_executive_report/pdf/figure_quality.py
src/cloudflare_executive_report/pdf/layout_spec.py
src/cloudflare_executive_report/pdf/loader.py
src/cloudflare_executive_report/pdf/maps.py
src/cloudflare_executive_report/pdf/orchestrate.py
src/cloudflare_executive_report/pdf/primitives.py
src/cloudflare_executive_report/pdf/security_display.py
src/cloudflare_executive_report/pdf/stream_fragments.py
src/cloudflare_executive_report/pdf/styles.py
src/cloudflare_executive_report/pdf/theme.py
src/cloudflare_executive_report/pdf/streams/__init__.py
src/cloudflare_executive_report/pdf/streams/appendix.py
src/cloudflare_executive_report/pdf/streams/cache.py
src/cloudflare_executive_report/pdf/streams/dns.py
src/cloudflare_executive_report/pdf/streams/email.py
src/cloudflare_executive_report/pdf/streams/example.py
src/cloudflare_executive_report/pdf/streams/executive_summary.py
src/cloudflare_executive_report/pdf/streams/http.py
src/cloudflare_executive_report/pdf/streams/portfolio.py
src/cloudflare_executive_report/pdf/streams/security.py
src/cloudflare_executive_report/report/__init__.py
src/cloudflare_executive_report/report/baseline_selection.py
src/cloudflare_executive_report/report/command_flow.py
src/cloudflare_executive_report/report/health_refresh.py
src/cloudflare_executive_report/report/period.py
src/cloudflare_executive_report/report/snapshot.py
src/cloudflare_executive_report/report/zone_block.py
src/cloudflare_executive_report/sync/__init__.py
src/cloudflare_executive_report/sync/day_processor.py
src/cloudflare_executive_report/sync/options.py
src/cloudflare_executive_report/sync/orchestrator.py
src/cloudflare_executive_report/validate/__init__.py
src/cloudflare_executive_report/validate/consts.py
src/cloudflare_executive_report/validate/probes.py
src/cloudflare_executive_report/validate/runner.py
tests/test_aggregate.py
tests/test_ai_summary.py
tests/test_baseline_selection.py
tests/test_cache.py
tests/test_cache_lock.py
tests/test_clean_scopes.py
tests/test_cli_argv.py
tests/test_cli_clean.py
tests/test_cli_common.py
tests/test_cli_pdf_stream_order.py
tests/test_command_flow.py
tests/test_config_output_paths.py
tests/test_dates.py
tests/test_day_processor_unit.py
tests/test_email_smtp.py
tests/test_email_stream.py
tests/test_example_stream.py
tests/test_executive_hsts_rules.py
tests/test_executive_portfolio.py
tests/test_executive_rules.py
tests/test_executive_rules_stream_filter.py
tests/test_executive_security_posture_score.py
tests/test_executive_summary.py
tests/test_fetchers_http_adaptive.py
tests/test_fetchers_http_unit.py
tests/test_fetchers_optional_snapshots.py
tests/test_fetchers_security.py
tests/test_fetchers_security_unit.py
tests/test_health_refresh_unit.py
tests/test_integration_smoke.py
tests/test_logging_config.py
tests/test_pdf_charts.py
tests/test_pdf_executive_summary.py
tests/test_pdf_figure_quality.py
tests/test_pdf_loader.py
tests/test_pdf_primitives.py
tests/test_period_resolver.py
tests/test_report_pdf.py
tests/test_report_rotation.py
tests/test_report_snapshot.py
tests/test_report_snapshot_reuse.py
tests/test_report_snapshot_unit.py
tests/test_retention.py
tests/test_run_clean_v2.py
tests/test_security_display.py
tests/test_stream_fragments.py
tests/test_sync_orchestrator.py
tests/test_validate.py
tests/test_zone_health_unit.py