The node contracts
Each node carries a contract — what comes in, what happens, what goes out. This is the text your AI receives, node for node, when you hand the graph over.
Meeting notes arrive Input
Entry point. The raw material: a transcript, typed notes, or both — plus the attendee list with roles and the meeting date. The attendee list matters: it is the reference for resolving names like "Alex" to an actual person, and nobody outside it may end up owning a task.
- → leads to Clean the transcript
Clean the transcript
Remove filler, small talk and transcription artefacts; attribute every remaining statement to a speaker from the attendee list. Do not summarise yet and do not drop anything that sounds like a commitment, however casually phrased — "I can take a look at that" survives this step. Output is a cleaned, attributed transcript.
- → leads to Extract decisions
- → leads to Extract action items
- ← comes from Meeting notes arrive
Extract decisions
Pull out what was decided: statements that change what is true, not what someone will do. Each decision gets one sentence in neutral wording plus who confirmed it. Open questions explicitly parked in the meeting are collected here too, marked as open — they are context for the record, never tasks.
- → leads to Merge & deduplicate
- ← comes from Clean the transcript
Extract action items
Pull out every commitment to do something: explicit assignments and casual ones alike. For each, capture the verb phrase as stated, the likely owner as named in the conversation, and any date mentioned. Do not infer deadlines that were not said — a task without a date is honest, an invented date is a trap.
- → leads to Owner clear?
- ← comes from Clean the transcript
Owner clear? Decision
For each action item: can the owner be resolved against the attendee list without doubt? A first name that matches exactly one attendee is clear; "someone should", a name matching two people, or a person not in the meeting is not. The branches are exclusive — clear owners move on, everything else goes to clarification. No guessing, ever.
- → leads to Merge & deduplicate — owner resolves to one attendee
- → leads to Ask the organiser — ambiguous or absent owner
- ← comes from Extract action items
Ask the organiser
One message to the meeting organiser listing the unclear items, each with the transcript quote and a direct question: who owns this, and is it actually a task? Items confirmed with an owner rejoin the flow; items the organiser drops are recorded as dropped — silently deleting them is how "I thought you had that" happens.
- → leads to Merge & deduplicate — confirmed with owner
- ← comes from Owner clear? — ambiguous or absent owner
Merge & deduplicate Merge
Join the decision stream and the resolved task stream into one record. Merge tasks that describe the same work in different words — same owner and same outcome means same task, keep the more specific phrasing. Link each task to the decision it serves where one exists; a task serving no decision gets flagged for the check.
- → leads to Faithful to the meeting?
- ← comes from Owner clear? — owner resolves to one attendee
- ← comes from Ask the organiser — confirmed with owner
- ← comes from Extract decisions
- ← comes from Faithful to the meeting? — item fails → fix (max 1)
Faithful to the meeting? Evaluator
Check the merged list against the cleaned transcript: every task traces to a spoken commitment, every owner is on the attendee list, no date appears that was not said, and no commitment from the transcript is missing from the list. Any failure → back to merge with the specific item named, at most one round; a second failure means the notes are too ambiguous, and the list goes to the organiser marked as draft instead of being posted as fact.
- → leads to Tasks on the board — list is faithful
- → leads to Merge & deduplicate — item fails → fix (max 1)
- ← comes from Merge & deduplicate
Tasks on the board Output
The result: tasks created in the team's task tool — owner, due date where one was stated, and a link back to the meeting record with its decisions. The meeting record itself is posted to the channel where attendees will see it. Done means findable, not just written down.
- ← comes from Faithful to the meeting? — list is faithful