LordXido's picture
Create app/logic.py
4dec111 verified
import hashlib
import time
from app.vault import store_reflex
HIGH = ["override", "surge", "breach", "failure"]
MED = ["delay", "unstable", "degrade"]
def classify(score: float) -> str:
if score >= 0.8:
return "HALT"
if score >= 0.4:
return "MONITOR"
return "STABLE"
def run_reflex(req):
ts = time.strftime("%Y-%m-%d %H:%M:%S")
norm = req.scenario.lower().strip()
h = hashlib.sha256(norm.encode()).hexdigest()
if any(k in norm for k in HIGH):
score = 0.92
elif any(k in norm for k in MED):
score = 0.55
else:
score = 0.18
state = classify(score)
action = {
"HALT": "HALT_SIGNAL",
"MONITOR": "ESCALATE_MONITORING",
"STABLE": "CONTINUE_OPERATION"
}[state]
size = store_reflex(
timestamp=ts,
scenario_hash=h,
score=score,
state=state,
source=req.source
)
return {
"timestamp": ts,
"scenario_hash": h,
"anomaly_score": score,
"system_state": state,
"action": action,
"vault_size": size
}