Recued
Menu
← Back to recipes

Reclaim a closed job

by recued-core v4 41 views

Use “Reclaim a closed job” in Recued. Changes remain behind Recued's approval controls.

Complete workflow

Job Status Board 9 pinned recipes

Use Job Status Board in Recued for reception, intake, records, and local first. It includes 12 built-in actions and 7 ready-to-run workflows. Actions that change data use Recued's approval controls.

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

Reclaim a closed job
This recipe

Use “Reclaim a closed job” in Recued. Changes remain behind Recued's approval controls.

pack:job-status-boardrecordscleanupretention
by recued-core pinned v4

Use “Open a job from an intake response” in Recued. Turns one accepted Reception response into one deterministic Records job and one deterministic opened event. Retrying after either create boundary converges on the same two rows; visitor text stays in PII-labelled owner-local fields.

pack:job-status-boardrecordsintakejob
by recued-core pinned v5

Use “Attach a status page to a job” in Recued. Reads one Records job and CAS-upserts the owner-minted status URL without changing its other fields.

pack:job-status-boardrecordsstatus-pagejob
by recued-core pinned v6

Use “Advance a job stage” in Recued. CAS-updates one Records job and then convergently creates the progress event watched by the notification recipe. Two actors holding the same revision cannot both win.

pack:job-status-boardrecordsstatuscas
by recued-core pinned v7

Use “List the job board” in Recued. Searches Records by status, sorts by latest update, counts the exact result set, re-reads the page with getmany, and renders detail actions. The board pages through the result set and re-filters in place from its own declared variables.

pack:job-status-boardrecordsboardsearch
by recued-core pinned v5

Use “List reclaimable jobs” in Recued. It provides a read-only view of archived jobs, oldest touched first, with how long each has been sitting and a per-row reclaim action.

pack:job-status-boardrecordscleanupretention
by recued-core pinned v2
Show all 9 recipes

Use “Close a job” in Recued. CAS-closes one Records job, archives it from the active board, and creates one deterministic close event for the notification watcher.

pack:job-status-boardrecordsclosejob
by recued-core pinned v6
Notify a customer about job progress
Background automation

Use “Notify a customer about job progress” in Recued. Records watcher for committed jobevent rows. It re-reads the pointer by id and uses the durable event id as the mail reconciliation key, so delivery retries converge without claiming provider-level exactly once.

pack:job-status-boardrecordswatchernotification
by recued-core pinned v2
View pack details, dependencies, and permissions →

Reclaiming is deleting

Clears a closed job's progress-event trail and then removes the job row, so it stops counting against your board. The events go first: an event trail pointing at a job that no longer exists is worse than either outcome, and this order means a half-run leaves the job visibly present to run again.

It needs FULL access at install

⛔ This recipe is DENIED if the pack was installed with write access — pick all. It deletes (job.delete, job_event.delete), and deleting is classed destructive, which write does not grant.

⚠ The refusal is operation_not_granted at the gateway, before the recipe's first step runs — so nothing here can catch it and tell you. That is why it is written where someone chooses the scope.

⚠ The name does not say "delete", but that is what it does. Reclaiming a job is not archiving it: the row and its history are gone afterwards.

How it works 18 steps

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

Data fetch
▼ job recued-core.job-status-board.job.get
Get job on job status board
▼
Process (17 steps)
■ job_ref template
Generate text from a template
◆ children recued-core.job-status-board.job.search
Search job on job status board
■ child_count count
Count items in children records
■ is_archived compare
Check if job record archived equals true
■ has_no_children compare
Check if child count equals 0
■ safe_to_reclaim all
Check if all conditions are true
⚠ reclaim_guard guard
Stop if safe to reclaim equals
◆ events recued-core.job-status-board.job_event.search
Search job event on job status board
■ event_count count
Count items in events records
◆ delete_events recued-core.job-status-board.job_event.delete
Delete job event on job status board
◆ remaining recued-core.job-status-board.job_event.search
Search job event on job status board
■ remaining_count count
Count items in remaining records
■ trail_cleared compare
Check if remaining count equals 0
◆ delete_job recued-core.job-status-board.job.delete
Delete job on job status board
skip: step.trail_cleared equal false
■ outcome ternary
Apply ternary
■ job_removed default
Apply default
■ card to_summary
Format results as a summary card
▼
Output
summary card
json delete_events
Settings 2 configurable

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

job id setting = [object Object]
event page limit setting = 100

Uses (5 operations)

Pack operation Get job on job status board recued-core.job-status-board.job.get
Pack operation Search job on job status board recued-core.job-status-board.job.search
Pack operation Search job event on job status board recued-core.job-status-board.job_event.search
Pack operation Delete job event on job status board recued-core.job-status-board.job_event.delete
Pack operation Delete job on job status board recued-core.job-status-board.job.delete

Trust & control

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

What it's allowed to do

Destructive Pack Job Status Board external change
Read: job.get · No approvalRead: job.search · No approvalRead: job_event.search · No approvalDestructive: job_event.delete · Always asksDestructive: job.delete · Always asks

About

Tags

pack:job-status-boardrecordscleanupretentionquota

Details

18 steps 2 configurable settings recipe_id: reclaim-closed-job