πŸš€ Release Governance Dashboard (Layer 5)

πŸ“Œ Run Info

Repo: Debasish-87/ReleaseGuard

Commit: 4160655aa8b1fc6a42cfdd7fcb508f2162d5dc6c

Run ID: 22272779900

Run Link: https://github.com/Debasish-87/ReleaseGuard/actions/runs/22272779900

Generated: 2026-02-22T07:30:56.535745Z

πŸ§ͺ Layer 1 β€” Application Testing (Allure)

Status: βœ… PASSED

Total: 12 | Passed: 12 | Failed: 0 | Broken: 0 | Skipped: 0

Allure Report: https://Debasish-87.github.io/ReleaseGuard/allure/

πŸ” Layer 2 β€” Security Scans

πŸ•΅οΈ Gitleaks

Findings: 0

Top Findings

None βœ…

🧠 Semgrep

Findings: 12

ERROR: 11 | WARNING: 1 | INFO: 0

Top Findings

  • ERROR | python.flask.security.injection.nan-injection.nan-injection | target-app/app.py | Found user input going directly into typecast for bool(), float(), or complex(). This allows an attacker to inject Python's not-a-number (NaN) into the typecast. This results in undefind behavior, particularly when doing comparisons. Either cast to a different type, or add a guard checking for all capitalizations of the string 'nan'.
  • ERROR | python.flask.security.injection.nan-injection.nan-injection | target-app/app.py | Found user input going directly into typecast for bool(), float(), or complex(). This allows an attacker to inject Python's not-a-number (NaN) into the typecast. This results in undefind behavior, particularly when doing comparisons. Either cast to a different type, or add a guard checking for all capitalizations of the string 'nan'.
  • ERROR | python.flask.security.injection.nan-injection.nan-injection | target-app/app.py | Found user input going directly into typecast for bool(), float(), or complex(). This allows an attacker to inject Python's not-a-number (NaN) into the typecast. This results in undefind behavior, particularly when doing comparisons. Either cast to a different type, or add a guard checking for all capitalizations of the string 'nan'.
  • ERROR | python.flask.security.injection.nan-injection.nan-injection | target-app/app.py | Found user input going directly into typecast for bool(), float(), or complex(). This allows an attacker to inject Python's not-a-number (NaN) into the typecast. This results in undefind behavior, particularly when doing comparisons. Either cast to a different type, or add a guard checking for all capitalizations of the string 'nan'.
  • ERROR | python.flask.security.injection.nan-injection.nan-injection | target-app/app.py | Found user input going directly into typecast for bool(), float(), or complex(). This allows an attacker to inject Python's not-a-number (NaN) into the typecast. This results in undefind behavior, particularly when doing comparisons. Either cast to a different type, or add a guard checking for all capitalizations of the string 'nan'.
  • ERROR | python.flask.security.injection.nan-injection.nan-injection | target-app/app.py | Found user input going directly into typecast for bool(), float(), or complex(). This allows an attacker to inject Python's not-a-number (NaN) into the typecast. This results in undefind behavior, particularly when doing comparisons. Either cast to a different type, or add a guard checking for all capitalizations of the string 'nan'.
  • ERROR | python.flask.security.injection.nan-injection.nan-injection | target-app/app.py | Found user input going directly into typecast for bool(), float(), or complex(). This allows an attacker to inject Python's not-a-number (NaN) into the typecast. This results in undefind behavior, particularly when doing comparisons. Either cast to a different type, or add a guard checking for all capitalizations of the string 'nan'.
  • ERROR | python.flask.security.injection.nan-injection.nan-injection | target-app/app.py | Found user input going directly into typecast for bool(), float(), or complex(). This allows an attacker to inject Python's not-a-number (NaN) into the typecast. This results in undefind behavior, particularly when doing comparisons. Either cast to a different type, or add a guard checking for all capitalizations of the string 'nan'.
  • ERROR | python.flask.security.injection.nan-injection.nan-injection | target-app/app.py | Found user input going directly into typecast for bool(), float(), or complex(). This allows an attacker to inject Python's not-a-number (NaN) into the typecast. This results in undefind behavior, particularly when doing comparisons. Either cast to a different type, or add a guard checking for all capitalizations of the string 'nan'.
  • ERROR | python.flask.security.injection.nan-injection.nan-injection | target-app/app.py | Found user input going directly into typecast for bool(), float(), or complex(). This allows an attacker to inject Python's not-a-number (NaN) into the typecast. This results in undefind behavior, particularly when doing comparisons. Either cast to a different type, or add a guard checking for all capitalizations of the string 'nan'.

πŸ“¦ Trivy

Total Vulnerabilities: 0

CRITICAL: 0 | HIGH: 0 | MEDIUM: 0 | LOW: 0

Top Vulnerabilities

None βœ…

πŸ“¦ Layer 3 β€” SBOM + SBOM Vulnerability Scan

SBOM Components: 0

Top Components

None βœ…


Grype Findings: 0

CRITICAL: 0 | HIGH: 0 | MEDIUM: 0 | LOW: 0 | UNKNOWN: 0

Top Vulnerabilities

None βœ…

☸ Layer 4 β€” KPQE Platform Quality

Decision: RELEASE ALLOWED βœ…

Nodes: 1/1 Ready

Total Pods: 9

NotReady Nodes

None βœ…

CrashLoopBackOff Pods

None βœ…

Restart Risk Pods (restart > 3)

None βœ…

Raw KPQE Decision Output

RELEASE ALLOWED βœ…

🚦 Final Release Decision

HOLD ⏸️

Dashboard: https://Debasish-87.github.io/ReleaseGuard/dashboard/
Security: https://Debasish-87.github.io/ReleaseGuard/security/
SBOM: https://Debasish-87.github.io/ReleaseGuard/sbom/
KPQE: https://Debasish-87.github.io/ReleaseGuard/kpqe/
Decision JSON: https://Debasish-87.github.io/ReleaseGuard/decision/