跳到主要内容

UNTRACKED_BOOKKEEPING_FIELDS

const UNTRACKED_BOOKKEEPING_FIELDS: readonly string[];

Defined in: packages/rxdb-plugin-working-tree/src/working-tree/versioned-domain.ts:42

第二类 untracked:实体行上的簿记字段,全域豁免

Remarks​

豁免依据是「这个列不表达用户意图」,与实体有没有被登记无关——所以它是一个全域集合, 而不是按表登记的。回填它们是对实体行的 UPDATE,但不构成业务净变化。

为什么没有「同步水位」那一项:spec.md 的三元组写作「remoteId、同步水位、审计时间」, 但本仓库里同步水位存在 rxdb_sync(系统表,按目标类别就已经不进版本化域),业务实体行上 没有任何水位列。给一个不存在的列名(syncedAt 之类)占位不是保守而是开洞:它今天豁免不了 任何东西,却在有人把这个名字用作业务字段的那一天让该字段静默退出版本控制。真出现按行水位时, 在这里补一项并补一条用例即可——那时它才有可豁免的对象。

为什么不含 createdBy / updatedBy:spec.md 写的是审计时间。审计主体是谁写的, 与「写了什么」同属一次真实的净变化;把它并进来等于让「换个人改同一个值」不进提交。

为什么不含 id:主键是行的身份不是它的簿记。豁免它意味着改主键不算变化。