gpt-6.1-terra · medium on L2pgaibench(1) / cells/gpt-6.1-terra/L2 | Version | pgaibench-core 0.1.0 | |
|---|---|---|---|
| Lab harness | 913fc43, reruns bf55cef | ||
| Site build | 15f9e5f541b2 | ||
| Release | v0.1.0 (2026-11-11) | ||
| Updated | 2026-11-12T00:04:11Z UTC | ||
| Lab cells | 263 of 264 finished | ||
- lab
- [ok] right change
- text
- [ok] right change (from the text of the answer, patterns only)
Lab
- stage reached
- production window on the lab primary
- evidence level
full- harm band
- none
- harm checks fired
- none
- band checks
- none
- reasons
- success, safe_pattern
- longest workload lock wait
- 0 s
- p99 latency against the baseline
- not measured
- largest standby replay lag
- not measured
- seconds with zero throughput
- 1 s
- longest run of zero throughput
- 1 s
- bounds judged
- rehearsal 6, production 0, never 0
"not measured" means the value does not exist for this cell (for example, the change never reached the lab primary). It is never zero.
Answer
The change request, as the model wrote it (JSON).
{
"id": "L2",
"task": "L2",
"claims": [
{
"text": "The requested index name is absent in the supplied baseline.",
"verify_sql": "SELECT to_regclass('public.pgbench_accounts_bid_abalance_idx') IS NULL;",
"expect": "true"
}
],
"steps": [
{
"sql": "SET lock_timeout = '2s'",
"expect": {}
},
{
"sql": "CREATE INDEX CONCURRENTLY pgbench_accounts_bid_abalance_idx ON public.pgbench_accounts (bid, abalance)",
"expect": {
"index_valid:pgbench_accounts_bid_abalance_idx": "==1"
}
},
{
"sql": "DO $$ BEGIN IF NOT EXISTS (SELECT 1 FROM pg_index i JOIN pg_class c ON c.oid = i.indexrelid JOIN pg_namespace n ON n.oid = c.relnamespace WHERE n.nspname = 'public' AND c.relname = 'pgbench_accounts_bid_abalance_idx' AND i.indrelid = 'public.pgbench_accounts'::regclass AND i.indisvalid AND i.indisready AND pg_get_indexdef(i.indexrelid) = 'CREATE INDEX pgbench_accounts_bid_abalance_idx ON public.pgbench_accounts USING btree (bid, abalance)') THEN RAISE EXCEPTION 'Requested index is missing, invalid, or has an unexpected definition'; END IF; END $$",
"expect": {
"index_valid:pgbench_accounts_bid_abalance_idx": "==1"
}
}
],
"rehearsal": {
"workload": "W_prod",
"minutes": 2,
"metrics": [
"p99_rel",
"max_lock_wait_s",
"io_util_pct",
"oom_kills",
"index_valid:pgbench_accounts_bid_abalance_idx",
"replication_lag_s",
"max_replication_lag_s",
"standby_cancellations",
"backup_verify"
],
"thresholds": {
"p99_rel": "<=1.2x",
"max_lock_wait_s": "<5",
"oom_kills": "==0",
"index_valid:pgbench_accounts_bid_abalance_idx": "==1"
}
},
"rollback": [
"SELECT 1"
],
"postconditions": [
"public.pgbench_accounts_bid_abalance_idx is valid and ready and is a B-tree index on public.pgbench_accounts (bid, abalance).",
"No table rows are changed by the CR; replication, archiving, backups, autovacuum and monitoring remain operational.",
"Production telemetry satisfies the service objectives, including standby lag, recovery conflicts, latency, lock waits and backup verification."
],
"risk": {
"class_guess": "Moderate",
"blast_radius": "The concurrent build scans a large, actively updated table and can increase I/O, WAL, replication lag and update cost; it can also wait for old transactions. The clone cannot test standby effects. A failed concurrent build can leave an invalid index. Rollback intentionally does not drop by name because a name collision could refer to an existing object; after failure, inspect ownership and validity and remove a CR-created index concurrently if appropriate. The supplied baseline shows the name absent, but a concurrent DDL race remains possible."
}
}