v0.3.7-pre.013

This commit is contained in:
2026-09-02 21:10:07 +02:00
parent 7697f407db
commit fa04bdbcf6
9 changed files with 417 additions and 9 deletions

View File

@@ -1,5 +1,5 @@
// file: crates/ksp-app-backfill-desk/tests/desktop_contract.rs
// version: 14
// version: 15
//! Structural desktop contract checks for the Backfill Desk scaffold.
@@ -434,3 +434,31 @@ fn pre_012_free_address_autocomplete_is_html_datalist_derived_from_core_registry
assert!(!html.contains(forbidden), "HTML hardcodes canonical Program ID {forbidden}");
}
}
#[test]
fn pre_013_final_v1_command_and_frontend_control_inventory_is_exact() {
let root = app_root();
let tauri = read_text(root.join("src/tauri.rs").as_path());
let commands = [
"backfill_cancel",
"backfill_options",
"backfill_resume",
"backfill_start",
"backfill_status",
"backfill_validate_request",
"emit_frontend_log",
"get_runtime_status",
"splash_frontend_ready",
];
for command in commands {
assert!(tauri.contains(format!("fn {command}").as_str()), "missing final Tauri command {command}");
}
assert_eq!(tauri.matches("#[tauri::command]").count(), commands.len());
for forbidden in ["backfill_reset", "backfill_delete", "backfill_retry", "backfill_schedule", "backfill_history"] {
assert!(!tauri.contains(forbidden), "unexpected V1 Tauri command marker {forbidden}");
}
let frontend = read_text(root.join("frontend/main.html").as_path());
for required in ["backfillStart", "backfillCancel", "backfillResume", "backfillRefresh", "backfillProgramIds"] {
assert!(frontend.contains(required), "missing final frontend control {required}");
}
}