Files
khadhroony-solana-project/deltas/0.3.7/pre.003.md
2026-09-02 10:05:36 +02:00

4.3 KiB

Delta 0.3.7-pre.003 — Config composite et packaging Backfill Desk

Base

0.3.7-pre.002 validée par le gate opérateur fourni : audits Rust/Markdown, cargo check --workspace, Clippy et tests ksp-app-backfill-desk propres.

Objectif

Introduire le composite Config de Backfill Desk, brancher son bootstrap Config/Logging et le packaging release, tout en conservant Transport, Store et Backfill runtime fermés. Pendant le développement du Desk, rendre son tracing volontairement verbeux via supertrace sur le profil devnet et trace pour le fallback local.

Fichiers ajoutés

  • config/composite.ksp-app-backfill-desk.json ;
  • crates/ksp-config-lib/unit_tests/fixtures/composite.ksp-app-backfill-desk.json ;
  • crates/ksp-app-backfill-desk/tests/config_composition.rs ;
  • deltas/0.3.7/pre.003.md.

Fichiers modifiés

  • Cargo.toml ;
  • crates/ksp-config-lib/src/lib.rs ;
  • crates/ksp-config-lib/src/registry.rs ;
  • crates/ksp-config-lib/tests/public_api.rs ;
  • crates/ksp-config-lib/unit_tests/registry.rs ;
  • crates/ksp-app-backfill-desk/src/bootstrap.rs ;
  • crates/ksp-app-backfill-desk/src/constants.rs ;
  • crates/ksp-app-backfill-desk/src/errors.rs ;
  • crates/ksp-app-backfill-desk/src/lib.rs ;
  • crates/ksp-app-backfill-desk/src/tauri.rs ;
  • crates/ksp-app-backfill-desk/tauri.conf.json ;
  • crates/ksp-app-backfill-desk/tests/desktop_contract.rs ;
  • crates/ksp-app-backfill-desk/tests/desktop_security.rs ;
  • crates/ksp-app-config-desk/tauri.conf.json ;
  • crates/ksp-app-config-desk/tests/desktop_contract.rs ;
  • crates/ksp-app-solprices-desk/tauri.conf.json ;
  • crates/ksp-app-solprices-desk/tests/desktop_contract.rs ;
  • crates/ksp-app-wallet-desk/tauri.conf.json ;
  • crates/ksp-app-wallet-desk/tests/desktop_contract.rs ;
  • crates/ksp-app-wallet-desk/tests/release_compliance.rs ;
  • docs/plans/028-V0_3_7_BACKFILL_DESK_PLAN.md ;
  • docs/validation/024-V0_3_7_BACKFILL_DESK.md.

Fichiers supprimés

Aucun.

Décisions

  • Le composite Backfill Desk possède devnet, mainnet et testnet, avec devnet par défaut.
  • devnet sélectionne Logging supertrace; le fallback local de Backfill Desk utilise LogFilterLevel::Trace pendant le développement. Aucun niveau des autres Desk n'est modifié.
  • Le bootstrap valide les composants Logging/Transport/Store mais ne résout que Logging en pre.003; Transport et Store restent fermés jusqu'aux tranches prévues.
  • prepare_packaged_runtime() traverse tout le registre Config. L'ajout du composite porte ce registre à 14 descriptors : les quatre Desk embarquent donc atomiquement les 14 resources Config/schema.
  • La présence de documents Wallet/offchain dans le bundle Backfill satisfait uniquement le contrat de packaging partagé ; elle ne crée ni dépendance Rust ni capability frontend correspondante.

Validations exécutées

  • python3 scripts/audit_rust_workspace_rules.py : propre, zéro candidat d'export ;
  • python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas/0.3.7 : propre, 270 tableaux / 150 fichiers ;
  • parsing JSON : 7 manifests/resources contrôlés ;
  • parsing TOML : Cargo.toml racine et manifeste Backfill Desk contrôlés ;
  • validation JSON Schema : composite source et fixture conformes à composite.schema.json ;
  • profils composite : devnet/mainnet/testnet et sélections Logging/Transport/Store exacts ;
  • packaging : 14/14 resources Config/schema identiques dans les quatre Desk ;
  • frontend : dépendances minimales et devDependencies du gabarit préservées ;
  • tracing développement : supertrace via le composite devnet, Trace en fallback ;
  • frontière pre.003 : aucune dépendance/runtime Transport, Store ou Backfill ouverte.
  • diff pre.002 -> pre.003 : 4 fichiers ajoutés, 22 fichiers modifiés, aucune suppression.

Validations non exécutées

  • cargo fmt --all ;
  • cargo check --workspace ;
  • cargo clippy --workspace --all-targets ;
  • suites Cargo de ksp-config-lib et des quatre Desk.

L'exécutable cargo/rustfmt n'est pas disponible dans le sandbox d'assemblage.

Questions ouvertes

Aucune question bloquante. Le niveau de tracing verbeux est explicitement temporaire pour la phase de développement et devra être réévalué avant la publication stable.