feat(PBI-67/ST-1297): datamodel-velden voor job-model-selectie
Voegt 8 nieuwe optionele velden toe verspreid over Product, Task en ClaudeJob ten dienste van de override-cascade: task.requires_opus → job.requested_* → product.preferred_* → kind-default Bestaande rijen krijgen NULL (Product/ClaudeJob) of false (Task) en vallen daarmee terug op de kind-defaults uit de resolver (ST-1298). Migration is additief: alleen ALTER TABLE ADD COLUMN, geen RENAME of DROP. Bestaande factories en seed-script blijven werken zonder aanpassing omdat alle nieuwe velden default-waardes hebben. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
f233dd815e
commit
946ac8f960
2 changed files with 26 additions and 0 deletions
|
|
@ -0,0 +1,18 @@
|
|||
-- PBI-67: Model + mode-selectie per ClaudeJob-kind
|
||||
--
|
||||
-- Additieve migration: nieuwe optionele kolommen op products, tasks en
|
||||
-- claude_jobs voor de override-cascade
|
||||
-- task.requires_opus → job.requested_* → product.preferred_* → kind-default
|
||||
-- Bestaande rijen krijgen NULL (Product/ClaudeJob) of false (Task.requires_opus)
|
||||
-- en vallen daarmee terug op kind-defaults uit de resolver.
|
||||
|
||||
ALTER TABLE "products" ADD COLUMN "preferred_model" TEXT;
|
||||
ALTER TABLE "products" ADD COLUMN "thinking_budget_default" INTEGER;
|
||||
ALTER TABLE "products" ADD COLUMN "preferred_permission_mode" TEXT;
|
||||
|
||||
ALTER TABLE "tasks" ADD COLUMN "requires_opus" BOOLEAN NOT NULL DEFAULT false;
|
||||
|
||||
ALTER TABLE "claude_jobs" ADD COLUMN "requested_model" TEXT;
|
||||
ALTER TABLE "claude_jobs" ADD COLUMN "requested_thinking_budget" INTEGER;
|
||||
ALTER TABLE "claude_jobs" ADD COLUMN "requested_permission_mode" TEXT;
|
||||
ALTER TABLE "claude_jobs" ADD COLUMN "actual_thinking_tokens" INTEGER;
|
||||
|
|
@ -208,6 +208,9 @@ model Product {
|
|||
definition_of_done String
|
||||
auto_pr Boolean @default(false)
|
||||
pr_strategy PrStrategy @default(SPRINT)
|
||||
preferred_model String?
|
||||
thinking_budget_default Int?
|
||||
preferred_permission_mode String?
|
||||
archived Boolean @default(false)
|
||||
created_at DateTime @default(now())
|
||||
updated_at DateTime @updatedAt
|
||||
|
|
@ -363,6 +366,7 @@ model Task {
|
|||
status TaskStatus @default(TO_DO)
|
||||
verify_only Boolean @default(false)
|
||||
verify_required VerifyRequired @default(ALIGNED_OR_PARTIAL)
|
||||
requires_opus Boolean @default(false)
|
||||
// Override product.repo_url for branch/worktree/push purposes. Set when
|
||||
// a task targets a different repo than its parent product (e.g. an
|
||||
// MCP-server task tracked under the main product's PBI). Falls back to
|
||||
|
|
@ -408,6 +412,10 @@ model ClaudeJob {
|
|||
output_tokens Int?
|
||||
cache_read_tokens Int?
|
||||
cache_write_tokens Int?
|
||||
requested_model String?
|
||||
requested_thinking_budget Int?
|
||||
requested_permission_mode String?
|
||||
actual_thinking_tokens Int?
|
||||
plan_snapshot String?
|
||||
base_sha String?
|
||||
head_sha String?
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue