feat(codes): server actions + seed/scripts gebruiken code overal
- actions/tasks.ts: saveTask + createTaskAction (legacy form) gebruiken
createWithCodeRetry + generateNextTaskCode; persisten product_id
denormalisatie. P2002 op user-supplied code wordt 422 met fieldError
- actions/pbis.ts + stories.ts: insert-helpers nemen verplichte string;
update laat code-veld weg uit data wanneer null (kan niet meer leeg
worden gemaakt nu DB NOT NULL is)
- actions/todos.ts: promoteTodoToPbi/Story genereren expliciet een code
voor het transactiestart (kan niet binnen $transaction array retryen)
- prisma/seed.ts: per-product task counter geeft elke task een T-N code
- scripts/insert-milestone.ts: createMany berekent maxN voor product
en assigneert T-{maxN+i+1} per nieuwe task
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
829122d437
commit
7c82a736f5
6 changed files with 82 additions and 32 deletions
|
|
@ -163,9 +163,19 @@ async function main() {
|
|||
// Tasks: alleen als de story op dit moment 0 tasks had
|
||||
if (!hadTasks && s.tasks.length > 0) {
|
||||
if (!args.dryRun) {
|
||||
const allTasks = await prisma.task.findMany({
|
||||
where: { product_id: product.id },
|
||||
select: { code: true },
|
||||
})
|
||||
const maxN = allTasks.reduce((m, t) => {
|
||||
const match = /^T-(\d+)$/.exec(t.code)
|
||||
return match ? Math.max(m, Number(match[1])) : m
|
||||
}, 0)
|
||||
await prisma.task.createMany({
|
||||
data: s.tasks.map((t) => ({
|
||||
data: s.tasks.map((t, i) => ({
|
||||
story_id: storyId,
|
||||
product_id: product.id,
|
||||
code: `T-${maxN + i + 1}`,
|
||||
title: t.title,
|
||||
description: t.description || null,
|
||||
priority: ms.priority,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue