manifest library

Classes

CardConfig
Consumer-owned marketing content of the published metrics card PNG (manifest card:; rendered by contract card from the recorded goldens). The card MACHINERY (layout, value formatting, fonts, render harness) is the package's — the consumer writes only the copy.
CustomScenario
One consumer-owned scenario (customScenarios:): the metric id is custom.<name> (package ids are reserved — shadowing a contract scenario is rejected at load), it has its OWN golden ref, and it is excluded from rivals comparison and public tables. The consumer writes the test (the metric definition); the package provides the machinery (run, goldens, gate) — the test reports reportMetric('custom.<name>', value) and the CLI records/checks it under ref.
LibraryEntry
One solution of a multi-library consumer (libraries: in the manifest). Used by head-to-head consumers (e.g. the bench_compare package running showcaseview + tutorial_coach_mark side by side): every entry gets its own scenario directory and golden ref, sharing the scenario list.
Manifest
The consumer manifest.
ReadmeConfig
Consumer-owned marketing content of the root-README "Performance" section (manifest readme:; rendered by contract readme from the store). The consumer picks which solutions form the table columns and writes the prose; the package renders rows/values with the canonical defs (lib/defs.dart).

Constants

kContractScenarioIds → const Set<String>
All contract scenario ids (metric ids are identical to the scenario ids).
kDefaultScenarios → const List<String>
Scenarios init enables by default (device-free runnable, no VM-service requirement). The consumer adds heap scenarios + size when they apply.
kManifestFileName → const String
File name of the consumer manifest.
kTemplateVersion → const int
Version of the generated bridge files (per-scenario bridges + flutter drive driver). Written into the manifest by init; contract verify fails when the consumer's generated files are older than the package's.

Functions

runsForScenario(String scenarioId) int
Runs per scenario in one contract run (methodology): the noisy wall-latency metrics repeat and the report reducer takes the median; heap scenarios already median internally; structural ones are deterministic.