Skip to content

feat(DEN-1444): land native schema-v2 task runtime on current main - #169

Merged
ORESoftware merged 29 commits into
mainfrom
agent/den-1444-native-task-product
Aug 4, 2026
Merged

feat(DEN-1444): land native schema-v2 task runtime on current main#169
ORESoftware merged 29 commits into
mainfrom
agent/den-1444-native-task-product

Conversation

@ORESoftware

@ORESoftwareORESoftware commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Scope

Replaces stale draft #148 and materializer-only #164 with an ordinary current-main product branch for the first manager-neutral schema-v2 task runtime.

Exact product head

3452a2faaebbc9e0f74f71c98110f06fb94f09ad

This head is tree-identical to finalized source commit 1db694684ad479112390aa10e62c1d4014f375f3. The additional commit is an app-authored attestation so normal pull-request workflows run against the exact final tree rather than remaining action_required on the bot-authored self-removal commit.

The foundational semantic merge preserves:

  1. exact main at 0c1931bcdc2065279aea06abe9d66a0eb9e03315; and
  2. the fully reviewed task-runtime history at 38c2acfd42968d5ba21c65f5e1a42bcad5928d82.

Current main has not advanced beyond that merge base. The final branch is mergeable and contains exactly seven ordinary product paths.

Exact seven-file delta

  • .github/workflows/task-runtime.yml
  • .task-cli-flags.toml
  • docs/task-runtime.md
  • src/bin/zed-task.rs
  • src/lib.rs
  • src/task_runtime.rs
  • tests/task_runtime_cli.rs

No temporary finalizer, trigger, branch-writing workflow, or materialization script remains.

Commands

zed-task [--plan zed-env.toml] list [--all]zed-task [--plan zed-env.toml] info <task>zed-task [--plan zed-env.toml] graph <task>zed-task [--plan zed-env.toml] run <task> [--dry-run] [--yes] [--jobs N] [--no-cache] [-- <args>...]

Semantics

  • validated task and alias lookup;
  • depends, wait_for, and depends_post ordering;
  • nested invocations and sequential/bounded-parallel groups;
  • POSIX/Windows command variants and exact child status propagation;
  • scalar top-level, task, and invocation environment precedence;
  • project-local working directories with symlink containment;
  • confirmations, dry-run, timeouts, deterministic reports, and typed argument environment metadata;
  • content-verified incremental caching over plan/task/input/output identity; and
  • fail-closed rejection of unsupported tool overlays, templates, structured process values, unsafe paths, zero concurrency, and malformed cache state.

Validation completed before final tree attestation

The self-removing finalizer completed successfully and deleted itself after running:

  • rustfmt and git diff --check;
  • task_runtime library tests;
  • compiled zed-task CLI tests;
  • asdf command integration;
  • Nix/Devbox/Flox environment export integration;
  • frozen-offline prefetch integration;
  • global command integration; and
  • strict Clippy for the task binary and CLI test.

The first finalizer attempt exposed a fixture typo: the shared schema field is depends_post, not depends-post. The graph implementation already handled depends_post; the canonical fixture was corrected and the unchanged graph assertion passed on the successful run.

The permanent workflow is read-only, checks out the exact candidate, runs on Ubuntu 24.04, macOS 15, and Windows 2025, validates the flags-to-environment contract, and repeats deterministic dry-run output. All ordinary repository workflows are now queued/running on the exact app-authored head above.

Do not merge until every exact-head workflow is terminal-successful and no review threads or change requests remain.

Linear: DEN-1444, DEN-1435
Supersedes: #148, #164

Bring merged PR #150 and its formatting-clean base into the native task runtime branch before the focused Clap and rustfmt repair.
Preserve the reviewed manager-neutral schema-v2 task runtime as a second history while starting from exact current main.
Reuse the reviewed flags contract, documentation, runtime core, binary behavior, and CLI tests; retain current-main ownership of every unrelated module. Add the task module to the current library surface, replace the unsupported Clap usize range parser with an explicit positive-integer parser, add the --jobs 0 regression, and install a permanent read-only Ubuntu/macOS/Windows certification workflow.
A temporary branch finalizer will repair the shadowed task-state mutex, run focused and cross-feature tests plus strict Clippy, and remove itself before the product pull request is promoted.
Refs DEN-1444, DEN-1435.
@linear-code

Copy link
Copy Markdown

DEN-1444

Create an app-authored, tree-identical commit after the self-removing finalizer. The source tree is byte-for-byte identical to 1db6946; this commit exists only so normal exact-head pull-request workflows run under the connected GitHub app rather than remaining action-required on the bot-authored finalizer commit.
Refs DEN-1444, DEN-1435.
@ORESoftware
ORESoftware marked this pull request as ready for review August 4, 2026 23:11
@ORESoftware
ORESoftware merged commit 35d2f08 into mainAug 4, 2026
44 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@ORESoftware