FORM NOT VOID, MIND NO CORE

Chapter 7: The Lifecycle of a Task: From Idea to Archive

2025.11.12

All the work of a team can ultimately be broken down into individual "tasks." Developing a new feature is a task. Writing a blog post is a task. Fixing an online outage is also a task.

Task management is the "central hub" of team collaboration. Its efficiency and clarity directly determine the operational efficiency and transparency of the entire team.

In a chaotic team, task management is ad hoc and fragmented:

  • Tasks might come from a manager's verbal instruction, a snippet of IM chat history, or a vague email.
  • Task progress is stored in everyone's head. You need to frequently ask "You there?" and "How's that thing going?" to piece together a picture of the project.
  • Task priority depends entirely on who speaks the loudest and who pressures the most. Important but not urgent tasks are indefinitely shelved.
  • When a task is completed, the associated knowledge and discussion vanish without a trace, unable to be traced or referenced by future team members.

This "guerrilla-style" task management is an absolute disaster in a remote environment. It will quickly drag the team into a quagmire of information black holes and responsibility vacuums.

A mature, efficient remote team must establish a structured, strictly followed "task lifecycle management system." This system must ensure that every task, from the moment it is born to the moment it is finally archived, has its status, owner, context, and history clearly, transparently, and traceably recorded.

The core carrier of this system is what we call the "board."

Kanban-Driven: Make Progress Visible, Make Status Traceable

Imagine walking into a busy restaurant kitchen. What do you see? Most likely, you see a board covered with various order tickets hanging from clips. The chefs cook methodically based on the order and content of the tickets on this board. This board is the most primitive yet most effective "kanban."

Kanban originates from Toyota's lean production system. Its core idea is to "visualize" every step in the workflow and limit the number of tasks in progress at each step.

In software development and knowledge work, we use digital kanban tools (like Jira, Trello, Asana, Feishu Projects). But the philosophy behind them is the same.

A typical team collaboration kanban usually includes the following core "status columns":

  • To-Do / Backlog: This is an "idea pool" or "requirement pool." All tasks that have been initially assessed as valuable but not yet scheduled are placed here.
  • Ready for Dev / To Be Specified: A task in this column means it has been sufficiently analyzed and designed, with clear goals, scope, and acceptance criteria. Developers can "pull" tasks from this column at any time and start working.
  • In Progress / Doing: This column indicates that a task has a clear owner who is actively working on it. This is the most strictly managed column on the board.
  • In Review / In QA: When preliminary work on a task is complete (e.g., code submitted), it enters this column, awaiting review by colleagues (Code Review) or verification by QA.
  • Done: Only when a task meets the team's jointly agreed "Definition of Done" can it be moved to this column. For example, code deployed, feature usable by users.
  • Archived: After some time (e.g., after an iteration cycle), completed tasks should be archived to keep the board tidy.

Kanban-driven means that all team work must exist in the form of "cards" on this visualized board. Any work not on the board should be considered non-existent "shadow work."

Why Is "Kanban-Driven" So Important for Remote Collaboration?

It Provides a "Single Source of Truth"

The kanban is the "dashboard" of the team's work status. Any member, at any time, by simply opening the board, can get a global, real-time understanding of the following:

How many tasks does our team have in progress?

What is the current status of each task?

Who is responsible for each task?

Which stage might be a "bottleneck"? (e.g., a pile-up of cards in the "In Review" column)

This global transparency greatly reduces the communication cost of "syncing status." It perfectly embodies the "default public" and "async first" principles from Chapter 1. Managers no longer need to frequently ask "how's progress?" and team members no longer need to be frequently interrupted to answer. The kanban is our never-resting, always-online "project manager."

It Transforms "Push" Work into "Pull" Work

In the traditional model, work is often "pushed." That is, managers or product managers "assign" tasks to a developer.

In the kanban system, we advocate "pulling." That is, after completing their current work, the developer actively "pulls" a new card from the "Ready for Dev" column based on priority, to start working.

What are the benefits of "pulling"?

  1. Respects autonomy: It gives team members more autonomy and choice, allowing them to arrange work according to their own rhythm and expertise.
  2. Exposes bottlenecks: If the "Ready for Dev" column is empty, it indicates a bottleneck in our requirements analysis and design phase, which cannot provide enough "ammunition" for the development team.
  3. Limits Work In Progress: This is the essence of the kanban methodology. By limiting the number of cards in the "In Progress" column (e.g., stipulating that each member can have at most 1-2 "In Progress" tasks at a time), we force the team to focus on "completing" tasks rather than "starting" them. This can greatly shorten the average delivery cycle time and improve delivery quality.

It Makes the "Workflow" Itself an Object of Optimization

When we visualize the entire workflow on the board, we gain a powerful "process improvement" tool.

Through regular "kanban retrospectives" (e.g., after each iteration), the team can review the board together and discuss:

  • Which stage is our bottleneck? Do cards spend too much time in the "In Review" column? If so, does this mean we need to invest more time in code review?
  • Are our status definitions clear? Do cards frequently bounce back and forth between columns? Does this mean there is disagreement about the definition of "Ready for Dev" or "Done"?
  • Could we add, remove, or merge certain columns to make the flow smoother?

The kanban is like a mirror, honestly reflecting the "congestion" and "disorder" in our collaboration process. It drives us to continuously, data-based, self-examine and iteratively optimize.

What Should a "Perfect" Task Card Contain?

The power of the kanban lies not only in the definition of "columns" but also in the quality of each "card." A card with incomplete or vague information is "garbage" in the process, creating chaos rather than clarifying facts.

According to the "saturated information delivery" principle from Chapter 1, a high-quality task card must include the following elements:

A Clear, Concise, Verb-First Title

Bad title: "User Login Issue" Good title: "Fix: Intermittent white screen when users log in via WeChat QR code"

A Detailed, Structured Description

This is the core of the card. It should be like a mini "requirements document," clearly answering:

Background: Why are we doing this task? What user problem does it solve, or what business goal does it achieve?

Goal: What is the sign of completion for this task? What effect do we expect to achieve?

Specific Requirements/Solution: For a feature, include specific functional descriptions and interaction logic. For a bug, include stable reproduction steps, error screenshots, or logs. For a technical task, include the general technical approach and thinking.

Acceptance Criteria (AC): This is a crucial component. AC uses a clear, verifiable checklist to define the standard for "done." For example:

  • Users can successfully log in using phone number + verification code.
  • When an incorrect verification code is entered, the page gives a clear prompt.
  • After successful login, the page redirects to the personal profile.

AC is the "contract" that aligns requirements among development, testing, and product.

A Clear Owner

Every card that enters the "In Progress" state must have one, and only one, clear owner. This embodies the "single responsible person principle."

Attach all contextual materials related to this task. For example:

  • Link to Figma mockups.
  • Link to the PRD document.
  • Link to the relevant technical design document.
  • Link to the original user feedback ticket.

Estimated Effort / Priority

Teams can use "story points," "T-shirt sizes (S/M/L)," or other methods to estimate the relative complexity and size of tasks. This helps with iteration planning. At the same time, a clear priority (e.g., High/Medium/Low) guides members to make the right choices when "pulling" tasks.

A Dynamic Comment Section

All async discussions and communications related to this task should happen in the card's comment section, not scattered across IM or email. This ensures the entire "decision history" of the task is completely and traceably recorded in one place.

The kanban is not just a "tool"; it is a "way of thinking." It is a philosophy about transparency, flow, and continuous improvement. When a team truly starts to think and work in a "kanban-driven" way, they gain a powerful "visualization engine" that can withstand the various uncertainties of remote collaboration. This engine makes everyone the "master" of the process, not its "slave."

The Art of Labels: Using urgent, money, feature to Quickly Align Context

If the kanban's "columns" define the "stage" of a task, and the card's "content" defines the "depth" of a task, then "labels" (or Tags) provide a third dimension of information -- "category" and "attribute."

In a complex project, the kanban may contain hundreds of cards simultaneously. Without an effective classification and filtering mechanism, we will quickly get lost in the sea of information. Labels are the "lighthouses" and "buoys" guiding us through this information ocean.

The art of labels lies in using a set of concise, convention-based, color-coded "metadata" to "mark" tasks. This allows us to quickly recognize a task's core attributes in a split second, with cross-role alignment.

When you see a card with the labels urgent, bug, and money simultaneously, even if you know nothing about the task's specifics, your brain immediately sounds an alarm: this is a highest-priority online incident causing revenue loss and must be handled immediately.

This is the power of labels. It is an "information compression" technique. It compresses complex context into easily recognizable "visual symbols."

What Characteristics Should a Good Label System Have?

  1. Clear semantics, no ambiguity: The meaning of each label should be clear and agreed upon by the team. For example, what is the difference between urgent and high-priority? The team needs to define and agree on this.
  2. Controllable quantity, not over-designed: Labels are not the more the better. A system with hundreds of labels becomes a cognitive burden in itself. Typically, 15-30 commonly used labels across a few core dimensions are sufficient for a team (an indicative range).
  3. Colorful and easily distinguishable: Use colors to differentiate label categories. For example, use reds for urgency and incidents, blues for features and requirements, greens for optimizations and refactoring. This greatly improves information scanability.
  4. Co-created and continuously iterated: The label system is not set in stone. It should evolve with the team and business. The team should encourage members to propose new labels or suggest modifications when existing ones cannot meet their needs.

Common Label Dimensions and Examples

Different teams can design their label system based on their business characteristics. But generally, we can build from the following dimensions:

Dimension One: Task Type

This is the most basic classification, answering "what kind of task is this?"

  • feature: A new feature or user story.
  • bug: A defect in the production environment.
  • chore / task: A routine task not directly facing users (e.g., upgrading a dependency library).
  • tech-debt: A refactoring task to repay technical debt.
  • research: An exploratory technical or product research task.
  • documentation: A document writing or updating task.
Dimension Two: Priority / Urgency

This dimension helps the team quickly identify which tasks need to be prioritized.

  • urgent / blocker: Highest priority, usually refers to severe online incidents requiring everyone to drop everything and respond immediately.
  • high: High priority, needs to be resolved within the current iteration or short term.
  • medium: Normal priority.
  • low: Low priority, can be handled when resources are sufficient.
Dimension Three: Business Domain / Module

This dimension helps group tasks by their respective product module or business line.

  • user-auth: User authentication module.
  • order-system: Order system.
  • payment: Payment gateway.
  • data-analytics: Data analytics backend.

This is especially useful for teams maintaining multiple modules simultaneously. It allows domain experts to quickly filter tasks relevant to them.

Dimension Four: Impact / Value

This dimension attempts to assess tasks from a "business value" perspective.

  • money: Tasks directly related to company revenue or costs (e.g., fixing a payment bug, optimizing server costs).
  • user-experience: Tasks that significantly improve user experience.
  • security: Security-related vulnerabilities or hardening tasks.
  • performance: Performance optimization tasks.

Labels from this dimension provide very valuable decision-making references for product managers and teams during iteration planning and prioritization.

Dimension Five: Status / Workflow

Sometimes, we need additional labels to mark "special states" of tasks in the workflow.

  • blocked: Indicates the task is blocked by external dependencies (e.g., waiting for another team's API) and cannot proceed.
  • needs-discussion: Indicates the task's requirements or solution are still controversial and need a meeting for synchronous discussion.
  • needs-design: Indicates the task still needs UI/UX support from a designer.

How to Use Labels to Drive Workflow?

Labels are not just for "seeing"; they are for "doing." A well-designed label system can be combined with automation tools to drive and optimize our workflow.

Create "Smart Views" or "Filters"

Almost all kanban tools support creating custom "views" or "filters" based on labels. Team members can create personalized kanban views based on their role and focus.

A QA engineer can create a view showing only cards labeled bug and in the In QA status.

The owner of a specific module can create a view showing only cards labeled order-system.

A manager can create a "risk view" showing all cards labeled urgent or blocked.

Automated Notifications and Process Triggers

We can set up automation rules that trigger certain actions when a label is added or removed.

When a card is labeled blocked, automatically send a notification in the team's public channel, alerting everyone to this blocking issue.

When a card is labeled needs-design, automatically assign the card to the design team's contact person.

When a bug card is moved to the Done status, automatically notify the user or customer support who reported the bug.

Labels are the team's "common language." They are a low-cost, high-efficiency "alignment" tool. They allow our communication to not have to start from scratch explaining context every time, but to be based on a shared, visualized "semantic network."

Take some time to sit down with your team, jointly design and agree on your label system. This investment will repay you a hundredfold in efficiency gains in your future collaboration. This is the "art of labels."

Task Ownership and Follow-Through: Who Initiates, Who Follows Up, Who Closes

We now have a visualized kanban process and information-rich task cards. But for a task to truly and smoothly flow from "idea" to "value," it also needs a clear, unshakable "responsibility chain."

During a task's lifecycle, at least three key roles or actions are involved: the Initiator, the Driver, and the Closer. Often, these three roles are played by the same person. But in complex collaborations, they may be different people.

If this responsibility chain is unclear or broken at any link, the task falls into a "no-man's land" where "no one is responsible," eventually leading to delays, arguments, or even being forgotten.

Therefore, we must establish an extremely clear collaboration contract within the team regarding "task ownership and follow-through." This contract can be summarized in three simple but powerful principles:

Principle One: Who Initiates, Who Clarifies

A task's lifecycle begins with "initiation." The initiator might be a product manager proposing a new requirement, a tester finding a bug, or an engineer creating a technical refactoring task.

As the task initiator, your first responsibility is not to create the card and then become a "hands-off manager." You are responsible for filling in the card's information to the point where it is "Ready for Dev."

This means you must:

  • Provide saturated context: Write a clear description, background, goals, and acceptance criteria according to the standards we outlined earlier.
  • Involve relevant stakeholders: If the task requires preliminary input from design, legal, operations, or other roles, you are responsible for proactively communicating and coordinating, and attaching all relevant conclusions and materials to the card.
  • Answer all questions: Before the task enters the development phase, developers may ask various questions about requirements details. As the initiator, you are responsible for answering all these questions promptly and clearly in the card's comment section, until the entire team has a completely aligned understanding of the task.

The principle of "who initiates, who clarifies" ensures the quality of "raw materials" flowing into the development process at the source. It prevents developers from doing ineffective work due to unclear requirements, or being frequently interrupted during development to "guess" the requirements.

Principle Two: Who Takes It On, Who Drives It

When a card is moved from the "Ready for Dev" column to the "In Progress" column and assigned to a specific "owner," the task's "ownership" undergoes its first handover.

From this moment, the assigned owner becomes the task's "driver" or "driving force." Their responsibility is not just to "complete" the task, but to proactively and transparently drive the task through all subsequent stages until final "completion."

This means, as the driver, you must:

  • Proactively sync key progress and risks: You don't need to wait for others to ask. When you start a task, complete an important milestone, or encounter an unexpected difficulty, proactively give a brief update in the card's comment section or the team's public channel. For example: "FYI, I've completed the backend API development for this task. The frontend team can start integration." Or "Heads up, I've found this task to be more complex than we estimated. There might be a risk of delay. I suggest..."
  • Proactively seek help and review: When you've finished coding and need a colleague's code review, don't just drag the card to the "In Review" column and call it done. Proactively @mention the relevant colleague in the Merge Request, clearly explain your code approach, and guide them toward an efficient review. If review comments are slow to come, you are responsible for gently reminding and following up.
  • Proactively coordinate testing and release: After the code is merged, proactively communicate with the QA engineer to ensure they know the testing focus for this feature. During the release, proactively follow the entire process, and after launch, observe the relevant monitoring data to confirm everything is working correctly.

The principle of "who takes it on, who drives it" injects a powerful "single-point engine" into the execution phase of the task. It prevents tasks from experiencing "waiting" and "vacuum" during process handoffs. It shapes every team member into an independent "mini-project manager."

Principle Three: Who Initiates, Who Closes

When the driver moves the card to the "Done" status, is the task's lifecycle over?

Not yet.

There is one last, most easily overlooked step: verification and closure.

At this point, the task's "ownership" undergoes its second and final handover -- back to the original "initiator."

As the task initiator, you have the ultimate responsibility to verify the delivered result and officially "close the loop" on it.

This means you must:

Verify against the Acceptance Criteria (AC): Personally, or with the QA engineer, verify item by item against the AC agreed upon at the start, ensuring the delivered functionality fully meets the requirements.

Provide clear feedback:

If the verification passes, give a clear "approved" or "thank you" comment on the card, and consider archiving it. This small gesture is the best recognition and respect for the driver's hard work.

If the verification fails, don't just move the card back to "In Progress." You must provide specific, reproducible reasons for the failure, and create a subsequent bug card or improvement task.

Evaluate business results and share with the team: For an important feature, the final sign of closure is whether it achieved the expected business outcomes after launch. As the initiator (usually the product manager), you are responsible for following up on the relevant data and, after some time, sharing the feature's results (whether success or failure) with the entire team. For example (figures in the example below are illustrative): "Hi all, the 'one-click share' feature we launched last week increased our product's new user invitation rate by 15%, exceeding our expectations! Thanks to everyone involved!"

This ultimate "business closure" is crucial. It makes every person in the team clearly see the genuine connection between their work and the ultimate user value and business results. It is the greatest motivator for team morale.

The Responsibility Chain Is the Embodiment of Trust

"Who initiates, who clarifies." "Who takes it on, who drives it." "Who initiates, who closes."

These three seemingly simple principles together build a seamless, end-to-end "responsibility loop." In this loop, every role's responsibility at every stage is clearly defined.

It translates the "trust" and "responsibility" we repeatedly emphasized in Chapters 2 and 5 from abstract cultural concepts into a set of specific, executable, daily action directives.

When this responsibility chain becomes every team member's "muscle memory," you will find that meetings about "progress follow-up" and arguments about "responsibility attribution" miraculously disappear.

What replaces them is a smooth, wordless rapport. Every task, like a carefully passed "baton," is clearly, reliably, and with high quality handed from role to role until it crosses the finish line.

This is the power of turning culture into process.