BDS0.1

Task

One occurrence of work with its own deadline, status and evidence.

Reviewed 2026-10-28Markdown

Use one target for a KPI task and include KPI in Source Kind. Choose a reporting membership and an executor: accountable membership, team or department. The intake checks agreement with the target subject and rejects team plus department together. Milestone connects the task to an objective; Parent Task and Subtasks represent work breakdown. A recorded Slack response does not automatically complete a Task.

The live Task view currently flags configuration errors on Accountable (Name) and Intake Check. A maintainer must repair their referenced fields before using that check as a reliable activation gate. The documented formula describes intended validation; it does not confirm that the current field evaluates successfully.

Use and boundaries

Field names below are the current product labels. * and ° are UI markers, not database constraints. A preferred single-record selection is not a global cardinality constraint either. The related guide explains operational rules.

Related guide · All entities

Fields

Field Storage Source, options or boundary
Name* Text Stored value.
Description* Long text Stored value.
Source Kind* Multiple select Task, KPI, Compliance
Milestone° Linked records Milestone
Targets* Linked records Metric Target
Targets (Metric) Lookup Targets* → Metric*
Intake Step Formula Computed; see formulas below.
Accountable Membership° Linked records Membership (mirror)
Executor (Person) Text Text reference; not a linked record.
Executor (Position) Text Text reference; not a linked record.
Executor (Team)° Linked records Memebership
Executor (Department)° Linked records Department (mirror)
Completed By Text Text reference; not a linked record.
Reporting Membership* Linked records Membership (mirror)
Channel Audience Text Text reference; not a linked record.
Business Unit (Team) Text Text reference; not a linked record.
Business Unit (Department) Text Text reference; not a linked record.
Classification Term Text Text reference; not a linked record.
Involved Organization Text Text reference; not a linked record.
Generated From Linked records Recurrence Configuration
Generation Run Text Text reference; not a linked record.
Occurrence Key Text Stored value.
Obligation Linked records Compliance Obligation
Readings Linked records Observation
Due Date* Date Stored value.
Action Status* Single select Potential, Active, Waiting, Completed, Failed, Cancelled
Priority° Single select Urgent, High, Medium, Low
Estimated Effort° Duration Stored value.
Actual Effort Duration Stored value.
End Time Date and time Stored value.
Cost Currency Stored value.
Evidence Attachments Stored value.
Assignments Linked records Assignment Role
Documented By Linked records Content
Intakes Linked records Intake
Parent Task Linked records Task
Subtasks Linked records Task
Created Created time Generated by Airtable.
Accountable (Name) Lookup Accountable Membership° →
Reporting (Name) Lookup Reporting Membership* →
Executor (Department Channel) Lookup Executor (Department)° → Channel Identifier
Targets (Subject Membership) Lookup Targets* → Subject (Membership)°
Targets (Subject Team) Lookup Targets* → Subject (Team)°
Targets (Subject Department) Lookup Targets* → Subject (Department)°
Intake Check Formula Computed; see formulas below.
Tags Linked records op:tags · optional labels from the Core Tags catalog; classification only.

Current formulas

Internal references are rendered as readable field names. These expressions describe current configuration, including its limitations.

Intake Step

IF(OR({Action Status*} = "Potential", {Action Status*} = BLANK()),
  IF(OR({Name*} = BLANK(), {Description*} = BLANK(), {Source Kind*} = BLANK(), {Targets*} = BLANK()), "KPI Task - 1",
  IF({Reporting Membership*} = BLANK(), "KPI Task - 2",
  IF({Due Date*} = BLANK(), "KPI Task - 3",
  "KPI Task - 4"))),
"")

Intake Check

IF(FIND("KPI", {Source Kind*} & "") = 0, "⚠ Source Kind lacks KPI. ", "") &
IF(COUNTA({Targets*}) > 1, "⚠ More than one target. ", "") &
IF({Targets (Metric)} = BLANK(), "⚠ Target has no metric. ", "") &
IF(IF({Accountable Membership°},1,0) + IF({Executor (Team)°},1,0) + IF({Executor (Department)°},1,0) = 0, "⚠ Nobody does it: link a membership, a team or a department. ", "") &
IF(AND({Executor (Team)°}, {Executor (Department)°}), "⚠ Both a team and a department. ", "") &
IF(AND({Accountable Membership°}, {Accountable (Name)} = BLANK()), "⚠ Accountable has no Member (Name); Slack cannot find the person. ", "") &
IF(AND({Executor (Department)°}, {Executor (Department Channel)} = BLANK()), "⚠ Department has no Channel Identifier. ", "") &
IF(AND({Targets (Subject Membership)}, {Targets (Subject Membership)} & "" != {Accountable Membership°} & ""), "⚠ Personal KPI: Accountable differs from its subject. ", "") &
IF(AND({Targets (Subject Team)}, {Targets (Subject Team)} & "" != {Executor (Team)°} & ""), "⚠ Team KPI: Executor (Team) differs from its subject. ", "") &
IF(AND({Targets (Subject Department)}, {Targets (Subject Department)} & "" != {Executor (Department)°} & ""), "⚠ Department KPI: Executor (Department) differs from its subject. ", "")

Example and maintenance

Illustrative example: “Review this week’s service results” links one target, a reporting membership and a Friday deadline.

Use the existing fictitious records to inspect relationships in the guide. Before changing fields, check lookups, formulas, intakes and workflow contracts. This page documents structure; a field does not prove that an integration populates it.