Files
a0_software_orchestrator/scripts/security_prompt_lint.py
T
Software Orchestrator 5769c1cd22 Initial commit: a0_software_orchestrator v1.0
- Auto-Registration-Bug behoben (register_project/get_project_id/resolve_project Trennung)
- 25 Tests gruen (Pytest)
- block_compactor-Tool refactored (Option B: Soft-Check statt Hard-Block)
- 4 Restbaustellen gefixt
- DB-Schema: plugin_settings-Tabelle hinzugefuegt
- 3 Schattenprojekte aus DB geloescht
- Plan v3 + Refactor-Plan + Worklog dokumentiert
2026-06-16 22:13:06 +00:00

27 lines
867 B
Python

#!/usr/bin/env python3
from pathlib import Path
import re, sys
ROOT = Path(__file__).resolve().parents[1]
BAD_PATTERNS = [
r"Registrierung\s*\+\s*Login\s*→\s*Token",
r"find\s+(the\s+)?login\s+credentials",
r"search\s+for\s+login\s+credentials",
r"use\s+env\s+vars\s+or\s+\.env\s+files",
r"browser\s+smoke\s+test\s*\(open\s+key\s+page",
r"required_for_web_apps:\s*true",
]
fail=[]
for p in ROOT.rglob('*'):
if p == Path(__file__).resolve():
continue
if p.is_file() and p.suffix.lower() in {'.md','.yaml','.yml','.py','.json'}:
txt=p.read_text(errors='ignore')
for pat in BAD_PATTERNS:
if re.search(pat, txt, re.I|re.M):
fail.append((str(p.relative_to(ROOT)), pat))
if fail:
for f,pat in fail:
print(f"FAIL {f}: {pat}")
sys.exit(1)
print("PASS security prompt lint")