-- 003_model_path_governance
-- 模型路径治理：增加 can_train 标识，区分本地可训练模型与 API / 远程模型。
-- 训练预检阶段依赖该字段拦截不适合 LLaMA-Factory 本地训练的基座模型。

-- 1. models 表增加 can_train（默认 0，后设搬迁为 1 的规则如下）
ALTER TABLE models ADD COLUMN IF NOT EXISTS can_train INTEGER NOT NULL DEFAULT 0;

-- 2. 将已有模型按规则推定 can_train：
--    - path 非空 且 model_source != 'api' → 可训练 (1)
--    - 其余 → 不可训练 (0)
UPDATE models
SET can_train = CASE
    WHEN path IS NOT NULL AND path != '' AND model_source IS NOT NULL AND model_source != 'api' THEN 1
    ELSE 0
END;

-- 3. 给 trained_models 增加 artifact_dir（训练产物目录扫描结果目录）
ALTER TABLE trained_models ADD COLUMN IF NOT EXISTS artifact_dir TEXT;
