feat: allow editing the "Created by" user on a task#154
Merged
Conversation
The task sidebar Details panel previously showed Created by (the
Task_Leader field) as a read-only user — set once at creation and
never changeable. Add an inline picker mirroring the existing
Assignee field so the creator can be reassigned.
Changes:
- Backend: new updateTaskLeader action on task_class_Mongo. Validates
the new Task_Leader, writes via $set, emits the same
socketEmitter.emit('update', { module: 'task', updatedFields }) used
by updateAssignee, and logs a TaskLeader_Changed history entry via
HandleHistory. Includes the isUpdateTask:false side-effects-only
branch for parity with updateStatus / updatePriority.
- Frontend store (TaskOperations): new updateTaskLeader action that
optimistically commits the new Task_Leader into the projectData
Vuex store, then PATCHes /api/v2/tasks with action 'updateTaskLeader'.
- TaskDetailRightSide.vue: replaced the read-only Created-by block
with an Assignee picker (single-select) for users holding the
task.task_assignee + task.task_list permissions, preserving the
original read-only display as the fallback for users without those
permissions. Wired @selected to a new updateTaskLeader() handler
with the same toast / error pattern as updateAssignee.
- i18n: added Toast.Created_by_updated_successfully and
Toast.Created_by_not_updated to the English locale. The other 10
locales fall back to English via vue-i18n until translators
backfill — flagged as a follow-up.
Permission policy: reuses task.task_assignee. Anyone allowed to
change the Assignee can also change Created by. No new permission
key, no role-permission migration. Backend has no per-field gate,
consistent with the existing Assignee / Status / Priority update
paths which all trust the frontend permission gate.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The task sidebar Details panel previously showed Created by (the Task_Leader field) as a read-only user — set once at creation and never changeable. Add an inline picker mirroring the existing Assignee field so the creator can be reassigned.
Changes:
Permission policy: reuses task.task_assignee. Anyone allowed to change the Assignee can also change Created by. No new permission key, no role-permission migration. Backend has no per-field gate, consistent with the existing Assignee / Status / Priority update paths which all trust the frontend permission gate.
Pull Request Template Chooser
Please click the link that matches your contribution type to load the correct format.
Bug Fix
Use this for fixing broken logic or UI glitches.
New Feature
Use this for adding new functionality or components.
Refactor
Use this for code cleanup, performance tweaks, or technical debt.
General Summary
If you don't want to use a specific template, please provide a brief summary of your changes below.