AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Continuous performance testing with comparable benchmark histories, fleet-aware trends, and CI regression reports
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
BenchDB is a self-hosted results system for continuous performance testing.
Bring any benchmark harness, submit structured JSON, and get comparable
histories, fleet-aware trends, and CI regression reports.
Learn how it works at benchdb.io or start with the
quickstart.
A benchmark result is more than a timestamp and a number. To decide whether a
change helped or hurt, you also need to know:檢視完整 README ↗BenchDB is a self-hosted server for benchmark results. Your benchmark harness
writes JSON, the benchdb CLI uploads it, and BenchDB keeps the history of
each benchmark on each machine. The dashboard shows trends and comparisons, and
benchdb ci report tells a pull request whether it made a benchmark slower.
BenchDB works with benchmarks in any language that can write JSON. It does not run or schedule benchmarks.
Start with the quickstart, or read the documentation for the full reference.
A benchmark number alone cannot tell you whether a change helped. Each BenchDB result also records the commit, the run, the machine, the unit, and the raw observations. BenchDB groups results that share a benchmark case, context, machine, and repository into one series. It scores each new result against that series' history. CI reports also compare it with the matching result from a baseline run. Concepts defines these terms and the status rules.
BenchDB fits teams that benchmark every commit or release, run benchmarks on
more than one machine, and want CI to flag regressions. If an upload fails,
rerun benchdb results submit on the saved files. The benchmark itself does
not have to run again.
You probably do not need it for a one-off timing on your laptop. It is not a general metrics, logs, or tracing system.
Grafana time-series panels plot timestamped metrics from many data sources, which suits service health and machine telemetry. Grafana can plot benchmark numbers too, but you build the storage model, queries, and comparison rules yourself. Grafana's k6 integration is one example.
BenchDB has those benchmark rules built in. It tracks commit and run identity, keeps machines apart, selects a baseline, classifies regressions, and writes CI reports. Use Grafana to ask what a system is doing over time. Use BenchDB to ask whether a code change made a benchmark slower. You can run both.
benchdb CLI, built into one binarysdk/go/benchdbThe Go module is go.kenn.io/benchdb. make build needs Go, Bun, and a C/C++
compiler and writes bin/benchdb. Go builds use CGO_ENABLED=1.
make dev needs Docker and starts a local server with demo data at
http://localhost:8080. The quickstart shows both.
The server requires a PostgreSQL URL in BENCHDB_DB_URL and a persistent local
archive directory in BENCHDB_DATA_DIR. make build downloads the matching
DuckDB PostgreSQL extension into .cache/duckdb/extensions; set
BENCHDB_DUCKDB_EXTENSION_DIR to that directory when running bin/benchdb.
make dev sets up its own archive and extensions under var/dev-data.
Back up the archive together with PostgreSQL. See the
operations guide for deployment and recovery
instructions.
Contributions are welcome, including pull requests from forks. Push a feature
branch to your fork and open a pull request against the main branch of
kenn-io/benchdb. You do not need write access to this repository.
The contributing guide covers the fork workflow, local checks, and documentation builds. Coding agents should also read AGENTS.md.
BenchDB is under active development. Its command and storage interfaces can change before the first stable release.
BenchDB began as an independent fork of the Go rewrite on the
experimental-v2 branch of Conbench.
We thank the Conbench contributors for that code and for the project's original
idea of language-independent continuous benchmarking.
BenchDB is now developed independently and has a different product direction. See NOTICE.md and LICENSE for attribution and license terms.