aidevops 3.8.36 → 3.8.38

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/VERSION CHANGED
@@ -1 +1 @@
1
- 3.8.36
1
+ 3.8.38
package/aidevops.sh CHANGED
@@ -5,7 +5,7 @@
5
5
  # AI DevOps Framework CLI
6
6
  # Usage: aidevops <command> [options]
7
7
  #
8
- # Version: 3.8.36
8
+ # Version: 3.8.38
9
9
 
10
10
  set -euo pipefail
11
11
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aidevops",
3
- "version": "3.8.36",
3
+ "version": "3.8.38",
4
4
  "description": "AI DevOps Framework - AI-assisted development workflows, code quality, and deployment automation",
5
5
  "type": "module",
6
6
  "bin": {
@@ -349,9 +349,40 @@ _install_supervisor_pulse() {
349
349
  # macOS: launchd plist invoking wrapper | Linux: cron entry invoking wrapper
350
350
  # The plist is ALWAYS regenerated on setup.sh to pick up config changes (env vars,
351
351
  # thresholds). Only the first-install prompt is gated on consent state.
352
+ #######################################
353
+ # t2119: Record the schedulers.sh template hash to the shared state
354
+ # directory. auto-update-helper.sh's check_launchd_plist_drift compares
355
+ # this against the current hash on every update cycle — whenever
356
+ # schedulers.sh changes without a VERSION bump (PR #19079 scenario),
357
+ # drift is detected and setup.sh --non-interactive is re-run to
358
+ # regenerate the installed plists.
359
+ #
360
+ # Called from setup_supervisor_pulse unconditionally so the hash is
361
+ # kept current on every setup.sh run, whether pulse is installed,
362
+ # upgraded, or disabled. Whole-file hash is the simplest signal that
363
+ # any plist-generating change has occurred.
364
+ #######################################
365
+ _schedulers_record_template_hash() {
366
+ local state_dir="$HOME/.aidevops/.agent-workspace/tmp"
367
+ mkdir -p "$state_dir" 2>/dev/null || return 0
368
+ local hash_file="$state_dir/schedulers-template-hash.state"
369
+ local schedulers_src="${BASH_SOURCE[0]:-}"
370
+ [[ -f "$schedulers_src" ]] || return 0
371
+ if command -v shasum >/dev/null 2>&1; then
372
+ shasum -a 256 "$schedulers_src" 2>/dev/null | awk '{print $1}' >"$hash_file" 2>/dev/null || true
373
+ elif command -v sha256sum >/dev/null 2>&1; then
374
+ sha256sum "$schedulers_src" 2>/dev/null | awk '{print $1}' >"$hash_file" 2>/dev/null || true
375
+ fi
376
+ return 0
377
+ }
378
+
352
379
  setup_supervisor_pulse() {
353
380
  local _os="$1"
354
381
 
382
+ # Record template hash so auto-update can detect drift between
383
+ # schedulers.sh and the installed plists on macOS (t2119).
384
+ _schedulers_record_template_hash
385
+
355
386
  # Ensure crontab has a global PATH= line (Linux only; macOS uses launchd env).
356
387
  # Must run before any cron entries are installed so they inherit the PATH.
357
388
  if [[ "$_os" != "Darwin" ]]; then
package/setup.sh CHANGED
@@ -12,7 +12,7 @@ shopt -s inherit_errexit 2>/dev/null || true
12
12
  # AI Assistant Server Access Framework Setup Script
13
13
  # Helps developers set up the framework for their infrastructure
14
14
  #
15
- # Version: 3.8.36
15
+ # Version: 3.8.38
16
16
  #
17
17
  # Quick Install:
18
18
  # npm install -g aidevops && aidevops update (recommended)