Guide contents
Watch mode

Watch mode: the offload station

Watch mode turns IngestDeck from a tool you operate into a station that operates itself: you describe the job once — destination, verification, proxies — and from then on inserting a card and dropping it on the app starts its offload. This chapter covers the whole model: waiting jobs, drop-to-start, the re-arm loop, and armed Advanced tabs.

Naming: the auto-run button is labelled Watch in Simple mode and Arm in Advanced mode. Same idea, two surfaces: a watched Simple queue waits for sources; an armed Advanced tab waits for its Source nodes.

Watch in Simple mode

1. The waiting job (a job with an empty source slot)

Build a job the usual way — drop a destination, choose Copy / Convert / Verify — but leave Sources empty. The commit pill under the editor changes from Add to queue to Add waiting job. Commit it and you have a waiting job in the queue: a fully-configured offload that just doesn't know its card yet.

  • A waiting job cannot be started by the Run button. Manual Run skips it with the note "no source yet (use Watch to wait for one)" and moves on to jobs that do have sources.
  • While the app is idle you can still edit it: click its row to load it into the editor, change the destination or toggles, drop a source onto it in advance — the pill reads Save changes.
  • You can queue several waiting jobs — one per destination preset. Each waits for its own drop.

2. Press Watch

Press Watch in the top bar. The queue arms and the workspace changes shape:

  • The center locks into a compact, read-only Source → Destination pipeline card showing the armed job — its destination, and the actions it will run (the arrow is labelled, e.g. Copy + Verify).
  • The empty source slot renders as a single dashed drop zone — the feed slot. That's where cards land.
  • The waiting job's row in the queue shows "Drop a source to start".
IngestDeck watching — the armed station: a dashed feed slot waiting for a card, the Copy + Verify pipeline, and the waiting job in the queue.
The armed station: the editor locked into its pipeline card, the dashed feed slot waiting, and the queue's Drop a source to start row. The top bar shows Watching with a Stop button.

3. Drop a card — it starts

Drop a source onto the feed slot (or straight onto the waiting job's row): a whole disk from the Disks rail, a folder inside it, a single file, or a folder dragged in from the Finder. The copy starts immediately — preflight, copy, verify, exactly as if you had pressed Run.

  • Role gating still applies while armed: only source-role (or unassigned) items are accepted; a destination-role disk bounces with a toast.
  • Multiple sources at once — drop two cards together (or one after the other before the run starts) and they all belong to that run, reading in parallel lanes, each landing in its own folder at the destination.
  • Every drop lands in the card's own folder at the destination — and nothing is ever overwritten: dropping a same-named card again merges into its folder, with colliding files kept under numbered names.

4. The re-arm loop

This is what makes it a station. When the watched job finishes:

  1. The job archives its result

    The finished run moves to the Finished section of the queue with its full browsable result — and to the global History.

  2. The source slot empties itself

    The same job returns to waiting — same destination, same actions, source slot empty, status back to "Drop a source to start".

  3. The station is ready for the next card

    Drop the next card and the loop repeats. Drop a card while a copy is still running and it stacks up behind it — jobs process strictly one at a time, top to bottom, so a fast loader can keep feeding cards without waiting.

5. Stopping the watch

  • Disarm by pressing Watch again. If a copy is mid-flight this is a stop: the current file's partial write is removed, everything already copied stays (IngestDeck never rolls back), and the queue returns to idle with pending jobs intact.
  • Watch does not survive an app restart. The armed state is session-only — after relaunching, press Watch again. (Advanced tabs themselves persist; the armed flag doesn't.)

Arm in Advanced mode

Advanced watch works per tab: each tab (project) arms independently, so one Mac can run several stations at once — A-cam graph in one tab, sound cards in another, both armed.

  • Arm the active tab with the Arm button. Flows whose Source nodes already have selections are validated as usual; flows whose Source nodes are empty don't block — they show a calm waiting for source state instead of an error. (Genuine configuration errors in a ready flow still block arming, with the diagnostics popover explaining what to fix.)
  • Drop on the Source node starts the run. Each Source node card carries the same dashed drop zone as Simple's feed slot. Drop a card onto an armed tab's Source node and the whole graph runs — copies, verify add-ons, converts, ejects, everything wired downstream.
  • Source entries queue up. A Source node holds an ordered list of entries (disks, folders, files). Reorder them with the grip handle in the node's detail panel; when the run starts, each Source node's entries are read as that node's lane.
  • Parallel armed tabs. Tabs run independently — a drop in tab A doesn't wait for tab B's copy. Progress for each shows on its own tab and in the iOS monitor.
  • Disarm a tab with Arm again — same stop semantics as Simple.
source(waiting for card) copyBackup ×2 + Verify + ASC-MHL ejectthe card
An armed Advanced station: the Source waits empty. Every card dropped on it gets copied to two disks, verified, signed, and ejected — ready to hand back to the loader. The tab stays armed for the next card.

A real shoot day on Watch

How a DIT actually uses this, start to finish:

  1. Morning setup — 2 minutes

    Open the production's template in an Advanced tab (destinations re-bind by dragging today's disks on — see templates). Or in Simple: build one waiting job — RAID as destination, Verify on, ASC-MHL report on. Press Arm / Watch.

  2. All day — zero clicks

    Cards come in from set. Insert card, drag it onto the feed slot, hand the empty reader back. The run starts itself; the loader watches progress on the iPhone monitor; the card ejects itself when its copy is verified (Advanced, with an Eject node). Cards stack politely if they arrive faster than the RAID writes.

  3. Wrap — proof in hand

    Every roll is in the Finished list and the global History with per-file verification, ASC-MHL manifests next to the media, and a PDF report per run folder if the graph writes one. Wipe cards with confidence.

Watch ≠ auto-start on mount. Inserting a card never starts a copy by itself — a human always makes the drop. That's deliberate: the drop is the confirmation that this card is production media, not a passer-by's pocket drive.