diff --git a/Cargo.toml b/Cargo.toml index 8fe9a9c..5110466 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,12 +1,12 @@ # file: Cargo.toml -# version: 455 +# version: 456 [workspace] resolver = "3" members = ["crates/ksp-app-backfill-desk", "crates/ksp-app-config-desk", "crates/ksp-app-solprices-desk", "crates/ksp-app-store-desk", "crates/ksp-app-wallet-desk", "crates/ksp-config-lib", "crates/ksp-core-lib", "crates/ksp-interface-lib", "crates/ksp-job-api", "crates/ksp-job-backfill-lib", "crates/ksp-logging-lib", "crates/ksp-offchain-transport-lib", "crates/ksp-onchain-transport-lib", "crates/ksp-program-api", "crates/ksp-store-api", "crates/ksp-store-lib", "crates/ksp-store-postgres-lib", "crates/ksp-wallet-lib"] [workspace.package] -version = "0.3.8-pre.5.fix.3" +version = "0.3.8-pre.6" edition = "2024" license = "MIT" repository = "https://git.sasedev.com/Sasedev/khadhroony-solana-project" diff --git a/config/composite.ksp-app-store-desk.json b/config/composite.ksp-app-store-desk.json new file mode 100644 index 0000000..25192c8 --- /dev/null +++ b/config/composite.ksp-app-store-desk.json @@ -0,0 +1,51 @@ +{ + "format_version": 1, + "default_profile": "mainnet", + "profiles": [ + { + "profile_id": "devnet", + "documents": [ + { + "component_id": "logging", + "file_id": "cfg.std.logging", + "profile_id": "supertrace" + }, + { + "component_id": "store", + "file_id": "cfg.std.store", + "profile_id": "devnet" + } + ] + }, + { + "profile_id": "mainnet", + "documents": [ + { + "component_id": "logging", + "file_id": "cfg.std.logging", + "profile_id": "supertrace" + }, + { + "component_id": "store", + "file_id": "cfg.std.store", + "profile_id": "mainnet" + } + ] + }, + { + "profile_id": "testnet", + "documents": [ + { + "component_id": "logging", + "file_id": "cfg.std.logging", + "profile_id": "supertrace" + }, + { + "component_id": "store", + "file_id": "cfg.std.store", + "profile_id": "testnet" + } + ] + } + ] +} diff --git a/crates/ksp-app-backfill-desk/tauri.conf.json b/crates/ksp-app-backfill-desk/tauri.conf.json index 7d6bde4..3a7b78f 100644 --- a/crates/ksp-app-backfill-desk/tauri.conf.json +++ b/crates/ksp-app-backfill-desk/tauri.conf.json @@ -54,18 +54,19 @@ "resources": { "../../config/composite.ksp-app-backfill-desk.json": "config/composite.ksp-app-backfill-desk.json", "../../config/composite.ksp-app-solprices-desk.json": "config/composite.ksp-app-solprices-desk.json", + "../../config/composite.ksp-app-store-desk.json": "config/composite.ksp-app-store-desk.json", "../../config/composite.ksp-app-wallet-desk.json": "config/composite.ksp-app-wallet-desk.json", - "../../config/std.logging.json": "config/std.logging.json", - "../../config/std.offchain_transport.json": "config/std.offchain_transport.json", - "../../config/std.store.json": "config/std.store.json", - "../../config/std.transport.json": "config/std.transport.json", - "../../config/std.wallet.json": "config/std.wallet.json", "../../config/schemas/composite.schema.json": "config/schemas/composite.schema.json", "../../config/schemas/std.logging.schema.json": "config/schemas/std.logging.schema.json", "../../config/schemas/std.offchain_transport.schema.json": "config/schemas/std.offchain_transport.schema.json", "../../config/schemas/std.store.schema.json": "config/schemas/std.store.schema.json", "../../config/schemas/std.transport.schema.json": "config/schemas/std.transport.schema.json", - "../../config/schemas/std.wallet.schema.json": "config/schemas/std.wallet.schema.json" + "../../config/schemas/std.wallet.schema.json": "config/schemas/std.wallet.schema.json", + "../../config/std.logging.json": "config/std.logging.json", + "../../config/std.offchain_transport.json": "config/std.offchain_transport.json", + "../../config/std.store.json": "config/std.store.json", + "../../config/std.transport.json": "config/std.transport.json", + "../../config/std.wallet.json": "config/std.wallet.json" } } } diff --git a/crates/ksp-app-backfill-desk/tests/desktop_contract.rs b/crates/ksp-app-backfill-desk/tests/desktop_contract.rs index df6fd11..68cc661 100644 --- a/crates/ksp-app-backfill-desk/tests/desktop_contract.rs +++ b/crates/ksp-app-backfill-desk/tests/desktop_contract.rs @@ -1,5 +1,5 @@ // file: crates/ksp-app-backfill-desk/tests/desktop_contract.rs -// version: 16 +// version: 17 //! Structural desktop contract checks for the Backfill Desk scaffold. @@ -145,10 +145,11 @@ fn pre_003_composite_packaging_follows_atomic_config_registry_contract() { std::option::Option::Some(value) => value, std::option::Option::None => return, }; - assert_eq!(resources.len(), 14); + assert_eq!(resources.len(), 15); for required in [ "../../config/composite.ksp-app-backfill-desk.json", "../../config/composite.ksp-app-solprices-desk.json", + "../../config/composite.ksp-app-store-desk.json", "../../config/composite.ksp-app-wallet-desk.json", "../../config/std.logging.json", "../../config/std.offchain_transport.json", diff --git a/crates/ksp-app-config-desk/tauri.conf.json b/crates/ksp-app-config-desk/tauri.conf.json index d4be766..192ddc2 100644 --- a/crates/ksp-app-config-desk/tauri.conf.json +++ b/crates/ksp-app-config-desk/tauri.conf.json @@ -54,18 +54,19 @@ "resources": { "../../config/composite.ksp-app-backfill-desk.json": "config/composite.ksp-app-backfill-desk.json", "../../config/composite.ksp-app-solprices-desk.json": "config/composite.ksp-app-solprices-desk.json", + "../../config/composite.ksp-app-store-desk.json": "config/composite.ksp-app-store-desk.json", "../../config/composite.ksp-app-wallet-desk.json": "config/composite.ksp-app-wallet-desk.json", - "../../config/std.logging.json": "config/std.logging.json", - "../../config/std.offchain_transport.json": "config/std.offchain_transport.json", - "../../config/std.store.json": "config/std.store.json", - "../../config/std.transport.json": "config/std.transport.json", - "../../config/std.wallet.json": "config/std.wallet.json", "../../config/schemas/composite.schema.json": "config/schemas/composite.schema.json", "../../config/schemas/std.logging.schema.json": "config/schemas/std.logging.schema.json", "../../config/schemas/std.offchain_transport.schema.json": "config/schemas/std.offchain_transport.schema.json", "../../config/schemas/std.store.schema.json": "config/schemas/std.store.schema.json", "../../config/schemas/std.transport.schema.json": "config/schemas/std.transport.schema.json", - "../../config/schemas/std.wallet.schema.json": "config/schemas/std.wallet.schema.json" + "../../config/schemas/std.wallet.schema.json": "config/schemas/std.wallet.schema.json", + "../../config/std.logging.json": "config/std.logging.json", + "../../config/std.offchain_transport.json": "config/std.offchain_transport.json", + "../../config/std.store.json": "config/std.store.json", + "../../config/std.transport.json": "config/std.transport.json", + "../../config/std.wallet.json": "config/std.wallet.json" } } } diff --git a/crates/ksp-app-config-desk/tests/desktop_contract.rs b/crates/ksp-app-config-desk/tests/desktop_contract.rs index 765f598..06e48e6 100644 --- a/crates/ksp-app-config-desk/tests/desktop_contract.rs +++ b/crates/ksp-app-config-desk/tests/desktop_contract.rs @@ -1,5 +1,5 @@ // file: crates/ksp-app-config-desk/tests/desktop_contract.rs -// version: 12 +// version: 13 //! Desktop build/shell contract audits for Config Desk. @@ -110,7 +110,7 @@ fn pre_018_packaged_runtime_bundles_config_resources_and_activates_shared_writab let resources = tauri.pointer("/bundle/resources").and_then(serde_json::Value::as_object); assert!(resources.is_some(), "packaged Config resources map must exist"); if let std::option::Option::Some(resources) = resources { - assert_eq!(resources.len(), 14); + assert_eq!(resources.len(), 15); assert_eq!( resources.get("../../config/composite.ksp-app-backfill-desk.json").and_then(serde_json::Value::as_str), std::option::Option::Some("config/composite.ksp-app-backfill-desk.json"), @@ -119,6 +119,10 @@ fn pre_018_packaged_runtime_bundles_config_resources_and_activates_shared_writab resources.get("../../config/composite.ksp-app-solprices-desk.json").and_then(serde_json::Value::as_str), std::option::Option::Some("config/composite.ksp-app-solprices-desk.json"), ); + assert_eq!( + resources.get("../../config/composite.ksp-app-store-desk.json").and_then(serde_json::Value::as_str), + std::option::Option::Some("config/composite.ksp-app-store-desk.json"), + ); assert_eq!(resources.get("../../config/std.logging.json").and_then(serde_json::Value::as_str), std::option::Option::Some("config/std.logging.json")); assert_eq!( resources.get("../../config/std.offchain_transport.json").and_then(serde_json::Value::as_str), diff --git a/crates/ksp-app-solprices-desk/tauri.conf.json b/crates/ksp-app-solprices-desk/tauri.conf.json index aca4a3a..74ffd60 100644 --- a/crates/ksp-app-solprices-desk/tauri.conf.json +++ b/crates/ksp-app-solprices-desk/tauri.conf.json @@ -54,18 +54,19 @@ "resources": { "../../config/composite.ksp-app-backfill-desk.json": "config/composite.ksp-app-backfill-desk.json", "../../config/composite.ksp-app-solprices-desk.json": "config/composite.ksp-app-solprices-desk.json", + "../../config/composite.ksp-app-store-desk.json": "config/composite.ksp-app-store-desk.json", "../../config/composite.ksp-app-wallet-desk.json": "config/composite.ksp-app-wallet-desk.json", - "../../config/std.logging.json": "config/std.logging.json", - "../../config/std.offchain_transport.json": "config/std.offchain_transport.json", - "../../config/std.store.json": "config/std.store.json", - "../../config/std.transport.json": "config/std.transport.json", - "../../config/std.wallet.json": "config/std.wallet.json", "../../config/schemas/composite.schema.json": "config/schemas/composite.schema.json", "../../config/schemas/std.logging.schema.json": "config/schemas/std.logging.schema.json", "../../config/schemas/std.offchain_transport.schema.json": "config/schemas/std.offchain_transport.schema.json", "../../config/schemas/std.store.schema.json": "config/schemas/std.store.schema.json", "../../config/schemas/std.transport.schema.json": "config/schemas/std.transport.schema.json", - "../../config/schemas/std.wallet.schema.json": "config/schemas/std.wallet.schema.json" + "../../config/schemas/std.wallet.schema.json": "config/schemas/std.wallet.schema.json", + "../../config/std.logging.json": "config/std.logging.json", + "../../config/std.offchain_transport.json": "config/std.offchain_transport.json", + "../../config/std.store.json": "config/std.store.json", + "../../config/std.transport.json": "config/std.transport.json", + "../../config/std.wallet.json": "config/std.wallet.json" } } } diff --git a/crates/ksp-app-solprices-desk/tests/desktop_contract.rs b/crates/ksp-app-solprices-desk/tests/desktop_contract.rs index d3d34a8..a949d87 100644 --- a/crates/ksp-app-solprices-desk/tests/desktop_contract.rs +++ b/crates/ksp-app-solprices-desk/tests/desktop_contract.rs @@ -1,5 +1,5 @@ // file: crates/ksp-app-solprices-desk/tests/desktop_contract.rs -// version: 11 +// version: 12 //! Desktop scaffold, shared-template and Config packaging contract audits for SOL Prices Desk `0.2.12`. @@ -85,13 +85,13 @@ fn pre_002_package_is_mixed_lib_bin_and_frontend_is_scaffold_only() { } #[test] -fn pre_004_packaging_contains_current_fourteen_config_resources() { +fn v0_3_8_pre_006_packaging_contains_current_fifteen_config_resources() { let root = app_root(); let tauri = read_json(root.join("tauri.conf.json").as_path()); let resources = tauri.pointer("/bundle/resources").and_then(serde_json::Value::as_object); assert!(resources.is_some()); if let std::option::Option::Some(resources) = resources { - assert_eq!(resources.len(), 14); + assert_eq!(resources.len(), 15); assert_eq!( resources.get("../../config/composite.ksp-app-backfill-desk.json").and_then(serde_json::Value::as_str), std::option::Option::Some("config/composite.ksp-app-backfill-desk.json"), @@ -100,6 +100,10 @@ fn pre_004_packaging_contains_current_fourteen_config_resources() { resources.get("../../config/composite.ksp-app-solprices-desk.json").and_then(serde_json::Value::as_str), std::option::Option::Some("config/composite.ksp-app-solprices-desk.json"), ); + assert_eq!( + resources.get("../../config/composite.ksp-app-store-desk.json").and_then(serde_json::Value::as_str), + std::option::Option::Some("config/composite.ksp-app-store-desk.json"), + ); assert!(resources.contains_key("../../config/std.offchain_transport.json")); assert!(resources.contains_key("../../config/schemas/std.offchain_transport.schema.json")); assert!(resources.contains_key("../../config/std.store.json")); diff --git a/crates/ksp-app-store-desk/Cargo.toml b/crates/ksp-app-store-desk/Cargo.toml index fb84be2..4fab155 100644 --- a/crates/ksp-app-store-desk/Cargo.toml +++ b/crates/ksp-app-store-desk/Cargo.toml @@ -1,5 +1,5 @@ # file: crates/ksp-app-store-desk/Cargo.toml -# version: 1 +# version: 2 [package] name = "ksp-app-store-desk" @@ -27,10 +27,11 @@ fs2.workspace = true ksp-config-lib = { path = "../ksp-config-lib" } ksp-core-lib = { path = "../ksp-core-lib" } ksp-logging-lib = { path = "../ksp-logging-lib" } +ksp-store-lib = { path = "../ksp-store-lib" } serde = { workspace = true, features = ["derive"] } tauri.workspace = true tauri-plugin-tracing.workspace = true -tokio = { workspace = true, features = ["time"] } +tokio = { workspace = true, features = ["sync", "time"] } ts-rs.workspace = true [dev-dependencies] diff --git a/crates/ksp-app-store-desk/frontend/main.html b/crates/ksp-app-store-desk/frontend/main.html index b00ca2d..818db1f 100644 --- a/crates/ksp-app-store-desk/frontend/main.html +++ b/crates/ksp-app-store-desk/frontend/main.html @@ -1,5 +1,5 @@ - + @@ -54,22 +54,29 @@

Overview

-

Scaffold read-only. Le lifecycle Store et les diagnostics backend-neutral seront branchés dans une tranche ultérieure.

+

État backend-neutral du Store sélectionné par le composite Config. Aucune donnée RAW complète n'est chargée ici.

+
+
+ +
-
-
Store target
Non ouvert
-
Health
À venir
-
Transactions
Table skeleton
-
Accounts
Table skeleton
+
Store profile
+
Target
+
Health
+
Pool
+
Migration
+