| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| data | ||
| prisma | ||
| sql | ||
| src | ||
| tests | ||
| .dockerignore | ||
| .env.example | ||
| .gitignore | ||
| .swcrc | ||
| Dockerfile | ||
| jest.config.cjs | ||
| nest-cli.json | ||
| package.json | ||
| tsconfig.build.json | ||
| tsconfig.json |
测试服实测:7 万个纯 id 的定向名单列出 **140,566** 个 cohort key,整整翻倍 —— cohort key 是 (patient_key, tenant_key) 复合键,而 PAC_COHORT_ONLY_PATIENT 只承载 patient_key,于是每个 id 在两个命名空间下各命中一次,一半是无关的同号患者: 白摄一倍数据、批次翻倍。结果不错(另一命名空间的患者算出 false,不会误标),但纯属浪费。⭐ 通用性:这一维**不叫 brand**。整条 cohort 链路(CohortKey / tenant_key_column / injectCohortFilter)本来就只认 manifest 声明的列名,代码里不出现宿主字样 —— jvs-dw 恰好 填的是 brand,别的宿主可能是区域 / 诊所 / 不设。漏的只有 ONLY_PATIENT 这个运维参数, 它返回 string[] 把第二维丢了。 改:新增 resolveOnlyPatientKeys() → OnlyPatientKey{key, tenant?},名单每项支持 `1855960` 纯 key(单命名空间宿主 / 该 id 在所有命名空间下都要)—— 行为不变 `261067|瑞尔` 显式分隔 `261067<TAB>瑞尔` TSV(SQL dump 可直接喂) 全部带命名空间且宿主配了 tenant_key_column → 拼复合键 IN;否则退回单键 IN, 混写(只有部分带)不做部分匹配,warn 一次后整体退回 —— 半精确比全模糊更难排查。 分片路径同步支持三种起手形态。resolveOnlyPatientIds() 保留为 key 投影,旧调用点 (cold-import 判"是否定向模式 → 不推进游标")零改动。 测试 799 项(+7)。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| data | Loading commit data... | |
| prisma | Loading commit data... | |
| sql | Loading commit data... | |
| src | Loading commit data... | |
| tests | Loading commit data... | |
| .dockerignore | Loading commit data... | |
| .env.example | Loading commit data... | |
| .gitignore | Loading commit data... | |
| .swcrc | Loading commit data... | |
| Dockerfile | Loading commit data... | |
| jest.config.cjs | Loading commit data... | |
| nest-cli.json | Loading commit data... | |
| package.json | Loading commit data... | |
| tsconfig.build.json | Loading commit data... | |
| tsconfig.json | Loading commit data... |