feat(api+app): 对话阶段化、回忆录流水线与客户端会话体验
- DB: segments 用户输入文本(Alembic 0002) - Chat: 阶段检测/阶段提示/回复限制,编排与访谈/画像 prompts 调整 - Memoir: 忠实度检查 agent,叙事与分类等链路更新 - Core: agent 日志、Alembic 启动、LangChain/日志/配置等 - Story: time_hints;Memory 检索与相关测试 - Expo: 助手头像、会话页与消息拆分、实时会话与文案/i18n - Docs/scripts/tests: 迁移脚本、LLM JSON/记忆检索文档、新增单测
This commit is contained in:
@@ -115,7 +115,7 @@ class PaymentOrderService:
|
||||
except Exception as e:
|
||||
order.status = "failed"
|
||||
await self._db.flush()
|
||||
logger.exception("微信支付客户端初始化失败: %s", e)
|
||||
logger.exception("微信支付客户端初始化失败: {}", e)
|
||||
raise HTTPException(status_code=503, detail=f"微信支付暂不可用: {e!s}")
|
||||
|
||||
try:
|
||||
@@ -145,14 +145,14 @@ class PaymentOrderService:
|
||||
except Exception as e:
|
||||
order.status = "failed"
|
||||
await self._db.flush()
|
||||
logger.exception("创建支付订单异常: %s", e)
|
||||
logger.exception("创建支付订单异常: {}", e)
|
||||
raise HTTPException(
|
||||
status_code=500, detail=f"创建支付订单异常: {type(e).__name__}: {e!s}"
|
||||
)
|
||||
|
||||
await self._db.commit()
|
||||
logger.info(
|
||||
"订单创建成功: order_no=%s, payment_method=%s, amount_fen=%s",
|
||||
"订单创建成功: order_no={}, payment_method={}, amount_fen={}",
|
||||
order_no,
|
||||
payment_method,
|
||||
amount_fen,
|
||||
@@ -168,10 +168,10 @@ class PaymentOrderService:
|
||||
result = await self._db.execute(select(Order).where(Order.id == out_trade_no))
|
||||
order = result.scalar_one_or_none()
|
||||
if order is None:
|
||||
logger.warning("支付回调: 订单不存在 %s", out_trade_no)
|
||||
logger.warning("支付回调: 订单不存在 {}", out_trade_no)
|
||||
return
|
||||
if order.status == "paid":
|
||||
logger.info("支付回调: 订单已处理过 %s", out_trade_no)
|
||||
logger.info("支付回调: 订单已处理过 {}", out_trade_no)
|
||||
return
|
||||
now = utc_now()
|
||||
order.status = "paid"
|
||||
@@ -191,14 +191,14 @@ class PaymentOrderService:
|
||||
user.subscription_expires_at = now + timedelta(days=duration_days)
|
||||
user.subscription_type = order.plan_id
|
||||
logger.info(
|
||||
"用户 %s 订阅已升级为 %s,到期: %s",
|
||||
"用户 {} 订阅已升级为 {},到期: {}",
|
||||
user.id,
|
||||
order.plan_id,
|
||||
user.subscription_expires_at,
|
||||
)
|
||||
await self._db.commit()
|
||||
logger.info(
|
||||
"支付成功处理完成: 订单 %s, 第三方交易号 %s", out_trade_no, trade_no
|
||||
"支付成功处理完成: 订单 {}, 第三方交易号 {}", out_trade_no, trade_no
|
||||
)
|
||||
|
||||
async def handle_wechat_notify(self, headers: dict, body: str) -> dict:
|
||||
|
||||
Reference in New Issue
Block a user