/**
 * FieldRuntime —— 字段值物化调度
 *
 * 根据 FieldRecord.runtime.mode 决定是否以及如何填充字段数据：
 * - 'sync-compute' : 委托 driver.materializeData 同步计算（如公式字段批量求值）
 * - 'async-task'   : 委托 driver.materializeData 提交异步任务（如 AI 批量生成）
 * - 'passive'      : 直接跳过，不调用 driver（普通字段由用户手动输入）
 *
 * 当前实现为轻量调度层；后续如需加入重试、并发控制等策略，可在此处扩展。
 */
export class FieldRuntime {
    /**
     * 调度物化。passive 模式直接短路返回，其余模式委托给 driver 实现。
     */
    async materialize(driver, record, config, ctx) {
        const { mode } = record.runtime;
        if (mode === 'passive') {
            return;
        }
        await driver.materializeData(record, config, ctx);
    }
}
