0.12.0-2 Checkable Infrastructure

This commit is contained in:
2026-03-19 20:19:07 +00:00
parent 24955a956d
commit d9969dfbe5
20 changed files with 1207 additions and 278 deletions
+12 -5
View File
@@ -1003,7 +1003,7 @@ async function migrateSettingsSchemaMetadata(db) {
// ✅ = plugin-pfad aktiv ⏳ = noch nicht implementiert (readonly, immer aus)
//
// BluRay / DVD: Analyse ✅ Rip ✅ Review ⏳ Encode ⏳
// CD: Analyse ✅ Rip
// CD: Analyse ✅ Rip
// Audiobook: Analyse ✅ Encode ⏳
const pluginArchitectureSettings = [
@@ -1130,12 +1130,12 @@ async function migrateSettingsSchemaMetadata(db) {
},
{
key: 'use_plugin_architecture_cd_rip',
label: 'Rip + Encode (Audio-CD)',
description: 'Noch nicht implementiert — cdparanoia-Rip läuft noch über Legacy.',
defaultValue: 'false',
label: 'Rip (Audio-CD)',
description: 'CD-Rip/RAW-Rip/Encode-aus-RAW läuft über das Plugin.',
defaultValue: 'true',
orderIndex: 10022,
dependsOn: 'use_plugin_architecture_cd',
validationJson: '{"readonly":true}'
validationJson: '{}'
},
// ── Audiobook ────────────────────────────────────────────────────────────
{
@@ -1178,6 +1178,13 @@ async function migrateSettingsSchemaMetadata(db) {
WHERE key = ? AND (depends_on IS NOT ? OR order_index != ? OR validation_json != ?)`,
[setting.dependsOn ?? null, setting.orderIndex, setting.validationJson, setting.key, setting.dependsOn ?? null, setting.orderIndex, setting.validationJson]
);
await db.run(
`UPDATE settings_schema
SET label = ?, description = ?, default_value = ?, updated_at = CURRENT_TIMESTAMP
WHERE key = ?
AND (label != ? OR description != ? OR COALESCE(default_value, '') != COALESCE(?, ''))`,
[setting.label, setting.description, setting.defaultValue, setting.key, setting.label, setting.description, setting.defaultValue]
);
await db.run(`INSERT OR IGNORE INTO settings_values (key, value) VALUES (?, ?)`, [setting.key, setting.defaultValue]);
// Readonly-Toggles immer auf 'false' zurücksetzen (nie aktivierbar)
if (setting.validationJson === '{"readonly":true}') {