a2a-source-edit: write agent.py

This commit is contained in:
a2a-cloud
2026-07-13 00:25:23 +00:00
parent 1fcb8d9efc
commit 8b94b72d67

View File

@@ -12,7 +12,7 @@ import json
import re import re
import time import time
from email.utils import parseaddr from email.utils import parseaddr
from typing import Any, Literal from typing import Any
import httpx import httpx
from pydantic import BaseModel, Field from pydantic import BaseModel, Field
@@ -517,9 +517,6 @@ def _evaluate_refund_policy(
return {"status": "needs_reconciliation", "approval_required": True, "reason": "Stripe timed out; reconcile before retrying."} return {"status": "needs_reconciliation", "approval_required": True, "reason": "Stripe timed out; reconcile before retrying."}
if stripe_check["status"] != "ok": if stripe_check["status"] != "ok":
return {"status": "declined", "approval_required": True, "reason": stripe_check.get("error_type", "stripe_lookup_failed")} return {"status": "declined", "approval_required": True, "reason": stripe_check.get("error_type", "stripe_lookup_failed")}
if stripe_check.get("livemode") is False:
# Test mode is allowed for dry-run eligibility, but still requires approval for execution.
pass
if stripe_check.get("currency") != currency.lower(): if stripe_check.get("currency") != currency.lower():
return {"status": "declined", "approval_required": True, "reason": "Currency mismatch."} return {"status": "declined", "approval_required": True, "reason": "Currency mismatch."}
if stripe_check.get("payment_intent_status") not in {"succeeded", "requires_capture"}: if stripe_check.get("payment_intent_status") not in {"succeeded", "requires_capture"}:
@@ -665,7 +662,6 @@ async def _save_ledger(ctx: RunContext[Any], ledger: dict[str, Any]) -> None:
) )
await view.write(LEDGER_PATH, data) await view.write(LEDGER_PATH, data)
except Exception: except Exception:
# Artifact fallback keeps an audit copy even if durable workspace access is unavailable.
ref = await ctx.write_artifact("support-refund-audit-ledger.json", data, "application/json") ref = await ctx.write_artifact("support-refund-audit-ledger.json", data, "application/json")
await ctx.emit_artifact(ref) await ctx.emit_artifact(ref)