feat(coderd/database): add error columns to aibridge interception records (#26960)

Adds a nullable `aibridge_interception_error_type` enum and an
`error_message` column to `aibridge_interceptions`, so a failed
interception's terminal upstream error can be persisted.

Schema only: the write path and API exposure land in the stacked
backend PR.

*This PR was produced by opencode (agent) using the `anthropic/claude-opus-4-8` model, under human direction and review.*
This commit is contained in:
Danny Kopping
2026-07-09 15:06:44 +02:00
committed by GitHub
parent cd1a676232
commit 63497ee9d8
7 changed files with 136 additions and 6 deletions
@@ -0,0 +1,5 @@
ALTER TABLE aibridge_interceptions
DROP COLUMN error_type,
DROP COLUMN error_message;
DROP TYPE aibridge_interception_error_type;
@@ -0,0 +1,19 @@
CREATE TYPE aibridge_interception_error_type AS ENUM (
'bad_request',
'unauthorized',
'rate_limited',
'overloaded',
'server_error',
'timeout',
'unknown'
);
-- Records the terminal upstream error observed when an interception failed.
-- Both columns are NULL for interceptions that completed successfully.
-- error_message is capped at 1024 characters as a hard schema-level bound.
ALTER TABLE aibridge_interceptions
ADD COLUMN error_type aibridge_interception_error_type,
ADD COLUMN error_message varchar(1024);
COMMENT ON COLUMN aibridge_interceptions.error_type IS 'Categorised terminal upstream error for a failed interception; NULL when the interception succeeded.';
COMMENT ON COLUMN aibridge_interceptions.error_message IS 'Raw terminal upstream error message for a failed interception; NULL when the interception succeeded.';