perf sentinelperf sentineldocs
FRENGitHub
Documentation / Index design

Index de la documentation de conception

Documentation de conception approfondie de perf-sentinel. Ces documents expliquent pourquoi chaque décision a été prise, pas seulement ce que le code fait. Ils sont destinés aux contributeurs et mainteneurs qui ont besoin de comprendre les raisons derrière l'implémentation.

Pour la documentation orientée utilisateur, voir l'index de la documentation.

Table des matières

DocumentSujets
01 : Pipeline et typesPipeline vs architecture hexagonale, chaîne de types, découpage en workspace, sortie déterministe, quality gate
02 : NormalisationMachine à états SQL, normaliseur HTTP, micro-optimisations (batch push, saut IN-list, UUID codé à la main)
03 : Corrélation et streamingGroupement batch par HashMap, cache LRU, buffer circulaire, éviction TTL, budget mémoire
04 : DétectionAlgorithmes de détection N+1, redondant et lent, clés empruntées, fenêtre basée sur les itérateurs, correctifs suggérés indexés par framework ou par broker
05 : GreenOps et carboneFormule IIS, dédup du ratio de gaspillage, conversion CO2, alignement SCI, attribution de l'énergie base de données et broker
06 : Ingestion et daemonConversion OTLP, admission des spans messaging et résolution du lien producteur, boucle événementielle du daemon, échantillonnage, renforcement sécurité
07 : CLI, config et releaseSous-commandes bench, query, report, diff. Sink dashboard HTML, export CSV, hash deep-link, modal cheatsheet, raccourcis clavier style vim. Parsing de la config, profil release, distribution
08 : Rapport public périodiqueDéterminisme du schéma jusqu'à v1.5, granularité G1/G2, validator collect-all, attribution par service, provenance mesurée/déclarée/estimée, writer d'archive daemon, dispatcher CLI disclose
09 : Attribution carboneÉnergie + carbone par service au scoring, attribution de la région, précédence des modèles, branchement runtime-vs-proxy dans l'aggregator
10 : Sigstore et SLSAPredicate in-toto v1, flow signature Sigstore cosign, provenance SLSA Build L3 du binaire, chaîne verify-hash, privacy sur Rekor public

Correspondance avec les fichiers source

Fichier sourceDocument de conception
lib.rs01 : Pipeline
event.rs01 : Pipeline
pipeline.rs01 : Pipeline
quality_gate.rs01 : Pipeline
explain.rs06 : Ingestion, 07 : CLI/Config
diff.rs07 : CLI/Config
synth.rs07 : CLI/Config
http_client.rs06 : Ingestion
time.rs06 : Ingestion
acknowledgments.rs04 : Détection
calibrate.rs05 : GreenOps
shutdown.rs06 : Ingestion
text_safety.rs07 : CLI/Config
normalize/sql.rs02 : Normalisation
normalize/http.rs02 : Normalisation
normalize/mod.rs02 : Normalisation
correlate/mod.rs03 : Corrélation
correlate/window.rs03 : Corrélation
detect/mod.rs04 : Détection
detect/n_plus_one.rs04 : Détection
detect/redundant.rs04 : Détection
detect/slow.rs04 : Détection
detect/fanout.rs04 : Détection
detect/chatty.rs04 : Détection
detect/pool_saturation.rs04 : Détection
detect/serialized.rs04 : Détection
detect/sanitizer_aware.rs04 : Détection
detect/suggestions/04 : Détection
score/mod.rs05 : GreenOps, 09 : Attribution carbone
score/carbon.rs05 : GreenOps
score/carbon_compute.rs05 : GreenOps, 09 : Attribution carbone
score/region_breakdown.rs05 : GreenOps
score/carbon_profiles.rs05 : GreenOps
score/energy_state.rs05 : GreenOps
score/prom_parser.rs05 : GreenOps
score/ops_snapshot_diff.rs05 : GreenOps
score/broker_static.rs05 : GreenOps
score/canonical.rs08 : Transparence périodique
score/alumet/05 : GreenOps, 09 : Attribution carbone
score/scaphandre/05 : GreenOps, 09 : Attribution carbone
score/kepler/05 : GreenOps, 09 : Attribution carbone
score/redfish/05 : GreenOps, 09 : Attribution carbone
score/cloud_energy/05 : GreenOps, 09 : Attribution carbone
score/electricity_maps/05 : GreenOps, 09 : Attribution carbone
ingest/mod.rs06 : Ingestion
ingest/json.rs06 : Ingestion
ingest/otlp/06 : Ingestion
ingest/pg_stat.rs06 : Ingestion
ingest/jaeger.rs06 : Ingestion
ingest/zipkin.rs06 : Ingestion
ingest/tempo.rs06 : Ingestion
ingest/jaeger_query.rs06 : Ingestion
ingest/auth_header.rs06 : Ingestion
ingest/mysql_stat.rs06 : Ingestion
ingest/lookback.rs06 : Ingestion
ingest/url_enc.rs06 : Ingestion
daemon/mod.rs06 : Ingestion
daemon/event_loop.rs06 : Ingestion
daemon/listeners.rs06 : Ingestion
daemon/tls.rs06 : Ingestion
daemon/json_socket.rs06 : Ingestion
daemon/sampling.rs06 : Ingestion
daemon/findings_store.rs06 : Ingestion
daemon/query_api/06 : Ingestion
daemon/ack.rs06 : Ingestion
daemon/mem_pressure.rs06 : Ingestion
config/ (mod, raw, validate)07 : CLI/Config, 08 : Rapport périodique
report/mod.rs, json.rs01 : Pipeline
report/html/07 : CLI/Config
report/metrics.rs06 : Ingestion
report/interpret.rs07 : CLI/Config
report/warnings.rs07 : CLI/Config
report/sarif.rs07 : CLI/Config
report/periodic/*08 : Rapport périodique
daemon/archive.rs08 : Rapport périodique
sentinel-cli/src/main.rs07 : CLI/Config
sentinel-cli/src/disclose.rs08 : Rapport périodique
sentinel-cli/src/tui/07 : CLI/Config
detect/correlate_cross.rs04 : Détection