feat: per-issue assignee adapter overrides (model, effort, workspace)

Add assigneeAdapterOverrides JSONB column to issues, allowing per-issue
model, thinking effort, and workspace overrides when assigning to agents.
Heartbeat service merges overrides into adapter config at runtime. New
Issue dialog exposes these options for Claude and Codex adapters.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Forgotten
2026-02-26 10:32:44 -06:00
parent 1e11806fa3
commit e4e5609132
10 changed files with 5899 additions and 6 deletions
@@ -0,0 +1 @@
ALTER TABLE "issues" ADD COLUMN "assignee_adapter_overrides" jsonb;
File diff suppressed because it is too large Load Diff
@@ -148,6 +148,13 @@
"when": 1772032176413,
"tag": "0020_white_anita_blake",
"breakpoints": true
},
{
"idx": 21,
"version": "7",
"when": 1772122471656,
"tag": "0021_chief_vindicator",
"breakpoints": true
}
]
}
+2
View File
@@ -5,6 +5,7 @@ import {
text,
timestamp,
integer,
jsonb,
index,
uniqueIndex,
} from "drizzle-orm/pg-core";
@@ -38,6 +39,7 @@ export const issues = pgTable(
identifier: text("identifier"),
requestDepth: integer("request_depth").notNull().default(0),
billingCode: text("billing_code"),
assigneeAdapterOverrides: jsonb("assignee_adapter_overrides").$type<Record<string, unknown>>(),
startedAt: timestamp("started_at", { withTimezone: true }),
completedAt: timestamp("completed_at", { withTimezone: true }),
cancelledAt: timestamp("cancelled_at", { withTimezone: true }),