SCHEDULE · HAND OFF · VERIFY

Collaborative tasks: worker limits and shared results

Run six local transformations. Watch dependency gates, worker assignments, retries and the exact artifacts produced.

Finite DAG · actual local artifacts

Scroll the dependency board horizontally to inspect every task. The task selector below provides the same states and artifacts as text.

Input and task inspection

Your experiment

Use one worker to serialize ready work, then two to overlap independent tasks. Compare artifacts and timings: concurrency should change scheduling, not the answer.

Load takes 2s, filtering 4s, joining 3s and verification 5s. Branch durations are adjustable. Default parallel execution with two workers takes 26 modeled seconds; serial execution or one worker takes 34. Use 0.5× for a slower inspection.

Load → filter → sum/histogram → join → verify. The filter retains values at least as large as the chosen threshold. Sum produces count/total; histogram produces actual bins. Verification recomputes count and weighted sum from the bins. A verified result exists only if they agree.

Scheduler events

Offline deterministic dependency scheduler, not an A2A/ADK protocol implementation, Java coroutine runtime, Airflow/Dagster service or LLM agent. All transformations execute locally without arbitrary code, external tools or network calls. Task durations are fixed teaching inputs independent of input length. Ready tasks take free worker slots in the displayed task order. A failed attempt commits no artifact; retries wait the chosen fixed delay. Exhausted failure blocks descendants, or cancels unfinished work under fail-fast. Tasks completing exactly at the deadline succeed before cancellation of unfinished tasks. No scheduling overhead, durable checkpoint, distributed race, compensation, network latency or persistent resume is modeled. Workflow concepts · DAG dependencies.

Coordinate through explicit artifacts

This collaboration exercise uses two deterministic computations over the same filtered input. The sum branch produces count and total; histogram produces value-frequency bins. Join combines them and verification independently reconstructs count and total from the bins. With defaults the result is five retained values totaling fourteen, regardless of which branch finishes first. These tasks share a contract, not a chat history. They do not generate language, select an agent dynamically or resolve conflicting opinions. Use the inspection selector to identify which artifact each downstream task actually requires.

Control data and dependencies

The JSON integer array is the actual input, limited to twenty-four integers between minus one thousand and one thousand. Minimum retained value keeps entries greater than or equal to that threshold; duplicates remain distinct observations. Branch dependency either lets histogram and sum start independently after filtering or makes histogram wait for sum. Worker slots limits simultaneous tasks to one or two. Sum duration and Histogram duration specify invented service seconds independent of input size. Load, filter, join and verify take two, four, three and five modeled seconds respectively. These are teaching inputs, not measurements of Java, Dagster or an LLM.

Test capacity and partial failure separately

Compare one worker with two under independent branches: the default makespan falls from thirty-four to twenty-six modeled seconds, while the accepted result remains identical. Then inject an always-failing sum task and set maximum attempts to one. Finish independent work allows histogram to complete at eighteen while join and verification are blocked. Cancel unfinished work stops histogram at fourteen, when sum exhausts its attempt. Neither policy returns a verified result. Finally remove the injected failure and enable the extra-zero corruption: verification detects disagreement despite both branches having completed. Finishing all upstream computations is necessary but insufficient for a trustworthy combined result.

Separate attempt failure from workflow failure

Open Failure and retry controls. Injected failure task chooses sum, histogram, join, or no injected failure. Failure behavior chooses the first attempt or every attempt. Maximum attempts includes the original attempt; one means no retry. Retry delay is a fixed wait after a failed attempt, during which its worker is free. Exhausted failure policy either finishes independent work while blocking descendants or cancels unfinished work immediately. Disabled controls have no effect on the current scenario. Inject one extra zero into histogram counts produces inconsistent artifacts: the weighted sum stays unchanged but the count increases, so verification rejects the result. Retries cannot repair that deterministic corruption.

Inspect states, artifacts and time

Play and Pause inspect the generated schedule over sixty viewing seconds. Next event advances to the next scheduler state; Restart rewinds without changing inputs; Speed changes the inspection pace, while Modeled time scrubs the schedule and pauses playback. Editing inputs rebuilds the scenario and starts inspection unless reduced motion is requested. Inspect task selects a node, as does clicking its card. The text below reports dependencies, attempt, worker, error and committed artifact, providing an alternative to the diagram. A running task has no committed output. Final preview describes the eventual outcome even when the board still shows an earlier state.

Use a bounded local contract

Workflow deadline cancels unfinished tasks, but completions exactly at the deadline are processed first. With default inputs a deadline of twenty-six permits verification and twenty-five cancels it. Every transformation is executed locally in memory; there is no persisted checkpoint, distributed worker, remote tool, external side effect or production benchmark. The ready-task order is fixed by the displayed graph. Dependency edges express this fixture policy; they do not implement an ADK agent conversation or the complete Dagster asset system. A verified result proves only that this local histogram and sum agree on count and weighted total.

Views are my own and do not represent any employer, past or present.

Search