PLATFORM · TASKS

Asana doesn't know there's a container stuck in customs.

The dashboard says "3 issues need attention." The operator reads them, opens Asana to create three tasks, copies the order numbers in by hand, loses the link back to the lot. Closes the Asana task, has to come back to TradeOS to update the entity. Asks the supplier to do something — supplier says "okay" — two days later nobody knows what happened. Multiply by every alert, every exception, every handoff: work generated by your platform leaves the platform to die.

Tasks in TradeOS is the nervous system of the platform. Every event — an order status change, a production QC complete, a shipment delay, an invoice falling overdue, a message flagged with an action item — ripples into the Tasks engine. From there, work routes to the right person in the right portal: an operator on the main app, a client on the client portal, a supplier on the supplier portal, or Atlas itself. One task model. Six statuses. Nine categories. Six entity types. Three portals. One nervous system.

Book a demoSee pricing

Statuses

6 · including pending approval and waiting external

Categories

9 · orders, shipments, production, finance, and 5 more

Entity types

6 polymorphic types · same model as orders

Views

6 · overview, board, list, my day, gantt, calendar

The real operator Tasks page in Board view — 4 status columns, drag-and-drop transitions, real categories and entity links. Same component renders in client and supplier portals with a swapped API prefix.

WHEN OPS WORK LIVES OUTSIDE THE OPS PLATFORM

Work generated by the platform shouldn't leave the platform to die.

Operations work fails for one reason: the work isn't connected to the system that knows the lot, the order, the contract, the counterparty. Three failure modes any ops team has lived all three.

01 · DOUBLE ENTRY

Tasks in one tool, work in another. Two systems, no connection.

Operator sees an exception in TradeOS, creates a task in Asana, loses the link to the lot. Closes the task in Asana, has to come back to TradeOS to update the entity. Double entry on every exception, and a slow erosion of which system is the source of truth.

TradeOS · alertAsana · task
Asana · doneTradeOS · update

02 · ORPHANED EVENTS

Events that don't become tasks drift forever.

The dashboard says "3 issues need attention." The operator reads them, remembers them, manages them in their head or a notebook. Three weeks later, one of them slipped — and nobody owned it because nobody ever made it a task.

3 issuesmemorynotebook
— week 1 —— week 2 —slip

03 · CROSS-PARTY HANDOFF LOSS

Work that crosses the operator / client / supplier line disappears.

The operator asks the supplier to do something. The supplier reads it, says "okay", forgets it. The operator follows up two days later — what happened? The conversation has the question; the operator has the worry; nothing has the commitment.

operatorsupplier · "okay"two days later · ?

THE NERVOUS SYSTEM

Every event in TradeOS emits a task. Every task routes to the human or AI that should handle it.

The Tasks engine is the cross-portal orchestration protocol of TradeOS. Eight kinds of events from every section of the platform fan in. Tasks fan out to four destinations — the three portals plus Atlas itself. There's no separate workflow engine; this is the workflow engine.

TASKS ENGINE142 active6 statuses · 9 categories6 entity typesEVENTS IN ▶📦 Order status change→ confirmed · in_production · shipped🏭 QC inspection complete→ rework decision · acceptance🚢 Shipment delay→ ETA recalc · client comms💰 Invoice overdue→ chase · reconcile🧪 Sample evaluated→ feedback · next-step⚠ Claim filed→ investigate · respond📄 Document uploaded→ verify · file · acknowledge💬 Message flagged→ created from selected text◀ TASKS OUTOperator portal/tasks · full visibility142 tasksClient portal/todo · scoped to client12 tasksSupplier portal/tasks · scoped to supplier18 tasksAtlas AIcreates & consumes tasksaction surface
Eight event sources fan in. Four destinations fan out. The Tasks engine is the cross-portal orchestration protocol.

01

One data model, three portals

The same TasksPage component renders in operator, client, and supplier portals — only the API prefix changes (/api/tasks · /api/portal/client/tasks · /api/portal/supplier/tasks). Same 6 statuses, same 4 priorities, same activity stream. A task created on the operator side is the same row the supplier sees in their portal.

02

Events emit tasks; tasks don't escape events

When an entity changes state (order goes to in_production, inspection results post, an invoice ages past its due date), the platform decides whether the event needs human attention. If yes, a task is created with the entity link inherited, category preset, and assignee suggested from the responsible-party history.

03

No separate workflow engine

Approvals are tasks (pending_approval status). Cross-team handoffs are tasks (reassigning the assignee). Waiting on a counterparty is a status (waiting_external). We didn't build a workflow engine on top of Tasks — Tasks IS the workflow engine.

SIX VIEWS · ONE TASK GRAPH

Six ways to look at the same task graph.

Same data, six layouts. Switch with one tab. The operator picks the view that matches the work — Board for status flow, My Day for personal focus, Gantt for delivery timelines, Calendar for due-date density.

01 · OVERVIEW

Status pie · category bar · overdue list · weekly throughput.

The control room: tasks by status (pie), tasks by category (bar), overdue action center, this-week upcoming, recent completed, weekly throughput chart, team workload distribution.

In Progress · 18
Waiting · 5
Approval · 2
Done · 34

02 · BOARD

Four-column Kanban · drag to transition status.

TO DO → IN PROGRESS → APPROVAL → DONE. Drag a card across columns to update its status; transitions go through the same service that handles status changes from anywhere else.

TO DO · 5
IN PROGRESS · 4
APPROVAL · 2
DONE · 34

03 · LIST

Tabular · sort · filter · bulk · inline checklist.

The dense view for working through a backlog. Sort by due date or priority, filter by category, bulk-update status or assignee, inline-edit checklist progress without opening the task panel.

TaskDueStatus
Review AQL failureApr 15IN PROGRESS
Submit SGS reportApr 16TO DO
Confirm cut-off bookingApr 17IN PROGRESS
Approve supplier MSAApr 17APPROVAL
Chase Tier-2 paymentApr 22TO DO

04 · MY DAY

Personal focus · Overdue · Due Today · No Due Date.

The operator's morning view. Three sections — overdue (red), due today (amber), no due date (grey). Priority flag per task. Goal of the screen: zero by end of day.

OVERDUE · 1
Review AQL inspection failure1d
DUE TODAY · 3
Confirm COSCO cut-off bookingtoday
Approve supplier MSAtoday
Draft EUR.1 certificatetoday

05 · GANTT

Timeline · bars span start to due · grouped by entity.

When the operator needs to see how tasks sequence against delivery dates. Bars span task start to due; status color-coded. Hover for entity context; click to open the task panel.

Review AQL
Submit SGS
Cut-off booking
EUR.1 cert
MSA approval

06 · CALENDAR

Month grid · density by due date.

Where the work falls across the month. Dots colored by priority. Useful for spotting clustering — too many "Friday" tasks, or a quiet week that could absorb a stretch assignment.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

ENTITY ANCHORING

Open any task and you're one click from the order, the lot, the shipment, or the invoice it's about.

Six polymorphic entity types — orders, shipments, production lots, clients, manufacturers, invoices. Every task carries a typed reference. Open the entity, see its task panel inline. Open the task, jump back to the entity with one click — plus the connected Messages thread alongside it.

📦
OrdersPO confirmations · amendments · split-shipment decisions · client approvals
42
🚢
ShipmentsBOL prep · customs · cut-off bookings · ETA recalc
28
🏭
Production lotsQC reviews · rework decisions · inspection scheduling · test reports
31
💰
Invoicespayment chase · reconciliation · disputes · balance follow-ups
19
👤
Clientsonboarding · requests · reviews · contract negotiations
14
🏭
Manufacturerscontract reviews · cert tracking · pricing · capacity coordination
8
TSK-2026-1147IN PROGRESSProduction & QC

Review AQL inspection failure · decide rework or reject

Entity🏭 PL-2026-067 · Crescent ManufacturingOpen production_lot →
Thread💬 PL-2026-067 thread · supplier · 4 messagesOpen messages →
AssigneeJames Chen · ops manager
DueApr 16 · Wednesday
PriorityURGENT
Custom fields17 types · text · number · date · checkbox · dropdown · files · people · ...
Connected entity card + thread surface in the right rail. One task; the full operational context one click away.

APPROVALS

Approvals are tasks. Not a separate engine.

When something needs sign-off — a contract redline, a sample dispatch, a budget overrun, a document version — the work moves to pending_approval (one of six statuses), surfaces in the approver's task list with everything else, and resolves via a normal status transition. Approval, rejection, and "needs changes" are status changes. The audit trail lives in the task's activity stream. No second inbox to check.

01

Submit for approval

Operator or counterparty completes work in in_progress and clicks "Submit for approval" — task moves to pending_approval.

02

Lands in approver's inbox

The approver sees the task in their list filtered to APPROVAL. They open it, review the deliverable + activity stream + entity context.

03

Approve · reject · request changes

Status transitions to completed (approve), cancelled (reject), or back to in_progress (changes). Every decision is logged with timestamp + reason in the activity stream.

Real approval flows that ride on the Tasks engine, today:

  • Supplier MSA approvalsupplier submits contract redline; operator approves or requests changes; status moves to completed on sign-off.
  • Sample dispatch approvalclient requests sample; operator approves dispatch; supplier executes; sample moves to evaluated.
  • Split-shipment approvaloperator proposes split; client approves the plan; shipment is created with the approved allocation.
  • Document version approvalcounterparty uploads a new version of a certificate or compliance doc; operator reviews and approves the version as the active one.
  • Budget overrun approvaloperator submits an order exceeding the client's stated ceiling; client approves the overrun before the order locks.

ATLAS · ACTION SURFACE

When Atlas detects a signal, it creates a task — with context attached. AI accountable for the work it surfaces.

Most AI tools post chat messages. Chat messages scroll away. TradeOS Atlas creates tasks when it detects something needing human judgment, with the context attached and an assignee suggested. That makes Atlas's signal measurable: did the task close on time? Did it close at all? An unanswered Atlas-created task is a signal as strong as the task itself.

DETECT

Atlas observes a signal

From order data, production data, finance data, messages, document arrivals, counterparty behavior. Examples: a counterparty going quiet on an active thread, a document expiring in 14 days, an invoice aging past its category-typical resolution time, a margin slipping below threshold on a live order.

CREATE

Atlas creates a task

The task carries the signal as its title and description, the relevant entity as its anchor, a suggested assignee pulled from the responsible-party history, and the source data attached as supporting context. The category, priority, and entity link are inherited — no operator typing required.

RESOLVE

Operator acts; Atlas observes

The operator works the task like any other — moves through statuses, posts comments, attaches documents, transitions to completed. Atlas observes the close and learns: did the signal lead to action? How long did it take? Was the resolution direction reasonable? That feedback closes the loop.

Example · Atlas-created task in an operator's list:

TSK-2026-1183CREATED BY ATLASTO DO
Crescent Manufacturing has not posted to PL-2026-071 thread in 38h — reach out

Attached context:

  • Last message: Apr 12 · 14:18 KL · supplier · "First lot 80% complete, QC inspection scheduled Tuesday morning"
  • Thread baseline: counterparty median response 4h 22m · current gap 38h is 9× baseline
  • Active scheduled inspection: AQL 2.5 · Tuesday April 15
  • Last 3 similar gaps with Crescent: 2 ended in test-report delays · 1 ended in lot rework
📦 PL-2026-071Category: ManufacturersSuggested assignee: James ChenPriority: high

Atlas writes the imperative title, attaches what it observed, suggests an assignee. The operator acts; the close is observed; the loop closes.

VS. ALTERNATIVES

Where Tasks fits versus the general-purpose task tools.

CapabilityTradeOSLinearAsanaClickUpMonday
Entity-linked tasks (orders / shipments / lots / invoices / clients / suppliers)✓ polymorphic · 6 types
Same data model exposed in client + supplier portals✓ 3 portals · same modelguest seatsguest seatsguest seats
Approvals on the same engine (not a separate feature)✓ pending_approval statusapproval add-onworkflowsapproval app
Auto-created from platform events (status change · QC complete · invoice overdue)✓ nativeintegrationsautomationsautomations
Tasks from chat (selection toolbar in Messages → task)
AI agent creates tasks with attached context (not chat messages)✓ AtlasAI summariesAI assistAI assistAI assist
Six views (overview · board · list · my day · gantt · calendar)board · list
17 custom-field types (text / number / date / dropdown / files / people / ...)labels + estimate

This isn't a knock on Linear, Asana, ClickUp, or Monday. Linear is excellent at velocity in product engineering. Asana is excellent at project management with workflows and dependencies. ClickUp and Monday are excellent generalist task tools for teams that need workload visibility. Each was built for general work. TradeOS Tasks is built for the task a trade operator actually owns — anchored to a production lot or an invoice or a shipment, shared across operator + client + supplier portals with the same data model, and auto-created when the platform itself detects something needing attention.

FAQ

Frequently asked questions

The five questions operations leads ask first when they evaluate Tasks against Asana or Linear.

Asana, Linear, and ClickUp are excellent general-purpose task tools — and that's the limit. None of them know what a production lot is, what a shipment manifest looks like, what counts as a QC failure on AQL 2.5, or which counterparty owns the next step. Their tasks live in their own database; the order lives in yours; the conversation lives in a third tool. TradeOS Tasks share the same data model as the orders, shipments, production lots, invoices, claims, and samples they're about — because they're stored in the same database. Open a task; the entity is one click away. Open the entity; its tasks are right there. No external integration, no double entry, no broken links.

Bring us one week of your operations exceptions. We'll show you what they look like as tasks routed to the right portal.

Send us your last week of alerts, exception notes, supplier follow-ups, approval requests — whatever lives outside your software today. We'll show you how those rows enter TradeOS as tasks, anchored to the order or lot they're about, routed to operator / client / supplier / Atlas as appropriate. No demo data. Your exceptions.

Book a demoTalk to sales

See pricing →

Tasks · the nervous system of TradeOS