Chaim
221975fe23
G12 Leak-Guard / leak-guard (pull_request) Successful in 4s
Lint — undefined names / undefined-names (pull_request) Successful in 11s
feat(scripts): כפתור "הרץ" מ-UI לסקריפטי read-only (קטגוריה B #4)
הרצת-סקריפט-מ-UI ב-/scripts, רק לסקריפטי קריאה-בלבד/אודיט, דרך גשר-המארח
הקיים (court-fetch) — שיכפול דפוס /adapter-migration.
אבטחה:
- allowlist בצד-המארח (services/script_runner.py, מקור-אמת יחיד): name→argv
קבוע ובטוח. 5 סקריפטים מאומתים: leak_guard, check_undefined_names,
storage_leak_tripwire, audit_training_corpus, audit_corpus_integrity --no-notify.
- הגשר (court_fetch_service/server.py): endpoint POST /run-script, Bearer-auth,
ולידציית-allowlist, create_subprocess_exec (ללא shell), timeout 600s,
audit-log; מתעלם מארגומנטים מהבקשה (argv מה-allowlist בלבד).
- קונטיינר (web/app.py): POX /api/scripts/{name}/run proxy ל-גשר + pre-check
allowlist; הרחבת /api/scripts/catalog ב-runnable_scripts.
- UI: כפתור "הרץ" (ירוק) רק לשורות-runnable + דיאלוג-פלט (exit-code+stdout);
שאר השורות "מקור" בלבד. confirm לפני הרצה.
מאושר דרך שער-העיצוב (מוקאפ 16-scripts עודכן עם כפתור "הרץ").
G12: leak_guard עובר (אין סמלי-פלטפורמה בשכבת-האינטליגנציה).
Deploy דו-שלבי: גשר-המארח דורש git pull בעותק-המארח + pm2 restart
legal-court-fetch-service; הקונטיינר נפרס דרך Coolify כרגיל.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-17 04:30:43 +00:00
..
2026-06-16 18:25:38 +00:00
2026-06-16 19:16:12 +00:00
2026-06-11 23:00:25 +00:00
2026-06-11 21:04:57 +00:00
2026-06-11 23:00:25 +00:00
2026-06-11 23:00:25 +00:00
2026-06-11 23:00:25 +00:00
2026-06-11 23:00:25 +00:00
2026-06-12 07:58:29 +00:00
2026-06-16 19:16:12 +00:00
2026-06-16 18:49:56 +00:00
2026-06-17 04:30:43 +00:00
2026-06-11 23:00:25 +00:00
2026-06-11 23:00:25 +00:00
2026-06-11 23:00:25 +00:00
2026-04-11 17:43:59 +00:00
2026-04-11 13:47:05 +00:00
2026-04-11 17:43:59 +00:00
2026-06-16 07:37:29 +00:00
2026-04-11 17:43:59 +00:00
2026-04-11 17:43:59 +00:00
2026-06-16 17:47:25 +00:00