File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -29,6 +29,11 @@ Standard development uses `dev-backend` + `dev-frontend` in separate terminals.
2929
3030### Postgres backend (optional, for ` /api/runs ` )
3131
32+ > ** Preview.** The schema, the CLI surface, and ` /api/runs ` shape are still
33+ > stabilizing. Recreate the agentevals schema between minor version upgrades
34+ > until further notice; do not depend on persisted data surviving a
35+ > ` git pull ` of agentevals itself.
36+
3237The default in-memory backend keeps ` make dev-backend ` zero-config. To exercise the async run pipeline locally, bring up a Postgres alongside the app:
3338
3439``` bash
Original file line number Diff line number Diff line change @@ -288,6 +288,13 @@ See the [Kubernetes example](examples/kubernetes/README.md) for an end-to-end wa
288288
289289# ### Postgres backend (`/api/runs`)
290290
291+ > **Preview.** Persistent run history backed by Postgres is under active
292+ > development. The `storage.*` and `database.postgres.*` chart values, the
293+ > `/api/runs` HTTP surface, and the database schema may change incompatibly
294+ > in upcoming releases. Operators evaluating this feature should plan to
295+ > recreate the agentevals schema when upgrading between minor versions.
296+ > Default in-memory mode is unaffected.
297+
291298By default the chart deploys agentevals with an in-memory backend; runs and results are not persisted. To enable the async `POST /api/runs` pipeline with durable Postgres-backed state :
292299
293300` ` ` bash
Original file line number Diff line number Diff line change @@ -11,3 +11,11 @@ Get the Service URL:
1111 kubectl --namespace {{ include "agentevals.namespace" . }} port-forward $POD_NAME {{ .Values.service.http.port }}:{{ .Values.service.http.port }}
1212
1313Health check: GET http://<pod-ip>:{{ .Values.service.http.containerPort }}/api/health
14+
15+ {{- if eq .Values.storage.backend "postgres" }}
16+
17+ NOTE: Postgres-backed storage is a preview feature. The storage.* and
18+ database.postgres.* values, the /api/runs HTTP surface, and the database
19+ schema may change incompatibly in upcoming releases. Recreate the
20+ agentevals schema when upgrading between minor versions.
21+ {{- end }}
Original file line number Diff line number Diff line change @@ -160,13 +160,19 @@ env: []
160160envFrom : []
161161
162162# ==============================================================================
163- # STORAGE
163+ # STORAGE (preview feature)
164+ #
165+ # Persistent run history backed by Postgres is under active development.
166+ # storage.* and database.postgres.* keys, and the underlying schema, may
167+ # change incompatibly in upcoming releases. Treat persisted runs and
168+ # results as ephemeral; recreate the agentevals schema when upgrading
169+ # between minor versions. Default in-memory backend is unaffected.
164170# ==============================================================================
165171
166172storage :
167173 # -- Storage backend. "memory" (default) keeps the developer experience
168174 # zero-config: nothing persisted, restarts lose in-flight state. "postgres"
169- # enables /api/runs and persists runs + results in Postgres.
175+ # enables /api/runs and persists runs + results in Postgres (preview) .
170176 backend : memory
171177
172178# ==============================================================================
Original file line number Diff line number Diff line change @@ -109,6 +109,18 @@ def create_app(
109109 version = __version__ ,
110110 description = "REST API for evaluating agent traces using ADK's scoring framework" ,
111111 lifespan = _build_lifespan (),
112+ openapi_tags = [
113+ {
114+ "name" : "runs" ,
115+ "description" : (
116+ "**Preview.** Async run pipeline backed by Postgres. The shape of "
117+ "submission, responses, and persisted run / result data may change "
118+ "incompatibly in upcoming releases. Operators evaluating this "
119+ "surface should plan to recreate persisted data when upgrading "
120+ "agentevals between minor versions."
121+ ),
122+ },
123+ ],
112124 )
113125
114126 app .add_middleware (
Original file line number Diff line number Diff line change 2828
2929logger = logging .getLogger (__name__ )
3030
31- runs_router = APIRouter (tags = ["runs" ])
31+ runs_router = APIRouter (
32+ tags = ["runs" ],
33+ responses = {
34+ 503 : {
35+ "description" : (
36+ "Storage backend is not configured. Set "
37+ "AGENTEVALS_STORAGE_BACKEND=postgres (with AGENTEVALS_DATABASE_URL) "
38+ "to enable run history."
39+ )
40+ },
41+ },
42+ )
3243
3344
3445class RunRequest (CamelModel ):
Original file line number Diff line number Diff line change @@ -767,6 +767,10 @@ def _migrator_or_die() -> "object":
767767@click .option ("--dry-run" , is_flag = True , help = "Print which migrations would apply without executing." )
768768def migrate_up (dry_run : bool ) -> None :
769769 """Apply all pending migrations."""
770+ click .echo (
771+ "note: agentevals migrate is a preview feature. Schema may change incompatibly between minor releases." ,
772+ err = True ,
773+ )
770774 migrator = _migrator_or_die ()
771775 try :
772776 applied = asyncio .run (migrator .up (dry_run = dry_run ))
You can’t perform that action at this time.
0 commit comments