mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-08-18 12:08:22 +00:00
5d4699db1c
* docs: refine coding agent maps Signed-off-by: Dennis Zhuang <killme2008@gmail.com> * docs: trim license header guidance Signed-off-by: Dennis Zhuang <killme2008@gmail.com> * docs: update README links and project status Signed-off-by: Dennis Zhuang <killme2008@gmail.com> --------- Signed-off-by: Dennis Zhuang <killme2008@gmail.com>
1.7 KiB
1.7 KiB
Agent Guidelines for Query Performance Tests
- Keep GitHub Actions YAML thin. Put non-trivial control flow, case expansion,
report generation, and metadata writing in scripts under
.github/scripts/; workflow steps should mostly invoke those scripts. - Query regression PR runs should build base/candidate binaries once, then run
the default case set. Do not hard-code a single case such as
promql_pushdown_7913into the workflow path. - The case DSL is not required to keep compatibility inside this PR. When the DSL changes, update TOML cases, the outer lifecycle script, Rust helpers, and docs together.
[case]is report metadata only.[scenario]is the executable regression configuration and must includekind, data layout, tables, queries, and thresholds. Rust owns case schema, defaults, validation, and normalized plan output throughquery_perf_fixture plan..github/scripts/query-regression-run.pyowns process lifecycle;query_regression_runnerconsumes normalized plans, frontend endpoints, direct-SST materialization requests, and OTLP target/finalize requests.- Keep the direct-SST generator generic. Issue-specific behavior belongs in case files and thresholds, not in Rust generator logic.
- Before pushing perf harness changes, run at least:
- the Python tests in the
Test query regression toolingstep of.github/workflows/query-regression.yml cargo fmt --all -- --checkcargo build -p cmd --bin query_perf_fixture --features dev-toolscargo build -p cmd --bin query_regression_runner --features dev-tools- exercise the outer lifecycle script and Rust fixture generator against all built-in cases when the DSL or workflow case selection changes.
- the Python tests in the