@colony2/c2j 0.0.79 → 0.0.81
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +44 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -531,8 +531,52 @@ owned by the worker user with no group/other permissions. See the
|
|
|
531
531
|
[supplied-lease guide](GUIDE-Run-With-Lease.md) for dispatcher/library integration,
|
|
532
532
|
exit behavior, and the JobDB v0.0.22 server requirement.
|
|
533
533
|
|
|
534
|
+
### Deleting jobs
|
|
535
|
+
|
|
536
|
+
```bash
|
|
537
|
+
c2j delete --self --older-than 720h --dry-run
|
|
538
|
+
c2j delete --cell backend --cell frontend --recipe build
|
|
539
|
+
c2j delete --job-id JOB1 --job-id JOB2 --json
|
|
540
|
+
c2j delete --created-before 2026-10-01T00:00:00Z --dry-run
|
|
541
|
+
c2j delete --all --embed --dry-run
|
|
542
|
+
```
|
|
543
|
+
|
|
544
|
+
Use the usual `--jobdb`, environment, or project configuration to select a tenant;
|
|
545
|
+
`--embed` uses local JobDB. Deletion requires an explicit selector or `--all`.
|
|
546
|
+
It does not implicitly select the current cell: use `--self` for that.
|
|
547
|
+
`--cell` matches the owning repository across all refs, as `c2j list` does;
|
|
548
|
+
workspace overrides do not change job ownership. Repeat `--cell` or `--job-id`
|
|
549
|
+
to select any of those values. Different selectors intersect.
|
|
550
|
+
|
|
551
|
+
`--created-before` is an exclusive creation-time cutoff, not a completion-time
|
|
552
|
+
cutoff. Alternatively, `--older-than` takes a positive Go duration (`720h` is
|
|
553
|
+
30 days); the cutoff is calculated once per invocation. `--all` cannot combine
|
|
554
|
+
with selectors. Status filtering is not supported; matching unfinished jobs
|
|
555
|
+
are included.
|
|
556
|
+
|
|
557
|
+
`--dry-run` reports matches without deleting; it does not reserve those matches
|
|
558
|
+
for a later call. Both text and JSON output include resolved selection criteria
|
|
559
|
+
and matched/deleted counts. Missing and already-hidden jobs do not count.
|
|
560
|
+
|
|
561
|
+
Deletion hides jobs from normal job and schedule-run listings, cancels unfinished
|
|
562
|
+
jobs, and revokes their leases. Completed outcomes, history, and artifacts remain
|
|
563
|
+
accessible by direct lookup and to surviving clones. It does not reclaim disk
|
|
564
|
+
space, cascade to children/clones/schedules, undo external effects, or forcibly
|
|
565
|
+
stop worker processes. This uses JobDB's bulk deletion API; remote servers must
|
|
566
|
+
support it (JobDB `20269bd` / `v0.0.46` or later, with a compatible backend).
|
|
567
|
+
Unsupported backends return an error; c2j never falls back to listing and deleting
|
|
568
|
+
jobs individually.
|
|
569
|
+
|
|
534
570
|
### Recipe timeouts and recovery
|
|
535
571
|
|
|
572
|
+
c2j does not set default job or built-in op timeouts. Set `timeout` on a recipe
|
|
573
|
+
or node to bound its execution. Command `inputs.timeout` and extension manifest
|
|
574
|
+
`timeout` remain supported; an enclosing deadline can end execution sooner.
|
|
575
|
+
|
|
576
|
+
For pending external input, a late response can be accepted until a worker claims
|
|
577
|
+
the timeout work. Once the timeout wins, later responses are rejected. Accepting
|
|
578
|
+
a late response does not extend an enclosing recipe or scope deadline.
|
|
579
|
+
|
|
536
580
|
Recipe and nested execution timeouts retain their original scope budget across
|
|
537
581
|
worker recovery. Cached completed tasks remain replayable; new work does not
|
|
538
582
|
receive a fresh budget merely because execution resumed. See
|