Files
data-engine/.codebuddy/memory/2026-06-01.md
2026-06-11 13:06:54 +08:00

2.9 KiB
Raw Blame History

2026-06-01 工作记录

快手代发订单详情新增

  • 新增 open.dropshipping.order.merchant.detailseed_data_kuaishou.sql
  • 第19个接口POST、prefetch 自 dropshipping_order_list、single_record

快手接口全面审查

发现 prefetch 相关7个接口存在3个严重Bug

  1. Prefetch 阶段业务参数未包入 param JSONbody_wrapper_field 未生效)
  2. Prefetch 阶段 parseResp(nil config) 无法解析 data.items/data.cpsOrderList 等路径
  3. Prefetch 循环未处理游标分页(固定页码递增)

Bug 修复dynamic_sync.go

  1. syncWithPrefetch 改用 buildReqBody(prefetchIface) 构建请求body_wrapper_field 正确包装
  2. 改用 parseRespExt(resp.Body, prefetchIface.ResponseConfig) 解析响应
  3. 支持游标分页的 prefetch 循环cursor/pcursor
  4. buildPrefetchParams 增加过滤 body_wrapper_field/exclude_from_wrapper/cursor_pagination/time_field_mode
  5. 新增 collectPrefetchEntities 辅助函数
  6. 修复并发阶段 inQuery 变量缺失的问题

同步调度并发锁修复

  1. SyncByConfig 新增 syncRunningMap 内存锁sync.Map.LoadOrStore防止同一接口并发执行
  2. 调度器从 time.NewTicker 改为 for { run(); time.Sleep(interval) },前一次完成后才开始计时

MEMORY.md 更新

  • response_config 增加 single_record 字段说明
  • prefetch 流程补充游标分页、参数构建、响应解析的详细说明
  • 新增「并发保护」章节,记录内存锁和调度器时序
  • 调度器章节补充 for+sleep 模式说明

钉钉平台新增

  • 创建 seed_data_dingtalk.sql:钉钉开放平台 + 部门列表接口
  • auth_type: OAUTH2access_token 在 URL 查询参数中
  • 部门列表POST + parameters_location=query + recursive 递归遍历,响应 result 为数组
  • 表名:dingtalk_department冲突键dept_id

递归遍历支持

  • 新增 RecursiveConfig + parseRecursiveConfig + syncRecursive 函数
  • syncRecursiveBFS 队列遍历,先查根级 → 对每个子部门递归查下级,防重复 + 最大深度限制
  • buildReqBody / buildPrefetchParams 增加过滤 recursive / max_recursive_depth

钉钉智能人事平台

  • 新建 seed_data_dingtalk_hrm.sql:钉钉智能人事专用平台
  • auth_type: OAUTH2 + Header 认证(x-acs-dingtalk-access-token),独立于 oapi 平台
  • 企业职位列表 position_listPOST + cursor 分页 + hasMoreAPI base api.dingtalk.com

钉钉角色列表 + 引擎增强

  • parseRespExt 增加 has_more_field 支持 + 数字游标(float64→string)
  • syncWithPrefetch 支持递归预取来源BFS
  • buildReqBody 增加 pagination_mode: "offset" 支持(计算 offset = (page-1)*pageSize
  • syncSingleAPI 增加 hasMore 驱动的分页循环(钉钉 offset/size + hasMore
  • 新增 hasMoreCheck 辅助函数
  • 新增 seed_data_dingtalk.sql 角色列表接口:偏移分页 + hasMore