Recued
Menu
← Back to recipes

Peer: my federated day

by recued-core v2 8 views

Use “Peer: my federated day” in Recued. It uses the connections and settings you choose when you run it.

Complete workflow

Federated Projects 22 pinned recipes

Use Federated Projects in Recued for project management, federation, records, and work entity. It includes 46 actions and 14 ready-to-run workflows. Actions that change data use Recued's approval controls. Setup: add your peer's Recued server as a connection, choose it at install, then set two values on it. project_ref is the project you share with them. peer_contract_id is the inbound token you minted for them, not one you hold. Without it this pack accepts their updates but cannot reply.

You are viewing one recipe in this workflow. Installing it opens the complete pack so its other recipes and background automations arrive together.

Peer: my federated day
This recipe Background automation

Use “Peer: my federated day” in Recued. It uses the connections and settings you choose when you run it.

pack:federated-projectsfederated-projectpeer-receiverread
by recued-core pinned v2

Use “Initialize a federated project” in Recued. Creates the authoritative project and atomically seeds federation policy, the owner participant, invitation evidence, and a four-state workflow.

pack:federated-projectsfederated-projectbootstrapnative-project
by recued-core pinned v2

Use “Federated project command board” in Recued. It provides a complete workspace with project and tasks plus participants, peers, workflow, effort tracking, dependencies across peers, filter controls, actions, and diagnostic details.

pack:federated-projectsfederated-projectboardlargest-recipe
by recued-core pinned v2

Use “Show a federated project” in Recued. Reads one project beside its pack-private federation record and peer inventory.

pack:federated-projectsfederated-projectdetail
by recued-core pinned v2

Use “Add a federated participant” in Recued. Records an accepted invitation and active Limited to the approved agreement participant in one Records batch.

pack:federated-projectsfederated-projectparticipantinvitation
by recued-core pinned v2

Use “Update a federated participant” in Recued. CAS-updates role, display label, task-assignee identity, and active status for one participant.

pack:federated-projectsfederated-projectparticipantcas
by recued-core pinned v2
Show all 22 recipes

Use “Register a federated peer” in Recued. Adds the local policy row that names a connected peer Source and its contract.

pack:federated-projectsfederated-projectpeersource
by recued-core pinned v2

Use “Define a federated workflow state” in Recued. Adds one deterministic allowed task state for a project.

pack:federated-projectsfederated-projectworkflowstate
by recued-core pinned v2

Use “Edit the federated workflow” in Recued. Loads the project workflow into an editable schema-derived grid and applies every submitted row atomically with Records CAS.

pack:federated-projectsfederated-projectworkfloweditable-table
by recued-core pinned v2

Use “Transition a federated task” in Recued. Validates the project-owned workflow vocabulary before changing native task state and progress.

pack:federated-projectsfederated-projecttaskworkflow
by recued-core pinned v2

Use “Log federated task effort” in Recued. Creates or CAS-updates the exact fixed-point effort row for one native task.

pack:federated-projectsfederated-projecteffortdecimal
by recued-core pinned v2

Use “Report federated project effort” in Recued. Aggregates exact estimates and actuals and shows the task-level rows behind the totals.

pack:federated-projectsfederated-projecteffortaggregate
by recued-core pinned v2

Use “Add a cross-node task dependency” in Recued. Stores the explicit string tuple that represents a dependency beyond the local reference namespace.

pack:federated-projectsfederated-projectdependencycross-node
by recued-core pinned v2

Use “Check cross-node dependencies” in Recued. Shows active remote pointers and the native tasks they can block; missing remote rows are never interpreted as deletion.

pack:federated-projectsfederated-projectdependencyhealth
by recued-core pinned v2

Use “Apply a peer's federated project update, then answer” in Recued. It carries out the named workflow using the connections and settings you choose. Changes remain behind Recued's approval controls.

pack:federated-projectsd-232federated-projectpeer-receiver
by recued-core pinned v3
Peer: list one federated project
Background automation

Use “Peer: list one federated project” in Recued. Limited to the approved agreement peer list. It returns an array only after participant authorization.

pack:federated-projectsfederated-projectpeer-receiverread
by recued-core pinned v2
Peer: read a federated project
Background automation

Use “Peer: read a federated project” in Recued. Authorized peer read for exactly the configured project.

pack:federated-projectsfederated-projectpeer-receiverread
by recued-core pinned v2
Peer: update a federated project
Background automation

Use “Peer: update a federated project” in Recued. Limited to the approved agreement peer write for manager/owner/contributor roles.

pack:federated-projectsfederated-projectpeer-receiverwrite
by recued-core pinned v2
Peer: list federated tasks
Background automation

Use “Peer: list federated tasks” in Recued. Limited to the approved agreement peer list for tasks under one authoritative project.

pack:federated-projectsfederated-projectpeer-receiverread
by recued-core pinned v2
Peer: read a federated task
Background automation

Use “Peer: read a federated task” in Recued. Authorized peer read that verifies task parentage before rendering.

pack:federated-projectsfederated-projectpeer-receiverread
by recued-core pinned v2
Peer: update a federated task
Background automation

Use “Peer: update a federated task” in Recued. Limited to the approved agreement peer write that validates membership, task parentage, and optional workflow state before mutation.

pack:federated-projectsfederated-projectpeer-receiverwrite
by recued-core pinned v2
View pack details, dependencies, and permissions →

Security order is load-bearing: authorize the contract, resolve exactly one active participant, require its assigned_contact_id, validate two exact adjacent explicit-offset local midnights with an exact 23–25 hour instant span, and only then read project tasks. The result contains assigned open tasks only and projects dependency Records onto an explicit safe shape. For each configured federated project, finish dependency_page.next_cursor for the current task page, then continue from task_page.next_offset; do not claim completeness until both has_more values are false.

How it works 90 steps

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

Process (90 steps)
require_contract template
Generate text from a template
fail: context.caller.contract_id is_null
project_ref trim
Trim whitespace from setting project ref
project_required template
Generate text from a template
fail: step.project_ref is_empty
participant_lookup ?
participant_rows default
Apply default
participant_count count
Count items in participant rows
one_participant template
Generate text from a template
fail: step.participant_count not_equal 1
participant default
Apply default
role_allowed compare
Check if participant role is one of observer,contributor,manager,owner
role_guard template
Generate text from a template
fail: step.role_allowed equal false
assigned_contact_input trim
Trim whitespace from participant assigned contact id
assigned_contact_id lowercase
Convert assigned contact input to lowercase
assignment_required template
Generate text from a template
fail: step.assigned_contact_id is_empty
scope_allowed compare
Check if setting scope is one of today,all_open
scope_guard template
Generate text from a template
fail: step.scope_allowed equal false
day_start_ms date_parse
Parse setting day start at as a date
day_start_required template
Generate text from a template
fail: step.day_start_ms is_null
day_end_ms date_parse
Parse setting day end at as a date
day_end_required template
Generate text from a template
fail: step.day_end_ms is_null
day_start_text lowercase
Convert setting day start at to lowercase
day_end_text lowercase
Convert setting day end at to lowercase
day_start_parts split
Split day start text into parts
day_end_parts split
Split day end text into parts
day_start_clock split
Split day start parts 1 into parts
day_end_clock split
Split day end parts 1 into parts
day_start_second truncate
Truncate day start clock 2 to a max length
day_end_second truncate
Truncate day end clock 2 to a max length
day_start_hour_ok compare
Check if day start clock 0 equals 00
day_start_minute_ok compare
Check if day start clock 1 equals 00
day_start_second_ok compare
Check if day start second equals 00
day_start_minute_remainder math
Calculate: {{step.day_start_ms}} % 60000
day_start_millisecond_ok compare
Check if day start minute remainder equals 0
day_start_midnight all
Check if all conditions are true
day_start_midnight_guard template
Generate text from a template
fail: step.day_start_midnight equal false
day_end_hour_ok compare
Check if day end clock 0 equals 00
day_end_minute_ok compare
Check if day end clock 1 equals 00
day_end_second_ok compare
Check if day end second equals 00
day_end_minute_remainder math
Calculate: {{step.day_end_ms}} % 60000
day_end_millisecond_ok compare
Check if day end minute remainder equals 0
day_end_midnight all
Check if all conditions are true
day_end_midnight_guard template
Generate text from a template
fail: step.day_end_midnight equal false
local_date_span_days date_diff
Calculate days between day start parts 0 and day end parts 0
local_date_span_valid compare
Check if local date span days equals 1
local_date_guard template
Generate text from a template
fail: step.local_date_span_valid equal false
window_ms math
Calculate: {{step.day_end_ms}} - {{step.day_start_ms}}
window_min_ok compare
Check if window ms is at least 82800000
window_max_ok compare
Check if window ms is at most 90000000
window_valid all
Check if all conditions are true
window_guard template
Generate text from a template
fail: step.window_valid equal false
cap_clamped clamp
Clamp setting limit between 1 and 100
cap round
Round cap clamped to 0 decimal places
offset_clamped clamp
Clamp setting offset between 0 and 1000000
offset round
Round offset clamped to 0 decimal places
tasks ?
task_rows default
Apply default
task_rows_with_trimmed_assignment map
Extract assigned_contact_id from each item
task_rows_with_assignment map
Extract assignment_trimmed from each item
assigned_tasks filter
Filter by condition
open_assigned_tasks filter
Filter by condition
dated_open_tasks filter
Filter by condition
overdue_tasks filter
Filter by condition
due_today_or_later filter
Filter by condition
due_today_tasks filter
Filter by condition
overdue_sorted sort
Sort by
due_today_sorted sort
Sort by
all_open_sorted sort
Sort by
today_tasks flatten
Flatten nested lists in
show_all_open compare
Check if setting scope equals all_open
agenda_source ternary
Apply ternary
agenda_tasks map
Extract from each item
agenda_count count
Count items in agenda tasks
agenda_task_ids pluck
Extract id from each item
dependencies ?
skip: step.agenda_count equal 0
dependency_rows default
Apply default
agenda_dependencies map
Extract from each item
page_scanned count
Count items in task rows
page_end math
Calculate: {{step.offset}} + {{step.page_scanned}}
has_more compare
Check if page end is less than tasks total
next_offset ternary
Apply ternary
dependency_page_scanned count
Count items in dependency rows
dependency_next_cursor default
Apply default
dependency_has_more compare
Check if dependency next cursor has data
open_assigned_count count
Count items in open assigned tasks
overdue_count count
Count items in overdue tasks
due_today_count count
Count items in due today tasks
blocking_count count
Count items in agenda dependencies
payload default
Apply default
card to_summary
Format results as a summary card
agenda_table to_table
Format results as a data table
health to_checklist
Format results as an actionable checklist
Settings 7 configurable

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

limit setting = 100
scope setting = [object Object]
offset setting = 0
day end at setting = [object Object]
project ref setting = [object Object]
day start at setting = [object Object]
dependency cursor setting =

About

Tags

pack:federated-projectsfederated-projectpeer-receiverreadmy-taskstodaydaily-agendapersonaloverdueassignee

Details

90 steps 7 configurable settings recipe_id: peer-my-federated-day