Seed z repozitare, zatezove testy, worker bez spanku, dialogy bez rozmazani
Nastaveni prezije nasazeni: seed/records.json se pri prazdnem ulozisti nacte misto ukazkovych dat (zive uloziste se nikdy neprepisuje). Soubor nese soucasny stav produkce (firmy s provozovatelem, role, typ ticketu, akce, widgety, skupiny, rozlozeni). Novy GET /api/admin/export a skript npm run seed:export pro dalsi exporty, Dockerfile slozku kopiruje. Vykonnostni testy (npm run test:perf) nad 200 firmami a 10 000 tickety a zatezovy skript (npm run load) proti bezici instanci vcetne davky udalosti na webhook. Mereni odhalilo strop workeru: po obsazeni vsech mist spal sekundu, takze fronta odbavila nejvys 4 behy za sekundu. Ted ceka na prvni dokonceny beh: 500 udalosti za 1,3 s (395 behu/s). Strop posluchacu streamu zvednut na 2 000. Dialogy: prekryv modalu a menu v portalu bez backdrop-blur, tecka Zive pulzuje jen pri navazovani spojeni - rozmazani cele obrazovky pod trvalou animaci sekalo video vedle portalu. Bublina udalosti drzi 0,5 s. Dokumentace 14, 19, 20, 22, 04, 01, 03, 15 a 99 aktualizovana. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
c25e826766
commit
ea9387bea9
@@ -0,0 +1,32 @@
|
||||
import path from 'node:path';
|
||||
import { defineConfig } from 'vitest/config';
|
||||
|
||||
/**
|
||||
* Vykonove testy (`npm run test:perf`). Bezi zvlast od `npm test`:
|
||||
* stavi si desetitisice zaznamu, trvaji desitky sekund a jejich rozpocty
|
||||
* zavisi na stroji. V beznem behu by jen zdrzovaly a obcas padaly.
|
||||
*
|
||||
* Soubory jdou **po jednom** (`fileParallelism: false`): dva merici testy
|
||||
* vedle sebe by si braly procesor a cisla by nesla srovnat.
|
||||
*/
|
||||
|
||||
/** Priprava dat trva dele nez bezny test, proto vyssi stropy. */
|
||||
const PERF_TEST_TIMEOUT_MS = 120_000;
|
||||
const PERF_HOOK_TIMEOUT_MS = 120_000;
|
||||
|
||||
export default defineConfig({
|
||||
test: {
|
||||
include: ['tests/perf/**/*.test.ts'],
|
||||
environment: 'node',
|
||||
setupFiles: ['tests/setup.ts'],
|
||||
isolate: true,
|
||||
fileParallelism: false,
|
||||
testTimeout: PERF_TEST_TIMEOUT_MS,
|
||||
hookTimeout: PERF_HOOK_TIMEOUT_MS,
|
||||
},
|
||||
resolve: {
|
||||
alias: {
|
||||
'@shared': path.resolve(import.meta.dirname, 'src/shared'),
|
||||
},
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user