Merge main to production - #1440
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
… Labels rows softDeleteAllSubtasks and deleteAllAssigneeTasks deleted rows keyed on the task label string with no workspaceId filter. Labels has no workspaceId and prefixes derive from brand/company names, so strings like THE10-001 collide across workspaces and deletes wiped other workspaces' tasks. - softDeleteAllSubtasks: select id (not label) and deleteMany by id + workspaceId - deleteAllAssigneeTasks: drop the unscoped label.deleteMany - Remove LabelMappingService.deleteLabel and its call sites; Labels is a next-number registry where orphan rows are harmless and deleting them rolls the counter back, causing duplicate label reissue Co-Authored-By: Claude Opus 4.8 <[email protected]>
- Unit: softDeleteAllSubtasks and deleteAllAssigneeTasks delete by id/assignee scoped to workspaceId and never touch Labels rows - Integration: two workspaces sharing a label string; deleting one workspace's tree soft-deletes only its own subtree and leaves the other untouched - seedTask: optional label so integration tests can seed colliding labels Co-Authored-By: Claude Opus 4.8 <[email protected]>
authenticate.test.ts failed to load: p-retry and is-network-error are pure ESM and next/jest only transforms packages listed in transpilePackages. - next.config.js: transpile p-retry / is-network-error (also adds ngrok dev origin) - authenticate.test.ts: update the public-route source fallback assertion from "public" to "platform" to match the intentional change in commit eb76729 (was hidden while the suite couldn't load) Co-Authored-By: Claude Opus 4.8 <[email protected]>
…tibility Stops generating per-task label codes and deletes LabelMappingService and the Labels registry table. Keeps the Tasks.label column (now @default('')) so the public automation API stays backward compatible: pre-existing tasks keep their codes, new tasks return ''. - Public API: label retained in PublicTaskDtoSchema + serializer, with a serializer test locking the contract (empty for new, preserved for old). - Internal app no longer uses label — drag preview shows the workflow-state icon, the breadcrumb shows the task title, the search filter drops the label matcher. - Breadcrumb: desktop truncates the title at 25 chars; below 600px it uses a shorter 12-char title to avoid the platform header overflowing. - Migration (edited in place): set Tasks.label DEFAULT '' and DROP TABLE Labels (the column is kept, not dropped). Co-Authored-By: Claude Opus 4.8 <[email protected]>
|
Deployment failed for project tasks-app with the following error: Learn More: https://vercel.link/multiple-function-regions |
1bc04dd to
51d44fd
Compare
Greptile SummaryThis PR removes task-label generation and the
Confidence Score: 5/5The PR appears safe to merge, with no concrete changed-code failure identified. The label model, task lifecycle services, private consumers, migration, and public compatibility serializer are updated coherently, while recursive deletion is narrowed to exact descendant IDs within the acting workspace and storage failures retain a network-backed fallback. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart LR
A[Create task] --> B[Persist task]
B --> C[label defaults to empty string]
C --> D[Private task consumers use title and workflow state]
C --> E[Public serializer retains label field]
F[Delete parent task] --> G[Select live descendant IDs by ltree path and workspace]
G --> H[Soft-delete matching task IDs]
H --> I[Prevent cross-workspace deletion]
Reviews (1): Last reviewed commit: 1bc04dd | Re-trigger Greptile |
No description provided.