67 lines
2.3 KiB
PHP
67 lines
2.3 KiB
PHP
<?php
|
|
|
|
use App\Models\DepthsweepResult;
|
|
use App\Models\InfrabenchResult;
|
|
use App\Models\ProsebenchResult;
|
|
use App\Models\PsychbenchResult;
|
|
use App\Models\ScenarioRun;
|
|
use App\Models\SoftbenchResult;
|
|
|
|
// Suite registry: the single source of truth for which bench suites exist,
|
|
// which model stores their results, and whether they are active.
|
|
//
|
|
// - `active => false` removes the suite from the all_results view and the
|
|
// home page (decommissioning) — historical data stays queryable and run
|
|
// detail pages keep rendering.
|
|
// - The view is rebuilt by `festbench:suites:refresh` after editing this file.
|
|
// - Adding a future suite: create its migration + model, add it here, run
|
|
// the refresh command.
|
|
|
|
return [
|
|
'suites' => [
|
|
'softbench' => [
|
|
'model' => SoftbenchResult::class,
|
|
'active' => true,
|
|
'in_all_results' => true,
|
|
],
|
|
'infrabench' => [
|
|
'model' => InfrabenchResult::class,
|
|
'active' => true,
|
|
'in_all_results' => true,
|
|
],
|
|
'prosebench' => [
|
|
'model' => ProsebenchResult::class,
|
|
'active' => true,
|
|
'in_all_results' => true,
|
|
],
|
|
'psychbench' => [
|
|
'model' => PsychbenchResult::class,
|
|
'active' => true,
|
|
'in_all_results' => true,
|
|
],
|
|
'depthsweep' => [
|
|
'model' => DepthsweepResult::class,
|
|
'active' => true,
|
|
// ttft/wall are meaningful in the combined view; tok/s stays null.
|
|
'in_all_results' => true,
|
|
],
|
|
'scenariobench' => [
|
|
'model' => ScenarioRun::class,
|
|
'active' => true,
|
|
// Agentic metrics (turns, submissions) — no tok/s semantics, so
|
|
// it is excluded from the combined metric view.
|
|
'in_all_results' => false,
|
|
],
|
|
],
|
|
|
|
// Source table in the festbench SQLite db for each suite ('results' is
|
|
// the generic metrics table; scenariobench has its own).
|
|
'source_tables' => [
|
|
'scenariobench' => 'scenario_runs',
|
|
],
|
|
|
|
// Caching: TTL staleness only — never event-flush. At high submission
|
|
// rates, event flushes would storm the cache; benchmark data being a
|
|
// couple of minutes old is correct behavior.
|
|
'home_cache_ttl' => env('FESTBENCH_HOME_CACHE_TTL', 300),
|
|
];
|