在实施 #6354(删掉 checkDateBucketParity / checkReadCoercion 调用点的 as never)期间实测发现,记录备查。观察类,不挂 pm:queue,请分诊轮定级。
现状
packages/drivers/driver-turso/src/date-bucket-parity.test.ts:68:
await driver.create(
'bucket_storage_probe',
{ id: 'p1', at: new Date('2026-01-10T09:00:00Z') },
{ bypassTenantAudit: true } as never,
);
这是同一个文件里 #6354 之外仅存的一处 as never。#6354 处理的是 checkDateBucketParity(driver, …) 这个替身调用点;这一处是 driver.create(…) 的 options 门,属于不同的门、不同的生产者,所以在 #6354 的 PR 里按 PD #10 单独记下来,没有扩大那个 PR 的 diff。
实测:这个 cast 也是死的
把 as never 去掉后(基线为已含 #6355 的 origin/main,且已先 build @objectstack/driver-turso 的依赖闭包,确保读到的不是陈旧 dist/*.d.ts):
> @objectstack/driver-turso@17.0.0-rc.5 typecheck
> tsc --noEmit
EXIT=0
零输出、退出码 0。
为什么它本来就不需要
bypassTenantAudit 是已声明的键,不是野键 —— packages/spec/src/data/driver.zod.ts:99:
bypassTenantAudit: z.boolean().optional().describe('Suppress the driver tenant-audit warning for
a deliberately global write on a tenant-scoped object (diagnostics only — never changes what
the write touches)')
同一族的另一处旁证:dogfood 与 turso 两个 parity 测试都往 checkDateBucketParity 传 createOptions: { bypassTenantAudit: true },那边从来没有写 cast,一直编译得过。
不是缺陷
运行期行为完全正确(driver-turso 808 tests 全绿)。丢掉的同样只是编译期检查:这个 cast 把整个 options 形状抹成 never,于是 options 里拼错的键、写错类型的值都不会红。代价是休眠的 —— 今天没有人踩。
如果要做
删掉这 5 个字符,跑一遍 @objectstack/driver-turso 的 typecheck 即可。建议顺带扫一遍其余驱动测试里是否有同形的 options 门 cast(本单未做这个全仓扫描)。
相关
会话:session_01WyvqvKMG6asi9aXjKE6xtx(#6354 实施期间发现,未认领)
在实施 #6354(删掉
checkDateBucketParity/checkReadCoercion调用点的as never)期间实测发现,记录备查。观察类,不挂pm:queue,请分诊轮定级。现状
packages/drivers/driver-turso/src/date-bucket-parity.test.ts:68:这是同一个文件里 #6354 之外仅存的一处
as never。#6354 处理的是checkDateBucketParity(driver, …)这个替身调用点;这一处是driver.create(…)的 options 门,属于不同的门、不同的生产者,所以在 #6354 的 PR 里按 PD #10 单独记下来,没有扩大那个 PR 的 diff。实测:这个 cast 也是死的
把
as never去掉后(基线为已含 #6355 的origin/main,且已先 build@objectstack/driver-turso的依赖闭包,确保读到的不是陈旧dist/*.d.ts):零输出、退出码 0。
为什么它本来就不需要
bypassTenantAudit是已声明的键,不是野键 ——packages/spec/src/data/driver.zod.ts:99:同一族的另一处旁证:dogfood 与 turso 两个 parity 测试都往
checkDateBucketParity传createOptions: { bypassTenantAudit: true },那边从来没有写 cast,一直编译得过。不是缺陷
运行期行为完全正确(driver-turso 808 tests 全绿)。丢掉的同样只是编译期检查:这个 cast 把整个 options 形状抹成
never,于是 options 里拼错的键、写错类型的值都不会红。代价是休眠的 —— 今天没有人踩。如果要做
删掉这 5 个字符,跑一遍
@objectstack/driver-turso的 typecheck 即可。建议顺带扫一遍其余驱动测试里是否有同形的 options 门 cast(本单未做这个全仓扫描)。相关
checkDateBucketParity的每个调用点都写driver as never,把BucketableDriver替身的编译期一致性整个抹掉 —— 且实测该 cast 并不必要 #6354 / PR 见其引用 —— 同一文件、同一类逃逸口,但不同门,故分开DriverQuery收窄之外:aggregate/distinct/analyzeQuery等驱动自有查询方法仍要求把对象名写两遍 #6212 —— 同族(声明了却没人读的形状)会话:
session_01WyvqvKMG6asi9aXjKE6xtx(#6354 实施期间发现,未认领)