feat: add purge-all for Pattern Library + clarify Trade Ideas in Data Management

Backend: DELETE /api/patterns/purge-all — removes all custom + backtested patterns
(source != 'builtin'), leaves Pattern Lab run history intact.

Frontend Config > Data Management:
- New PurgeButton for Pattern Library (custom_patterns table)
- Updated note: Trade Ideas are computed live from the Pattern Library (no separate table),
  so purging patterns resets trade idea generation on next cycle.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
OpenSquared
2026-06-22 18:42:11 +02:00
parent 5ac7b8a088
commit 5ff5006dec
2 changed files with 22 additions and 2 deletions

View File

@@ -61,6 +61,18 @@ def update_pattern(pat_id: str, req: PatternRequest):
return {"id": pat_id, "status": "updated"}
@router.delete("/purge-all")
def purge_all_patterns():
"""Delete ALL custom/backtested patterns from the pattern library."""
from services.database import get_conn
conn = get_conn()
conn.execute("DELETE FROM custom_patterns WHERE source != 'builtin'")
n = conn.total_changes
conn.commit()
conn.close()
return {"deleted": n}
@router.delete("/custom/{pat_id}")
def delete_pattern(pat_id: str):
delete_custom_pattern(pat_id)