@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.
Files changed (2) hide show
  1. package/README.md +44 -0
  2. 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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@colony2/c2j",
3
- "version": "0.0.79",
3
+ "version": "0.0.81",
4
4
  "description": "c2j job system",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://github.com/colony-2/c2j",