update scalable_sync.py to enhance transaction mapping logic and improve handling of cash transactions

This commit is contained in:
Lukas Pierchalla
2026-09-20 12:46:14 +02:00
parent 019fe41cce
commit 5fd5a67995
+3
View File
@@ -222,6 +222,8 @@ def map_to_wealthfolio(tx: dict) -> list[WealthfolioActivity]:
"FEE": "FEE", "FEE": "FEE",
"TAX": "TAX", "TAX": "TAX",
"TAX_RETURN": "CREDIT", "TAX_RETURN": "CREDIT",
"CASH_TRANSFER_IN": "DEPOSIT", # neu
"CASH_TRANSFER_OUT": "WITHDRAWAL", # neu
}.get(cash_type) }.get(cash_type)
if not wf_type: if not wf_type:
@@ -373,6 +375,7 @@ def sync_once(dry_run=False):
f"{a.activity_type} {a.symbol} qty={a.quantity} amt={a.amount}" for a in activities f"{a.activity_type} {a.symbol} qty={a.quantity} amt={a.amount}" for a in activities
]) ])
audit("dry_run", {"tx_id": tx_id, "activities": [asdict(a) for a in activities]}) audit("dry_run", {"tx_id": tx_id, "activities": [asdict(a) for a in activities]})
stats["new"] += len(activities) # ← diese Zeile fehlt noch
else: else:
try: try:
result = mcp.record_activities(activities) result = mcp.record_activities(activities)