ad155e269c5023b78b22e6c636f27a2e5d844a62
- add sortable column support to Table with asc/desc/unsorted icons - active sort icon uses --color-primary; no header background change - Table supports server-side mode via total/page/onPageChange props - wire server-side sort+pagination in ScenariosPage, AllRunsPage, RunsPage, SessionsPage - remove steps count column from run tables - fix server: RunsQueryDto now extends PaginationQueryDto with orderBy/orderDir - fix findAllRuns to use QueryBuilder; sort by scenario.name via JOIN - add per-resource typed query DTOs with @IsIn allowlist on orderBy - prevents SQL injection and returns 400 for unknown orderBy values
liquio-qa-bot
A headless QA automation service for Liquio environments. Exposes an MCP (Model Context Protocol) server that lets AI agents define, run, and monitor multi-step browser test scenarios using Playwright.
Overview
The bot manages four core concepts:
| Concept | Description |
|---|---|
| Environment | A named set of URLs for a deployment target (e.g. liquio-diia-stg) |
| Key | A JSON descriptor in keys/ that points to an EDS key file + password |
| Session | Saved browser state (cookies + localStorage) produced by a login |
| Scenario | An ordered list of steps that run in sequence against a shared browser instance |
Architecture
See docs/architecture.md.
Key descriptors
MCP tools
See docs/mcp.md.
Scenario execution
See docs/scenario.md.
Development
See docs/development.md for setup, running, testing, linting, and Docker instructions.
Languages
TypeScript
92.7%
CSS
6.6%
Dockerfile
0.3%
JavaScript
0.3%