-
feat(push): 形态 A 推原生表行 — POST /push/rows 复用 pull/cold-import 同一摄入管线 · 54691f62
宿主把原生表行(导出给数仓那种)照抄推来,PAC 复用 transforms+assembler+processSubject 同核落库(拆分/映射/外键/幂等全 PAC 做),与 pull/reparse 完全一致,只是数据入口是 webhook。 - ColdImportService.ingestRawTables({hostName, source, rows}):tables={[source]:rows} → transformEngine.run → 对"终端原生表=source"的每个 assembler cfg 跑 processSubject; tenant 走 manifest brand resolver(同 pull,非 stub);返回 touched 患者(带 tenant)。 - push.schema:PushRowsRequest/Response。 - PushReceiverService.receiveRows:ingest → 对 touched 患者 enqueuePersonaRecompute (复用现有 BullMQ 触发 + watermark 幂等 + 凌晨 cron 兜底);plan 不在此触发(定时任务保)。 - PushController:POST /push/rows(HMAC 验签复用 /push/events 同逻辑)。 本地核验:原样推=同口径去重(dup=6/txn=0);bump updated_date 推=新 txn=6/touched=1 (tenant 正确解析);版本流无重复(active facts 9→9)。main.ts 已 rawBody:true。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>luoqi committed
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| hmac-verifier.service.ts | Loading commit data... | |
| push-receiver.service.ts | Loading commit data... | |
| push.controller.ts | Loading commit data... | |
| push.schema.ts | Loading commit data... |