Skip to content

[finding][drivers] driver-turso 的 date-bucket-parity 测试里还有一处死 as never —— 在 driver.create 的 options 门上,与 #6354 不同门 #6394

Description

@os-zhuang

在实施 #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 去掉后(基线为已含 #6355origin/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 测试都往 checkDateBucketParitycreateOptions: { bypassTenantAudit: true },那边从来没有写 cast,一直编译得过。

不是缺陷

运行期行为完全正确(driver-turso 808 tests 全绿)。丢掉的同样只是编译期检查:这个 cast 把整个 options 形状抹成 never,于是 options 里拼错的键、写错类型的值都不会红。代价是休眠的 —— 今天没有人踩。

如果要做

删掉这 5 个字符,跑一遍 @objectstack/driver-turso 的 typecheck 即可。建议顺带扫一遍其余驱动测试里是否有同形的 options 门 cast(本单未做这个全仓扫描)。

相关

会话:session_01WyvqvKMG6asi9aXjKE6xtx#6354 实施期间发现,未认领)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions