Skip to content
Recued
Menu
← Back to recipes

Propose commitments from follow-up replies

by recued-core v1

Detection half of the commitment conversion edge for the outbound follow-up loop. It scans data.shared watch rows written by outbound-follow-up-response-watcher, picks one response_needs_owner row with a reply that may contain a promise, fetches the reply body, extracts one concrete commitment, and writes a durable proposal plus a notification. It never creates the commitment itself: the owner-invoked outbound-follow-up-create-approved-commitment recipe performs the write, links the commitment back to mail, and records the conversion. This keeps unattended auto_run detection read/propose-only while preserving the exact reply linkage needed by the manual action.

How it works 54 steps

Inspect the data fetches, transforms, gates, and output this recipe runs.

Data fetch
shared_followups ?
existing_proposals ?
Process (52 steps)
existing_proposals_family filter
Filter by condition
response_needed_rows filter
Filter by condition
commitment_candidate_rows filter
Filter by condition
already_committed_rows filter
Filter by condition
already_committed_keys map
Extract from each item
uncommitted_rows filter
Filter by condition
proposed_thread_ids map
Extract from each item
rows_without_proposal filter
Filter by condition
candidate_rows slice
Take a subset of
pending_count count
Count items in rows without proposal
has_candidate compare
Check if candidate rows has data
candidate_key default
Apply default
thread_id default
Apply default
thread_key default
Apply default
proposal_key default
Apply default
response_record_id default
Apply default
response_mail_slug default
Apply default
response_subject default
Apply default
response_from default
Apply default
prior_mail_record_id default
Apply default
response_category default
Apply default
response_reasoning default
Apply default
owner_action default
Apply default
has_response_record compare
Check if response record id has data
has_response_mail_slug compare
Check if response mail slug has data
skip_body_read any
Check if any of the conditions are true
body_read ?
skip: step.skip_body_read equal true
response_body default
Apply default
body_present compare
Check if response body has data
now_iso date_add
Add 0 minutes to
skip_extract any
Check if any of the conditions are true
protect pii-protect
Apply pii-protect
extract_commitment ?
skip: step.skip_extract equal true
restore_commitment pii-restore
Apply pii-restore
commitment_statement_raw default
Apply default
commitment_statement trim
Trim whitespace from commitment statement raw
raw_direction default
Apply default
direction_is_outbound compare
Check if raw direction equals outbound
direction_is_internal compare
Check if raw direction equals internal
internal_or_inbound ternary
Apply ternary
commitment_direction ternary
Apply ternary
counterparty_email_raw default
Apply default
counterparty_email trim
Trim whitespace from counterparty email raw
promised_for_at date_parse
Parse restore commitment restored promised for at iso as a date
extraction_confidence default
Apply default
missing_statement compare
Check if commitment statement is empty
below_confidence compare
Check if extraction confidence is less than setting confidence threshold
skip_propose any
Check if any of the conditions are true
write_proposal ?
skip: step.skip_propose equal true
skip_notify any
Check if any of the conditions are true
notify ?
skip: step.skip_notify equal true
card to_summary
Format results as a summary card
Settings 2 configurable

Configurable at install. Defaults shown — change them anytime in Recued.

channels setting = in_app
confidence threshold setting = 0.65

Trust & control

What installing this recipe would let it do. Recued grants these permissions at install — review them there before approving.

Where it runs

Device + server Runs on your device (browser) or your server.

Permissions it requires

Send notifications
Declared by the recipe — Recued grants these at install, where you review them before approving.

Data it touches

Warehousedata.shared

About

Tags

emailmailcommitmentfollowupconversionproposeclosed-loopwork-queueone-person-companystate:outbound-follow-up-response-watcherpack:outbound-follow-up-responseai_surface

Details

54 steps 2 configurable settings recipe_id: outbound-follow-up-commitment-from-reply