Expand description
Application layer for perfgate.
The app layer coordinates adapters and domain logic into use-case workflows such as run, compare, report, check, export, paired, and promote. It does not parse CLI flags and it does not do filesystem I/O.
Part of the perfgate workspace.
Re-exports§
pub use badge::Badge;pub use badge::BadgeInput;pub use badge::BadgeOutcome;pub use badge::BadgeRequest;pub use badge::BadgeStyle;pub use badge::BadgeType;pub use badge::BadgeUseCase;pub use bisect::BisectRequest;pub use bisect::BisectUseCase;pub use blame::BlameOutcome;pub use blame::BlameRequest;pub use blame::BlameUseCase;
Modules§
- badge
- SVG badge generation for perfgate performance status.
- baseline_
resolve - Baseline path resolution logic.
- bisect
- Bisection orchestration.
- blame
- cargo_
bench - Cargo bench integration: parse Criterion and libtest bench output into RunReceipts.
- comparison_
logic - Logic for building budgets and metric statistics for comparisons.
- discover
- Auto-discovery of benchmarks in a repository.
- init
- Benchmark discovery and config generation for
perfgate init. - watch
- Watch use case — re-run benchmarks on file changes with live terminal output.
Structs§
- Aggregate
Outcome - Aggregate
Request - Aggregate
UseCase - Bench
Diff Outcome - Outcome for a single benchmark diff.
- Check
Outcome - Outcome of the check use case.
- Check
Request - Request for the check use case.
- Check
UseCase - Use case for running a config-driven check.
- Compare
Export Row - Row structure for CompareReceipt export.
- Compare
Request - Compare
Result - Result from CompareUseCase including host mismatch information.
- Compare
UseCase - Diff
Outcome - Overall outcome of the diff command.
- Diff
Request - Request for the diff use case.
- Diff
UseCase - Use case for running a diff workflow.
- Explain
Outcome - Explain
Request - Explain
UseCase - Export
UseCase - Use case for exporting receipts to different formats.
- Paired
RunOutcome - Paired
RunRequest - Paired
RunUse Case - Promote
Request - Request for promoting a run receipt to become a baseline.
- Promote
Result - Result of a promote operation.
- Promote
UseCase - Use case for promoting run receipts to baselines.
- Report
Request - Request for generating a report from a compare receipt.
- Report
Result - Result of a report generation operation.
- Report
UseCase - Use case for generating perfgate reports.
- RunBench
Outcome - RunBench
Request - RunBench
UseCase - RunExport
Row - Row structure for RunReceipt export.
- Sensor
Check Options - Options for
run_sensor_check. - Sensor
Report Builder - Builder for creating SensorReports.
- System
Clock - Trend
Outcome - Result of trend analysis.
- Trend
Request - Request for local trend analysis from run receipt files.
- Trend
UseCase - Use case for trend analysis.
Enums§
- Bench
Outcome - Export
Format - Supported export formats.
Traits§
Functions§
- classify_
error - Classify an error into (stage, error_kind) for structured error reporting.
- default_
engine_ capability - direction_
str - Return a human-readable label for a budget
Direction. - discover_
config - Walk up from
startlooking forperfgate.tomlorperfgate.json. - format_
metric - Return the canonical string key for a
Metric. - format_
metric_ with_ statistic - Format a metric key, appending the statistic name when it is not the default (median).
- format_
pct - Format a fractional change as a percentage string.
- format_
trend_ chart - Format a mini ASCII chart line for a metric’s history.
- format_
trend_ output - Format trend analysis results for terminal display.
- format_
value - Format a metric value for display.
- github_
annotations - Produce GitHub Actions annotation strings from a
CompareReceipt. - markdown_
template_ context - Build the JSON context object used by
render_markdown_template. - metric_
status_ icon - Return an emoji icon for a
MetricStatus. - metric_
status_ str - Return a lowercase string label for a
MetricStatus. - parse_
reason_ token - Parse a verdict reason token like
"wall_ms_warn"into its metric and status. - render_
json_ diff - Render the diff outcome as JSON.
- render_
markdown - Render a
CompareReceiptas a Markdown table for PR comments. - render_
markdown_ template - Render a
CompareReceiptusing a custom Handlebars template. - render_
reason_ line - Render a single verdict reason token as a human-readable bullet line.
- render_
terminal_ diff - Render a terminal-friendly colored diff output from a DiffOutcome.
- run_
sensor_ check - Run a sensor check and return a
SensorReportdirectly. - sensor_
fingerprint - Generates a fingerprint for a set of findings.