Public scan — anyone with this URL can view this analysis. Sign up to track your own repos privately, run scheduled re-scans, and get AI fix prompts via your dashboard.

zkann/cost-engine

https://github.com/zkann/cost-engine · scanned 2026-06-16 01:13 UTC (2 months, 1 week ago)

9 raw signals (0 security + 9 graph)

UNIFIED Repobility · multi-layer engine · AI coders

Complete repo analysis

Last scanned 2 months, 1 week ago · v1 · 8 actionable findings from 1 signal source. 1 repeated signal grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.

JSON
Severity distribution — click a segment to filter
Active filters: excluding tests × Reset all

All 225 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.

LabelLayerStatusPath
test_schema_columns software healthy tests/test_synthetic.py:13
test_deterministic_given_seed software healthy tests/test_synthetic.py:17
test_different_seed_changes_resource_ids software healthy tests/test_synthetic.py:24
test_total_is_material software healthy tests/test_synthetic.py:31
test_planted_signals_present software healthy tests/test_synthetic.py:35
test_daily_granularity software healthy tests/test_synthetic.py:48
_group software healthy tests/test_cost_explorer_connector.py:24
_ce_response software healthy tests/test_cost_explorer_connector.py:29
_stubbed_ce software healthy tests/test_cost_explorer_connector.py:41
test_loads_service_and_usage_type_rows software healthy tests/test_cost_explorer_connector.py:47
test_paginates software healthy tests/test_cost_explorer_connector.py:64
test_default_period_is_a_complete_prior_month software healthy tests/test_cost_explorer_connector.py:76
test_supported_rules_fire_unsupported_skipped software healthy tests/test_cost_explorer_connector.py:91
synthetic_df software healthy tests/conftest.py:15
clean_df software healthy tests/conftest.py:20
_mt software healthy tests/test_s3_connector.py:31
_parquet_bytes software healthy tests/test_s3_connector.py:35
_stubbed_s3 software healthy tests/test_s3_connector.py:41
_obj software healthy tests/test_s3_connector.py:47
test_find_latest_cur_key_picks_newest_parquet software healthy tests/test_s3_connector.py:52
test_find_latest_raises_when_no_cur_objects software healthy tests/test_s3_connector.py:73
test_load_cur_from_s3_by_key_runs_full_analysis software healthy tests/test_s3_connector.py:84
test_load_cur_from_s3_finds_latest_then_downloads software healthy tests/test_s3_connector.py:99
test_requires_key_or_prefix software healthy tests/test_s3_connector.py:117
test_period_of_parses_both_layouts software healthy tests/test_s3_connector.py:124
test_select_prefers_most_recent_complete_month software healthy tests/test_s3_connector.py:130
test_select_loads_all_parts_in_latest_folder software healthy tests/test_s3_connector.py:142
test_select_explicit_month software healthy tests/test_s3_connector.py:154
test_load_s3_picks_complete_month_not_partial software healthy tests/test_s3_connector.py:164
_minimal_raw_cur software healthy tests/test_normalize.py:15
test_to_snake_handles_raw_and_normalized software healthy tests/test_normalize.py:33
test_optional_columns_filled_and_service_falls_back software healthy tests/test_normalize.py:39
test_resilient_cur_still_analyzes software healthy tests/test_normalize.py:49
test_data_gaps_reported_for_sparse_cur software healthy tests/test_normalize.py:58
test_no_data_gaps_on_full_synthetic software healthy tests/test_normalize.py:67
test_missing_essential_column_raises software healthy tests/test_normalize.py:73
test_distinct_accounts_from_synthetic software healthy tests/test_engine_report.py:11
test_markdown_shows_provenance_when_set software healthy tests/test_engine_report.py:16
test_markdown_omits_provenance_when_absent software healthy tests/test_engine_report.py:25
test_analyze_assembles_full_report software healthy tests/test_engine_report.py:31
test_findings_sorted_by_savings software healthy tests/test_engine_report.py:40
test_breakdown_shares_sum_to_one software healthy tests/test_engine_report.py:46
test_untagged_shows_in_team_breakdown software healthy tests/test_engine_report.py:51
test_null_region_not_labeled_untagged software healthy tests/test_engine_report.py:56
test_all_null_dimension_breakdown_suppressed software healthy tests/test_engine_report.py:75
_make_report software healthy tests/test_engine_report.py:86
_finding software healthy tests/test_engine_report.py:102
test_fallback_advice_never_names_absent_rules software healthy tests/test_engine_report.py:118
test_fallback_advice_names_quick_wins_when_present software healthy tests/test_engine_report.py:140
test_severity_escalates_on_share_of_spend software healthy tests/test_engine_report.py:158

Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.

LabelLayerStatusPath
README.md software healthy README.md
.env.example software healthy .env.example
pyproject.toml software healthy pyproject.toml
LICENSE software healthy LICENSE
SECURITY.md software healthy SECURITY.md
test_synthetic.py software healthy tests/test_synthetic.py
test_cost_explorer_connector.py software healthy tests/test_cost_explorer_connector.py
conftest.py software healthy tests/conftest.py
test_s3_connector.py software healthy tests/test_s3_connector.py
test_normalize.py software healthy tests/test_normalize.py
test_engine_report.py software healthy tests/test_engine_report.py
test_cli.py software healthy tests/test_cli.py
test_rules.py software healthy tests/test_rules.py
test_mcp_server.py software healthy tests/test_mcp_server.py
ARCHITECTURE.md software healthy docs/ARCHITECTURE.md
ci.yml software healthy .github/workflows/ci.yml
__init__.py software healthy src/cost_engine/__init__.py
mcp_server.py software healthy src/cost_engine/mcp_server.py
cli.py software healthy src/cost_engine/cli.py
schema.py software healthy src/cost_engine/schema.py
models.py software healthy src/cost_engine/models.py
__init__.py software healthy src/cost_engine/ingest/__init__.py
service_names.py software healthy src/cost_engine/ingest/service_names.py
synthetic.py software healthy src/cost_engine/ingest/synthetic.py
cur.py software healthy src/cost_engine/ingest/cur.py
load.py software healthy src/cost_engine/ingest/load.py
cost_explorer.py software healthy src/cost_engine/ingest/cost_explorer.py
normalize.py software healthy src/cost_engine/ingest/normalize.py
__init__.py software healthy src/cost_engine/analyze/__init__.py
aggregate.py software healthy src/cost_engine/analyze/aggregate.py
engine.py software healthy src/cost_engine/analyze/engine.py
rds_reserved.py software healthy src/cost_engine/analyze/rules/rds_reserved.py
__init__.py software healthy src/cost_engine/analyze/rules/__init__.py
savings_plan_coverage.py software healthy src/cost_engine/analyze/rules/savings_plan_coverage.py
idle_elastic_ip.py software healthy src/cost_engine/analyze/rules/idle_elastic_ip.py
base.py software healthy src/cost_engine/analyze/rules/base.py
untagged_spend.py software healthy src/cost_engine/analyze/rules/untagged_spend.py
snapshot_retention.py software healthy src/cost_engine/analyze/rules/snapshot_retention.py
gp2_to_gp3.py software healthy src/cost_engine/analyze/rules/gp2_to_gp3.py
data_transfer.py software healthy src/cost_engine/analyze/rules/data_transfer.py
__init__.py software healthy src/cost_engine/report/__init__.py
render.py software healthy src/cost_engine/report/render.py
summarize.py software healthy src/cost_engine/report/summarize.py

LabelLayerStatusPath
NoSuchBucket software healthy tests/test_cli.py:51
Format software healthy src/cost_engine/cli.py:123
Severity software healthy src/cost_engine/models.py:16
Category software healthy src/cost_engine/models.py:25
Finding software healthy src/cost_engine/models.py:33
CostSlice software healthy src/cost_engine/models.py:63
Breakdown software healthy src/cost_engine/models.py:71
Report software healthy src/cost_engine/models.py:77
ResourceSpec software healthy src/cost_engine/ingest/synthetic.py:39
RdsReservedCoverageRule software healthy src/cost_engine/analyze/rules/rds_reserved.py:30
SavingsPlanCoverageRule software healthy src/cost_engine/analyze/rules/savings_plan_coverage.py:33
IdleElasticIpRule software healthy src/cost_engine/analyze/rules/idle_elastic_ip.py:19
Rule software healthy src/cost_engine/analyze/rules/base.py:22
UntaggedSpendRule software healthy src/cost_engine/analyze/rules/untagged_spend.py:21
SnapshotRetentionRule software healthy src/cost_engine/analyze/rules/snapshot_retention.py:25
Gp2ToGp3Rule software healthy src/cost_engine/analyze/rules/gp2_to_gp3.py:21
DataTransferRule software healthy src/cost_engine/analyze/rules/data_transfer.py:27

LabelLayerStatusPath
tests software healthy tests
docs software healthy docs
.github software healthy .github
workflows software healthy .github/workflows
src software healthy src
cost_engine software healthy src/cost_engine
ingest software healthy src/cost_engine/ingest
analyze software healthy src/cost_engine/analyze
rules software healthy src/cost_engine/analyze/rules
report software healthy src/cost_engine/report

LabelLayerStatusPath
test cicd healthy .github/workflows/ci.yml
audit cicd healthy .github/workflows/ci.yml
secret-scan cicd healthy .github/workflows/ci.yml

LabelLayerStatusPath
vps::aws hardware healthy README.md
vps::ec2 hardware healthy README.md

LabelLayerStatusPath
repobility-clone-vx66kvmp software healthy /tmp/repobility-clone-vx66kvmp

LabelLayerStatusPath
sqs data healthy src/cost_engine/ingest/service_names.py

LabelLayerStatusPath
gha::ci cicd healthy .github/workflows/ci.yml
For AI agents: Voting guide (TP/FP) MCP manifest Stdio wrapper SARIF Integrate Findings queue Vote TP/FP on findings to calibrate the engine.
For AI agents + API integrations
Email me when this repo regresses
Free. We re-scan periodically; new criticals → your inbox. No signup required for the scan itself.
API access

This page is publicly accessible at: https://repobility.com/scan/76bdf6e6-4d29-470a-b152-579cfa2036cd/

To check status programmatically (no auth required):

curl -s https://repobility.com/api/v1/public/scan/76bdf6e6-4d29-470a-b152-579cfa2036cd/

Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.