Preserve supported expression fields instead of stringifying them, and probe individual fields only when whole-expression validation fails. Convert unsupported syntax and weekday ranges ending in 7 while preserving legacy date/weekday rules and valid OR branches.
Add execution regressions for issue #3099 and 64 calendar boundary cases in UTC and Asia/Shanghai. Ensure timezone child tests actually run under the Node test runner.
Validation: 745 tests passed, 8 skipped; final targeted regressions passed; backend compilation passed. Differential calendar checks matched 142,360 execution timestamps.
Fixes#3099
Download updates asynchronously with persistent progress and validate matching source and build artifacts before an explicit restart. Keep upgrade workers alive across service restarts, verify the new runtime, and recover the browser with a one-time success notice.
Publish immutable archive sizes and checksums for accurate download progress. Align the update dialog, hide unavailable actions during transfers, and show the sidebar notice only for active, ready or failed jobs. Constrain long account names with ellipsis while preserving avatar and collapse controls.
Translate UI, scheduler, validation, preload and maintenance messages dynamically, and propagate locale changes between workers. Harden update checks, downloads and terminal states, verify Debian pnpm, and ignore generated test artifacts.
Preserve literal paths and arguments, use portable command options, validate startup configuration, and retain scripts when downloads fail.
Ensure task watchdogs and process groups are cleaned up across Bash versions, with compatibility and process lifecycle regression coverage.
Map INI to the CodeMirror properties language and fall back to plain text for unsupported modes. Reap the timeout watchdog immediately under stderr redirection to prevent Bash job notifications during cleanup.
Refs #3095, #3096
Use native Gitee Pull mirrors for code and static artifacts, and verify branch and tag SHAs alongside image builds. Trigger stale mirrors through small GitHub REST ref updates, retry transient errors with backoff, and keep polling when a notification fails.
Synchronize scheduler concurrency across API and gRPC processes and restore persisted limits during recovery.
Serialize subscription mutations and preserve shared storage while cleaning Shell and CLI namespaces, historical references, and filesystem-specific naming candidates.
Handle CLI text responses correctly and include script history in backups. Add regression coverage for concurrency, cleanup ownership, long URLs, Unicode paths, and history exports.
* refactor: migrate cron scheduling to node-cron
* feat: support annually midnight and minutely cron macros
* fix: harden cron recovery and system scheduler compatibility
* perf: load HTTP dependencies only in the HTTP worker
* docs: record 30-minute idle resource comparison
* perf: isolate database initialization from the cluster primary
* docs: record isolated database startup resource comparison
* perf: avoid an extra shell child in Docker health probes
* perf: load notification dependencies only when needed
* perf: retain queue cleanup after notification loading comparison
* fix: stop page polling after unmount and avoid duplicate fetches
* perf: share WebSocket session polling across connections
* docs: measure real WebSocket container CPU and memory
* perf: reuse JWT validation within each WebSocket session check
* perf: bound login IP lookup allocations with an address cache
* refactor: limit resource optimization PR to three core changes
* docs: benchmark the three core optimizations against develop
* chore: remove documentation and benchmark artifacts from PR
Add a failure list with task names, commands, accumulated failure counts and latest log links. Keep recovered and deleted tasks visible in today's statistics.
Fixes#3065