Jump to content

RefractTrack Tasks: Difference between revisions

From Pixel Refraction Studio
Created page with "== Tasks == A task is the core unit of work in RefractTrack, always scoped to a single Project and identified by a task code like <code><nowiki>RPG-12</nowiki></code> (its project's prefix plus a sequential number). === Fields === Every task has: * '''Title''' and '''Description''' (description supports the Markdown Formatting subset) * '''Type''' — <code><nowiki>Normal</nowiki></code> or <code><nowiki>..."
 
No edit summary
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Tasks ==
== Tasks ==


A task is the core unit of work in RefractTrack, always scoped to a single [[RefractTrack_Projects|Project]] and identified by a task code like <code><nowiki>RPG-12</nowiki></code> (its project's prefix plus a sequential number).
A task is the basic unit of work in RefractTrack — a single feature, fix, art request, or to-do, always living inside one [[RefractTrack_Projects|Project]] and identified by a short code like ''RPG-12''.


=== Fields ===
[[File:RefractTrack_Task_Detail.png|border|center|700px|A task's detail page — formatted description, task-code auto-linking, status controls, and comments.]]


Every task has:
=== What's on a task ===


* '''Title''' and '''Description''' (description supports the [[RefractTrack_Markdown_Formatting|Markdown Formatting]] subset)
* '''Title''' and '''Description''' — the description supports light [[RefractTrack_Markdown_Formatting|text formatting]], so you can bold, italicize, list, and add code snippets.
* '''Type''' — <code><nowiki>Normal</nowiki></code> or <code><nowiki>Bug</nowiki></code>
* '''Type''' — either a regular task or a Bug.
* '''Priority''' — <code><nowiki>Low</nowiki></code>, <code><nowiki>Medium</nowiki></code>, <code><nowiki>High</nowiki></code>, or <code><nowiki>Critical</nowiki></code> (defaults to <code><nowiki>Medium</nowiki></code>)
* '''Priority''' — Low, Medium, High, or Critical.
* '''Stage''' — which [[RefractTrack_Stages|Stage]] (swimlane) the task currently sits in
* '''Stage''' — which column the task currently sits in on the board. See [[RefractTrack_Stages|Stages]].
* '''Assignee''' — optional, but required when moving into a stage flagged <code><nowiki>requires_assignee</nowiki></code>
* '''Assignee''' — who's working on it. Optional, unless the column it's in requires one.
* '''Due date''' — optional
* '''Due date''' — optional.
* '''Groups''' — zero or more [[RefractTrack_Groups|Groups]], a many-to-many tag
* '''Groups''' — any number of color-coded tags. See [[RefractTrack_Groups|Groups]].
* '''Review status''' — <code><nowiki>pending</nowiki></code>, <code><nowiki>approved</nowiki></code>, or <code><nowiki>wont_do</nowiki></code>; see [[RefractTrack_Approvals_and_Review|Approvals and Review]]
* '''Review status''' — whether it's still pending sign-off, approved, or marked "won't do." See [[RefractTrack_Approvals_and_Review|Approvals and Review]].
* '''Archived state''' — orthogonal to stage and review status; see [[RefractTrack_Archiving|Archiving]]
* '''Archived''' — whether it's been tucked away off the active board. See [[RefractTrack_Archiving|Archiving]].


=== Bug-specific fields ===
=== Bug reports get extra fields ===


Tasks with '''Type = Bug''' get three extra optional fields, shown and hidden automatically based on the Type radio:
Switch a task's Type to Bug and three extra fields appear: '''Expected behavior''', '''Actual behavior''', and '''Steps to reproduce'''. They show up on the task detail page in their own dedicated panel, and they're also available as fill-in-the-blank templates when creating a batch of bug reports at once (see [[RefractTrack_Bulk_Task_Creation_and_Saved_Lists|Bulk Task Creation]]).


* '''Expected behavior'''
=== Task codes link themselves ===
* '''Actual behavior'''
* '''Steps to reproduce'''


These appear on the full task form, the [[RefractTrack_Bulk_Task_Creation_and_Saved_Lists|bulk create]] form (as templates using the same placeholder substitution as title/description), and the simplified reporter submission form. They're cleared server-side whenever a task's type isn't Bug, and are shown in their own "Bug Details" panel on the task detail page when present.
Mention a task code like ''FE-12'' anywhere formatted text appears — a description, a comment, another task — and RefractTrack automatically turns it into a clickable link to that task, as long as it's a real task and you're allowed to see it. No extra steps needed.


=== Task codes and auto-linking ===
=== Creating tasks ===
 
There are a few ways to add a task, depending on who's adding it and how much detail they need to provide:
 
* '''The full task form''' — the everyday way to create a task. New tasks always start out in the project's first column, unassigned; once it exists, you can move it and assign it from its own detail page.
* '''The reporter form''' — a stripped-down "submit a ticket" form for teammates (like playtesters or QA) who should be able to flag something without full access to the board. Tickets submitted this way land automatically in a review queue rather than straight onto the board, unassigned, at Medium priority. Anyone who can use this form also gets their own ''My Reports'' page, listing everything they've personally submitted and where each one currently stands — handy for following up without needing board access.
* '''Bulk create''' — for generating a whole batch of similar tasks at once. See [[RefractTrack_Bulk_Task_Creation_and_Saved_Lists|Bulk Task Creation]].
* '''Clone''' — duplicate any existing task as a starting point for a new one.


Every task has a permanent code (<code><nowiki>PREFIX-123</nowiki></code>). Anywhere free text is rendered through the markdown renderer, text matching the <code><nowiki>PREFIX-123</nowiki></code> pattern is automatically scanned and, if it resolves to a real task, turned into a link to that task — see [[RefractTrack_Markdown_Formatting|Markdown Formatting]]. The link is only generated for users who can actually view tasks (<code><nowiki>tasks:view</nowiki></code>); otherwise the code is left as plain text rather than pointing somewhere the viewer can't reach.
=== Editing and moving tasks ===


=== Creating tasks ===
You can move a task between columns from its detail page, from the edit form, or simply by dragging it across the board — see [[RefractTrack_Board_and_List_Views|Board and List Views]]. If the column you're moving it into is one that requires an assignee (In Progress and In Review, by default), you'll be asked to pick one first.


* '''Full task form''' (<code><nowiki>task_form.php</nowiki></code>) — available to users with <code><nowiki>tasks:create</nowiki></code>, exposes every field above.
=== If two people edit a task at the same time ===
* '''Reporter form''' (<code><nowiki>report.php</nowiki></code>) — a simplified "submit a ticket" form for users who only hold <code><nowiki>tasks:report</nowiki></code> (typically playtesters/QA). Tickets filed this way always start in the project's first stage, unassigned, at Medium priority, and reporters can only submit to the specific projects they've been granted access to.
* '''Bulk create''' — see [[RefractTrack_Bulk_Task_Creation_and_Saved_Lists|Bulk Task Creation and Saved Lists]].
* '''Clone''' — any existing task can be duplicated via the Clone action, subject to <code><nowiki>tasks:clone</nowiki></code>.


=== Editing and moving tasks ===
On a busy team, it's normal for two people to open the same task at once — say, one person updates the description while someone else moves it to a new stage. RefractTrack is built to handle this gracefully: as long as you're not both changing the exact same thing, everyone's changes are saved, no matter who clicked save first.


* Editing a task's content (title, description, type, priority, groups) requires <code><nowiki>tasks:edit:content</nowiki></code>.
The only time RefractTrack has to make a judgment call is if you both change the '''same''' field to two different values at nearly the same moment. When that happens, it keeps whichever change was saved first, and adds a friendly note to the task's [[RefractTrack_Comments_and_Activity_Log|Activity]] tab so the other person can see what happened and reapply their change if they still want it. Nothing is ever silently thrown away, and you'll never see a confusing "conflict" screen or be asked to manually merge anything.
* Moving a task between stages — including setting the assignee and due date at the same time — requires <code><nowiki>tasks:edit:stage</nowiki></code>. This can be done from the task detail page, the task edit form, or by dragging the task on the [[RefractTrack_Board_and_List_Views|board]].
* Moving a task into a stage flagged <code><nowiki>requires_assignee</nowiki></code> (by default: '''In Progress''' and '''In Review''') always requires picking an assignee first, regardless of which of the above three paths is used.
* A task's stage dropdown always includes the task's ''current'' stage even if that stage has since been hidden from the board — otherwise saving the form would silently drop it back to a different stage.


=== Deleting tasks ===
=== Deleting tasks ===


Permanent deletion (<code><nowiki>tasks:delete</nowiki></code>) removes a task outright. A standalone snapshot of every hard-deleted task is preserved in a <code><nowiki>deleted_task_log</nowiki></code> table for audit purposes even after the live row is gone. For non-destructive removal from the active board, see [[RefractTrack_Archiving|Archiving]] instead.
Deleting a task removes it for good — a quiet backup record is kept behind the scenes for audit purposes even after it's gone from the board, but there's no everyday "undo." If you just want to clear finished or abandoned work off the board without losing it, [[RefractTrack_Archiving|Archiving]] is almost always the better choice.


=== Related pages ===
=== Related pages ===
Line 54: Line 53:
* [[RefractTrack_Stages|Stages]]
* [[RefractTrack_Stages|Stages]]
* [[RefractTrack_Groups|Groups]]
* [[RefractTrack_Groups|Groups]]
* [[RefractTrack_Comments_and_Activity_Log|Comments and Activity Log]]
* [[RefractTrack_Comments_and_Activity_Log|Comments and Activity]]
* [[RefractTrack_Attachments|Attachments]]
* [[RefractTrack_Attachments|Attachments]]
* [[RefractTrack_Markdown_Formatting|Markdown Formatting]]
* [[RefractTrack_Markdown_Formatting|Formatting Text]]
* [[RefractTrack_Export_and_Import|Export and Import]]
* [[RefractTrack_Export_and_Import|Export and Import]]
[[Category:RefractTrack]]

Latest revision as of 22:42, 11 September 2026

Tasks

A task is the basic unit of work in RefractTrack — a single feature, fix, art request, or to-do, always living inside one Project and identified by a short code like RPG-12.

A task's detail page — formatted description, task-code auto-linking, status controls, and comments.
A task's detail page — formatted description, task-code auto-linking, status controls, and comments.

What's on a task

  • Title and Description — the description supports light text formatting, so you can bold, italicize, list, and add code snippets.
  • Type — either a regular task or a Bug.
  • Priority — Low, Medium, High, or Critical.
  • Stage — which column the task currently sits in on the board. See Stages.
  • Assignee — who's working on it. Optional, unless the column it's in requires one.
  • Due date — optional.
  • Groups — any number of color-coded tags. See Groups.
  • Review status — whether it's still pending sign-off, approved, or marked "won't do." See Approvals and Review.
  • Archived — whether it's been tucked away off the active board. See Archiving.

Bug reports get extra fields

Switch a task's Type to Bug and three extra fields appear: Expected behavior, Actual behavior, and Steps to reproduce. They show up on the task detail page in their own dedicated panel, and they're also available as fill-in-the-blank templates when creating a batch of bug reports at once (see Bulk Task Creation).

Mention a task code like FE-12 anywhere formatted text appears — a description, a comment, another task — and RefractTrack automatically turns it into a clickable link to that task, as long as it's a real task and you're allowed to see it. No extra steps needed.

Creating tasks

There are a few ways to add a task, depending on who's adding it and how much detail they need to provide:

  • The full task form — the everyday way to create a task. New tasks always start out in the project's first column, unassigned; once it exists, you can move it and assign it from its own detail page.
  • The reporter form — a stripped-down "submit a ticket" form for teammates (like playtesters or QA) who should be able to flag something without full access to the board. Tickets submitted this way land automatically in a review queue rather than straight onto the board, unassigned, at Medium priority. Anyone who can use this form also gets their own My Reports page, listing everything they've personally submitted and where each one currently stands — handy for following up without needing board access.
  • Bulk create — for generating a whole batch of similar tasks at once. See Bulk Task Creation.
  • Clone — duplicate any existing task as a starting point for a new one.

Editing and moving tasks

You can move a task between columns from its detail page, from the edit form, or simply by dragging it across the board — see Board and List Views. If the column you're moving it into is one that requires an assignee (In Progress and In Review, by default), you'll be asked to pick one first.

If two people edit a task at the same time

On a busy team, it's normal for two people to open the same task at once — say, one person updates the description while someone else moves it to a new stage. RefractTrack is built to handle this gracefully: as long as you're not both changing the exact same thing, everyone's changes are saved, no matter who clicked save first.

The only time RefractTrack has to make a judgment call is if you both change the same field to two different values at nearly the same moment. When that happens, it keeps whichever change was saved first, and adds a friendly note to the task's Activity tab so the other person can see what happened and reapply their change if they still want it. Nothing is ever silently thrown away, and you'll never see a confusing "conflict" screen or be asked to manually merge anything.

Deleting tasks

Deleting a task removes it for good — a quiet backup record is kept behind the scenes for audit purposes even after it's gone from the board, but there's no everyday "undo." If you just want to clear finished or abandoned work off the board without losing it, Archiving is almost always the better choice.